A ROS Package for Respeaker Mic Array
-
Install this package
mkdir -p ~/catkin_ws/src && ~/catkin_ws/src git clone https://github.com/furushchev/respeaker_ros.git cd ~/catkin_ws source /opt/ros/kinetic/setup.bash rosdep install --from-paths src -i -r -n -y catkin config --init catkin build respeaker_ros source ~/catkin_ws/devel/setup.bash
-
Register respeaker udev rules
Normally, we cannot access USB device without permission from user space. Using
udev, we can give the right permission on only respeaker device automatically.Please run the command as followings to install setting file:
roscd respeaker_ros sudo cp -f $(rospack find respeaker_ros)/config/60-respeaker.rules /etc/udev/rules.d/60-respeaker.rules sudo systemctl restart udevAnd then re-connect the device.
-
Install python requirements
roscd respeaker_ros sudo pip install -r requirements.txt
-
Update firmware
git clone https://github.com/respeaker/usb_4_mic_array.git cd usb_4_mic_array sudo python dfu.py --download 6_channels_firmware.bin # The 6 channels version
-
Run executables
roslaunch respeaker_ros respeaker.launch rostopic echo /sound_direction # Result of DoA rostopic echo /sound_localization # Result of DoA as Pose rostopic echo /is_speeching # Result of VAD rostopic echo /audio # Raw audio rostopic echo /speech_audio # Audio data while speeching
You can also set various parameters via
dynamic_reconfigure.sudo apt install ros-kinetic-rqt-reconfigure # Install if not rosrun rqt_reconfigure rqt_reconfigureTo set LED color, publish desired color:
rostopic pub /status_led std_msgs/ColorRGBA "r: 0.0 g: 0.0 b: 1.0 a: 0.3"
The configuration file for dynamic_reconfigure in this package is created automatically by reading the parameters from devices.
Though it will be rare case, the configuration file can be updated as followings:
-
Connect the device to the computer.
-
Run the generator script.
rosrun respeaker_ros respeaker_gencfg.py
-
You will see the updated configuration file at
$(rospack find respeaker_ros)/cfg/Respeaker.cfg.
Yuki Furuta <furushchev@jsk.imi.i.u-tokyo.ac.jp>
