Bluetooth Hacking?

From OpenBeacon

Jump to: navigation, search
OpenPCD 1 revision v0.4 PCB - above image is also available in high resolution

Description of OpenPCD Hardware


Our open RFID hardware projects

Hardware Revisions


There was a Version 0.1, of which only five PCB's were produced, only two of them populated. The PCB was still 100x80mm in size, and had three full-sized BNC jacks instead of the U.FL jacks introduced by later versions. Also, instead of a JTAG port, it contained lots of user-accessible GPIO pins.


This is the first version in the 80x80mm form factor. Changes from v0.1 were many, most notably the conversion to U.FL for the analog signals to save footprint size. Only five of units of v0.3 have been produced, of which three are used for development, and two were sold to customers. The 20-pin GPIO header was replaced by a standard ARM JTAG header.


This is the first version that was publicly sold in our Webshop.

Apart from minor differences, the USB Pull-Up logic was inverted and shifted to PIOA16. Support for v0.4 was added in Subversion revision 262. In order to have USB working on a v0.4 reader, you must use Firmware revision 262 or later.

Familiarizing yourself with OpenPCD Hardware

This section is intended to give you a short overview about those parts of OpenPCD that are meant for user interaction, e.g. attaching additional hardware, measurement instruments, ...

Unless otherwise specified, this document refers to Hardware revision v0.4

The connectors

USB Mini-B

The USB Mini-B connector is used to attach OpenPCD to the host computer. Apart from data signalling, OpenPCD also draws its power from USB.

WARNING: OpenPCD does currently not yet implement power saving features (Suspend/Resume).

SAM-BA and Reset

This is a four-pin header. Pin 1 is marked by a small arrow on the component side of the PCB. Use a jumper on pins 1 and 2 to overwrite the existing firmware image with the SAM-BA Bootloader.

Pins 3 and 4 can be shorted in order to externally trigger a reset of the device.


This is a six-pin header which is used to access the DBGU Unit of the AT91SAM7. This unit is mainly used to display textual debug information from the firmware.

Apart from the RxD/TxD signals, the header also carries GND and 3.3V. This can be used to power an external RS232 level shifter.

The CTS and RTS pins are shorted on the PCB, since the DBGU unit does not support hardware flow control.

If you have purchased one of the USB-Serial-Debug cables (TTL-232R-3V3) from the OpenPCD Webshop, they will have a matching pinout.

If you are using your own converter, please make sure that it does not itself supply 3.3V to pin 3 of the header!

Please make sure you always connect pin 1 of the plug (marked by a black wire and a hard-to-make-out arrow on the plug) with pin 1 of the header (marked by a small triangular arrow on the PCB).

The parameters for serial communication are 115200/8/N/1.


This five-pin header is interconnected with the ADC (Analog Digital Converter) of the AT91SAM7. During normal OpenPCD operation, the ADC inputs are not used. Feel free to use them in your own application.

Since use of this connector is optional, the header is not normally populated by the OpenPCD units you can buy at the OpenPCD Webshop.


This four-pin header gives access to the TWI (Two-Wire Interface) unit of the AT91SAM7. Much like the ANALOG header described above, this is purely for future extensions, e.g. by adding an I2C I/O extender, or a seven-segment display driver. The pins can also be firmware-configured as GPIO pins, in case you only need two.

Since use of this connector is optional, the header is not normally populated by the OpenPCD units you can buy at the OpenPCD Webshop.


This 20-pin header can be used to access the JTAG port of the AT91SAM7. This is mainly used for low-level firmware debugging and should only be neccessarry if you run into serious problems with your own firmware or with your modifications to the official firmware.

Since use of this connector is optional, the header is not normally populated by the OpenPCD units you can buy at the OpenPCD Webshop.


This three-pin header can be used to attach a different antenna. If you do so, you will have to remove the two 0-Ohm resistors R15 and R16, too. Please note that every antenna requires specific matching to the RC632. Please refer to the respective data sheets and application notes of Phillips.


U.FL jack. FIXME.


U.FL jack. FIXME.


The idea of this U.FL connector is to provide the ability to generate software-controlled trigger signals, e.g. for triggering an oscilloscope attached to MFOUT or AUX.

Other components


The bootloader button can be used to force the firmware to boot into DFU rather than the normal application. Usually, an application firmware can also be switched to DFU mode via software commands from the USB host. However, in case your application firmware is broken, this button might come handy.

To use it, unplug the USB cable, press the button, keep the button pressed while re-plugging the USB and then release the button.

LED1 (green)

LED1. Its function is firmware-specific. DFU mode uses it as 'transfer in progress' indicator.

LED2 (red)

LED2. Its function is firmware-specific. DFU mode uses this as power-on indicator.