iRobot Create and BeagleBoard "Failed to open port /dev/ttyUSB0"
Hello,
I am trying to launch iRobot Create using BeagleBoard xM revC with Ubuntu ARM installed. I downloaded sources of turtlebot stack, fulfilled all needed dependencies for turtlebotnode package and rosmade it. After I run command rosrun turtlebotnode turtlebot_node.py i get following output:
ubuntu@omap:~$ rosrun turtlebot_node turtlebot_node.py
/home/ubuntu/ros/turtlebot/turtlebot_node/nodes/turtlebot_node.py:54: UserWarning: roslib.rosenv is deprecated, please use rospkg or rosgraph.rosenv
import roslib.rosenv
[INFO] [WallTime: 1344413441.546115] serial port: /dev/ttyUSB0
[INFO] [WallTime: 1344413441.554904] update_rate: 30.0
[INFO] [WallTime: 1344413441.560733] drive mode: twist
[INFO] [WallTime: 1344413441.566837] has gyro: True
[INFO] [WallTime: 1344413441.918765] self.gyro_measurement_range 150.000000
[INFO] [WallTime: 1344413441.924991] self.gyro_scale_correction 1.350000
[ERROR] [WallTime: 1344413445.109409] Failed to open port /dev/ttyUSB0. Please make sure the Create cable is plugged into the computer.
My USB-serial cable seems to work fine. Here's output of lsusb:
ubuntu@omap:~$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter
Bus 001 Device 005: ID 0cf3:1006 Atheros Communications, Inc. TP-Link TL-WN322G v3 / TL-WN422G v2 802.11g [Atheros AR9271]
I tried solution presented here. My rule line was:
ATTRS{idProduct}=="7523",ATTRS{idVendor}=="1a86",MODE="666",GROUP="turtlebot"
I created group turtlebot, added user ubuntu to it and restarted udev. After ls -la /dev/ttyU* i get following:
ubuntu@omap:~$ ls -la /dev/ttyU*
crw-rw-rw- 1 root turtlebot 188, 0 Dec 31 1969 /dev/ttyUSB0
So the permissions should be fine. I tried minicom to check if I get anything from Create, and some trash pops out on the screen, so data is transfered through the USB-Serial port (what's more, the fact that I can use minicom without sudo prefix indicates that permission to use ttyUSB0 port is granted to user ubuntu). Cables seems to be fine as well, because i can easily connect to Create from my laptop (after proper permissions change).
I would greatly appreciate any help.
EDIT: I properly set serial port properties (baud rate 57600 8N1, no flow control) and was able to receive clear output from my Create. So the system properties (permissions and stuff) are set correctly. I suppose there has to be something wrong with the package itself.
Asked by venzlav on 2012-08-07 23:06:16 UTC
Comments
You say you get trash through the serial port in minicom? During charging (in default, start-up Passive mode), you should be getting clear, regularly repeating battery status messages - something like: "bat: min 124 sec 24 mV 15864 mA -85 deg-C 43". Do you get that in minicom?
Asked by rlinsalata on 2012-08-11 20:46:03 UTC
I can't do that, because i don't have batteries in my Create. I am powering it from DC power supplier (for now at least). Beside that, the minicom example was brought up to show, that there is a communication between Create and BeagleBoard and there still isn't any when turtlebot_node is launched.
Asked by venzlav on 2012-08-23 23:01:38 UTC