Thursday, September 15, 2016

Internet of Things (IoT) Here I Come!

Taking inspiration from Jie Qi and Natalie Freed, I am embarking upon a quest to create a wifi connected book of my own.  While I'm only at the start of my inquiry, I've already got a few ideas swirling.

Photon Unboxing
After reading details about Natalie Freed's Tide Notebook at NEXMAP, I discovered that she used the SparkCore microcontroller to connect her book to the web.  In particular, she accessed tide data and used it to control LEDs mounted inside.  The newest iteration of SparkCore, the Particle Photon microcontroller, can also send or receive data through Particle Build.  Paired with a free open-source Internet of Things (IoT) platform called ThingSpeak, anyone can access or share data and use it to control physical objects, such as the LEDs in a book, wearable, or other type of physical object...even without an MIT degree!

Hello World!

My Remembrall
One enticing project that uses a Photon, in combination with several cloud-based apps, is the Internet Connected Remembrall, a physical orb that glows red when its owner neglects something on their to-do list.

By following the directions and really thinking about what each app was communicating with the other, I began to slowly understand how the Internet of Things (IoT) works on a small scale.

Once I got my own Photon connected to the Internet, I was able to start taking the code apart and changing it.  I literally squealed when my LED, connected to a hashtag on Twitter, turned on for the first time!

I've started learning a bit about the role of Web Hooks and JSON (Java Script Object Notation), both of which are aspects of connecting physical objects with data. Thanks to the excellent documentation in the Remembrall Instructable, I now have a road map for making my first wifi connected object tied to the data I choose.

Another thing that I've been playing with is creating an object connected via Particle Build to ThingSpeak's CheerLights channel.  In case you haven't heard of CheerLights yet (I just did), data, generated through people's tweets around the world, can be harnessed to control the color of LEDs in your own physical objects.  For example, if I send a tweet to @CheerLights and request a specific color, a Web Hook triggered by the Twitter feed will signal a change in the LED color on all of the objects connected to the data feed, including my own.

If I connect my own object to the data (in this case, a Photon with a Spark Fun Wearable Shield attached to a neopixel), I can see the light color change in near real time!