during testing, this got quite tedious for me …until I had
another idea. What if I added just a tiny bit of artificial
intelligence to the mix?
Hello, My Name is Eliza
In 1964-1966, Joseph Weizenbaum at MIT and some
other early programmers developed a program called Eliza
(the computer psychotherapist). Eliza is a program that
allows the user to enter a sentence, then using some basic
pattern matching techniques, writes back to the user similar
to how a psychotherapist might respond. The user may say,
“How are you?” and Eliza may respond, “Why do you ask
how I am?” It also often repeats part or all of your
sentences, usually back as a question.
Since there is a library for the Eliza program for the
Processing language on the PC, I added her to my TTS
program. She adds her two cents after Pete gets done
talking by responding to what he just said. A lot of what
she says is gibberish, but she does it in a very high pitched
voice and can be very entertaining (even shocking).
After I got the software working together, I made a
very simple cross to hold the skeleton heads up and
mounted them to the top of two book shelf speakers. I
dressed the Talking Heads in hoodies that were made for
infants. Pete wears a blue one and Tony’s is camouflage. I
found both of them at Walmart. I also added a 20 watt
stereo amplifier that I bought from Adafruit.
I purchased a special kind of microphone called a
Shotgun microphone. Shotgun microphones are used on
camcorders or boom mics in television studios. Because of
their design, they muffle or ignore sounds coming from the
ambient environment. They have a very “aim-able” tip that
acts like a sound funnel, so you can point them at mostly a
single sound source. I figured that voice recognition would
be very difficult in the noisy environment of the Maker Faire
and I was right. It was.
The 2016 Bay Area Maker
So, Beer2D2, Pete, Tony, Cal Averas, Eliza, and I went
to the Maker Faire to see what was new and also to run a
booth. It took me a couple of hours to put my kids back
together and get them wired and fired up. On my first test,
I spoke into the microphone and, of course, nothing
happened. After rechecking the bird’s nest of wiring for the
audio volume and that all five programs were running, I
finally noticed that the microphone switch was turned off.
(Minor detail). So, I spoke into the (now turned on)
microphone again. This time, it worked. The system spoke
so loud that the folks setting up their booth across from us
were so frightened that they almost dropped what they
were setting up.
As they looked at me in shock (and maybe a bit of
disgust), I said, “Sorry, Pete gets a bit loud at times!”
Apparently, I had turned the volume control on the
amplifier the wrong way to full blast.
Some Programming Mods and
a Learning Experience
The night just before the event, I added a control word
that must be spoken before any of the sentences would be
listened to. The control word was “JARVIS.” So, for the
voice recognition sequence, first you say, “JARVIS,” then
you might say a sentence like “Water good,” and the
system would respond correctly with “Sometimes water is
worth a heck of a lot more than oil.” I wrote all of the
instructions and the 52 commands down on a sheet of
paper and awaited the victims ...
At first, the system worked pretty well, but as the event
started filling with thousands of humans it became more
finicky. In a really noisy environment, microphone
placement and aiming is critical for the best results. I
adjusted the microphone to try and accommodate both the
height of children and adults, so the adults had to lean over
a bit to speak into the end of it. I also found that humans
like to grab the microphone, which on a Shotgun mic
40 SERVO 09.2016
Beer2D2 and Cal Averas.
Playing with kids.