ESP32-Bit-Pirate README

The project's README from github.com/geo-tp/ESP32-Bit-Pirate. As one markdown file: README.md.

ESP32 Bit Pirate

Logo banner of the ESP32 Bit Pirate firmware

ESP32 Bit Pirate is open-source firmware that turns your device into a multi-protocol development and analysis tool, inspired by the legendary Bus Pirate.

It supports sniffing, sending, scripting, and interacting with various digital protocols (I2C, UART, 1-Wire, SPI, etc.) via a serial terminal or web-based CLI. It also communicates with radio protocols like Bluetooth, Wi-Fi, Sub-GHz, LoRa and RFID.

The official project website centralizes everything: ESP32 Bit Pirate Website.

From there you can install the firmware, open the web tools, follow hardware guides, explore recipes, and access the documentation.

Demo showing the different mode of the ESP32 Bit Pirate firmware The ESP32 Bit Pirate Web Serial Tools

Features

Supported Devices

All boards listed below offer the exact same Bit Pirate features, with no differences in functionality or development status. Some features may require additional hardware.

Device Description
ESP32 S3 Dev Kit (N8, N8R2, N8R8, N16R8...) Photo of the ESP32 S3 Dev Kit More than 20 available GPIO, 1 button
ESP32 S3 Zero / Super Mini Photo of the ESP32 S3 SUPERMINI 15 GPIO (exposed pins), 1 button
M5 AtomS3 Lite Photo of the M5 Atom S3 Lite 8 GPIO (Grove, Header), IR TX, 1 buttton
M5 Cardputer Photo of the M5 Cardputer 2 GPIO (Grove), screen, keyboard, mic, speaker, IR TX, SD card, battery, standalone mode
M5 Cardputer ADV Photo of the M5 Cardputer ADV 12 GPIO (Grove, Header), screen, keyboard, mic, speaker, IR TX, SD card, IMU, battery, Lora, CC1101, standalone mode
M5 StampS3 Photo of the M5 StampS3 9 GPIO (exposed pins), 1 button
M5 Stick S3 Photo of the M5 Stick S3 13 GPIO (Grove, Header), screen, mic, speaker, IR TX, IR RX, IMU, 3 buttons, battery
LILYGO T-Display Photo of the T-Display-S3 13 GPIO (1 Qwicc), screen, 2 buttons
LILYGO T-Embed Photo of the LILYGO T-Embed 9 GPIO (Grove, Header), screen, encoder, speaker, mic, SD card
LILYGO T-Embed CC1101 Photo of the LILYGO T-Embed CC1101 4 GPIO (2x Qwiic), screen, encoder, speaker, mic, SD Card, CC1101, PN532, IR TX, IR RX , battery
LILYGO T-Embed CC1101 Plus Photo of the LILYGO T-Embed CC1101 Plus 4 GPIO (2x Qwiic), screen, encoder, speaker, mic, SD Card, CC1101, NRF24, PN532, IR TX, IR RX , battery
Heltec WiFi LoRa 32 V4 Photo of the Heltec WiFi LoRa 32 V4 15 GPIO (Header), SX1262 LoRa, 2 buttons, screen not supported
Heltec Vision Master T190 Photo of the Heltec Vision Master T190 15 GPIO (Header, Qwiiic), screen, 2 buttons, SX1262 LoRa
Seeed Studio Xiao S3 Photo of the Seeed Studio Xiao ESP32-S3 9 GPIO (exposed pins), 1 button
Waveshare ESP32-S3-GEEK Photo of the Waveshare ESP32-S3-GEEK 7 GPIO (Dupont header), screen, 1 button, SD card
Unexpected Maker ProS3 Photo of the Unexpected Maker ProS3 More than 20 available GPIO (Header, STEMMA QT), 1 button

Getting Started

Banner of the ESP32 Bit Pirate web flasher

  1. 🔧 Flash the firmware

  2. 🔌 Connect via Serial or Web

  3. 🧪 Use commands like:

    mode
    help
    scan
    sniff
    ...
    

Wiki

Banner of the ESP32 Bit Pirate Wiki page

📚 Visit the Wiki for detailed documentation on every mode and command.

Includes:

The wiki is the best place to learn how everything works.

Scripting

Banner of the ESP32 Bit Pirate Scripts page

🛠️ Automate interactions with the ESP32 Bit Pirate using Python scripts over serial.

You can write and test scripts directly in the browser with the ESP32 Bit Pirate Python Lab.

Including: Logging data in a file, eeprom and flash dump, interracting with GPIOs, LED animation...

Expander

Banner of the ESP32 Bit Pirate Expander page

🔌 Expand the capabilities of the ESP32 Bit Pirate with additional hardware modules. The Expander adds support for the WiFi 5 GhZ, Zigbee or other radio protocols.

A Cardputer connected to an expander C5

Dock

Banner of the ESP32 Bit Pirate Dock page

🔧 A docking station for the ESP32 S3 DevKit designed to work with original Bus Pirate adapters. It allows you to plug and use the original Bus Pirate ecosystem of adapters and accessories.

The ESP32 Bit Pirate dock board

Get the ESP32 Bit Pirate Dock on PCBWay.

PCBWay Logo

Command-Line Interfaces

The ESP32 Bit Pirate firmware provides three command-line interface (CLI) modes:

Interface Advantages Ideal for...
Web Interface - Accessible from any browser
- PC, tablets, mobiles
- Works over Wi-Fi
- No cables needed
Quick tests, demos, headless setups
Serial Interface - Faster performance
- Instant responsiveness
- Handles large data smoothly
Intensive sessions, frequent interactions
Standalone - Only for the Cardputer
- On device keyboard
- On device screen
Portable sessions, Quick tests

All interfaces share the same command structure and can be used interchangeably (more details).

Mobile Web Interface over WiFi

An iPhone screenshot showing the Bit Pirate firmware web interface

Standalone Mode for the Cardputer

A Cardputer running the ESP32 Bit Pirate in standalone mode

Contribute

See How To Contribute section, which outlines a simple way to add a new board or a new command.

Visuals Assets

Small logo of the ESP32 Bit Pirate firmware

See images, logo, presentations, photo, video, illustrations. These visuals can be freely used in blog posts, documentation, videos, or articles to help explain and promote the firmware.

Warning

⚠️ Voltage Warning: Devices should only operate at 3.3V or 5V.

  • Do not connect peripherals using other voltage levels — doing so may damage your ESP32.

⚠️ Usage Warning: This firmware is provided for educational, diagnostic, and interoperability testing purposes only.

  • Do not use it to interfere with, probe, or manipulate devices without proper authorization.
  • Avoid any unauthorized RF transmissions (e.g., sub-GHz) that could violate local regulations or disrupt networks and communications.
  • The authors are not responsible for any misuse of this software or hardware, including legal consequences resulting from unauthorized access or signal emission.
  • Always stay within the bounds of your country’s laws and responsible disclosure policies.

ESP32-Bit-Pirate (geo-tp/ESP32-Bit-Pirate)

esp32
Searching Database…

What is this?ESP32 Bit Pirate is open-source firmware that turns an ESP32-S3 board into a multi-protocol hardware hacking and development tool, inspired by the Bus Pirate, letting you sniff, send and script digital and radio protocols.
Is this an app I install, or firmware I flash onto a device?It is firmware you flash onto a supported ESP32-S3 board, which you then control through a serial terminal or a web-based CLI, not a desktop application.
How do I get the firmware onto my board?Use the ESP32 Bit Pirate Web Flasher to burn the firmware directly from your browser, or flash it through M5Burner for the StickS3, AtomS3, StampS3 or Cardputer categories. Then connect via USB serial or configure Wi-Fi to reach the web CLI.
What hardware do I need to run this?Any ESP32-S3 based board with at least 4 MB of flash works, including devices like the ESP32 S3 Dev Kit, M5 Cardputer, LILYGO T-Embed, Heltec LoRa boards and several others listed in the README.
Any catch before I start probing devices with it?The default GPIO pin mapping may not match your specific board, some boards (like the Heltec WiFi LoRa 32) don't support a screen, and the firmware is explicitly meant for educational and authorized testing only, not for unauthorized RF transmission or device manipulation.
Which boards actually get full functionality?All listed boards (ESP32 S3 Dev Kit, M5 AtomS3/Cardputer/StampS3/StickS3, LILYGO T-Display/T-Embed, Heltec boards, Xiao S3, Waveshare GEEK, ProS3) share the exact same feature set; only extra hardware like screens, LoRa radios or SD slots unlocks extra conveniences.
What is the Bus Pirate it's inspired by?Bus Pirate is a well-known open-source hardware debugging tool for talking to chips over protocols like I2C and SPI; ESP32 Bit Pirate reimplements that same multi-protocol CLI concept on cheap ESP32-S3 hardware.
Can I automate tasks instead of typing commands manually?Yes, you can write Python scripts that interact with the device over serial, and test them directly in the browser using the ESP32 Bit Pirate Python Lab, for tasks like dumping EEPROM/flash or driving LED animations.
What does the Expander module do?The Expander is an add-on hardware module that adds support for extra radio capabilities like 5 GHz Wi-Fi and Zigbee that the base ESP32-S3 boards can't handle alone.
What is the Dock accessory for?The Dock is a docking station for the ESP32 S3 DevKit that lets you plug in and use the original Bus Pirate ecosystem of adapters and accessories.
Creator
geo-tp
Size
326.3 MB
Stars
6.2K
Age
1y
Commits · 90 Days