Hardware / Wi-Fi / Step 1 of 1
LP-EM-CC35X1 (CC3551E)
The CC3551E is a wireless microcontroller in TI's CC35xx family: 160 MHz Arm Cortex-M33, external flash, about 1.1 MB of RAM, Wi-Fi 6, 2.4 and 5 GHz, Bluetooth LE 5.4.

Quick facts
| Board | LP-EM-CC35X1 |
|---|---|
| Chip | CC3551E |
| Core | Cortex-M33 |
| Clock | 160 MHz |
| Flash | External |
| RAM | about 1.1 MB |
| Radio | Wi-Fi 6, 2.4 and 5 GHz, Bluetooth LE 5.4 |
| Notable peripherals | Matter over Wi-Fi (production-ready in the SDK release notes); NPU |
| On-board debug probe | Sold separately (LP-XDS110ET at TI.com) |
| Where to buy | TI.com |
| Toolchains that ran | TI compilers, FreeRTOS, ESPHome |
Get it running
First blink: 1 min from plug-in to a changed blink (terminal).
Every step, with the setup: the board's README.
What works
- CoreMark: 718.91 (4.49 per MHz) (TI Arm Clang, FreeRTOS, -O3; 160 MHz; 3 runs)
- Flash to Bluetooth advertising: 5 s
- Bluetooth connect and discover services: 0.52 s (terminal)
- Boot to joined network: 1 s (160 MHz)
- Board-to-board radio round trip: 16.951 ms (160 MHz)
- Radio command to state change, median: 120 ms (terminal; 160 MHz; 20 runs)
- RAM left after linking the radio stack: 74 kB (FreeRTOS; 160 MHz)
- Blink image size: 17.6 kB of flash, 36.9 kB of RAM (FreeRTOS)
- Room-occupancy AI model, one inference: 0.602 ms (-O3; 160 MHz; 2 runs)
- Fastest ADC with DMA: 0.170 Msps (160 MHz; 6 runs)
Download every result for this board (CSV), or compare it on this board on the Benchmarks page.
Projects and ports that ran here
- Blink an LED: 60.0 s from the terminal, board plugged in and tools installed
- Run a small AI model on the chip: 0.6 ms per answer, fastest build on this chip
- Measure how fast a chip runs: 719 CoreMark score at 160 MHz, timed by the 1 ms RTOS tick (this chip's cycle counter reads 0)
- Control a CC35X1 Matter light from Apple Home: TI’s lighting example paired with Apple Home on 2026-10-09; the phone tile and board buttons toggled the red LED
- Build and flash from the terminal: 60 s TI examples built
- Update a board's firmware over the air: Over Wi-Fi from a Mac: download about 1 s, install and reboot 8 s, new image running (one attempt)
- Asset tracking over Bluetooth: The hub: access point and site Wi-Fi together, extended scan, app and API; 283 of 283 events logged
- Doom on a TI board: All three shareware demos play to the end at 39.2 frames a second; the frame checksums equal the emulator's
- A DNS ad blocker on a Wi-Fi board: 71,492 blocked names answer 0.0.0.0 in a median 6 ms; forwarded names take a median 70 ms against 52 ms to the gateway directly
- DNS ad blocker (sinkhole) on the LP-EM-CC35X1 Works: The CC35X1 answers DNS on UDP port 53: names on a blocklist get 0.0.0.0 and the rest is forwarded to your gateway.
- Doom engine (doomgeneric and rp2040-doom's design) on the LP-EM-CC35X1 and the LP-MSPM33C321A Works: The rp2040-doom design plays all three shareware demos on the CC35X1 and the MSPM33 C321A, with frame checksums equal to a Cortex-M33 emulator.
- ESP32-BLE-Gamepad (a Bluetooth HID gamepad library) on TI, ST and C2000 boards Works: The ESP32-BLE-Gamepad descriptor and reports match the library's output byte for byte on four boards, and 15 of 15 button changes from the CC2340R5 reached a Mac as gamepad reports.
- ESPHome Wi-Fi device on the LP-EM-CC35X1 Works: A Wi-Fi ESPHome device runs on the CC35X1 with ESPHome's native API: a client on the board got 20 of 20 switch commands confirmed.
- Matter thermostat over Wi-Fi on the LP-EM-CC35X1 Works: A Matter thermostat and occupancy sensor runs on the CC35X1, pairs into Apple Home and takes setpoint changes from the phone.
Fixes
- If you see
Path to programming_instructions after path correction couldn't be found, rebuild with an absolute build folder, or make the paths absolute. - If you see Serial silent after programming over the Wi-Fi CSI program, even TI's own examples, run
full_flash_erase(about 16 s), then program as usual. - If you see Apple Home hangs on "Connecting", erase, program again, scan within 5 minutes.
- If you see Matter log turns into 0x00 and 0x80 bytes once Bluetooth starts, read the start-up log in the first seconds.
- If you see the CSI example never prints
DAP streaming ready, wait forDAP inferencing ready, then sendED 08 00 9E. - If you see OTA menu says
Invalid inputorInvalid choice, send only a carriage return after each answer. - If you see OTA
Show components in flashlists slot 2 asFAILED, menu3, then the slot number (5 for the vendor image; about 20 s). - If you see
ERROR rxData_DataPacketDisptcher(): Received VLAN packet - drop it, ignore it.
For AI assistants
Point your assistant at this board's AGENTS.md (build, flash and fix notes) and the repository's llms.txt (the index).
Sources: cc35x1/README.md, cc35x1/AGENTS.md, cc35x1/FAQ.md, data/results/cc35x1.csv, site/data/portfolio.json, site/data/projects.json, site/data/ports.json.