Raspberry Pi IoT prototyping, remote management on the fly

If you’re like me, you have low-cost development boards strewn across on your desk, packed into drawers, and stacked on shelves. Not that it hasn’t gotten easier to get working prototypes up and running in recent years with low-cost, user-friendly platforms – it certainly has. But the space between dreamy commutes and an IoT proof of concept is the business of sifting through libraries, low-level programming, and getting the target device connected before you ever reach the meat of development. As evidenced by the number of sealed antistatic bags in my cubicle, this can be a non-starter. For startups with limited resources looking to get to market quickly, this can mean the loss of precious time.

To help jumpstart the dev kit head start, myDevices, an agile IoT middleware development company out of Calabasas, CA, released its Cayenne developer tool on Tuesday at the IoT Evolution Expo. Cayenne is a drag-and-drop project builder that targets the Raspberry Pi platform and allows IoT developers to remotely control hardware and analyze data remotely from an online dashboard or mobile device.

Fast prototyping on your Pi

Once a Pi is powered on, connected to the Internet via Ethernet or Wi-Fi, and has the Raspbian OS installed (versions Wheezy or Jessy), Cayenne can be installed on the Pi in a few minutes using an iOS app (Android to come) that uses automatic discovery to locate Pis on a network, or through the Pi’s terminal using a couple lines of code. Once installed, the target device is pulled into the mobile app and online dashboard.

Cayenne uses the WebIOPi framework, which enables developers to remotely view real-time resource utilization, power cycle the device, as well as configure hardware using GPIO controls from the myDevices web dashboard or app (Figure 1). Sensors and actuators connected to the target Pi and equipped with WebIOPi drivers can also be added in the Cayenne dashboard as widgets and controlled via the Pi’s GPIO pins (Figure 2), and an if/then rules engine extends this manageability by permitting triggers and threshold alerts (communicated by email or text) to be established so complex connected applications can be assembled quickly (Figure 3). The dashboard itself is also configurable, which improves the ease of use factor.

[Figure 1 | The Cayenne IoT development tool provides makers with access to a target Raspberry Pi's GPIO pins from an online dashboard or mobile app, enabling remote configuration and management.]

[Figure 2 | Sensors and actuators connected to a target Raspberry Pi can also be managed through a Cayenne web or mobile interface.]]

[Figure 3 | An if/then rules engine can be used to set up triggers and alerts (communicated via SMS or email) so developers can quickly realize an IoT proof of concept and average users can operate systems easily.]

Beyond WebIOPi, Cayenne relies on an embedded agent that facilitates bi-directional communications between the hardware and a server so that commands, actions, triggers, and alerts can be implemented, and a Cloud platform is responsible for the processing and storage of various states.

Cayenne is free for makers and developers, and you can get tinkering with their beta platform at https://www.cayenne-mydevices.com/. A great overview of exactly how Cayenne works is also available at http://community.mydevices.com/t/cayenne-documentation/150.

myDevices has aspirations of partnering with various hardware manufacturers in the future, according to CEO Kevin Bromber, so if you’re not a Pi guy, keep your eye out for updates on support for other platforms. Then again, if you’re not a DIY guy, keep an eye out anyway, since the device- and connectivity-agnostic Cayenne could be the key to managing your smart home at a time where everyone (and “thing”) is trying to be part of the IoT.