Improbotics is an improv theatre production in which an artificial intelligence performs improvised scenes with the other actors. This is accompanied by our robot Alex, who can move its limbs and head, even look at you angrily.
For this show, Ben from ERLNMYR asked me and Thomas Winters to make the EZ-Robot controllable with a web API. The official software talks to the robot's controller board with a custom protocol. During testing the controller board was found not reliable enough. For this the official protocol was implemented on a custom controller board, based on an ESP-32. This new board can control all thirteen servo motors and it can control the LED matrix eyes.
In order to get the LED matrix eyes to work, the I2C communication protocol had to be reverse engineered. After decompiling the official C# library, I found the necessary encoding and implementation was trivial. To program the necessary animations, I built a small website using React
More information on the project and how to book a show is over at the ERLNMYR show page.
For more info about the artificial intelligence of the project, you can check out Thomas Winters' project page about it.