ESP32 & ESP8266 Connectivity · Advanced · BLE
ESP32 BLE Control Channel
Write to the board from a phone over Bluetooth, with no network at all.
Firmware status: Generated from this project's own pin map and compiled with arduino-cli for esp32:esp32:esp32 before publication; bench validation on your hardware is still required.
Board: ESP32 DevKit (ESP32-WROOM-32, 30 or 38 pin) · ESP32 dual core @ 240 MHz · 3.3 V logic · build for esp32:esp32:esp32.
What you will build
A BLE characteristic that accepts a write and drives an output, with connection state visible on the board.
Components
- ESP32 board
- LED or MOSFET output
- Analog sensor for the read-back
- Phone with nRF Connect
Pin map for this build
| Sketch constant | Pin | What it is |
|---|---|---|
PIN_SENSE | 34 | Sensor — analog output, 3.3 V maximum |
PIN_STATUS_LED | 4 | Status LED — with 220 Ω series resistor |
Tools
- USB programming cable
- Multimeter
- Current-limited bench supply (for anything that switches a load)
- Small screwdriver and wire cutters
Build sequence
- Flash and connect from the phone.
- Write 01 to the characteristic and confirm the output switches.
- Read the telemetry characteristic and compare it with the serial log.
- Disconnect the phone and confirm the board returns to advertising.
Test and expected result
A write from the phone switches the output, the read matches the pin state, and distance loss recovers.
Acceptance checks
write switches output, read matches, reconnect works
Safety and limits
Bluetooth reaches further than people expect. Do not attach anything that can cause harm to a characteristic with no pairing.
Hardware scope
BLE write and notify characteristics, output control, connection tracking.
Connection diagram
Download the connection diagram (SVG)
Download the Arduino sketch (E14_esp32_ble_control_channel.ino)
Guide source: the sketch on this page was generated from the pin map above and compiled for esp32:esp32:esp32 before publication.
Related projects
- ESP32 Captive Portal Wi-Fi Manager — Boot the ESP32 with no credentials and configure its network from a phone, with the portal saved to flash.
- ESP8266 Config Portal — The same idea on the cheapest board that can do it: an ESP8266 that configures itself from a browser.
- ESP8266 Sensor Portal Logger — A battery-minded sensor node you configure in the field, with the reading shown on its own setup page.