Before diving into a hands-on workshop, Christian Legare of embedded software vendor Micrium took some time to explain a few rules of thumb for IoT device development. Do the components you have selected yield the desired features? How does the sum of those components figure into your overall bill of materials costs? Do you have the necessary IT and operational technology (OT) expertise to sustain a successful IoT product? And, what is your business model? All of these are important questions, and without an answer to each any IoT deployment is premature.
Legare also noted that it’s important to recognize the difference between web services and IoT services, which, although characterized by “the availability of backend services based on IP protocols” such as storage, data usage, system analytics, and the potential for efficiency gains, rely on optimized, low-overhead protocols for use with resource constrained devices or where network bandwidth may be limited. He then gave a brief overview of the lightweight MQTT publish/subscribe protocol, which was used to broadcast sensor data to the Amazon 2lemetry ThingFabric cloud via a broker in the ensuing hands-on demo.
Firing up a Renesas YRDKRX63N development board provided to attendees as the gateway device, as well as a Qualcomm GT202 Wi-Fi module that was used to connect to the local network, Legare had the class install Micrium’s µC/Probe on their laptops. µC/Probe is a Windows-based application that can convert the compiler output of ARM Cortex (and other processors that allow you to read/write memory while the processor is running) into a simple table when connected via J-Link port, allowing developers to visualize the effects of debug in real time. The generated table provides the name of the target (its ID), its location, and data value, and within µC/Probe a library of widgets can be drag-and-dropped to create a “live watch” graphical display of the associated target’s current value.
Separately, Legare provided attendees with login credentials to the 2lemetry ThingFabric tool dashboard, where they created a new project and entered the target ID from the µC/Probe table and the µC/Probe workspace ID in order to synch the binary output data of the device being published over MQTT. Within the ThingFabric tool, rules were then established that allowed for the creation of remote triggering mechanisms to automatically cycle devices on and off (buttons are also available to manually change device states), and the results were published to a web page. The same function could be performed locally using µC/Probe, and in each case the power output displayed (in amps) by the remote 2lemetry ThingFabric application and the local µC/Probe GUI matched.
And there you have it: smart home applications in about an hour.
µC/Probe can be downloaded from the Micrium website, and a demo of the 2lemetry ThingFabric IoT Platform is available at 2lemetry.com/iot-platform/. The Renesas YRDKRX63N development kit can be purchased from DigiKey, Avnet Express, and Future Electronics, or if you already have one, download Christian’s step-by-step tutorial slides from the IoT Evolution Developers Conference website later this week (but remember to change your keys!).