Utilities for flashing and enabling Kobuki's USB connection. This package contains tools for flashing the Kobuki's FTDI chip (usually done at the factory). The special firmware for the FTDI chip (USB to serial converter) enables it to appear as /dev/kobuki on the user's PC.
If kobuki_ftdi package is not installed yet:
$ sudo apt-get update $ sudo apt-get install ros-hydro-kobuki-ftdi
For more detailed information about installation, refer to the http://wiki.ros.org/kobuki/Tutorials/Installation
If it is the only FTDI device plugged in, simply
$ sudo /opt/ros/hydro/lib/kobuki_ftdi/ftdi_koboki
will do the job, if not - optionally add an argument with the current serial id of the FTDI chip you want to flash to the last command.
If things go bums up, then you will find an eeprom.backup saved in your current directory that you can reflash back to the chip (using ftdi_write_eeprom).
$ sudo /opt/ros/hydro/lib/kobuki_ftdi/ftdi_write_eeprom -f eeprom.req
$ sudo addgroup $USER dialout $ sudo cp 57-kobuki.rules /etc/udev/rules.d $ sudo service udev reload $ sudo service udev restart
Logout and log back in to make sure the dialout group permissions take affect.
WILL NOT WORK WITH libftdi 0.17!!!
libftdi needs to be upgraded to work for TYPE_R (can see FT232R on the iInterface variable in lsusb) FTDI chips. To workaround on lucid(Ubuntu 10.04), simply uninstall libftdi and download the sources for version 0.2/0.3 and above (might also work on 0.18 from emails I've read).
Might work out of the box on oneric(Ubuntu 11.10), but I haven't tried.
Make sure you use sudo, if not, it will only retrieve part of the information.
$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
...
Bus 002 Device 007: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
// Get the two numbers to the left of the FTDI device (bus and device number) (e.g. 002, 007)
$ sudo lsusb -v -s 002:007
Much more detailed information of a currently connected device.
$ ls /dev/ttyUSB* /dev/ttyUSB0 $ sudo udevadm info -a -n /dev/ttyUSB0