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)

Searching Database…

这是什么东西?ESP32 Bit Pirate 是一个开源固件,能把 ESP32-S3 开发板变成一个多协议的硬件破解和开发工具,灵感来自 Bus Pirate,可以让你嗅探、发送数字信号和无线电协议,并编写脚本来自动化操作。
这是我要安装的应用,还是要刷到设备上的固件?它是刷写到受支持的 ESP32-S3 开发板上的固件,刷好之后你可以通过串口终端或网页版命令行来控制它,不是桌面应用。
我怎么把固件刷到板子上?用 ESP32 Bit Pirate Web Flasher 直接在浏览器里烧录固件,或者对 StickS3、AtomS3、StampS3、Cardputer 这些类别通过 M5Burner 来刷写。然后通过 USB 串口连接,或者配置 Wi-Fi 访问网页版命令行。
运行它需要什么硬件?任何基于 ESP32-S3、闪存至少 4 MB 的开发板都可以,比如 ESP32 S3 Dev Kit、M5 Cardputer、LILYGO T-Embed、Heltec LoRa 板子,以及 README 里列出的其他几种设备。
开始用它探测设备之前,有什么需要注意的坑吗?默认的 GPIO 引脚分配可能和你手上的板子对不上,有些板子(比如 Heltec WiFi LoRa 32)不支持屏幕,而且该固件明确只用于教学和授权测试,不能用来做未经授权的射频发射或设备操控。
哪些板子能获得完整功能?所有列出的板子(ESP32 S3 Dev Kit、M5 AtomS3/Cardputer/StampS3/StickS3、LILYGO T-Display/T-Embed、Heltec 系列板子、Xiao S3、Waveshare GEEK、ProS3)功能完全一样;屏幕、LoRa 无线模块或 SD 卡槽这类额外硬件只是带来一些额外的便利。
它所参考的 Bus Pirate 是什么?Bus Pirate 是一款知名的开源硬件调试工具,可以通过 I2C、SPI 等协议和芯片通信;ESP32 Bit Pirate 把同样的多协议命令行思路重新实现在了廉价的 ESP32-S3 硬件上。
我不想手动敲命令,能自动化操作吗?可以,你可以编写 Python 脚本,通过串口和设备交互,并用 ESP32 Bit Pirate Python Lab 直接在浏览器里测试,比如读取 EEPROM/闪存内容或者驱动 LED 动画。
Expander 模块是做什么的?Expander 是一个外接硬件模块,提供基础 ESP32-S3 板子本身不支持的其他无线能力,比如 5 GHz Wi-Fi 和 Zigbee。
Dock 配件是干什么用的?Dock 是 ESP32 S3 DevKit 的扩展底座,让你可以插上并使用原版 Bus Pirate 生态的转接板和配件。
Creator
geo-tp
Size
328.1 MB
Stars
6.1K
Age
1y
Commits · 90 Days