Skip to content

Back to the catalog

geo-tp/ESP32-Bit-Pirate
github.comrepo

geo-tp/ESP32-Bit-Pirate

ESP32 Bit Pirate is open-source ESP32-S3 firmware inspired by the Bus Pirate that turns the chip into a multi-protocol hardware hacking and analysis tool. It supports sniffing, sending, and scripting a wide range of digital and radio protocols including I2C, SPI, UART, 1-Wire, JTAG/SWD, CAN, RFID, Bluetooth (BLE scan/spoof/sniff), Wi-Fi (sniff/deauth/nmap), Sub-GHz, LoRa, and infrared, controllable via serial or web-based CLI with Python scripting support.

TL;DR Open-source ESP32-S3 firmware that turns cheap boards into a Bus Pirate-style multi-protocol hardware/RF hacking and sniffing tool.
Document

What it is

Firmware for ESP32-S3 boards that emulates a Bus Pirate-style multi-protocol tool. The catalog summary lists the headline protocols; the page adds specific operational detail on getting it running, the supported hardware, and several capability areas the summary omits.

Additional capabilities not in the summary

Beyond I2C/SPI/UART/JTAG/CAN/RFID/radio, the mode list includes:

  • CELL — dump SIM card, send SMS, place calls.
  • USB — act as HID, flashrom programmer, mass storage, or USB-UART bridge.
  • 2WIRE smartcard sniffing and 1-Wire iButton read.
  • RF24 (nRF24) scan/send/receive and LORA with Meshtastic support.
  • I2C glitch and slave/EEPROM emulation modes; SPI can also emulate slave.
  • Infrared "Device-B-Gone" with 80+ protocols; FM broadcast; Sub-GHz record/replay.

Preconditions / hardware

  • Requires an ESP32-S3 board with at least 8 MB of flash. Non-S3 ESP32s are not supported.
  • Pre-packaged for M5Stack StickS3, AtomS3, M5StampS3, and Cardputer; any S3 dev-kit works but default pin mapping may not match your board.
  • Peripherals must be 3.3V or 5V only — other voltage levels may damage the board.
  • Optional add-ons: an Expander module adds 5 GHz Wi-Fi / extra radio protocols, and a Dock lets you plug original Bus Pirate adapters onto an S3 DevKit.

What to do

  • Flash via the Web Flasher (browser) or M5Burner — look under the StickS3, AtomS3, M5StampS3, or Cardputer category.
  • Connect over USB Serial (any terminal, or the browser Web Serial tool — no PuTTY/minicom needed) or over Wi-Fi via the web CLI. All three interfaces share one command structure.
  • Core commands: mode, help, scan, sniff. Scripting is via Bus Pirate bytecode or Python (browser-based "Python Lab" for testing), with data import/export over HTTP via LittleFS.

Caveats

The project itself flags legal exposure: it is stated to be for educational, diagnostic, and interoperability testing only. The authors warn against probing devices without authorization and against unauthorized RF transmission (e.g., Sub-GHz, FM broadcast) that could violate local regulations. Given the CELL (SMS/call), deauth, BLE spoofing, and RFID clone capabilities, treat regulatory and authorization constraints as the gating factor before deploying, not the hardware.

Technologies named here

  • ESP32-S3-based boards
  • ESP32 Bit Pirate
  • ESP32 Bit Pirate Web Flasher
  • M5Burner
  • ESP32 Bit Pirate Web Serial Tools
  • ESP32 Bit Pirate Python Lab
  • Pirate assistant
  • ESP32 Bit Pirate Expander
  • ESP32 Bit Pirate Dock
  • Bus Pirate
  • ESP32

Techniques named here

  • I2C mode
  • SPI mode
  • UART / Half-Duplex UART
  • 1WIRE mode
  • 2WIRE / 3WIRE mode
  • DIO
  • Infrared send/record/universal remote
  • USB mode
  • Bluetooth mode
  • Wi-Fi / Ethernet mode
  • JTAG mode
  • LED mode
  • I2S mode
  • CAN mode
  • SUBGHZ mode
  • RFID mode
  • RF24 mode
  • FM mode
  • CELL mode
  • LORA mode
  • Protocol sniffing
  • Scripting
  • EEPROM/Flash dumping