Internet of Hamsters

From Just in Time

Revision as of 12:10, 7 March 2019 by Danny (talk | contribs)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Meet Ilya and pjotr.jpg

Meet Pjotr and Ilya, our Siberian dwarf Hamsters. Pjotr and Ilya are brothers and about a year old now. They get along reasonably well for two males living in the same cage. They like scrounging for hidden sunflower seeds in their cage. At night, they enjoy doing some exercise on their 3D-printed hamster wheel.

Oddly, and conveniently as we shall see, they have their own preferred orientation when running in the wheel. Pjotr likes to run to the left, while Ilya likes running to the right.

This running around at night is all good and well, but it does mean that I have no idea how much they are using the hamster wheel. This kept nagging me. Luckily, the problem is solvable and as it turned out, by standing on the shoulders of the giants of open source software and low-code frameworks this is solvable without too much technical hassle (though programming and soldering was still required).


For those in a hurry The TL;DR of the only relevant data: My two hamsters run at an average speed of 2.5 km/h; They reach a top speed of 4.9km/h and combined they run for about 3.5km each night (range so far is between 1.5km and 6km per night). The wheel is used almost exclusively between 1am and 5am.

Overview of the system

To start off, let's list the technologies used in this system:

  • Wemos D1 mini (clone) for a wifi-enabled microcontroller module
  • EspEasy firmware as a low-code solution to connect the hamster wheel to the network
  • mosquitto MQTT brokers the data that comes from the wheel
  • Node-Red is used to route MQTT data to several destinations and to do initial processing on it
  • Elastic Search and Kibana are used to store all hamster wheel events and to show dashboards