IoT Quick Start With the Arduino MKR1000 and ThingSpeak

If you are looking to start with the Internet of Things, then try out the Arduino MKR1000 and connect it to the ThingSpeak IoT Platform. We have put together a complete tutorial that uses the MKR1000 to collect data about your Wi-Fi signal and send it to ThingSpeak for storage, analysis, and visualization.

Arduino MKR1000

The Arduino MKR1000 is a great starting point when learning about the “things” in IoT. The MKR1000 has a microcontroller, Wi-Fi module, encryption module, and a battery-charging circuit. It’s easy to get started and once you get it connected to ThingSpeak, you have a lot of “cloud power”. ThingSpeak has a suite of apps to allow the Arduino to post messages to Twitter, do data analysis, show charts and visualizations, and be controlled by schedules and external events. With these building blocks you can prototype any IoT system.

ThingSpeak Channel Data

Once you have your data on ThingSpeak, you can analyze and visualize the data with built-in MATLAB apps.

[via ThingSpeak Tutorials]

Arduino WiFi 101 ThingSpeak Data Uploader Tutorial

Arduino has published a tutorial for their WiFi 101 Shield that sends data to ThingSpeak. The Arduino WiFi Shield 101 is a powerful Internet of Things shield with crypto-authentication that connects your Arduino or Genuino board to the internet using WiFi.

Arduino WiFi 101 ThingSpeak

You only need a few things to build a light and temperature sensor that writes data to ThingSpeak:

  • Arduino Zero or Uno Board
  • Arduino Wifi Sheild 101
  • Photocell
  • Temperature Sensor (This example uses a TMP36)
  • 10K Ohm Resistor


Once you have the circuit built, you create a ThingSpeak channel, connect the Arduino WiFi 1010 to your Wi-Fi network, and install the source code from the tutorial on the Arduino.

Data is now being sent to your ThingSpeak Channel. Go to your channel to see two charts of the light and temperature data. To take the project a step further, go to ThingSpeak Apps and use MATLAB to analyze and visualize and trigger actions from the data.


Official ThingSpeak Library for Arduino and Particle

We are thrilled to announce the official ThingSpeak Communication Library for Arduino and Particle devices. This library enables an Arduino or other compatible hardware to write or read data to or from ThingSpeak, an open data platform for the Internet of Things with built-in MATLAB analytics and visualization apps.

Arduino IDE Installation

In the Arduino IDE, choose Sketch/Include Library/Manage Libraries. Click the ThingSpeak Library from the list, and click the Install button.

Particle / Spark IDE Installation

In the Particle/ Spark Web IDE, click the libraries tab, find ThingSpeak, and choose “Include in App”.

Compatible Hardware

  • Arduino or compatible using an Ethernet or Wi-Fi shield (we have tested with Uno and Mega)
  • Arduino Yun running OpenWRT-Yun Release 1.5.3 (November 13th, 2014) or later.
  • Particle Core or Photon (Formally Spark)

ThingSpeak Examples

The library includes several examples to help you get started.

  • CheerLights: Reads the latest CheerLights color on ThingSpeak, and sets an RGB LED.
  • ReadLastTemperature: Reads the latest temperature from the public MathWorks weather station in Natick, MA on ThingSpeak.
  • ReadPrivateChannel: Reads the latest voltage value from a private channel on ThingSpeak.
  • ReadWeatherStation: Reads the latest weather data from the public MathWorks weather station in Natick, MA on ThingSpeak.
  • WriteMultipleVoltages: Reads analog voltages from pins 0-7 and writes them to the 8 fields of a channel on ThingSpeak.
  • WriteVoltage: Reads an analog voltage from pin 0, converts to a voltage, and writes it to a channel on ThingSpeak.

Complete source code and examples for the ThingSpeak Library are available on GitHub.

You’ve Collected Lots of IoT Data, Now We Can Help You Figure Out What It Means!

For the last several years, I have been collecting data with ThingSpeak from devices all around my house. I have been tracking temperature, humidity, light levels, outside weather data, my deep freezer’s temperature, the state of My Toaster, and air quality metrics. I just recently started to think about what all of this data really means to me and if it’s good data to begin with. Wouldn’t it be great if I could explore my data in ThingSpeak?  Well, I am happy to say that with the latest upgrade to ThingSpeak, you can do just that.

We have been working with the MATLAB team at MathWorks to provide two new ThingSpeak Apps: MATLAB Analysis and MATLAB Visualizations. With these new built-in Apps, the ThingSpeak web service can automatically run MATLAB code. That makes it easier to gain insight into your data.

ThingSpeak MATLAB Apps

With the MATLAB Analysis app, I am now able to turn my home’s temperature and humidity data into dew point. Dew point is important to find out if the environment is comfortable independent of just knowing the temperature alone. If the dew point is too high or too low, your guests may notice their glasses sweating or that they are uncomfortable.

I am also able to clean up my sensor data and filter out bad data and write it back to a new ThingSpeak channel. From time to time, I see one of my sensors report a really high value, and I’d like to have a way to fix it.

We have provided many MATLAB code examples to get started quickly.

Some of our analysis examples include:

  • Calculate Average Humidity
  • Calculate Dew point
  • Convert Celsius to Fahrenheit
  • Eliminate data outliers
  • Convert Fahrenheit to Celsius
  • Calculate hourly max temperature
  • Replace missing values in data

With MATLAB Visualizations, we made it way easier to chart data from multiple data fields. By selecting the “Wind Velocity” example MATLAB Visualization, I can see a plot of the wind velocity data collected by my weather station.

MATLAB Plot Output on ThingSpeak

Other visualization examples include:

  • View temperature variation over the last 24 hours using a histogram
  • Plot wind velocity over the last hour using a compass plot
  • Understand relative temperature variation
  • Plot data from multiple fields
  • View temperature and pressure levels
  • Visualize relationship between temperature and humidity

Are you looking for an easy way to connect your Arduino or Raspberry Pi devices to ThingSpeak? We have also been working with the MATLAB team at MathWorks on some Hardware Support Packages to help with that. I’ll talk about that in a future blog!

This is really big news for the ThingSpeak Community. I am really excited to see what you do with these new apps. I will share projects on the blog as they come in. Let’s find out together what all of this data means. Get started at!


Collecting Dust Levels with ThingSpeak and ESP8266 Wi-Fi

Using the ESP8266 Wi-Fi module, [shadowandy] built a dust sensor to measure dust levels in his house. The project incorporates the Shinyei PPD42NS dust sensor to do the measurements and posts the data to his ThingSpeak channel from data collection and reaction to dust levels.

Dust Sensor sending data to ThingSpeak

The sensor records the PM10 and PM2.5 dust levels to get an accurate indication of the dust in the air. This project is a great example of how a little sensor could turn into something important for protecting machine shops, construction sites, and garages.

[via shadowandy / GitHub]

There is a Hamster on Twitter Now… Thanks to ThingSpeak, Arduino, and ESP8266 Wi-Fi

What does an adorable hamster need? Internet of Things, but of course. Using ThingSpeak, ESP8266 Wi-Fi, and Arduino, Ángel from San Sebastián built a monitoring system for his hamster which is dubbed “RunnerHam“.

Hamster Internet of Things

RunnerHam Tweets his distance and time when he takes a run on his wheel, “I’m done! 57.62m at 0.61m/s”. You can also check out his ThingSpeak Channel where he records lots of data about his day.

Hamster on wheel IoT ThingSpeak

Ángel also released an Instructables explaining his “pet project” so you can make your own and make your own enhancements. Just imagine what you can do with some sensors, connectivity, and ThingSpeak Web Services!

[via Instructables]

Blynk Internet of Things App for Arduino to Support ThingSpeak Web Services

A really awesome Kickstarter campaign called Blynk has came to our attention as users from their community and ours were asking if our systems could work together.

Blynk Kickstarter IoT

Blynk is an Android / iOS app that allows for a 5 minute, out-of-the-box experience for Internet of Things projects. Blynk already supports Arduino, Raspberry Pi, and in the future Electric Imp, Spark, The Airboard, Wildfire by Wicked Device, Tiny Duino, and ESP8266 Wi-Fi.

ThingSpeak offers the Internet of Things stable data storage, fast retrieval, data processing, data visualizations, and hooks to every web service possible. We are thrilled that Blynk is planning to support the open APIs of ThingSpeak to extend any IoT project with ThingSpeak web services.

Blynk ThingSpeak IoT Kickstarter

The Blynk Kickstarter campaign ends at 12pm EST on February 14th. You have less than 48 hours to support Blynk! $20+ pledges will also get free 1 year premium account at Codebender.

[via Kickstarter]

ThingSpeak Used to Track Luggage for Travel Internet of Things Applications

[Chris Forsberg] created an example Internet of Things project to track luggage using ThingSpeak, an Adafruit GSM Module, and an Arduino. He built a simple system to send data to ThingSpeak, such as latitude, longitude, and status data. ThingSpeak exposes a data channel API for any system like this to being able to store data and then process the data.

ThingSpeak Travel IoT Project

The idea is that it is frustrating waiting for luggage at the airport and wondering where it is and why it is not on the baggage carousel. With this project, you can track luggage from start to finish. The advantages are not only for the traveler, the airlines could track luggage as well and get quality statistics for each airport. And, the base system has many applications outside of travel such as the Automotive Industry.

Chris explains the project really well on his blog and with a YouTube video.

CheerLights Arduino Sketch for FastLED Compatible Lights #featurefriday

We just created a FastLED and Arduino tutorial and Arduino Sketch to read in the latest CheerLights color and display it on FastLED compatible lights. CheerLights is a global network of colored lights that all synchronize to one color based on Twitter. People all around the world have built very creative displays of the latest CheerLights color. The new tutorial and Arduino sketch will make it easy to get started with NeoPixel lights from Adafruit and RGB-123 light panels.

CheerLights with Arduino FastLED RGB-123

For more information check out the FastLED and Arduino tutorial and the Arduino Sketch on GitHub.

Cigar Humidor Updates Twitter – Powered by ThingSpeak and Arduino

[CAVA] created a cigar humidor with a social life. A humidor stores cigars in a humidity controlled environment to maintain freshness, but this special humidor sends the humidity sensor value to ThingSpeak and alerts Twitter when you need to add water. The project uses a humidity sensor and an Arduino Ethernet to post the data to the ThingSpeak API.

ThingSpeak Cigar Humidor IoTMi Humidor de Cigarros conectado a Internet por medio de un Arduino.

C.A.V.A. has more info about the project, parts list, and photos on his website.