As I stated on Saturday, most of my Beagle Board parts arrived, and even though I have presentations to work on for conferences two weeks from now, I couldn’t resist at least setting things up. I mean, how hard could it be?
As background, I administer the Meld embedded Linux community and work as a technical writer at MontaVista Software. I will be giving presentations on community and collaborative development at the Embedded Linux Conference and Linux Collaboration Summit in April in San Francisco. I will also be demonstrating several interesting projects running on the Beagle Board at ELC, including MontaVista’s new MID platform. That is, if I can get everything working!
As it turns out, bringing up the Beagle was both easier and harder than I expected. The board itself does not come with any cables or connectors, but there are some excellent resources in the Beagle community, including a very valuable shopping list for those of us who don’t know what we are doing.
I ordered the following parts, shown with source and prices in $US (not including tax and shipping). I’m also not including things I had around the house already, like network cables.
| part | price | source |
| Beagle Board system-on-chip, rev. B7 | 149.00 | DigiKey |
| 4GB SD Card with RevB Angstrom Demo | 15.00 | SpecialComputing |
| USB SDHC Reader | 9.00 | SpecialComputing |
| IDC10 DB9M Bulkhead Cable | 5.00 | SpecialComputing |
| USB Ethernet Hub Kit | 49.00 | SpecialComputing |
| 5mm Power USB Cable | 8.00 | SpecialComputing |
| USB Mini-A OTG Cable (6-in) | 9.00 | SpecialComputing |
| HDMI DVI-D Male Cable (6-ft) | 11.00 | SpecialComputing |
| BELKIN F5D7050 USB 802.11g Adapter | 24.99 | NewEgg |
| Link Depot USB-to-PS2 Converter | 3.99 | NewEgg |
| OCZ Speed 150x 2GB SD card | 10.99 | NewEgg |
The total cost of the extra parts was $145.97, almost exactly the same as the board itself. I highly recommend all of these providers (DigiKey, Special Computing, and NewEgg), as they all shipped the right products immediately and very well-packaged, and there were no financial snafus.
Astute embedded developers will notice one missing crucial item: a null-modem serial cable to connect the board to my PC and run a console. The Beagle has an IDC10 (aka Everex) pinset as its serial interface. As an old-school geek, I could have sworn I had a ton of these in a box somewhere. However, among the dead floppy drives, network cables with broken ends, old mice, parallel and IDE cables, PCI modems, etc I did not locate a serial cable with female ends, let alone a null-modem.
I should have purchased the IDC10-to-DB9F cable directly from DigiKey for $16, or at least the DB9F-DB9F null-modem cable from Special for a whopping $4. But I didn’t. So I wired one up, using some old phone wire, a serial-to-PS2 adapter that happened to have a female end, and the clipped-off DB9F end from a serial mouse. It’s ugly, but it works, and the Beagle requires only two lines, xmit and recv on pins 3 and 5. Remember to reverse them to make a null-modem. I found the correct pinout thanks to the active Beagle community.
No, I didn’t actually use duct tape, but I have some here just in case.
I also did not opt for the fancy acrylic case offered by Special Computing. Instead, my 11-year-old son made me a fantastic “case” out of Legos that looks (vaguely) like a dog. I will bring it to the conference. UPDATE 4/14/09: I brought it to the conference, and it was very well received.
Note that there is also an active discussion on the Beagle board and other TI reference boards on Meld.


Technorati
4 comments
Comments feed for this article
August 19, 2010 at 5:12 pm
us
Hello Jeff, thanks for submitting info here. I am planning to buy and play with beagleboard using Embedded linux. I am not sure what peripherals to buy. In addition to the board, do i need to buy 1)DB9F Null Modem (RS-232) cable (6-ft) 2) AC Power Adapter, 5VDC@2.5A, 18AWG
with 5.5mm Plug for Beagleboard ? Also, board comes with a battery which is slightly higher price than bare $145 board, do i need need the battery if i buy AC power adapter? or this battery is for different purpose? All I am trying to do is, install embedded linux to the board. Nothing fancy.
August 19, 2010 at 5:31 pm
jefro
Howdy & welcome to the brave new world of embedded Linux.
Working with this or any other embedded reference platform is difficult if you have no method for watching the console. You need to see what is going on with the board, otherwise you have no feedback at all, even onscreen if you have a monitor hooked up – many distros don’t drive graphics by default. For that reason, you will need some sort of serial connection. On the BeagleBoard C4 that means (1) a 10-pin adapter to convert the header pins to a DB9 serial, and then (2) either a null-modem serial cable or DB9->USB to get the signals into your host. For the xM, which is supposed to ship tomorrow, you can leave off the 10-pin adapter, but will still need the serial connection. Otherwise, there won’t be much to watch.
(For both boards, you can also use a JTAG connector if you know how to use such things.)
The battery that comes on (some) boards is not sufficient to run the board itself; it is only a button battery that keeps the clock aligned. Unless you are doing work that requires the clock to stay in sync between boots, you don’t need it. However, you will need a power source to actually operate the board. For this you have a few options:
- 5V AC adapter (recommended) to power your BB from the wall
- powered USB hub, with USB->5.5mm barrel adapter to power your BB from the hub
- USB mini-A cable, like the ones that come with digital cameras, to power your BB from the host
Note that for that last one, the board will boot in “USB gadget mode” rather than “USB host mode”, but unless you have a hub and hook other stuff up (like a keyboard, mouse, etc) you probably don’t need to worry about that distinction.
As for embedded Linux itself – there are many options. In my opinion, the best to start with is Angstrom (http://angstrom-distribution.org). Some distributors will send you an SD card with Angstrom pre-loaded, which means you avoid the headache of formatting the card yourself – but you also avoid learning the process in that case. (SD cards for OMAPs are nontrival.)
Other interesting options are Android (rowboat project), Ubuntu (netbook remix for ARM), MeeGo, emdebian, and several others. Some of these have their own partitioning requirements, so it is best to obtain a handful of SD cards.
If you let me know what exactly you want to do, I’d be happy to advise further. Are you interested in looking at a particular Linux distribution? Setting up a home server? Playing with digital signal processing?
August 20, 2010 at 3:14 pm
us
First of all, thanks for your prompt response. I was thinking to install either Ubuntu or Android on the beagleboard and write a device driver for some USB device I could find. This project is for me to learn device driver programming on Embedded Linux. So I dont really care what distribution as long as kernel is 2.6.
so from what I gathered these are the items I need:( I am referring to page: https://specialcomp.com/beagleboard/order.htm)
1. BeagleBoard RevC4
as-is from factory with 5.5mm Plug for Beagleboard. no RTC Battery installed
JTag debugger: (these are for JTag debugger or connect to host or both work on same signal (cable))??
2. USB to DB9M RS-232 (PL-2302) cable (6-ft)
3. IDC10 to DB9M bulkhead (RS-232) cable.
(but both serial look male)
Power:
3. AC Power Adapter, 5VDC@2.5A, 18AWG
If I do not connect to a VGA or HDMI monitor, is there some emulator (hyperterm, realterm) to see U- boot loading etc from the host)??
Thanks again.
August 20, 2010 at 3:32 pm
jefro
Specialcomp is a great place to order from.
For device driver development I would highly recommend Angstrom over Ubuntu or Android, as Angstrom will provide you with a real Linux environment, a terminal, etc. You won’t be able to ssh into Android, for example.
The RS232 cables enable you to look at and interact with a console. Hooking up a monitor will enable you to see what is going on in X, but won’t let you interact with the board at the console level. As an example, when booting Angstrom, if I have a display hooked up I see the Angstrom boot screen and then a login screen, which is only useful if I also have a keyboard & mouse attached through a USB hub. I can see everything on the console with the serial connections using a terminal emulator. Here is an article I wrote last year that explains: http://www.ibm.com/developerworks/library/l-beagle-board/index.html
Unless you are experienced with JTAG, I wouldn’t recommend spending money on a JTAG debugger at this point.
Good luck & let me know how it goes