Infoglobe Tutorial Pt. 3 — Software

Published April 9, 2023


Ok, welcome back for our final installment of the infoglobe tutorial series. If you've not been following along, here's links to the hardware mods that you'll need to have done before this post will be useful to you — part 1 and part 2.

If you've forgotten, here's the device we're hacking - the Olympia Infoglobe. I have described it too often, so we're gonna get right into the meat of this post.


Code

We're using the Wemos D1 mini ESP8266/ESP32 breakout board to control our globe, it looks like this.

Boot up your Arduino IDE and download the "IRremoteESP8266" library from the Tools->Manage Libraries-> then search for IRremoteESP8266. This library should be supported for ESP32s as well. Hit install, and twiddle your thumbs for a bit as it installs.

Now, copy past this gist into a new Arduino file and upload it to your ESP board.

This script is a demo showing the usage of all the functions we have to make controlling the Infoglobe easier. If you read through the loop() function, then you'll begin to understand the code and become able to extend it to your own beneficial/nefarious purposes.

If all went well and your ESP and Infoglobe are both powered up, you should see a "Hello World" message swirling around. You can change the default message on line 47, or you can open the Serial Monitor to upload a message to the Infoglobe immediately.

Example use case

I've personally written some code which lets the Infoglobe connect to my wifi and access this website I made for receiving notes from my friends. If you type a message and my globe is plugged in, I'll be able to see the message right on my Infoglobe. Pretty cool, right?

Website to connect digital friends to my physical environment

Website to connect digital friends to my physical environment

I know of other people using their infoglobes as a weather/disaster reporting station, or a way to visualize Alexa messages.

Alternatives to ESP

It should be possible to substitute in any microcontroller which is supported by one of the IRremote libraries, since it should work as long as the function names are identical.

More code?

There are some cool folks working on a more sophisticated platform for interacting with the Infoglobe, but I don't currently have the link for that. Hopefully I can update this soon with the link.

That's all folks!

What will you do with your Infoglobe? I'd love to see it! Please feel free to email me if you get it working :)

Happy hacking!

infoglobe software gist tutorial