Skip to content
A ROS Package for Respeaker Mic Array
Python CMake
Branch: master
Clone or download
furushchev Merge pull request #15 from garaemon/portaudio
Depend on portaudio19-dev to install pyaudio
Latest commit 4fbe51f Aug 6, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cfg
config add udev rule Jun 13, 2018
launch add speech_to_text Apr 5, 2019
scripts support catkin_vitrualenv Apr 10, 2019
test support catkin_vitrualenv Apr 10, 2019
.gitignore
.travis.yml
CMakeLists.txt support catkin_vitrualenv Apr 10, 2019
LICENSE Create LICENSE May 29, 2018
README.md update Apr 4, 2019
package.xml Depend on portaudio19-dev to install pyaudio Aug 6, 2019
requirements.txt support catkin_vitrualenv Apr 10, 2019

README.md

respeaker_ros

A ROS Package for Respeaker Mic Array

Supported Devices

Preparation

  1. 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
  2. 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 udev

    And then re-connect the device.

  3. Install python requirements

    roscd respeaker_ros
    sudo pip install -r requirements.txt
  4. 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 

How to use

  1. 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_reconfigure

    To 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"

Use cases

Voice Recognition

Notes

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:

  1. Connect the device to the computer.

  2. Run the generator script.

    rosrun  respeaker_ros respeaker_gencfg.py
  3. You will see the updated configuration file at $(rospack find respeaker_ros)/cfg/Respeaker.cfg.

Author

Yuki Furuta <furushchev@jsk.imi.i.u-tokyo.ac.jp>

License

Apache License

You can’t perform that action at this time.