BLE client → 2.4 GHz bridge → USB HID dongle

Your as an external keyboard.

Your device can be used as a plain HID keyboard.
No driver to install, no Bluetooth pairing, no agent running in the background.
Just plug and play.

not your plain old keyboard

The device(server, TV, etc) connected to the dongle recognizes it as a USB keyboard. Your phone/Mac speaks only to the bridge, and the bridge sends keys to the dongle. Perfect for site reliability engineers in data centers, builders, or hardcore hobbyists for multimedia control.

client app

iPhone, Android, or Mac

Pick keyboard mode for live keys, or compose mode to buffer a block of text and fire it in one send.

client spec
BLE GATT

Zephyr bridge

A XIAO nRF52840 holds the BLE link open while it schedules raw radio TX inside MPSL timeslots.

bridge firmware
2.4 GHz frame

Raw radio hop

Opcode frames carry HID keys, modifiers, compose text, sequence IDs, and status back — documented down to the byte.

frame contract
USB HID

Dongle to target host

The host enumerates a normal USB keyboard. No helper, no network, no Bluetooth keyboard slot to manage.

bring-up notes
BLE control radio frame USB HID

Observable and Reliable

Typebeam supports BLE, radio connection status and input history monitor on all supported platforms.

BLE: connected
Bridge: OK
Dongle: linked
Queue: 0 framesseq 42
mode: keyboard accepted
⌘K
last key Tested on & Supports 🇺🇸 & 🇰🇷

Start where the hardware starts.

Questions and Answers.

Does the target host need a driver?

No. The dongle presents as a standard USB HID boot keyboard, so the host receives normal keyboard reports.

Why not just use 2.4GHz wireless keyboard or pair a Bluetooth or keyboard directly?

If you are a geek like me, then you already have enough to carry. My EDC is 2 phones(iPhone, Android), a Macbook Pro, somtimes a Windows laptop, 3~6 cables of variety, a 65W charger, maybe a 10000mAh powerbank, a travel router(GLinet Mudi 7), car keys, a Stanley Aerolight. I didn't want to add another battery-powered Bluetooth or wireless keyboard.

Plenty of hosts can’t, won’t, or shouldn’t pair one(locked-down rigs, BIOS screens, headless boxes). Typebeam keeps the host side dumb: your phone or Mac talks to the bridge, and the host only ever sees a USB keyboard dongle.

Is this production hardware?

Not yet. The path works end-to-end on dev hardware; ACK retry, custom PCBs, and enclosures are still open work. It’s a project you can read, flash, and rewire today.

Read the protocol, then flash the bridge.

The docs are the source of truth for anyone changing a client, bridge, dongle, or test vector.

Read protocol