Skip to the content
PCBKitNew board
2 layers113.5 × 16.5 mmBeacon pcb, the printed circuit board in 3D

Bluetooth Firmware for the DC27 DEFCON Furs badge

Size
113.5 × 16.5 mm
Copper layers
2
Thickness
1.6 mm
Parts
10
Nets
17
Pads
39
Tracks, vias
79, 11
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
6 Jul 2019
Updated
9 Sep 2019

Overview

Beacon pcb is an open-source printed circuit board by defconfurs, from the defconfurs/bluetooth-dc27 repository on GitHub. It is a 2-layer board of 113.5 × 16.5 mm with 10 parts on 17 nets, routed with 79 tracks and 11 vias.

It is built around the BT832. Its parts include 3 capacitors, 1 resistor, 1 IC, 1 diode and 1 connector. It belongs with the radio and wireless boards of this library.

Main components

1

README

README.md

bluetooth-dc27

Bluetooth Firmware for the DC27 DEFCON Furs badge

On my Ubuntu 16.04 development machine, I needed to install the following prerequisites to build the BLE firmware:

  • pip3 install --upgrade cmake
  • apt-get install ninja
  • apt-get install gperf
  • sudo ln -s /usr/bin/ninja /usr/sbin/ninja
  • export GNUARMEMB_TOOLCHAIN_PATH=/usr
  • export ZEPHYR_TOOLCHAIN_VARIANT=gnuarmemb
  • Download and install device-tree-compiler package from Ubuntu cosmic.

Build the badge BLE firmware:

  • export GNUARMEMB_TOOLCHAIN_PATH=/usr
  • ZEPHYR_TOOLCHAIN_VARIANT=gnuarmemb
  • cd into your zephyr source checkout
  • apply add-i2c-slave-hal.patch to your zephyr sources.
  • source zephyr-env.sh
  • cd into the BLE firmware checkout
  • mkdir build && cd build
  • cmake -GNinja ..
  • ninja

This code is not exactly my finest work, it was the product of a last minute hackathon, as per usual with all DEFCON projects. My appologies for any bugs or missing documentation.

Bluetooth Beacon Format

The Bluetooth beacon format follows the #badgelife BLE communcation spec, which establishes a GAP beacon format that is approximately standardized between badge makers. Badges are required to set an appearance code of 0x27DC and include a complete badge name.

Mfr IDMagic ByteByte 0Byte 1Bytes 3Description
0x71ff0x00Badge IDBadge IDNormal Operation
0x71ff0xa0Origin IDOrigin IDAwoo Beacon
0x71ff0xb3Color HueASCIIASCIIEmote Beacon
0x71ff0xc2Color HueTime msecTime msecColor suggestion beacon.

The badge ID is calculated as an 16-bit CCITT CRC of the bluetooth module's hardware device ID.

The color hue is in units of 3 degrees (eg: 0=red, 40=green, 80=blue, 120=red and etc), with the values 0x7e reserved for white, and 0x7f to let the badge select a random color.

The color suggestion beacon was planned for coordinated lighting effects from the DJ console, but was never implemented in the badge and animation codebase because we ran out of time.

Parts

10
QtyValueFootprintReferences
215pCapacitor_SMD:C_0603_1608Metric_Pad1.05x0.95mm_HandSolderC2, C3
1100Resistor_SMD:R_0603_1608Metric_Pad1.05x0.95mm_HandSolderR1
132.768kHzCrystal:Crystal_SMD_3215-2Pin_3.2x1.5mmY1
14.7uCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC1
1BT832KiCAD Magic:BT832IC1
1BatteryKiCAD Magic:BAT-2xAA-BC12AAPCBT1
1LED_ALTLED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD1
1TC2030-CTX-NLConnector:Tag-Connect_TC2030-IDC-NL_2x03_P1.27mm_VerticalJ1
1dcfurs-logodcfurs-logodcfurs-logo

Questions

How big is the Beacon pcb PCB?

It measures 113.5 × 16.5 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Beacon pcb use?

10 parts, built around the BT832. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Beacon pcb KiCad files?

From the defconfurs/bluetooth-dc27 repository on GitHub, at the commit this page was made from: the board is beacon-pcb/beacon-pcb.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Beacon pcb design in my own project?

Its repository states no licence, so its author keeps all rights: ask defconfurs before reusing the design.

Similar boards

  • 2 layers65 × 44 mmProto1 0, the printed circuit board in 3D

    Proto1 0

    kesyog/hangman

    A Bluetooth-enabled strength testing and training tool that scales

    47 parts42Apache-2.0
  • 4 layers120 × 70.2 mmWallNet Main, the printed circuit board in 3D

    WallNet Main

    Jvillaso/WallNet

    The WallNet

    90 parts1
  • 2 layersDC26Badge, the printed circuit board in 3D

    DC26Badge

    Matir/DC26Badge

    Badge for attacker community.

    21 parts1MIT
  • 2 layers45.5 × 23 mmHeimdall switch, the printed circuit board in 3D

    Heimdall switch

    heimdall-suite/heimdall-switch

    Wireless power switch node for RC vehicles, part of the Heimdall Suite.

    42 parts
  • 2 layers57 × 55.2 mmLogicAnalyzer, the printed circuit board in 3D

    LogicAnalyzer

    gusmanb/logicanalyzer

    24 channel, 100Msps logic analyzer hardware and software

    10 parts5.1kGPL-3.0
  • 2 layers32.2 × 15.4 mmProtector, the printed circuit board in 3D

    Protector

    byrantech/laptop

    anyon_e, a highly integrated, high end, open source laptop. Attempt the impossible.

    10 parts4.3kMIT
  • 2 layers26 × 18 mmConn, the printed circuit board in 3D

    Conn

    yaqwsx/KiKit

    Automation tools for KiCAD

    10 parts2.1kMIT