Use the New MQTT Service from ThingSpeak for Real-time CheerLights Updates

It’s that time again. That time when people all across the world synchronize their lights together with CheerLights! People have built amazing CheerLights displays. I have seen everything from color-changing shoes to snowmen… and trees.

 

CheerLights Introduction

Here’s a quick introduction to the CheerLights project for those who are new to the project. Imagine 1000’s of multicolored lights all around the world synchronized to one color. When one of the lights turns red, they all turn red. To control CheerLights, send a tweet to @cheerlights or include “cheerlights” somewhere in your message with the name of a color. This will cause a chain reaction and all of the CheerLights displays and apps will change their color to red.

 

ThingSpeak MQTT Service

CheersLights is powered by ThingSpeak IoT. And, this year, I am happy to introduce real-time CheerLights updates using ThingSpeak’s new MQTT service. Using the MQTT service by ThingSpeak, your CheerLights change instantly. ThingSpeak has posted an example that gets a Particle Photon connected to CheerLights using MQTT. The Subscribe to Channel Updates Using Particle Photon Client example shows you how to use a Particle Photon Wi-Fi board to subscribe to channel updates from the CheerLights channel. The program displays the color read from the channel on the built-in LED on the Photon board. You can subscribe to the channel feed or directly to the color field on the CheerLights channel.

Once you learn how to use the MQTT service from ThingSpeak, you can easily adapt it to your IoT project. This is a great way to have real-time control of a device or real-time monitoring of sensors.

If you want to follow the project and see what others are building, visit CheerLights.com or follow on Twitter.

Use AWS DeepLens to Determine If Hotdog or Not Hotdog

While at re:Invent, I got to take a deep learning workshop to learn about the new capabilities of AWS such as SageMaker and Greengrass. We used a new device created by AWS and Intel called DeepLens to build an image classification model, deploy it to the device, and use the model to predict image labels. In reference to the TV show Silicon Valley, we trained a neural network to determine if the image from the video camera contained a “Hotdog or Not hotdog.” My machine learning model performed better when the hot dog had mustard on it.

Fun aside, the DeepLens device is a really powerful way to learn image and video-based machine learning and artificial intelligence. Once you get ahold of the device, you can follow the workshop by downloading the materials and code from GitHub.

Michael Stevens and Adam Savage at Brain Candy Live!

My friend and colleague, Paul Kassebaum, and I had the opportunity to meet Michael Stevens and Adam Savage after their touring show called, Brain Candy Live. Paul and I are extremely passionate about science education and community building. Michael and Adam have been very successful using TV and YouTube to build a culture of science and making. The show is filled with puns from Molecule Stevens, exploring fluid dynamics, and building up to a ping-pong ball finale. I particularly enjoyed Adam’s monologue about his father making a race car for a Christmas present while Adam was making a juggling club. This taught Adam as a young kid that you can make things that you don’t have or make things that don’t exist. Brain Candy Live was truly a remarkable show. Let’s demonstrate to the world that the US has a culture of science and making, and let’s get more scientists on the US currency (at least we have Ben Franklin).

Making and Designing Board Games Lecture

I have been leading a 10-week workshop on tabletop game design near Boston, MA. Over 20 students have participated and several of them have created board game design prototypes throughout the course. This is really exciting to see! I gave a lecture last week to go over the entire course in one 30-minute session. I share a few of their game designs. Fortunately, the lecture was recorded and uploaded to YouTube. Over the coming weeks, I will be sharing the content for the board game design course and release more supporting content.

Panobook: Do I Need Another Notebook? Yes.

I spend a lot of my time at my desk, in front of my computer, designing. I love using a notebook for generating ideas, doing research, game design, and software design. For me, the notebook helps me extend the ideas further without bounds. I have grown accustomed to bouncing between the digital and analog worlds.

When I saw the Kickstarter introduction video to a new product called Panobook, I thought to myself, “Here are some people who just get it.” (It is the love of notebooks and their utility.) My love started by watching my father collect different types of journals and Moleskin notebooks. He had many unopened ones, but the ones he did use were spiral bound and could fit in his pocket. He was often taking notes on the go writing his lectures and sermons. I typically design in front of my computer. I have been known to turn my notebook around and design particular to the lines.

 

I don’t need another notebook, but I have found that Panobook serves a purpose. I like that Panobook lays flat on my desk, it fits in front of my keyboard, it is spiral bound, it has a dot grid, and it is designed to be catalog on my shelf when I am done with it. Love oozes out of every design decision of the Panobook. Well done.

Geoffrey West: What Does Exponential Mean?

My friend Paul gave me a really great book for my birthday. The book is Scale: The Universal Laws of Growth, Innovation, Sustainability, and the Pace of Life in Organisms, Cities, Economies, and Companies by Geoffrey West. I spent the whole summer digging into this book and having regular conversations with Paul. There are many landmines in the book. Once you step on one, you find yourself searching the internet for more information and digging even deeper.

“One of the things that I have discovered in my talking with politicians and policymakers is that most people don’t understand what an exponential is.”

—Geoffrey West

One small piece of the book is about exponential growth. I really liked his thought experiment on exponentials and I have applied his insight to game design and development.

 

Independent Music at Gen Con 50

I had a huge surprise this year at Gen Con 50. Often, there are bands and musicians playing music in the hallways of the Indianapolis Convention Center, host of the Gen Con gaming convention. I stopped to watch one band from Nashville wearing crowns and cat ears. I was already a few minutes late for my next game since I stopped for coffee. I ended up watching the whole set of an independent band from Nashville, called… Big Chance / Canyon Spells / Daniel and the Lion.

From what I learned from the Google box, Canyon Spells is Jimmie Linville and Daniel Pingrey who have been making music since high school. Their collaboration is tight and has produced a lot of great music across many genres. Their set at Gen Con was tight, fun, and really entertaining. I have not heard a great new band in a long, long time, and this was a pleasant surprise at Gen Con, of all places. I am not sure where they are going or if they will get stuck with an identity crisis, but they have great song writing and performing chops. YouTube has many videos of their band performing A LOT, which is a sign of a great band. Bands need to perform as much as they can, book gigs, and travel to obscure gaming conventions to strengthen their craft. I hope they find their way into the mainstream. They deserve a shot.

Billy West at Boston Comic Con!

I got to meet Billy West at the Boston Comic Con 2017! If you don’t his name, you probably know his voice. He has voiced a lot of characters from some of my favorite cartoons, everything from The Ren & Stimpy Show to Futurama.

I have always been fascinated watching Billy West in action. Check out his segment on Penn’s Sunday School to get a sense of his extreme versatility and voice talent.

 

 

The Paradox of Choice (Applied to Game Design)

I am developing a board game design workshop here in Boston that starts in September. I am really looking forward to facilitating the workshop and learning from the participants. In preparing the course materials, I came across my notes from a board game seminar that I took at Gen Con a few years back. The seminar was hosted by Jeff Tidball. Jeff is a creative executive and award-winning game designer. His class made a lot of great points, but he made one pint really clear to me. Game design is about doing the work. You have to have a lot of “butt-in-chair” time.

How much time have you wasted trying to choose the best salad dressing?

Jeff also mentioned the paradox of choice. He recommended that we watch a TED Talk from Barry Schwartz on the subject of choice and try to apply it to game design. Barry does not talk about game design in his TED Talk, but his message about choice can easily apply. A game with no choice is not fun. A game with too many choices is also not fun. You need to find a balance and do not overwhelm your players with too many options. Choice is central to the art of game design. You need to decide which choices to present to players and which ones that can be removed from your game.

I recommend that you watch Barry Schwartz’s TED Talk, The Paradox of Choice, to get the full context and see how you can apply it to game design.

 

How to Reset the Arduino MKR1000

I am working on a project that uses the Arduino MKR1000 with ThingSpeak. While working on my code, I uploaded a bad sketch to the MKR1000. Every time that the board powers up, it starts running my bad code over and over and appears to be stuck in an infinite loop. I tried pressing the reset button, unplugging the USB cable, reboot my computer, reinstalling drivers, and unplugging the USB cable (for good measure). Nothing made the board responsive again. I found a forum post talking about the bootloader. The user mentioned that quickly pressing the reset button twice put the device into a good state by loading the bootloader. Success!