Where to store data from sensors – ThingSpeak

Today we take a look at well-known service called ThingSpeak. ThingSpeak is cooperating with MathWorks – company best known for creating MATLAB software. Project launched in 2010. They even provide older version of their service as opensource.

What does it offer?

ThingSpeak provides API for storing data (strings, decimals, integers,…) from your sensors and other IoT devices connected to the Internet. You can use REST API over HTTPS or MQTT protocol. Every user can create “unlimited” number of channels which represent one particular device. Every channel allows to store 8 different values as fields. Entire message from device can not exceed 3000 bytes – which is more than enough for most use cases.

Pricing & Limitations

Service is based on freemium model. Free accounts is limited in two ways – entire account can receive up to 3 millions messages per year (messages over limit are ignored and not stored) and every channel can be updated once per 15 seconds (or more). If you are interested in pricing model, please see this nice looking pricing page with calculator.

Thanks to the close connection to MathWorks, you can use cloud version of Matlab for processing data stored at ThingSpeak for free. You can even use it for drawing publicly available graphs. For quick start you can read through well written documentation.

User Interface

Every channel has nice looking user interface, so you are not forced to do everything through API calls. For every channel you can create any number of API keys (with read or write permission) you want. Channels can be made public at no cost (see example). You can make bulk export of entire dataset to CSV format.

Example of admin user interface for ThingSpeak channel

API

To send and retrieve data from Thingspeak you can use REST API over HTTPS protocol or MQTT. Both ways are well documented.

There are libraries on the Internet, which help to implement communication with TS in your favorite languages – C++, PHP, … Do you want to see list of available libraries?

Mobile apps

There are no official mobile apps, but there is one nice application by cinetica, called ThingView. Well written app which can draw graphs and create widgets connected to you ThingSpeak channel.

Conclusion

ThingSpeak is a great service and the free version provides more space than you will ever need for small projects. Uptime is almost 100% (for me, no data lost so far in two years). It is really worth the try.