Analyzing CheerLights with MATLAB

CheerLights is an Internet of Things project created by Hans Scharler that allows people’s lights all across the world to synchronize to one color set by Twitter. This is a way to connect physical things with social networking experiences and spread cheer at the same time. When one light turns red, they all turn red.

CheerLights uses ThingSpeak to collect the latest color. We get the color value by following “CheerLights” on Twitter using the TweetControl app. When someone Tweets using “CheerLights” and a color name, the TweetControl app writes the color to the CheerLights Channel on ThingSpeak. Other developers wanting to join the CheerLights project read in the latest color value using the ThingSpeak Channel API and then set their light color to the same one.

With some MATLAB Analysis and Visualizations, I know that currently red is the most popular color on CheerLights! I have recently taken advantage of the MATLAB integration with ThingSpeak. Under Apps -> MATLAB Analysis, we have an example that will show you how to analyze the public CheerLights Channel on ThingSpeak to determine the most requested color. The MATLAB Analysis example is called, “Analyze text for the most common color”.

Example MATLAB Visualization Code

lights = thingSpeakRead(1417,'OutputFormat','table','NumDays',30);


People all over the world have joined CheerLights by making all kinds of light displays, apps, and browser plugins. I recently created a CheerLights display for my parents using a LIFX Wi-Fi Light Bulb. If you want to control all of the lights, just send a Tweet using Twitter that mentions @CheerLights and a color.

“@CheerLights Let’s go Blue!”

Check out for more detail and for ideas on how to join the project. We are all connected!


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.

Instant TweetControls #featurefriday

We spent some time enhancing our TweetControl App. TweetControl allows you to control things with Twitter. You setup a TweetControl to listen for a keyword mentioned on Twitter and we execute any web service API call that you specify. Developers have created racing cars, political campaign trackers, and we use it for the CheerLights project.

As more and more users create TweetControls, the service started slowing down. We have enhanced how the service works and now you get instant TweetControls!

In an Instragram video sending a Tweet and changing the CheerLights color, you will see that there is little delay between sending the Tweet and executing the control command to change the colors on his Christmas tree.

Learn more about TweetControl on ThingSpeak Docs.

Celebrate the Holidays by Joining CheerLights, a Global Network of Lights #iot

For the third holiday season in a row, the CheerLights project is gearing up. The idea behind CheerLights is to show that we are all connected by synchronizing the color of lights around the world. Christmas lights are a staple around the holidays and with Internet-connected lights, the color of your lights matches the color of everyone else’s lights.

It has been a real treat watching this project evolve as more and more people add lights… and other things. Things like Android and iPhone apps that check the latest color of CheerLights, Christmas trees, and robots.

To control the lights around the world, send a Tweet mentioning @CheerLights and a color. The command is processed by the ThingSpeak IoT analytics platform and distributed to all of the lights listening to the CheerLights API.

@CheerLights I am dreaming of a White Christmas

Internet of Things

Another powerful aspect of the CheerLights project is that is shows off what is possible with the emerging Internet of Things. With a single message sent via a social network like Twitter, 1000′s of objects around the world are in sync with each other. Lights are connected by many types of controllers, such as Arduino, ioBridge, Philips, and the Raspberry Pi. This project is only possible through the Internet and the coordination of developers around the world.

In the article, “How the Internet of Things Will Change Our Lives“, CheerLights is included to indicate how we are connected and how objects may bring people closer.

Learn how to join the project at

We are all connected…

TweetControl App Documentation Updated

We have update the documentation for the TweetControl app:

TweetControl allows you to monitor Twitter for trigger words to send ThingHTTP requests. The CheerLights project by ioBridge Labs uses TweetControl to update its ThingSpeak Channel so other lights around the world stay in sync with each other.

TweetControl App by ThingSpeak

Why use TweetControl? Our app connects to the Twitter Streaming API. What this means to you is that you don’t have to keep polling Twitter for status updates. You can sit back and let TweetControl listen and then process the request when a trigger word gets fired. This happens in real-time and it’s quite remarkable to see in action.

TweetControl is a part of our collection of apps for social things.

CheerLights: Connecting Lights Together to Bring Us Closer

It’s that time of year… holiday time and family time. I was inspired this time to create a project that brings us a little closer. Lights are a big part of the holidays and with CheerLights you can connect your lights to other lights via Twitter with a little help by ThingSpeak Apps.

Since the project release, there has been much activity. A part from CheerLights being discussed on blogs like MAKE and Lifehacker, the community has created some interesting bits of tech that extend the project further than lights. So if you don’t have a way to connect your lights together with CheerLights, you can connect your mobile phone, browser, and web sites together by subscribing to the CheerLights feed. Right now you can check the latest CheerLights color with an Android App created by @ChrisLeitner. Another really neat thing is a browser plugin for Chrome designed by Josh Crumley. So, in the top corner of your web browser you can see the latest color in an unassuming way. It’s a little reminder that we are connected.

To join CheerLights, all you have to do is build something that subscribed to the CheerLights ThingSpeak Channel or access the data using JSON and XML. You can also use the apps, browser plugins, or web widgets to see the colors. Visit the CheerLights website hosted on Tumblr for details on making a controller with Arduino, ioBridge, or Digi’s ConnectPort.

To control CheerLights, just send a Tweet to @CheerLights and mention a color.

Just think when you send this Tweet that you are updating 1000’s of lights, apps, browsers, and widgets all at the same time.

Spread some cheer…

[via MAKE / Lifehacker / CBC / ioBridge Projects]