Twin Tweaks ...
THE EYE OF SAURON SEES ALL …
CHOOSY DEVELOPERS CHOOSE GIF.
together in VisiGenie wasn’t even really fit for a Jack-o-Lantern — much less an expressive automaton. One of the
great things about the smart modules is that with the SD
cards, you go a little crazy with whatever you want to load
ADDING SOME EXPRESSIVE RANGE.
70 SERVO 05.2013
onto the modules – photos, animated GIFS, even full-on
video files. What we were looking to do was give our robot
a face, and we had two screens to do it.
Our widescreen LCD module looked like a good size for
a mouth, and our smaller square OLED module seemed
appropriate for an eye. With only one OLED module for an
eye, it looked like we would be making a Cyclops. We knew
our bot would be at a little bit of a disadvantage with just
one ocular addition, so we knew we had to make it count.
So, what better way to do that than to make the bot’s one
eye the all-seeing Eye of Sauron? Sometimes one eye is all
you need (though thankfully our bot wouldn’t need to fix
its gaze on an entire Fellowship).
We tracked down some appropriate pics on the
Internet with the goal of loading a few still images onto the
module. At first, we would simply have the images cycle
through a slide show of sorts after a pre-set delay. After
getting that sorted out, we could replace the simple pause
functions with reactions to sensor input.
As with any good project, we got sidetracked along the
way. Finding some animated GIFs of the Eye made us
wonder how animation would look on the screen. We
downloaded the GIF, loaded it onto the SD card, imported
the image into Visi, pasted in the code, then compiled and
downloaded. The screen beamed to life, and we were
delighted to see the Eye of Sauron burn with watchful fury
on the small screen.
The animation was crisp and smooth, and
demonstrated that the tiny OLED is more than capable of
handling any sort of display need a user might have.
The Two Modules
After loading the GIF onto the OLED screen, we
wanted to continue with our planned path of loading on
several images to the screen, with the eventual goal of
having the images change according to sensor input.
This leg of the project demanded a lot more work with
the software, and we picked up some tips on how to best
work with the Visi interface. Unlike the flat effect of our
bot last time, we wanted a robot with some emotional
range. The best way to do that would be to use more than
one simple image for the bot’s face.
A good first step along the path to facial expressiveness
was to put two pictures onto the screen which could
change as if the bot were changing expressions. Since we
already had some inspiration for the look of our bot’s all
seeing eye, we tracked down two terrifying pictures of the
sinister Eye of Sauron to load onto the µOLED-128-G2
For starters, we just wanted the module to switch from
one picture to the other after a few seconds, just to
experiment with two different expressions.
Using the toolbar in the Visi interface, we loaded the
first picture onto the screen. We resized it appropriately,