Fox Red Labs / Builds / Smart home and radio
Send a sensor reading to a phone over Bluetooth
A reading your phone or Mac picks up over Bluetooth, no pairing.
Hard1 evening
No recorded steps
Some pieces of it have run. There are no recorded steps for this project, so this page does not give any.
What exists:
- LP-EM-CC2340R5: TI's example seen by a Mac in 1.4 s; 45 ms round trip; no phone app or sensor reading tried
- LP-EM-CC2755P10: TI's example seen by a Mac in 0.90 s, connected in 0.55 s, 29 ms echo; no sensor reading
- LP-EM-CC35X1: Connects from a Mac in 0.52 s; used for Wi-Fi setup, no sensor reading
Errors and fixes: LP-EM-CC2340R5.
What to build next
Every build. The code for all of them is in the GitHub repository.
Evidence and limitsTI's example is seen by a Mac in 1.4 s on the CC2340R5 and 0.90 s on the CC2755P10; no sensor reading was taken. Ran on 3 boards. Results, sources, timing and limits.
Which boards ran it
- Could work LP-EM-CC2340R5: TI's example seen by a Mac in 1.4 s; 45 ms round trip; no phone app or sensor reading tried
- Could work LP-EM-CC2755P10: TI's example seen by a Mac in 0.90 s, connected in 0.55 s, 29 ms echo; no sensor reading
- Could work LP-EM-CC35X1: Connects from a Mac in 0.52 s; used for Wi-Fi setup, no sensor reading
Experiments (4)
| Status | What was tried | Result |
|---|---|---|
| Can an LP-EM-CC2340R5 answer Nordic's phone apps, nRF Blinky and any Nordic UART terminal? CC2340R5, 2026-10-12 | The CC2340R5 advertises Nordic's LED Button Service and Nordic UART Service and a Mac drives both (LED write answered in 24.3 ms median, 60 of 60 UART lines echoed identical); the LED, the button and the phone... | |
| Can the LP-EM-CC2340R5 be a Bluetooth media remote for a Mac with no app, using TI's Bluetooth stack? CC2340R5, 2026-10-12 | A hand-written HID over GATT service on TI's basic_ble builds to 186.5 kB of flash and 30.9 kB of RAM. It advertises 11.9 s after the flash starts, and macOS calls it a "Compatible LE HID" and asks to pair with Just... | |
| Works | Does a vendor-free BTHome header work on the ESP32-C6 with less glue than on the TI CC2340R5? ESP32-C6-DevKitC-1, 2026-10-11 | The vendor-free BTHome header drops onto Espressif's NimBLE_Beacon example with 40 lines of glue against TI's 58. That is 35 in one new file and 5 changed elsewhere. The Mac decodes the packets as version 2, with... |
| Works | Does a popular ESP32 Bluetooth gamepad library carry over to TI, ST and C2000 boards, and on which boards does it give the same bytes? ESP32-C6-DevKitC-1, MSPM0 G3519, NUCLEO-U083RC, LAUNCHXL-F2800137, CC2340R5, 2026-10-19 | The report core of ESP32-BLE-Gamepad gives the same descriptor and report bytes on the ESP32-C6, the MSPM0 G3519, the NUCLEO-U083RC, the LAUNCHXL-F2800137 and the CC2340R5 (5 of 5 lines each); on the CC2340R5... |
Source files
Code brought from elsewhere
This project uses code that was written for other chips or tools. Each links to how to get it running.
- Bluetooth media remote (HID) on the LP-EM-CC2340R5 Could work A hand-written HID service on TI's basic_ble builds for the CC2340R5, and a Mac sees it as a keyboard-class device and starts pairing.
Get the code and tell us how it wentThe clone command, the board folder with its AGENTS.md, reports from others, and the three report forms.
Get the code
Clone the repository and open the board's folder below. AGENTS.md is a plain text file of notes for AI coding assistants, and llms.txt at the root indexes the site for one.
git clone https://github.com/Fox-Red-Labs/fox-red-labs.git
- LP-EM-CC2340R5: folder
cc2340r5/.- README: the board's lab notebook (what was run, in order)
- Notes for an AI coding assistant working in this repository: notes for an AI assistant; copy it into your own project if you use one
- FAQ: errors and fixes
Code is BSD-3-Clause, writing is CC BY 4.0; third-party folders keep their own licenses.
Built it? Tell us
Built this, or got stuck? Report it on GitHub with a few short answers. Your report shows here in your words, marked as yours. A failure that repeats on the bench gets its fix here.