Wednesday, September 22, 2010

up and running

My BeagleBoard and accessories arrived from LiquidWare within a couple of days. I powered it with a wall-wort phone charger from an Android phone via the mini USB connector, and plugged in a USB hub with USB<->Ethernet and the USB stick, and the DVI cable to a monitor. After trying to install the netbook image, I was seeing CRAMFS errors on the monitor. It turns out the first image I downloaded and dd'd onto the SD card was a bad image - the MD5 sum didn't match.

I re-downloaded the image and verified the MD5 sum. However, now the BeagleBoard boot parameters were set up to boot from NAND, and not the SD card. So, I needed access to the serial port to change this.

I bought a Micro Connectors, Inc. "IDC10" connector from Fry's - a 10-pin female header to a 9-pin DB9F (PLU #257237, F02-203, barcode 1586000620); and a null-modem cable (DB9F <-> DB9F). Unfortunately this didn't work - I saw either nothing or garbage characters out of the BeagleBoard.

It turned out the "IDC10" connector I got was not wired up to the DB9 as expected. Pin 1 of the header went to pin 1 of the DB9; but Pin 2 of the header went to Pin 6 of the DB9! I cut the ribbon cable in half and re-routed the 3 wires (TX, RX, and GND), and was finally able to access the serial port.

This command (found on the Ubuntu wiki) got me booting from the SD card again:
OMAP3 beagleboard.org # mmc init
OMAP3 beagleboard.org # fatload mmc 0 0x82000000 boot.scr
...
OMAP3 beagleboard.org # source 0x82000000

This time, the Ubuntu netbook image booted from the SD card, and installed onto the USB stick out of the box - I now have a BeagleBoard running Samba, sshd, Ubuntu netbook desktop on the DVI monitor, and set up for remote building under NetBeans on my MacBook.

Here's the extra packages I installed:

sudo apt-get install openssh-server
sudo apt-get install samba
sudo apt-get install build-essential
sudo apt-get install libsdl1.2-dev
sudo apt-get install manpages manpages-dev manpages-posix manpages-posix-dev freebsd-manpages

Finally I purged this package, as it was taking a lot of CPU (update-apt-xapi showed 90+% CPU in 'top') and not needed for this type of embedded environment:
sudo aptitude purge apt-xapian-index

No comments:

Post a Comment