Ubuntu 11 (Natty) on Beagleboard

I have no idea what messed up the microSD that had Ubuntu 10.10.  I loaded up a new SD with the latest 11.04 image (zcat and dd) and that went pretty smoothly.  Meanwhile, I decided to put Angstrom back on that corrupted DS card (worse case it wouldn’t work) withmy development PC (used Linux Mint presently).  Worked fine, but went blank after firing up gdm.  I got the image from the Narcissus site and custom made it with gnome and other extras.  I probably should have stuck with the console version.  Fired up good when I redid it with just the console bare bones version.  Then I made the mistake of adding the gdm package.  I wasn’t sure at the time if that was the issue.  It was.  I can’t remember if the SED card that came with it ever got to the gnome desktop.  I’m betting it has something to do with fact it is using HDMI, but not that concerned as I have Ubuntu working like a champ.

I was hoping with version 11 that the clock speed issue with the XM board would be solved.  Apparently the new kernel also chokes with the 1GHz beagleboard.  I had to go into the boot.scr in the /boot folder to change the boot parameters from 1000 to 800 for the CPU.  After doing that the speed came back (it was appalling before changing as it literally took 5 or 6 seconds for the prompt to come up after opening the terminal.  Before I made the boot script change, the USB cam was hardly working – it was extra grainy and barely moved fast enough to have a frame rate.  Focus was effected too.  After the fix, the cam worked as it should.

One thing that must be done if you are trying to interface with a serial port with Ubuntu 11 – change the parameters for the ftdi device you use.   For some reason, the probe of the the USB serial device (in this case an Arduino Nano) came out wrong.  I could get an arduino sketch uploaded once after choosing /dev/ttyusb0, but then it stopped working.  It repeatedly said there was no such device.  Well there wasn’t – nothing resembling that in /dev folder.  What had to be done is a modprobe to the device with proper hex numbers.  If you do an ‘lusb’, you will get all your devices listed on the USB bus.  You need to pay attention to the vender ID and product ID.  Most likely the vendor ID is correct.  The product ID for me was off.  I had a 6001 for my product ID and I thing dmesg reported a different number.  Regardless, it is a good idea to run modprobe again with correct numbers.  Mine was:

sudo modprobe ftdi_sio vendor=0x0403 product=0x6001

After that, I could communicate with arduino and there was a ttyUSB0 entry in the /dev folder.  Now I just have to work on my flowchart and coding before I starting piecing things together.