Software apps and online services
Hand tools and fabrication machines
Since the begins of robot invention, we as human always wanted them to be control or react by just talking to them. Sci-Fi movies have made that also a quite common "requirement" that you expect to see in any interactive robot. Otto has not been the exception, since we launched, community members (Otto Builders) and a lot of people have ask us, if Otto can respond to voice commands or it will... The thing is that is not a simple science to make your robot understand what you said and convert into signals, interpret and finally do certain actions, it usually require powerful processors and expensive electronics.
Just imagine it this way, can you put a big Alexa inside Otto? we already see big limitations in the proportions and technology compatibility, so is not as simple as just like: o "just do what amazon did" funny enough, what is the price of Alexa? that will be added into Otto and more importantly talking about usability, Do you want your Otto to order pizza for you? or all the other smart stuff she does?maybe at the end of the day you and me just want Otto, to be able to do the movements when you speak them.
If we address it this way then there is something we can do now and we do not have to wait for the voice recognition technology of Alexa to get cheaper or smaller, if ever does.
It took a while to research, find and even test some modules that we saw online and tried to keep it simple compatible with Arduino nano so that we did no need to change what we have done with Otto code or re-create completely, and of course something portable and independent, that we did not need to pair to a computer or cellphone. There are actually plenty options out there, but many of them were either complex, big (specially the microphone) or pretty expensive.
We found out that our friends at Seeed studio have an affordable and small speech recognition module: So with reach out at them and they like the idea a lot so they collaboratively support us with their components, (learn more about them at the end of this post). We have accepted the challenge to use voice recognition technology with #OttoDIY.
Their module use voice to interact with things around you can always be one of the most interesting things of IoT application, this is their description: we wanted to make something more different and cooler. Not everybody needs an advance smart device to build voice control project, sometimes people only need a simple solution, here we would like to introduce the first generation of grove speech recognizer to realize your dream of smart home easily and fast. So basically it line up exactly with what we needed!
Grove speech recognizer is a designed for voice control application such as smart home, smart toy, voice control robot, anything you would like to control through voice, it worth a try. The board includes a Nuvoton ISD9160, a microphone, 1 SPI flash, 1 grove connector, 1 speaker connector and 1 led to reflect to your voice.
Nuvoton ISD9160 is (SoC) Chipcorder that based on Cortex™-M0, it provides strong and economic solution for voice control applications. ISD9160 is not the only amazing thing in this grove. Let’s look at the microphone. Remember the uncomfortable moment when you have to speak directly and closely to the voice recognizer device to make sure it can hear you? It won’t happen this time! The microphone on grove-speech recognizer is Omni-directional, which means that whether a user speaks into the microphone from the front, back, left or right side, the microphone will record the signals all with equal gain.
This speech recognizer can recognize 22 pieces of commands including 'start', 'stop', 'Play music' and so on. Every time it recognizes a command, it will return a value and then the loudspeaker that connected to it will repeat the command. This value can be used to control other devices like motor, music player. We have tested it for hours to make sure it possesses a high recognition rate and a very low false trigger.
When it recognizes the awaken word, LED turn red, then you can say the command word, if it recognize the command word, LED will turn blue.Features:
- Local Voice Recognition
Very low rate of false triggering
- Very low rate of false triggering
Speaker connector(JST2.0, speaker is not include)
- Speaker connector(JST2.0, speaker is not include)
- Built-in microphone
3.3/5V working voltage
- 3.3/5V working voltage
22 recognition entry
- 22 recognition entry
Default Baudrate: 9600
- Default Baudrate: 9600
All of this for only 19.5USD. Pretty good features for the price right!?
Of course with lower cost comes lower functionalities and limitations translated into a # of specific recognition messages/commands we can use, but for a quick start into voice control and Otto is perfect. With simple programming and libraries already provided, we adapted into our Otto code and look what we did in very short time!
We decided to make Otto entirely of Seeed studio components, to also prove how flexible is our robot design to adapt to any electronic component/feature you want to put in and test the grove connection system, that resulted into a much easier to connection of the components especially with the new shield for Arduino Nano:
You can decide what to use but the voice recognition is fundamental, then you just need to 3D print our most basic Otto, 3D files here: (https://wikifactory.com/+OttoDIY) everything fit just right inside, but of course is up to you maybe you can add to any of the remixes family members of Otto (https://wikifactory.com/+OttoDIY/projects)
And this is just the beginning.
Would you like us to continue exploring the possibilities of voice recognition or maybe Otto does not need that?Would you have done it in a different way?
Do you have ideas or thoughts you would like to share? please comment bellow.