Everyone in the community wishes Otto to listen and talk (or any robot) and ask for it but is harder to make a reality than saying, or isn't?
Here are my leads, for the recognition part 🎤:
- There are integrated solutions there are shields like the EasyVR is it worth the price? 🤔
- Another module is this Arduino Voice Recognition Module - Geeetech
- When I was living in Shanghai I got this one LD3320 Chinese Speech Recognition and MP3 Player Module The problem is that might only recognize Chinese? I never took time to figure out how to make it work. At least will be good for learning Chinese! 😆
- Guess what? I actually manage to make on functional Otto to recognize simple commands in 2019 and for only 20 extra bucks, but there is a catch; it is limited to 22 fixed commands only and we have to call Otto "Hi Cell" every time we want the robot to listen, more details of how to make your own in this post
Ok that was the side of speech recognition which requires computation or a module to do the hard work of understanding an actual voice,of course you can make Otto react to noises with a simple sensor that can cover many applications actually.
Now to make "Otto talk" as many of you know is actually easier and many of you proved with cool remixes and rad robots 🔊:
- DFmini MP3 obviously, small and cheap already working in Blockly, only need some extra wiring and maybe soldering but maybe we should make a custom PCB shield for this, we just need to record lots of funny sentences or words into an SD card. Who wants to be the voice of Otto? 🤐
- Open Smart MP3 I just got one this week too, so we will see.
- There are more mp3 players out there in the shield shape or only the SD card etc. that we could combine with regular audio amps but I think this path is more complicated.
Pick one recognition module and one MP3 player module then you combined them and the result is like this:
This one below is just MP3 player but with OLED and I thought it was cool also the way it walks.
The KidBot robot is my favourite and the creator shared the source files, so we can learn how it was made!
An extra bonus tip, it is just to use a Arduino ISD1820 Voice Recorder & Playback Module,super simple and cheap. I did it once with a robot and is super fun for kids.
This is my resume so far of what I have research around the topic, let me know in the comments if I miss something and let's make Otto the smartest robot to have at home!
Simple & cheap ISD1820 Voice Recorder & Playback Module
This is a shortcut and cheapt solution here is how simple you can program this Arduino ISD1820 Voice Recorder & Playback Module, using Otto Blockly and any board.
1. Manual mode
Note that you can use it in manual mode meaning you only need a way to power Vcc and Gnd to make it work and you just press the rec button to record and any of the play buttons to play your recorded message.
2. ''Arduino'' Mode
You can program it by combining with Arduino sensors and and even other actuators to it by simply activating the extra signal pins that comes with it to control each command. combine it endless possibilities
the resistor is optional
It has pins for Vcc and Gnd and then 3 main signal pins , one for record and one for play/e (which is like play to end i guess) and play / l which you need to hold on to keep the audio running. There are other hacks like extend the play time you can do but keep it simple at start.
this code just turns on and off every 10 seconds
The real fun is when you combine it with other sensors for example I used the same touch sensor of Otto +plus
You can do more cool stuff of course like distance activation or light activation clap and even bluetooth to control from your phone you name it!
Basic wiring here you can connect to other pins as your code
For better audio quality add an amplifier like the LM386 for example.
There is another way using your phone to control your robot with your voice, but that is a long topic for another post, join the community to stay tuned.