When launched the Viper App gives the user the possibility to discover all the Viper devices available on the local network (whatever it is: Wifi or Bluetooth). Once one of them will be selected the App will become its interface.
Viper is an open source, powerful, easy and affordable way to develop innovative devices and applications based on the ARM Cortex 32-bit micro-controllers (like Arduino Due, ST Nucleo F401RE, UDOO, Particle Core, Particle Photon, and Particle Electron in late 2015) combined with other state-of-the-art sensors and actuators, and expansion boards. It enables fast prototyping with bleeding-edge boards and components that can quickly be transformed into final designs. Programming examples and reference designs for many applications are provided and they help designers to make the transition from prototype to final product even smoother.
Any data collected or generated by Viper powered devices (i.e. room temperature, room light and sound level, etc.) can be shown on mobile by sending a notification from Python to the App. The communication also happens the other way round with the App sending events to the Python script which in turn can execute functions. Therefore the App can also work as a remote controller, by specifying in the Python script which event triggers a specific callback (e.g. a switch button in the App can turn a led on and off).