This little guy sits on my desks and increases my productivity. It does so in following ways:

  • Dances around with random interval
  • Looks at me with a smile
  • Makes a happy dance when my CI pipeline in Github Actions passes with no errors

It has 3 stepper motors on the custom PCB, slip ring to allow continuous rotation of the base, human detecting radar hidden under the face, 

Everything is controlled via Node-red Dashboard. Custom animation protocol was created to record an animation in Json. This allowed to program the movements and image changes as a chain of commands with a timestamp for each. (explanation is in animation.md on github as well as the software)

My favorite part of that project is how the screen looks. The bleeding effect combined with 2 polarization films has very unique look. Without the film and diffusor the Adafruit screen burns the eyes and does not look cute at all. With it the screen transforms to a retro looking sci-fi companions face.

Here is internal view

There is one big bearing, metal shaft on which the motor sits. The hollow slip ring goes around the shaft. 

Here is the view of motor and slip ring assembly

Inside there is a simple PCB that connects together the ESP32-C6, 3 TMC2209 drivers and a tiny dc-dc converter to step down a voltage from USB to 3.3V that is used by the screen and radar

Please note the cute cat drawing on the pcb. 

Here is the photo of three stepper motors fit inside before pcb was put and place