The hardware featured on the BeagleBone Black is not like the hardware on your every day average hobbyist development board, and this is because the Black is much more than just a development board. Capable of running Linux, Android, Free BSD, and even QNX, the Black has been developed to fill a need in the market where developers want a native OS, along with a ton of I/O and features that will let them take their projects to the next level.
Processor - For its initial release, the board I have uses the Sitara XAM3359AZCZ processor in the 15x15 package. This is basically the same processor as used on the original BeagleBone. It is based on ARM Cortex A8 architecture, and uses the updated 2.0 revision with several fixes on this new processor as opposed to the original BeagleBone.
Eventually the board will move to the Sitara AM3358BZCZ100 device once it is released and readily available from TI. At this time, we do not have a date when this will happen. We do not expect any benefit from moving to this processor and there should be no impact seen as a result of making this move.
512MB DDR3L - A single 256MB x16 DDR3L 4Gb (512MB) memory device is used. The memory used is the MT41K256M16HA-125 from Micron, which will operate at a clock frequency of 400MHz, yielding an effective rate of 800MHz on the DDR3L bus, allowing for 1.6Gb/s of DDR3L memory bandwidth. The use of DDR3 DRAM provides a great performance increase over the RAM used on the Raspberry Pi.
32KB EEPROM - A single 32KB EEPROM is provided on the Sitara XAM3359AZCZ that holds the board information. This information includes board name, serial number, and revision information. This is the same as found on the original BeagleBone. It also has a test point to allow the device to be programmed and otherwise to provide write protection when not grounded.
2GB Embedded MMC - A single 2GB embedded eMMC device is on the board. The device connects to the MMC1 port of the processor, allowing for 8-bit wide access. Default boot mode for the board will be MMC1 with an option to change it to MMC0, the SD card slot, for booting from the SD card as a result of removing and reapplying the power to the board.
Simply pressing the reset button will not change the boot mode. MMC0 cannot be used in 8-bit mode because the lower data pins are located on the pins used by the Ethernet port. This does not interfere with SD card operation, but it does make it unsuitable for use as an eMMC port if the 8-bit feature is needed.
MicroSD Connector - The board is equipped with a single microSD connector to act as the secondary boot source for the board, and if selected as such, can be the primary boot source. The connector will support larger capacity SD cards, though no SD cards are provided with the board. Booting from MMC0 will be used to flash the eMMC in the production environment or can be used by the user to update as needed. The Black supports up to class 10 SD cards, with support for up to 64GB capacities.
As mentioned earlier, there are four boot modes:
- eMMC Boot - This is the default boot mode and will allow for the fastest boot time and will enable the board to boot out of the box using the pre-flashed OS image without having to purchase an SD card or an SD card writer.
- SD Boot - This mode will boot from the microSD slot. This mode can be used to override what is on the eMMC device and can be used to program the eMMC when used in the manufacturing process or for field updates.
- Serial Boot - This mode will use the serial port to allow downloading of the software direct. A separate USB to serial cable is required to use this port.
- USB Boot - This mode supports booting over the USB port.
The included boot switch allows for switching between the modes.
- Holding the boot switch down during a removal and reapplication of power without a SD card inserted will force the boot source to be the USB port and if nothing is detected on the USB client port, it will go to the serial port for download.
- Without holding the switch, the board will try to boot from the eMMC. If it is empty, then it will try booting from the microSD slot, followed by the serial port, and then the USB port.
- If you hold the boot switch down during the removal and reapplication of power to the board, and you have a microSD card inserted with a bootable image, the board will boot from the uSD card.
PC USB Interface - The board has a miniUSB connector that connects the USB0 port to the processor. This is the same connector as used on the original BeagleBone.
Serial Debug Port - Serial debug is provided via UART0 on the processor via a single 1x6 pin header. In order to use the interface, a USB to TTL adapter will be required. Signals supported are TX and RX.
USB1 Host Port - On the board is a single USB Type A female connector with full LS/FS/HS Host support that connects to USB1 on the processor. The port can provide power on/off control and up to 500mA of current at 5V. Under USB power, the board will not be able to supply the full 500mA, but should be sufficient to supply enough current for a lower power USB device supplying power between 50 to 100mA. You can use a wireless keyboard/mouse configuration or you can add a HUB for standard keyboard and mouse interfacing.
Power Sources - The board requires a low ripple 5V power source, and can be powered from four different sources:
- USB port on a PC.
- 5VDC 1A power supply plugged into the DC connector.
- A power supply with a USB connector.
- Expansion connectors.
Reset Button - When pressed and released, this causes a reset of the board. The reset button used on the BeagleBone Black is a little larger than the one used on the original BeagleBone. It has also been moved out to the edge of the board so that it is more accessible.
Power Button - Normally, a power button is nothing to spend much time on, but the power button on the Black is able to do several things. The button is located near the reset button, close to the Ethernet connector. This button takes advantage of the input to the PMIC for power down features. While a lot of capes (shields for the BeagleBoard system) have a button, BeagleBoard.org decided to add this feature to the board to insure everyone has access to some new features including:
- Interrupt is sent to the processor to facilitate an orderly shutdown to save files and to un-mount drives.
- Provides ability to let processor put board into a sleep mode to save power.
- Can alert processor to wake up from sleep mode and restore state before sleep was entered.
- Allows board to enter the sleep mode, preserving the RTC clock.
If you hold the button down longer than eight seconds, the board will power off, if you release the button when the power LED turns off. If you continue to hold it, the board will power back up completing a power cycle.
LED Indicators - There are a total of five blue LEDs on the board, these include:
- One blue power LED indicates that power is applied and the power management IC is up. If this LED flashes when applying power, it means that an excess current flow was detected and the PMIC has shut down.
- Four blue LEDs that can be controlled via the software by setting GPIO pins.
In addition, there are two LEDs on the RJ45 to provide Ethernet status indication. One is yellow, which indicates a100M Link up is present, and the other is green, which indicates data traffic when flashing. This is the same system used on Ethernet jacks everywhere.
CTI JTAG Header - A place for an optional 20-pin CTI JTAG header is provided on the board to facilitate the SW development and debugging of the board by using various JTAG emulators - this header is not supplied with the board. To use this, a simple connector will need to be soldered onto the board.
If you need the JTAG connector, you can solder it on yourself, no other components are needed. BeagleBoard.org says that the connector is made by Samtec and the part number is FTR-110-03-G-D-06 and can be purchased from Digikey.
HDMI Interface - A single HDMI interface is connected to the 16-bit LCD interface on the processor. The 16-bit interface was used to preserve as many expansion pins as possible to be used by the user. The NXP TDA19988BHN is used to convert the LCD interface to HDMI and convert the audio as well. The signals are still connected to the expansion headers to enable the use of LCD expansion boards or access to other functions on the board as needed.
The HDMI device does not support HDCP copy protection. Support is provided via EDID to allow the software to identify the compatible resolutions. This is where the Raspberry Pi outshines the BeagleBone Black as it supports full 1080p resolution at 30 frames per second. Currently the following resolutions are supported via the Black's software:
- 1280 x 1024
- 1440 x 900
- 1024 x 768
- 1280 x 720