The update rate of my OLED screen via IC2 is to slow to do proper animation. Redrawing the eyes on a new position every 12 times a seconds was out of the question.
Luckily the oled-js library supports a scroll method. So I went with that and implement the movement of the eyes by controlling the scroll direction and timing the start-stop sequence with temporal. Because the entire screen buffer is pushed around by the hardware, the eyes don’t need to be so simplistic as I initially made them. They could as well be a bitmap with a set of mesmerising cat eyes, but for now this will do.
You can see a clip of Felix and the dashboard here:
The code is now on GitHub: https://github.com/Traverso/JSFelix
I will add the template files for the design to the repository as well.
To control Felix I have a Sparkfun RedBoard wich corresponds pretty much to an Arduino UNO, and an Adafruit 16-Channel Servo Driver mounted on a proto board with a power switch and a start-stop button. Currently I’m using 4 AAA batteries to power the servos, but I have to do some research about LiPo’s (which I haven’t used before) to keep the weight down.