Cloud data services are playing an important role in telemetries and cooperative M2M projects. Distributed automation is in fact taking a new dimension due to the availability of tools and databases in the cloud. Following this philosophy, Lagarto-MAX was developed as a way to bind low-power wireless networks (and hence panStamps) to the Internet. Our extended automation module is capable to run complex tasks locally and also connect local networks to remote data services. Pachube and ThingSpeak were supported in the first version of the application and now open.sen.se is supported too.
open.sen.se, still in beta-test, provides some features which are typically beyond the mission of a remote data service. This platform offers different ways to plot readings, process data and even control values. open.sen.se also lets users configure their own monitoring/control panels and link to other internet services as Twitter.
Figure 1: open.sen.se - multi-line graphing tool
To be honest, controlling local resources from a cloud service is not something that I would do on a daily basis but I understand that some applications do require this functionality. The following picture shows a custom panel that I created to test this feature:
Figure 2: open.sen.se - Custom control panel
The above dimmers and binary switches are controlled by a single panStamp running the binouts sketch. This sketch can be downloaded from subversion or the Downloads page.
Sending data to open.sen.se is simply done by defining custom events on Lagarto-MAX. No difference here with regard to other cloud services except that panStamps can be controlled from open.sen.se (see the above control panel).
Figure 3: Event that uploads a humidity value to open.sen.se
The above event is simple to understand: whenever Garden.Humidity changes, the value is pushed to sen.se. That's all. We could do periodic updates instead but I personally prefer to act upon network events when this saves in the amount of updates.
Figure 4: programmed action
Sen.se requires some few parameter to be transmitted in order to identify user, controller and data feed. Apart from this, you only have to select the endpoint whose value has to be pushed to the platform.