But I get errors when I attempt both,
when I run : opkg install usbserial.ipk,
Not downgrading package kernel-module-usbserial on root from 2.6.32-r100…
And when I run: opkg install ftdi.ipk
it says that it cannot satisfy the dependencies for kernel-2.6.29-omap1 *
My kernel version is 2.6.32.
From this discussion here I figured that I need to install the files myself on my kernel.
Can anyone point me to a link which will guide me on this process.
You’re right – the problem is that the version of the kernel modules (usbserial and ftdi) needs to exactly match the version of your kernel. Instead of downloading the .ipk files used with a different kernel version, you should download them using opkg.
First, check to see if those modules are already installed. (They are automatically installed on most recent distributions of Angstrom, but based on the kernel version, yours is quite old. You should consider downloading a new Angstrom image from http://www.angstrom-distribution.org/demo/beagleboard/)
If you connect the Arduino and it isn’t assigned a COM port by the Beagleboard XM (check the output of dmesg after connecting the Arduino), the kernel modules need to be loaded.
To load them manually:
depmod -a
modprobe usbserial
modprobe ftdi-sio
To load them automatically when you boot the Beagleboard XM:
So I followed your tutorial, and believe I was able to install all files needed.
The following didn’t work for me,
/opt/bin/depmod -a /opt/bin/modprobe ftdi-sio
(in fact there was no /opt directory on my angstrom). But I was able to add usbserial and ftdi_sio to modules and reboot it.
The prob was that the BBxm was not able to communicate with the Angstrom.
I was following the tutorial and I was able to communicate data from the arduino board to my desktop Ubuntu - worked with a problem. But when I plugged it into the BBxm the same didn’t happen.
This is the output of dmesg relevant to the arduino board.
[ 9491.236480] usb 2-2.5: new full speed USB device using ehci-omap and address 7 [ 9491.365417] usb 2-2.5: New USB device found, idVendor=2341, idProduct=0043 [ 9491.373016] usb 2-2.5: New USB device strings: Mfr=1, Product=2, SerialNumber=220 [ 9491.381195] usb 2-2.5: Manufacturer: Arduino (www.arduino.cc) [ 9491.387420] usb 2-2.5: SerialNumber: 6413138323135180A0A1
(I’ve attached the entire output).
The message does not specify a port assigned to the Arduino board. I checked /dev and couldn’t locate a tty port assigned to a USB.
Another concern is the following. On the arduino board, you have an LED that lights up when ever data is transmitted from the Board to the computer. This LED lights up when I connect the arduino to my desktop but not to my BBxm.
Strangely though, the other parts of the program (a few blinking LEDs) work fine in both cases. So I am guessing the problem is with the USB to serial communication on the BBxm.
Also I could not program the Arduino via my BBxm.
The tutorial on antipastohw is done with the Arduino Duemilanove, where as I use Arduino Uno.
From here I learned that Arduino Uno does NOT use an FTDI chip anymore. Instead they use an ATmega8u2 chip. So the FTDI drivers are not doing the job I guess.
This probably explains why serial communication isn’t occurring in the first place - and why the LED isn’t blinking.
This post says that the module needed is kernel-module-cdc-acm.
After installing it my Arduino Uno was working fine and communicating with the BBxm.
I’m sure a lot of Arduino Uno users (and eventually me) will run into the same problem, not realizing that a different kernel module is required. I’ll update my blog with this info.