The Beagle boards
The Beagle family of boards began in late 2008 with the original Beagle board. The original board has quite a few characteristics similar to all members of the Beagle board family. All the current boards are based on an ARM core and can be powered by a single 5V source or by varying degrees from a USB port. All boards have a USB port for expansion and provide direct access to the processor I/O for advance interfacing and expansion. Examples of the processor I/O available for expansion include Serial Peripheral Interface (SPI), I2C, pulse width modulation (PWM), and general-purpose input/output (GPIO). The USB expansion path was introduced at an early stage providing a cheap path to add features by leveraging the existing desktop and laptop accessories.
All the boards are designed keeping the beginner in mind and, as such, are impossible to brick on software basis.
Note
To brick a board is a common slang term that refers to damaging a board beyond recovery, thus, turning the board from an embedded development system to something as useful for embedded development as a brick.
This doesn't mean that they cannot be damaged electrically or physically. For those who are interested, the design and manufacturing material is also available for all the boards. The bill of material is designed to be available via distribution so that the boards themselves can be customized and manufactured even in small quantities. This allows projects to be manufactured if desired.
Note
Do not power up the board on any conductive surfaces or near conductive materials, such as metal tools or exposed wires. The board is fully exposed and doing so can subject your board to electrical damage. The only exception is a proper ESD mat designed for use with Electronics. The proper ESD mats are designed to be only conductive enough to discharge static electricity without damaging the circuits.
The following sections highlight the specifications for each member presented in the order they were introduced. They are based on the latest revision of the board. As these boards leverage mobile technology, the availability changes and the designs are partly revised to accommodate the available parts. The design information for older versions is available at http://www.beagleboard.org/.
BeagleBoard Classic
The initial member of the Beagle board family is the BeagleBoard Classic (BBC), which features the following specs:
- OMAP3530 clocked up to 720 MHz, featuring an ARM Cortex-A8 core along with integrated 3D and video decoding accelerators
- 256 MB of LPDDR (low-power DDR) memory with 512 MB of integrated (NAND) flash memory on board; older revisions had less memory
- USB OTG (switchable between a USB device and a USB host) along with a pure USB high-speed host-only port
- A low-level debug port accessible using a common desktop DB-9 adapter
- Analog audio in and out
- DVI-D video output to connect to a desktop monitor or a digital TV
- A full-size SD card interface
- A 28-pin general expansion header along with two 20-pin headers for video expansion
- 1.8V I/O
Tip
Only a nominal 5V is available on the expansion connector. Expansion boards should have their own regulator.
At the original release of the BBC in 2008, OMAP3530 was comparable to the processors of mobile phones of that time. The BBC is the only member to feature a full-size SD card interface. You can see the BeagleBoard Classic in the following image:
BeagleBoard-xM
As an upgrade to the BBC, the BeagleBoard-xM (BBX) was introduced later. It features the following specs:
- DM3730 clocked up to 1 GHz, featuring an ARM Cortex-A8 core along with integrated 3D and video decoding accelerators compared to 720 MHz of the BBC.
- 512 MB of LPDDR but no onboard flash memory compared to 256 MB of LPDDR with up to 512 MB of onboard flash memory.
- USB OTG (switchable between a USB device and a USB host) along with an onboard hub to provide four USB host ports and an onboard USB connected to the Ethernet interface. The hub and Ethernet connect to the same port as the high-speed port of the BBC. The hub allows low-speed devices to work with the BBX.
- A low-level debug port accessible with a standard DB-9 serial cable. An adapter is no longer needed.
- Analog audio in and out. This is the same analog audio in and out as that of the BBC.
- DVI-D video output to connect to a desktop monitor or a digital TV. This is the same DVI-D video output as used in the BBC.
- A microSD interface. It replaces the full-size SD interface on the BBC. The difference is mainly the physical size.
- A 28-pin expansion interface and two 20-pin video expansion interfaces along with an additional camera interface board. The 28-pin and two 20-pin interfaces are physically and electrically compatible with the BBC.
- 1.8V I/O.
Tip
Only a nominal 5V is available on the expansion connector. Expansion boards should have their own regulator.
The BBX has a faster processor and added capabilities when compared to the BBC. The camera interface is a unique feature for the BBX and provides a direct interface for raw camera sensors. The 28-pin interface, along with the two 20-pin video interfaces, is electrically and mechanically compatible with the BBC. Mechanical mounting holes were purposely made backward compatible. Beginning with the BBX, boards were shipped with a microSD card containing the Angström Linux distribution.
The latest version of the kernel and bootloader are shared between the BBX and BBC. The software can detect and utilize features available on each board as the DM3730 and the OMAP3530 processors are internally very similar. You can see the BeagleBoard-xM in the following image:
BeagleBone
To simplify things and to bring in a low-entry cost, the BeagleBone subfamily of boards was introduced. While many concepts in this book can be shared with the entire Beagle family, this book will focus on this subfamily. All current members of BeagleBone can be purchased for less than 100 dollars.
BeagleBone White
The initial member of this subfamily is the BeagleBone White (BBW). This new form factor has a footprint to allow the board itself to be stored inside an Altoids tin.
Note
The Altoids tin is conductive and can electrically damage the board if an operational BeagleBone without additional protection is placed inside it.
The BBW features the following specs:
- AM3358 clocked at up to 720 MHz, featuring an ARM Cortex-A8 core along with a 3D accelerator, an ARM Cortex-M3 for power management, and a unique feature—the Programmable Real-time Unit Subsystem (PRUSS)
- 256 MB of DDR2 memory
- Two USB ports, namely, a dedicated USB host and dedicated USB device
- An onboard JTAG debugger
- An onboard USB interface to access the low-level serial interfaces
- 10/100 MB Ethernet interfaces
- Two 46-pin expansion interfaces with up to eight channels of analog input
- 10-pin power expansion interface
- A microSD interface
- 3.3V digital I/O
- 1.8V analog I/O
As with the BBX, the BBW ships with the Angström Linux distribution. You can see the BeagleBone White in the following image:
BeagleBone Black
Intended as a lower-cost version of the BeagleBone, the BeagleBone Black (BBB) features the following specs:
- AM3358 clocked at up to 1 GHz, featuring an ARM Cortex-A8 core along with a 3D accelerator, an ARM Cortex-M3 for power management, and a unique feature: the PRUSS. This is an improved revision of the same processor in the BBW.
- 512 MB of DDR3 memory compared to 256 MB of DDR2 memory on the BBW.
- 4 GB of onboard flash embedded MMC (eMMC) memory for the latest version compared to a complete lack of onboard flash memory on the BBW.
- Two USB ports, namely, a dedicated USB host and dedicated USB device.
- A low-level serial interface is available as a dedicated 6-pin header.
- 10/100 MB Ethernet interfaces.
- Two 46-pin expansion interfaces with up to eight channels of analog input.
- A microSD interface.
- A micro HDMI interface to connect to a digital monitor or a digital TV. A digital audio is available on the same interface. This is new to the BBB.
- 3.3V digital I/O.
- 1.8V analog I/O.
The overall mechanical form factor of the BBB is the same as that of the BBW. However, due to the added features, there are some slight electrical changes in the expansion interface. The power expansion header was removed to make room for added features. Unlike other boards, the BBB is shipped with a Linux distribution on the internal flash memory. Early revisions shipped with Angström Linux and later revisions shipped with Debian Linux as an attempt to simplify things for new users.
Unlike the BBW, the BBB does not provide an onboard JTAG debugger or an onboard USB to serial converter. Both these features were provided by a single chip on the BBW and were removed from the BBB for cost reasons. JTAG debugging is possible on the BBB by soldering a connector to the back of the BBB and using an external debugger. Access to the serial port on the BBB is provided by a serial header.
This book will focus solely on the BeagleBone subfamily (BBW and BBB). The difference between them will be noted where applicable. It should be noted that for more advanced projects, the BBC/BBX should be considered as they offer additional unique features that are not available on the BBW/BBB. Most concepts learned on the BBB/BBW boards are entirely applicable to the BBC/BBX boards. You can see the BeagleBone Black in the following image: