During Sierra Wireless Developer Day 2014, Frank from Bitreactive presents Reactive Blocks, a tool to develop complex applications for M2M and IoT gateways. Frank demonstrates it on a simple Legato embedded application running on a Sierra Wireless WP7 dev kit, that sends data wirelessly to AirVantage M2M Cloud.
Wireless modules (or « gateways ») like Sierra Wireless ones get so powerful that it is possible to run quite complex applications on them. Especially when they run a powerful operating system like Linux (Legato is a Linux based operating system designed for M2M applications).
That’s an enormous potential for building robust applications, since the gateways can process and store data and make local decisions. For programming such applications, this is a challenge due to their high complexity. They need to react to many events and process them in parallel, yet work autonomously and reliably, with less room for errors. This requires lots of experience in concurrent programming, and even then it’s hard.
Reactive Blocks makes concurrent programming of M2M and IoT applications much easier: Building blocks encapsulate reusable functionalities of applications, and blocks can be combined to applications by connecting them. Concurrency is described graphically, and handling of threads and synchronization is automatically handled.
While the blocks describe graphically in which sequence events are coordinated, the application-specific logic is programmed directly in Java. The generated code takes care of the concurrency, so that programmers can really focus on the code specific for their application. In addition, Reactive Blocks includes an analysis that reminds the developer of errors related to concurrency that are hard to find by pure testing.
Reactive Blocks is a plugin to Eclipse and can be obtained from http://bitreactive.com. Download example systems and start playing with building blocks and your own ideas.
Comment this post on the forum