ESP32 Bit Pirate, a Hardware Hacking Tool with WebCLI That Speaks Every Protocol

Hacker News Top Tools

Summary

ESP32 Bit Pirate is an open-source firmware that turns an ESP32 into a multi-protocol hacking tool, supporting sniffing and interaction with various digital and radio protocols via serial or web-based CLI.

No content available
Original Article
View Cached Full Text

Cached at: 06/05/26, 11:07 AM

geo-tp/ESP32-Bit-Pirate

Source: https://github.com/geo-tp/ESP32-Bit-Pirate

ESP32 Bit Pirate

Logo banner of the ESP32 Bit Pirate firmware

ESP32 Bit Pirate is an open-source firmware that turns your device into a multi-protocol hacker’s 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 and RFID.

Use the ESP32 Bit Pirate Web Flasher to install the firmware in one click. See the Wiki for step-by-step guides on every mode and command. Check ESP32 Bit Pirate Scripts for a collection of scripts.

For hardware extensions, see the ESP32 Bus Expander for additional radio interfaces, and the ESP32 Bit Pirate Dock to use original Bus Pirate adapters and accessories.

Demo showing the different mode of the ESP32 Bit Pirate firmware Demo showing the LittleFS file system of the ESP32 Bit Pirate firmware

Features

  • Interactive command-line interface (CLI) via USB Serial or WiFi Web.

  • Modes for:

    • HiZ (default)
    • I2C (scan, glitch, slave mode, dump, eeprom)
    • SPI (eeprom, flash, sdcard, slave mode)
    • UART / Half-Duplex UART (bridge, read, write)
    • 1WIRE (ibutton, eeprom)
    • 2WIRE (sniff, smartcard) / 3WIRE (eeprom)
    • DIO (Digital I/O, read, pullup, set, pwm)
    • Infrared (send, record, universal remote)
    • USB (HID, flashrom, storage, usb-uart)
    • Bluetooth (BLE HID, scan, spoofing, sniffing)
    • Wi-Fi / Ethernet (sniff, deauth, nmap, netcat)
    • JTAG (scan, SWD, openOCD)
    • LED (animations, set LEDs)
    • I2S (test speakers, mic, play sound)
    • CAN (sniff, send and receive frames)
    • SUBGHZ (analyze, record, replay)
    • RFID (read, write, clone)
    • RF24 (scan, send, receive)
    • FM (analyze, broadcast)
    • CELL (dump sim card, sms, call)
  • Protocol sniffers I2C, UART, SPI, 1Wire, 2wire, CAN, Wi-Fi, Bluetooth, SubGhz.

  • Baudrate auto-detection, AT commands and various tools for UART.

  • Registers manipulation, EEPROM dump tools, identify devices for I2C.

  • Read all sort of EEPROM, Flash and various others tools for SPI.

  • Scripting using Bus Pirate-style bytecode instructions or Python.

  • Device-B-Gone command with more than 80 supported INFRARED protocols.

  • Direct I/O management, PWM, servo, GPIOs state.

  • Analyze radio signals and frequencies on every bands.

  • Near than 50 addressable LEDs protocols supported.

  • Ethernet and WiFi are supported to access networks.

  • Import and export data with the LittleFS over HTTP.

  • Pirate assistant to help you with the firmware.

  • USB-Uart dongle, SPI programmer, logic analyzer and more.

Supported Devices

DeviceDescription
ESP32 S3 Dev KitPhoto of the ESP32 S3 Dev KitMore than 20 available GPIO, 1 button
M5 CardputerPhoto of the M5 Cardputer2 GPIO (Grove), screen, keyboard, mic, speaker, IR TX, SD card, battery, standalone mode
M5 Cardputer ADVPhoto of the M5 Cardputer ADV12 GPIO (Grove, Header), screen, keyboard, mic, speaker, IR TX, SD card, IMU, battery, standalone mode
M5 Stick S3Photo of the M5 Stick S313 GPIO (Grove, Header), screen, mic, speaker, IR TX, IR RX, IMU, 3 buttons, battery
M5 StampS3Photo of the M5 StampS39 GPIO (exposed pins), 1 button
M5 AtomS3 LitePhoto of the M5 Atom S3 Lite8 GPIO (Grove, Header), IR TX, 1 buttton
LILYGO T-DisplayPhoto of the T-Display-S313 GPIO (1 Qwicc), screen, 2 buttons
LILYGO T-EmbedPhoto of the LILYGO T-Embed9 GPIO (Grove, Header), screen, encoder, speaker, mic, SD card
LILYGO T-Embed CC1101Photo of the LILYGO T-Embed CC11014 GPIO (2x Qwiic), screen, encoder, speaker, mic, SD Card, CC1101, PN532, IR TX, IR RX , battery
LILYGO T-Embed CC1101 PlusPhoto of the LILYGO T-Embed CC1101 Plus4 GPIO (2x Qwiic), screen, encoder, speaker, mic, SD Card, CC1101, NRF24, PN532, IR TX, IR RX , battery
Seeed Studio Xiao S3Photo of the Seeed Studio Xiao ESP32-S39 GPIO (exposed pins), 1 button
  • Other ESP32-S3-based Boards

    • All boards based on the ESP32-S3 can be supported, provided they have at least 8 MB of flash.

    • You can flash the s3 dev-kit firmware onto any ESP32-S3 board.

    • Keep in mind that the default pin mapping in the firmware may not match your specific board.

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.

Examples and ready-to-use scripts are available in the repository: ESP32 Bit Pirate Scripts.

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 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

(Coming soon)

PCBWay Logo

Command-Line Interfaces

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

InterfaceAdvantagesIdeal 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

Using the ESP32 Bit Pirate to speak UART over WiFi

A demo Using the ESP32 Bit Pirate firmware with UART

Contribute

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

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.

Similar Articles

ESP32-S31

Hacker News Top

Espressif announced the ESP32-S31, a dual-core RISC-V SoC with Wi-Fi 6, Bluetooth 5.4 LE, Ethernet, and advanced security features, targeting IoT and multimedia applications.

Babel-USB: USB drive with every file

Hacker News Top

This project turns an ESP32-S3 development board into a USB drive that appears to contain every possible file, inspired by the Library of Babel. It's a fun hack that generates arbitrary file contents based on path names using MTP protocol.

Show HN: Mezz, a curl-able WiFi sandbox for IoT pentesting

Hacker News Top

Mezz is a self-contained WiFi sandbox tool for inspecting IoT device traffic, providing an isolated network with DNS logging and optional MITM proxy, all deployable via Docker on a Linux host with AP-capable WiFi.

Infinite Music Glitch on my Arduino with Magenta Realtime 2

Reddit r/LocalLLaMA

A developer built a local voice-controlled music system using an ESP32 microcontroller, a MacBook, Magenta Realtime 2 for real-time music generation, MLX Whisper for transcription, and a Qwen model for tool calling, enabling conversational control over music elements like genre and instruments.

Hacking your PC using your speaker without ever touching it

Hacker News Top

A security researcher reverse-engineers the Creative Sound Blaster Katana V2X firmware, uncovering vulnerabilities that allow attackers within 15 meters to turn the speaker into a covert spying tool and Rubber Ducky without physical access.