A few days ago, our beloved Cosm Beta service that we used to recommend for real-time graphs from your Yoctopuce sensors, has changed its usage terms. Renamed Xively, the web site is now focusing on revenue-generating services. Unfortunately, some essential features that we have been using, such as the ability to choose the display time range on a graph, have disappeared. It is therefore time to look for alternatives to Cosm...
The main alternatives to Cosm are currently:
- ThingSpeak
- Open.Sen.se
- nimbits.com
ThingSpeak
ThingSpeak seems to be currently the closest match to what Cosm was doing so far. The base function is to record sensor data, sent through HTTP queries, and graph them in real time. The web site also makes it possible to define conditional actions, including triggering any HTTP request to a third-tier web site. The interface is quite intuitive, and offers various options to customize the graph.
Unlike Cosm which was officially a Beta program, ThingSpeak intends to stay a free service. The price to pay for this is a limit on data upload rate: no more than one update every 15 seconds. This might be a problem for some applications such as our network multimeter, but we can understand this.
Second significant limit: the service only allows for 8 parallel measurements per data channel. If you need to send more sensor values, you need separate channels. The measurements must be sent as "field1", "field2", etc. but you can then give them more appropriate names in the user interface of ThingSpeak.
We provide step-by-step instructions to connect your VirtualHub to ThingSpeak in the 2nd part of this article.
Open.Sen.se
Open.Sen.se is a Beta service under development. The following comments may therefore lose their significance in the future, so build your own opinion by trying it yourself and check if it has evolved since the time this article was written. As for ThingSpeak, Open.Sen.se is an online data logging service that can also trigger conditional actions. This is done using Apps, which can be quite sophisticated. The user interface is a bit less intuitive than ThingSpeak.
The main drawback that we found in Open.Sen.se is its lack of flexibility in graph rendering. The App that draws graphs barely has any settings except color. It lacks the ability to set graph scales. For our typical use, this is a major problem. Let's hope this will be fixed in the future.
Another potential problem is that, like Cosm, it is currently a Beta program. Without commitment from the provider, there is a significant risk that this service faces the same fate as Cosm and becomes a product targeting mainly OEM vendors, keeping individual users on the side.
nimbits.com
nimbits.com is not an internet service per se, but rather a software platform intended to allow anyone to create their own service as a Google App or on Amazon cloud for instance. Therefore, the setup phase is a bit more complex. We will therefore come back on nimbits in a later post.
And the others...
Do you have experiences to share about other similar services? Feel free to share them as a comment below.
Configuring the VirtualHub for ThingSpeak
The current version of the VirtualHub software is already able to send data onto a ThingSpeak channel. There is not yet any simplified configuration panel (that will come soon), but here is already a step-by-step guide of how to proceed.
1. Start by creating your account on ThingSpeak, using the Sign Up link on the upper-right corner. If you already have one, simply Sign In
2. Create a data channel using the button Create New Channel
3. Fill-in the base information about your channel, as in the example below, then click on Update Channel
4. Select the tab named API Keys to get your secret key necessary to upload data to the channel. The key you are interested in is the one named Write API Key. Copy it to your clipboard.
This is where you find the key to upload data
5. Open a new browser window on your VirtualHub.
6. In the device list, click on the configure button next to the device for which you want to send the data to ThingSpeak (in our case we use a Yocto-Meteo).
7. For each measure (e.g. temperature, humidity and pressure), click on the rename button and specify the field identifier that you have used on ThingSpeak. Confirm your changes using the Save button.
8. In the device list, click on the configure button next to the VirtualHub itself to configure the HTTP callback. In the configuration window, locate the Outgoing callbacks section and click on edit.
9. Configure the callback as in the example below. At the end of the callback URL, paste the API Write Key that you have copied during step 4 above. Make sure not to add any space between the "=" sign and the key.
Sample HTTP callback parameters for ThingSpeak
10. Click on Test to verify your callback parameters. If everything is correct, the ThingSpeak service replies with a number greater than zero. When you are done, close the test window, click on OK then Save.
11. When you return on ThingSpeak, you will find your graphs in the Private View. By clicking on the small pen on the corner of the graph, you can customize its appearance.
Sample graphs displayed by ThingSpeak
This is it. It is not as simple as Cosm was, given the extra step to rename the functions, but we are preparing a simplified configuration UI dedicated to ThingSpeak that will make that easier. We are also considering adding the ability to configure multiple callbacks, to alleviate the limitation to 8 measures per channel. Do you have other suggestions ? Let us know !