The teaching a robot to speak

We installed Ubilinux and ROS on our Intel Edison board. Now we’ll study some features, which The Robotics Operation System gives us. Today we explore the sound play module.

There is no sound card on the Intel Edison board. Then we need to connect usb device. I bought New Sienoc USB 2.0 Virtual 7.1 Channel Xear 3D External USB Sound Card only for a dollar.
The system shows the card under the name C-Media Electronics, Inc. CM108 Audio Controller:
The dmesg command gives us:
We should add our account to the audio group for free access:

Try to:

We see our device under the number 1. Now we are trying to play a test file:

We can listen the radio as well:

We heard sounds. So we can set our sound card as default. For this open the preferences file:

Find such strings:

Input 1 instead of 0. Save and exit.
Enter into the alsa-base.conf:

Find the string:

and change to

We need to start Jack server for properly ROS working.
Unfortunately we can’t install jackd with apt-get because it demands dsub and X11. But we have no it. So we need to install gcc with the c++14 standard and compile jackd from repository.
We should change the repository list:

Change wheezy (jessie) to stretch anywhere.

Don’t forget to get repositories back.
Change stretch to wheezy or jessie.

Set this compilator as default:
Now we can compile the jackd:
Check for errors:
If everything is fine then we can create the catkin space:
Do not forget to install a voice generator. Now we try to start the sound_play node:
Can you hear? I’m glad to help.

Leave a Reply