ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Presumably you have two USB serial port adapters, one for Turtlebot and another for the Razor IMU. These will have different device paths; probably /dev/ttyUSB0 and /dev/ttyUSB1 (or maybe /dev/ttyACM0). /dev/ttyS0 corresponds to a built-in serial port (not a USB serial port).

You need to figure out which software device corresponds to each physical port, and then configure the ROS nodes to use those software devices.

With USB serial adapters, I find that the easiest way to do this the first time is to unplug all of the devices, and plug them in one at a time. Each time you plug in a new USB serial device, you should see a new file show up in /dev ; this is your new device. (you can also look at the logs in /var/log/syslog or the output from the dmesg command to see the log messages when new devices are plugged in).

Devices don't always get the same names after a reboot, so once you know which hardware device corresponds to a software device, there are lots of tutorials on google for how to create UDEV rules which assign the same device name on every boot:

  • https://www.google.com/search?q=consistent+USB+serial+port+udev+rule&oq=consistent+USB+serial+port+udev+rule
  • http://hintshop.ludvig.co.nz/show/persistent-names-usb-serial-devices/
  • https://www.embeddedrelated.com/showarticle/1053.php
  • https://indilib.org/support/tutorials/157-persistent-serial-port-mapping.html