One of the pleasures of having a robot in your home is the humorous moments when the robot decides to talk unexpectedly.
My wife and I were discussing something just now, when out of the blue Carl announced “??? STOP”. We were not talking to Carl, nor even thinking about him, but he up and decided to interject himself into our consciousness.
Part of speech recognition is knowing the conversation context which allows word prediction and ambiguity resolution, so when Carl just up and starts talking we often do not catch every word he speaks. Additionally he is using the not very clear espeak-ng text to speech engine, and also it has been a long time since I programmed his dialog functionality so I don’t remember what I taught him to say.
Out of curiosity I reviewed his speech.log to find that he had blurted out “Executing STOP”. Then I reviewed his voice.log which records what he “understands” from what he hears and found he thought he heard “I don’t list you stop”.
At that point I knew that I was to blame for my ADHD robot’s outburst. It was during Carl’s “quiet time” the night before, that I had shut Carl down to change his batteries, and his cold boot “return to the living” was silent. As a result I did not remember to tell him “Hey Carl, Go To Sleep!” to which he would have responded “Going to sleep - Listening only for ‘WAKEUP’”.
So Carl was fully “awake”, obediently listening for the wish of his master. He thought he heard me telling him to “stop” and dutifully executed the STOP command even though he was not moving at that moment.
If Carl is awake when I command “Hey Carl, Wakeup!” he will respond “I’m already awake”. Luckily he doesn’t have a snarky “I’m already stopped”.
Moral: Don’t forget to tell your robot “Go To Sleep”