[ros-users] ROS driver supporting Sparkfun IMU

Patrick Goebel patrick at pirobot.org
Tue May 3 03:06:49 UTC 2011


Thanks Anton,

Unfortunately, I get the same behavior, even after copy-and-pasting your 
first two rules and just changing the serial numbers to those of my 
USB2Dynamixel devices.  I am doing a "sudo service udev restart" after 
every change and I just now even tried rebooting but no luck.  I've 
tried the devices on a USB hub as well as plugged directly into the 
laptop's USB ports.

I'll have to try it on another machine tomorrow to see if it's just this 
laptop...

--patrick

On 05/02/2011 07:10 PM, Antons Rebguns wrote:
> Patrick,
>
> Not sure if that will help you, but here are udev rules I successfully
> use to connect to 4 USB2Dynamixel devices:
>
> # Lower arm motors (wrist, fingers)
> KERNEL=="ttyUSB*", SUBSYSTEMS=="usb", ATTRS{serial}=="A80077Sk",
> ATTRS{product}=="FT232R USB UART", SYMLINK+="wubble2LowerArm"
>
> # Upper arm motors (shoulder, elbow)
> KERNEL=="ttyUSB*", SUBSYSTEMS=="usb", ATTRS{serial}=="A80077Sl",
> ATTRS{product}=="FT232R USB UART", SYMLINK+="wubble2UpperArm"
>
> # Head pan and tilt motors
> KERNEL=="ttyUSB*", SUBSYSTEMS=="usb", ATTRS{serial}=="A600aoO5",
> ATTRS{product}=="FT232R USB UART", SYMLINK+="wubble2Head"
> KERNEL=="ttyUSB*", SUBSYSTEMS=="usb", ATTRS{serial}=="A9007DWW",
> ATTRS{product}=="FT232R USB UART", SYMLINK+="wubble2Head2"
>
> Anton
>
> On Mon, May 2, 2011 at 5:33 PM, Patrick Goebel<patrick at pirobot.org>  wrote:
>> This is an old thread that also pertains to creating udev rules for various
>> plug and play devices, particularly USB.  Everything has been working nicely
>> for a few months under Ubuntu 10.04 but today for the first time I tried to
>> set up a pair of udev rules for two devices of the same type that differ
>> only in their serial numbers
>>
>> The two devices are a pair of USB2Dynamixel controllers and the rules I
>> tried are:
>>
>> # The USB2Dynamixel on Pi Robot controlling AX-12 servos
>> SUBSYSTEMS=="usb", KERNEL=="ttyUSB[0-9]*", ATTRS{manufacturer}=="FTDI",
>> ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="A1001a6n",
>> SYMLINK+="usb2dynamixel12"
>>
>> # The other USB2Dynamixel on Pi Robot controlling RX-24 servos
>> SUBSYSTEMS=="usb", KERNEL=="ttyUSB[0-9]*", ATTRS{manufacturer}=="FTDI",
>> ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="A600cB3f",
>> SYMLINK+="usb2dynamixel24"
>>
>> The trouble is that whenever I plug in either controller, *both* devices get
>> created (/dev/usb2dynamixel12 and /dev/usb2dynamixel24) and they both point
>> to the same /dev/ttyUSB device which is /dev/ttyUSB0 if only one controller
>> is plugged in and /dev/ttyUSB1 if they are both plugged in.
>>
>> When I run
>>
>> $ udevadm info -q all --attribute-walk -n /dev/ttyUSB0
>>
>> when one or the other controller is plugged in, then diff the results I get:
>>
>> 54c54
>> <       ATTRS{devnum}=="7"
>> ---
>>>      ATTRS{devnum}=="8"
>> 61c61
>> <       ATTRS{serial}=="A1001a6n"
>> ---
>>>      ATTRS{serial}=="A600cB3f"
>> 72c72
>> <       ATTRS{urbnum}=="85"
>> ---
>>>      ATTRS{urbnum}=="113"
>> 99c99
>> <       ATTRS{urbnum}=="57"
>> ---
>>>      ATTRS{urbnum}=="62"
>> so you can see my serial numbers are correct.  Does anyone know how to
>> handle this situation?
>>
>> Thanks!
>> patrick
>>
>> http://www.pirobot.org
>>
>> P.S. I have attached the entire output from udevadm when one of the
>> controllers is plugged in.
>>
>>
>>
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>>
>>
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users



More information about the ros-users mailing list