Skip to content

Bluetooth

The badge has a single Bluetooth Low Energy (BLE) controller that several features share: the BLE keyboard (auto-type), badge-to-badge transfer (the beacon, used by vCard exchange), and an experimental BLE serial console. They all run on top of the same controller, so turning Bluetooth on or off affects all of them at once.

You reach everything from Tools -> Bluetooth.

The first item in the Bluetooth menu toggles the controller. When it is on the row shows a * marker and reads Bluetooth ON; when off it reads Bluetooth OFF. While Bluetooth is off, the Paired devices, Scan Devices and Forget all bonds rows are disabled.

Some features turn Bluetooth on by themselves when you start them:

  • Entering Pair device enables the controller if it was off.
  • Enabling the beacon (for badge-to-badge transfer) enables the controller if it was off.

Select Pair device to put the badge into pairing mode. This screen makes the badge discoverable so a computer or phone can start bonding, and shows the badge’s advertised name. While the screen is open the badge stays awake and does not auto-lock, so a pairing prompt is never rejected because the badge locked.

The pairing screen shows Waiting for device… until a host connects, then Connected. Press N to leave pairing mode.

Pairing uses numeric comparison. When the host requests it, the badge shows a six-digit confirmation code. Check that it matches the code shown on the host, then:

  • Y accepts the pairing.
  • N rejects it.

If you do nothing, the prompt rejects automatically after a timeout (30 seconds).

Select Paired devices to list the hosts the badge has bonded with. Each row shows the device’s identity address and whether it is pub (public) or rnd (random); a connected device is marked with *.

The badge keeps at most 5 bonded devices.

To remove a single bond, select it and confirm Forget this device?. To wipe every bond at once, use Forget all bonds from the Bluetooth menu and confirm.

Scanning for nearby devices (Scan Devices)

Section titled “Scanning for nearby devices (Scan Devices)”

Scan Devices runs an 8-second BLE scan and lists what it finds, sorted by signal strength (strongest first). Each row shows a signal-bar icon, the device name and its RSSI in dBm.

Devices that do not advertise a name initially show their MAC address. While the results are on screen the badge tries, one device at a time, to connect and read each unnamed device’s GATT Device Name, then updates the row in place. This is read-only: it does not pair with or bond to the scanned devices.

The Beacon row in the Bluetooth menu toggles the badge-to-badge transfer beacon. When on, the badge advertises the message-transfer service so other badges can find it and send it a contact card or other typed payload. It shows Beacon: on (with a * when actively advertising) or Beacon: off. The beacon keeps advertising while you scan and resumes automatically after a transfer, so the badge stays discoverable without a manual reset.

There is a dedicated beacon submenu (reached from the Tools menu) with three items:

  • Beacon toggle (on/off).
  • Beacon name — the name other badges see; defaults to the badge name.
  • Beacon scan — a read-only scan that continuously lists other badges advertising the transfer service, with their signal strength. It runs as a multi-role scan: the badge keeps advertising its own beacon while scanning, so two badges with the scan open still discover each other. The list updates live as badges come and go, and shows Searching for badges… while none are in range.

See vCard exchange for the full send/receive flow, and the developer page cdc_msg message-transfer protocol for the wire details.

BLE Status shows a read-only summary: whether Bluetooth is ON or OFF, the badge’s MAC address, whether a device is connected (with the connected RSSI in dBm), and the badge’s advertised name.

  • BLE keyboard for auto-type — pair via Pair device.
  • Badge-to-badge transfer (the beacon) — used by vCard exchange.
  • BLE serial console (experimental).