Roomblock fail to open port /dev/roomba due to failure in remapping roomba serial port

asked 2019-11-25 20:13:53 -0600

rw1725 gravatar image

Hi,

I installed roomblock according to the instructions (sudo apt-get install ...).

First I launched roscore, then on separate terminal, I launched roslaunch roomblock_bringup roomblock.launch. It gave me error that say it cannot bind to /dev/rplidar. So I remapped my rplidar serial port by executing "create_udev_rules.sh" located at "/catkin_ws/src/roomblock/roomblock_bringup/scripts". It worked for my rplidar as shown below.

pi@pi-desktop:~$ ls -l /dev | grep ttyUSB
lrwxrwxrwx  1 root root           7 11月 26 10:25 rplidar -> ttyUSB0
crwxrwxrwx  1 root dialout 188,   0 11月 26 10:29 ttyUSB0
crwxrwxrwx  1 root dialout 188,   1 11月 26 10:25 ttyUSB1

However, my roomba serial port (ttyUSB1) is not remapped. I checked my roomba vendor and product id,

pi@pi-desktop:~$ lsusb
Bus 001 Device 008: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 001 Device 006: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x UART Bridge / myAVR mySmartUSB light
Bus 001 Device 007: ID 05ac:021f Apple, Inc. Aluminum Mini Keyboard (JIS)
Bus 001 Device 005: ID 05ac:1005 Apple, Inc. 
Bus 001 Device 004: ID 05ac:0304 Apple, Inc. Mighty Mouse [Mitsumi, M1152]
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

I found that my vendor and product id setting in roomba.rules didn't match, so I changed it to

KERNEL=="ttyUSB*", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", MODE:="0777", SYMLINK+="roomba"

Then, I executed "delete_udev_rules.sh" to reset my udev rules and once again I executed "create_udev_rules.sh". Nevertheless, when I launched > roslaunch roomblock_bringup roomblock.launch, it gave me error as below.

pi@pi-desktop:~$ roslaunch roomblock_bringup roomblock.launch 
... logging to /home/pi/.ros/log/c96152be-0feb-11ea-944c-b827eba5a161/roslaunch-pi-desktop-2111.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

xacro: Traditional processing is deprecated. Switch to --inorder processing!
To check for compatibility of your document, use option --check-order.
For more infos, see http://wiki.ros.org/xacro#Processing_Order
deprecated: xacro tags should be prepended with 'xacro' xml namespace.
Use the following script to fix incorrect usage:
        find . -iname "*.xacro" | xargs sed -i 's#<\([/]\?\)\(if\|unless\|include\|arg\|property\|macro\|insert_block\)#<\1xacro:\2#g'
when processing file: /opt/ros/kinetic/share/roomblock_description/robots/roomblock.urdf.xacro

xacro.py is deprecated; please use xacro instead
started roslaunch server http://pi-desktop:45632/

SUMMARY
========

PARAMETERS
 * /raspicam_node/camera_frame_id: raspicam
 * /raspicam_node/camera_info_url: package://raspica...
 * /raspicam_node/framerate: 30
 * /raspicam_node/hFlip: True
 * /raspicam_node/height: 960
 * /raspicam_node/vFlip: True
 * /raspicam_node/width: 1280
 * /robot_description: <?xml version="1....
 * /robot_pose_ekf/freq: 10.0
 * /robot_pose_ekf/imu_used: False
 * /robot_pose_ekf/odom_used: True
 * /robot_pose_ekf/output_frame: odom
 * /robot_pose_ekf/publish_tf: True
 * /robot_pose_ekf/sensor_timeout: 1.0
 * /robot_pose_ekf/vo_used: False
 * /robot_state_publisher/publish_frequency: 5.0
 * /rosdistro: kinetic
 * /rosversion: 1.12.14
 * /rplidarNode/angle_compensate: True
 * /rplidarNode/frame_id: laser
 * /rplidarNode/inverted: False
 * /rplidarNode/serial_baudrate: 115200
 * /rplidarNode/serial_port: /dev ...
(more)
edit retag flag offensive close merge delete

Comments

1

This (incorrect udev rules) reads more like a bug report, and I would recommend you report those at the roomblock issue tracker.

gvdhoorn gravatar image gvdhoorn  ( 2019-11-26 02:31:02 -0600 )edit
1

Thanks for your comment! I reported about the incorrect udev rules at the roomblock issue tracker: tork-a/roomblock#14. But I still think the main problem is that I cannot remap my "/dev/ttyUSB1" (roomba) port to "/dev/roomba".

rw1725 gravatar image rw1725  ( 2019-11-26 04:15:10 -0600 )edit