Photo of Thinking Man Internet Printer
Photograph by Hep Svadja

With the press of a button, Thinking Man produces a random amusing thought from its onboard thermal printer. As it turns out, these thoughts are actually random post titles from Reddit’s popular subreddit Shower Thoughts that are downloaded over a Wi-Fi connection. The result is an objet d’art that can surprise you with its cleverness. It’s also a great project to explore using the Arduino to create an IoT device.

Putting the hardware together is straightforward. You can take these core electronics and turn just about any object into an IoT printer.

Because the entire response from Reddit is too large for the Arduino to store in memory, the microcontroller has to pick out the relevant data as it is received. The included source code does just that, and can be adapted to read data from anywhere on the internet or your home network.

An example of Shower Thoughts from Reddit.
An example of Shower Thoughts from Reddit.

With a little tweaking, you can make your own Thinking Man produce jokes, headlines, weather reports, or class schedules.

Thinking Man came about when a collection of odd parts became ingredients for an interesting project. I think the thermal printer worked well because it’s a unique way to communicate, and these thoughtful yet childish ideas are just spilling out of its head. I hope Makers can use my ideas and code to create something that excites them.