ESP32 Bit Pirate

ESP32-S3 and SX1262 LoRa debugging

SX1262 LoRa packet, signal and Meshtastic analysis

ESP32 Bit Pirate turns a compatible ESP32-S3 board plus an SX1262 module into a transparent LoRa workbench. Wire and probe the radio, configure every modem parameter, observe RSSI and CAD, send or receive packets, scan activity, preserve .lora captures and inspect compatible Meshtastic frames.

LoRa radio debugging visual with an ESP32 board, SX1262 module, antenna and packet activity

Quick SX1262 LoRa workflow

Prove the hardware and receive path before transmitting. A LoRa packet is only decodable when both radios use compatible modem settings and hardware for the same physical band.

  1. 01

    Wire 3.3 V, ground, SPI, CS, RESET, BUSY and DIO1. Connect an antenna matched to the module RF band before any transmission.

  2. 02

    Run mode lora, accept or change the pins, then use config and status to verify the complete radio profile.

  3. 03

    Start receive-side diagnosis with rssi, cad and receive while a known second radio sends the same profile.

  4. 04

    Use airtime before send. Keep transmission tests short, controlled and compliant with the rules for the selected frequency.

  5. 05

    Use scan or waterfall for frequency activity, then record and load when a packet and its profile must be reproduced.

mode lora
config
status
rssi 250
cad 250
receive
airtime 16
send Hello
scan
waterfall
record
load
meshtastic

Core CLI flow from the current implementation. spam, jam and every transmit workflow are for isolated, authorized RF tests only.

LoRa workflows covered by ESP32 Bit Pirate

Choose the smallest workflow that answers the current bench question, then move to a detailed recipe when the hardware and profile are understood.

Configure

Complete modem profile

Set frequency, bandwidth, spreading factor, coding rate, power, preamble, sync word, CRC, IQ and TCXO behavior.

Packet

Send and receive

Exchange text or hexadecimal payloads up to 255 bytes and inspect receive time, gap, length, RSSI, SNR, HEX and ASCII.

Detect

RSSI and CAD

Monitor channel energy with RSSI or use LoRa Channel Activity Detection to distinguish possible compatible LoRa activity.

Explore

Scan, waterfall and ear

Scan an expected range, render display activity or map received signal level to audio before attempting packet decoding.

.lora

Packet profile files

Record one received payload and its complete modem profile to LittleFS, then load it for a controlled single transmission.

Mesh

Meshtastic analysis shell

Apply compatible presets and inspect text, position, node information, telemetry and routing frames without hiding the radio profile.

Raw LoRa, LoRaWAN and Meshtastic are different layers

The SX1262 provides the radio. The packet format and network behavior above that radio depend on the software stack in use.

Raw LoRa

Direct packet workbench

The normal LoRa shell controls modem parameters and raw payloads directly. Two radios can exchange packets when their profiles and bands match.

LoRaWAN

Not a LoRaWAN network stack

Raw packet mode does not join a network, create device sessions, handle gateways or communicate with a LoRaWAN network server.

Meshtastic

Compatible frame analysis

The meshtastic shell provides supported presets, channel-key handling and frame inspection. Exiting restores the original raw LoRa profile.

SX1262 hardware and profile reminders

Software frequency limits do not change RF matching. Confirm the exact module variant, its antenna and every signal pin before judging radio performance.

3.3 V only

Power the module from a stable 3.3 V source and share ground. Do not apply 5 V logic to the SX1262 or ESP32 GPIO.

SPI plus control

The default mapping is SCK GPIO5, MISO GPIO6, MOSI GPIO7, CS GPIO4, RESET GPIO3, BUSY GPIO2 and DIO1 GPIO1.

RF switch and TCXO

Core1262-style boards commonly use DIO2 for RF-switch control and DIO3 for TCXO control. The default TCXO voltage is 1.8 V.

Physical band

The pictured Core1262-HF is matched for 850–930 MHz. Select a module and antenna built for the intended regional band.

Matching profile

Frequency, bandwidth, spreading factor, coding rate, sync word, CRC and IQ mode must be compatible between peers.

Legal RF use

Respect regional frequency, power, bandwidth and duty-cycle rules. Use repeat, continuous-wave or similar tests only in an isolated authorized lab.

Common SX1262 LoRa problems

Separate bus faults, channel energy, LoRa activity and valid packets. Each layer answers a different question.

Probe fails

If BUSY remains high, check RESET and BUSY first. If no valid radio response returns, recheck 3.3 V, ground, SPI, CS and the selected pin mapping.

Energy, no packet

RSSI can show any in-band energy. Match the complete LoRa profile and use CAD before expecting receive to decode a valid packet.

CAD, no receive

CAD indicates possible LoRa preamble activity, not a guaranteed valid payload. Check sync word, CRC, IQ, preamble and receive timing.

Wrong band

A firmware setting within 150–960 MHz cannot retune the module RF matching. Use the correct SX1262 board variant and antenna.

Capture will not load

Keep a valid, small .lora file in LittleFS. The loader validates its fields, sends once with the saved profile and restores the prior profile.

No waterfall

The waterfall is a display visualization. On a target without a supported screen, use scan or rssi for serial output instead.

Module and ESP32 board choice

Start with the SX1262 module reference for RF and pin details, then confirm that the selected ESP32-S3 target exposes the required GPIO and enough power for the radio.

Vision Master T190

Open the T190 board page for its integrated display, button mapping and optional onboard SX1262 pinout.

SX1262 module

Open the SX1262 module page for Core1262 photos, wiring, default profile, command behavior and source-based implementation notes.

Detailed SX1262 LoRa recipes

Follow the batch in order for a first bring-up, or jump directly to the task that matches a radio already known to work.

Useful LoRa references

Connect the protocol overview to the hardware page, serial tools, LittleFS workflow, board selection and firmware source.

SPI protocol overview

Use the SPI page when the radio probe fails before debugging LoRa settings.

Open SPI debugging guide

LittleFS file manager

Manage saved .lora packet files from the browser-based device UI.

Manage LittleFS files

Flash ESP32 Bit Pirate

Install a current firmware build on a supported ESP32-S3 board.

Open Web Flasher

All practical recipes

Browse LoRa alongside the complete hardware-debugging recipe library.

Browse all recipes

Firmware source

Inspect the current implementation, releases and issues affecting LoRa mode.

Open GitHub repository

SX1262 LoRa debugging FAQ

Short answers for the distinctions and settings that most often block a first packet exchange.

Can ESP32 Bit Pirate use an SX1262 LoRa module?

Yes. LoRa mode supports SX1262 hardware connected over SPI with RESET, BUSY and DIO1 control lines.

Is raw LoRa packet mode the same as LoRaWAN?

No. Raw LoRa packet exchange configures the radio modem directly; it does not join a LoRaWAN network or manage sessions, gateways and network-server communication.

Which LoRa settings must match between two radios?

Frequency, bandwidth, spreading factor, coding rate, sync word, CRC and IQ mode must be compatible. The module and antenna must also match the physical RF band.

What does the ESP32 Bit Pirate Meshtastic shell do?

It applies supported modem presets and provides channel-key, send, receive and frame-inspection workflows for analysis. Exiting stops receive and restores the previous raw LoRa profile.