Over a million developers have joined DZone.

IoT & Dogs: How to Build a Sleep Tracker Using Tessel and Twilio

DZone's Guide to

IoT & Dogs: How to Build a Sleep Tracker Using Tessel and Twilio

· IoT Zone ·
Free Resource

Digi-Key Electronics’ Internet of Things (IoT) Resource Center Inspires the Future: Read More

Sometimes you just have to track the sleep habits of the living things around you. For example, maybe your children wake up at mysterious and unexpected times. Otherwise, in the case of Ricky Robinett at Twilio, you might just be wondering how much your dog sleeps while you're away. One solution, as it turns out, is a sleep tracker built with Tessel and Twilio.

Robinett has written a solid tutorial on how to build such a thing, and all it requires is a Twilio account (of course), along with a Tessel microcontroller and accelerometer module, a USB battery pack, and a somewhat cooperative dog. From there, Robinett walks you through everything you'll need to know: setting up Tessel and sending SMS, using Twilio libraries, interacting with the accelerometer, and so on. Then, once you're all set up, you're ready to take an action rarely described in technical circles:

Deploy to Your Dog

The end result (depending on your personal choices regarding dog-clothing) is something like this:

(via Ricky Robinett at Twilio)

It keeps you updated via text message on your dog's sleeping habits by generating an update after five minutes without movement. So, if your dog is just a particularly lazy creature who spends extended periods of time staring, stationary and wide-eyed, at a fixed point on the wall, it sounds like you might get some inaccurate numbers. In general, though, it's a cool idea: regular updates letting you know how long your dog has slept.

So, as long as nobody hacks your dog and starts running Doom on it (as those pesky hackers are known to do these days), it looks like a fun project.

Digi-Key’s IoT Component Selector is your one-stop-shop for the IoT


Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}