Heltec Wireless Bridge
The Wireless Stick's ESP32 and SX1276 in an aluminium box with two SMA antenna sockets, 8 MB flash and 8 MB PSRAM, no display, no SD slot and no GNSS: a headless relay. Serial is a CP2102 bridge on the micro-USB socket, and every CP2102 reports the serial number 0001, so with more than one attached /dev/serial/by-id/ names only one of them and the rest have to be found by path. The serial port also carries PPP: pppd on the host makes the node a network interface at 10.65.<n>.1 (docs/local-link.md) — the one IP link a headless box in a cupboard has besides Wi-Fi. Uses the 8 MB partition table: no SD card, so the filesystem is the only storage the transport store has.
01 Hardware
| Vendor | Heltec |
| PlatformIO env | heltec-wb |
| Board header | src/boards/heltec_wb.h |
| MCU | ESP32-D0WDQ6: 8 MB flash, 8 MB PSRAM |
| Chip family | ESP32 |
| Radio | SX1276 |
| Display | — (headless) |
| Extras | front LEDs for Wi-Fi and LoRa (the BLE one stays dark), aluminium shell, two SMA sockets, internal 2-pin battery connector, PPP over the CP2102 bridge; no SD, no GNSS |
| Host links | Wi-Fi access point + station · CP2102 serial bridge · PPP over that bridge |
| Flashing | esptool can reset the chip through this port |
02 Radio
| Transceiver | Semtech SX1276/78 |
| Radio family | SX127x |
| As the registry states it | SX1276 |
| Default channel | 869.525 MHz · BW 125 kHz · SF8 · CR 4/5 · 7 dBm inherited from Config.h |
| SPI bus | VSPI |
Every node on a channel must agree on frequency, bandwidth, spreading factor,
coding rate and sync word. These are the defaults this build ships with; they are changed
live on the node's settings page, which prints the matching RNodeInterface block.
03 Pin map
Read straight out of src/boards/heltec_wb.h — every peripheral
the firmware drives on this board, and the GPIO it drives it on. A harness diagram, not a
picture of where the parts sit.
Every pin as a table, with the define it comes from
| Peripheral | Signal | GPIO | Define | Note |
|---|---|---|---|---|
| Radio | SCK | GPIO 5 | PIN_LORA_SCK | |
| MISO | GPIO 19 | PIN_LORA_MISO | ||
| MOSI | GPIO 27 | PIN_LORA_MOSI | ||
| CS | GPIO 18 | PIN_LORA_CS | ||
| RST | GPIO 14 | PIN_LORA_RST | ||
| DIO1 | GPIO 35 | PIN_LORA_DIO1 | unused by this driver on SX127x | |
| DIO0 | GPIO 26 | PIN_LORA_DIO0 | ||
| Controls & indicators | BTN | GPIO 0 | PIN_BUTTON | KEY, active low, inside the shell |
| LED·WIFI | GPIO 23 | PIN_WIFI_LED | ||
| LED·LORA | GPIO 22 | PIN_LORA_LED | ||
| LED·BLE | GPIO 25 | PIN_BLE_LED |
04 Firmware support
What this build actually drives on this board. Where a part is fitted but left alone, the firmware's own reason is quoted underneath rather than summarised.
| Capability | State | Detail |
|---|---|---|
| Reticulum transport | driven | Path table, announce propagation, hop-by-hop forwarding |
| Wi-Fi AP + captive portal | driven | Status page, neighbours, bulletin board, settings |
| TCP 4242 + AutoInterface | driven | Stock RNS clients, zero-config discovery |
| LoRa radio | driven | Semtech SX1276/78 |
| Radio self-test at boot | driven | Proves the IRQ line on first boot The pins come from the core's variant, not from a board in hand under a magnifier; the IRQ line is proved at boot until the board has been seen receiving |
| RF front end | no | Driven before the radio can hear anything |
| External PA | no | — |
| Display | no | Headless |
| Backlight control | no | — |
| Touch layer | no | — |
| Keyboard | no | On its own microcontroller, over I²C |
| Trackball | no | — |
| microSD | no | Reticulum store moves onto the card when one is present |
| GNSS | no | — |
| Real-time clock | no | Seeds the system clock at boot |
| Power management IC | no | — |
| Battery gauge | not driven | — There is a 2-pin lithium connector inside the box, but no known divider pin to read it on — the same position as the Wireless Stick, for the same reason: a guessed ADC pin returns a plausible number that is not the battery |
| IMU | no | — |
| Magnetometer | no | — |
| Environment sensor | no | — |
| Sounder | no | — |
| USB networking (CDC-NCM) | no | The node is an Ethernet link with DHCP over the cable |
| PPP over the serial bridge | driven | Bridge: CP2102 |
05 Bench notes
verified on hardware; PPP built, not yet run on this board.
06 Install
Browser
Pick Heltec Wireless Bridge in the web flasher and click Install. Desktop Chrome or Edge, over HTTPS.
Terminal
pipx run --spec "git+https://github.com/dobrevit/RetiMesh_Node#subdirectory=tools/retimesh-flash" \ retimesh-flash install --board heltec-wb
From source
pio run -e heltec-wb pio run -e heltec-wb -t upload pio run -e heltec-wb -t uploadfs