Analyzing Squirrel Behaviour and Weather Forecasting with MATLAB and ThingSpeak

Lord Kelvin said, “If you can not measure it, you can not improve it.” In Carsten’s project, he built a squirrel feeder complete with sensors and a camera. The “Squirrel Cafe” allows squirrels to lift a cover and take a peanut. When that happens, data gets collected and the feeder tweets its data summary with a photo. Carsten is learning a lot about the behaviours of the squirrels and is also trying to forecast the coming winter based on how many nuts are being taken. Behind-the-scenes, he is using Raspberry Pi, ThingSpeak, and MATLAB.

Squirrel Monitoring

The Squirrel Cafe is connected to the ThingSpeak IoT Analytics platform using the Raspberry Pi. The Raspberry Pi collects data from a tilt sensor, temperature sensor, and a camera to determine how many nuts the squirrels are taking. Whenever the lid opens, the current temperature gets measured by the DS18B20 sensor and sent to ThingSpeak for storage and analysis using MATLAB.

Squirrel Cafe System

Carsten is also testing a theory. He noticed through observation that there might be a correlation between the number of nuts that get taken from the feeder and how long the coming winter season will be. This winter forecast and “nuts per minute” calculations are being performed by ThingSpeak’s MATLAB Analysis app. We are excited to see what the results prove in the next few years.

For full project details and source code, visit Carsten’s website for this project at


Store, Share, and Visualize Sensor Data using the BrickPi, Raspberry Pi, and ThingSpeak

Dexter Industries launched a very successful Kickstarter campaign this past summer to build and release the BrickPi. The BrickPi turns the Raspberry Pi computer into a robotics and sensing platform for LEGO® MINDSTORMS®. Since the wrap up of the campaign, users have jumped on board making cool projects using the BrickPi including a step-by-step tutorial using ThingSpeak to store, share, and visualize sensor data.

BrickPi Weather Station using ThingSpeak and the Raspberry Pi

Check out the tutorial, “ThingSpeak Temperature with Raspberry Pi“, to learn how to send sensor data using the BrickPi, a Raspberry Pi computer, and a temperature sensor for the LEGO® MINDSTORMS® NXT. The project uses ThingSpeak to store, share, and visualize sensor data collected by BrickPi-enabled projects. The Python code for the Raspberry Pi is available on GitHub and the entire project is open source!

[via  Dexter Industries]

Connecting Arduino to ThingSpeak using Python

Over on the Tenet Technetronics Blog there are some great posts about how to connect Arduino to ThingSpeak using Python as the middleware. Please check it out and thank them for putting together an awesome ThingSpeak Application Note and video. The video demonstrates publishing sensor data to the web using ThingSpeak and Python. The sensor data is collected by an Arduino MCU.

Using REST, Arduino, and Python to Update ThingSpeak Channels

[sirleech] of Australian Robotics created a project based on the RESTduino libraries by Jason Gullickson for Arduino-based microcontrollers. RESTduino turns an Arduino into a RESTful device and gives you the ability to access it with structured URLs. In this project, sirleech extends RESTduino with some Python scripting so that a RESTduino device can update a ThingSpeak Channel. Visit GitHub for the complete project source code.

Living Colours – Passive Mood Detection with a Webcam

[rob myers] created a dynamic web page that changes based on the colours in his studio. Rob takes  a picture of his studio with a webcam, processes the image with Python, and uploads the colour data to a ThingSpeak channel. The web page uses jQuery to access the ThingSpeak API and dynamically update his web page inspired by the colors.

We love the combination of storing data in  a channel and using the API to update a webpage dynamically based on the current “mood” of an area. We also love the idea of using a webcam as a passive sensor since almost everybody has one.

Computer Resource Monitor with Python and ThingSpeak

[Chris Lee] of Australian Robotics created a project that uses ThingSpeak as a resource monitor for a computer. His project explains how he uses Python to send HTTP POST requests to a ThingSpeak Channel. The data that he is sending is CPU and memory usage. This application could be used for monitoring servers and verifying uptime.  Chris also makes use of the ThingSpeak Charts API to visualize the data in real-time.

The latest Python code to interface to ThingSpeak is available on GitHub.

[via Australian Robotics]