Changelog
WEBSITE
🔹 ESP32 Bit Pirate is evolving from a standalone firmware into a broader ecosystem built around the firmware, supported hardware and browser-based tools.
🔹 New Web Tools extend the project directly from the browser, making common debugging, programming and analysis workflows easier to access without installing dedicated software.
https://geo-tp.github.io/ESP32-Bit-Pirate/
LORA
🔹 Added a new LoRa mode for SX1262 transceivers, with packet transmission, reception and RF analysis.
send, receive, rssi, scan, waterfall, cad
🔹 Send and receive LoRa packets, monitor RSSI and scan frequency activity.
record / load
🔹 Record LoRa packets to LittleFS and replay them later with their radio configuration.
meshtastic
🔹 Added a dedicated Meshtastic analysis shell to send, receive and inspect Meshtastic packets.
config
🔹 Configure SX1262 pins, frequency, bandwidth, spreading factor, coding rate, TX power, preamble, sync word and radio options.
https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/24-LORA
USB
BPIO2
🔹 Added a BPIO2 USB adapter for GPIO, I2C and SPI control from a host computer.
🔹 Added sequence import/export and microsecond delay support for BPIO2 workflows.
🔹 Added a browser-based BPIO2 controller through Web Serial.
https://geo-tp.github.io/ESP32-Bit-Pirate/web-tools/bpio2/
Flashrom SPI Programmer
🔹 Increased the transfer buffer size.
https://geo-tp.github.io/ESP32-Bit-Pirate/web-tools/spi-flash-programmer/
🔹 Standardized the USB product name as ESP32 Bit Pirate across boards.
🔹 Updated USB PID handling to avoid stale host-side USB configuration caching.
https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/99-Adapters
I2C
dump - Thanks to @mvanhorn.
🔹 Added a raw-read fallback for devices that do not expose a traditional register interface.
🔹 Regular register devices still use the full register scan behavior.
INFRARED
🔹 Increased the raw receive buffer from 100 to 512 entries to capture longer infrared signals.
🔹 Fixed the IR receiver lifecycle when reconfiguring pins, preventing old receive buffers from leaking.
Thanks to @82ghost82.
WIFI
🔹 Wi-Fi is now properly deinitialized and reinitialized after spam/flood operations.
NEW BOARDS
🔹 Added support for the Heltec Vision Master T190, including its built-in SX1262 LoRa radio.

🔹 Added a dedicated Heltec WiFi LoRa 32 V4 and onboard SX1262 support.

🔹 Added initial Waveshare ESP32-S3-GEEK build support. Thanks to @iodn.

MISC
🔹 Pinned the ESP32 Arduino platform version as a temporary workaround for excessive RAM usage with the latest framework.
🔹 Various reliability, cleanup and resource-management improvements.
LINKS
详细ChangeLog
Changelog
PIRATE ASSISTANT
🔹 Added the Pirate Assistant to the WebUI.
https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/99-Assistant
TERMINAL MODE - WIFI HOTSPOT
🔹 The device can now create its own Wi-Fi hotspot.
🔹 Connect directly to the hotspot from a phone or computer to access the Web CLI without requiring an existing Wi-Fi network.
https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/00-Terminal
GENERAL
wizard
🔹 has been reworked to reduce false-positive signal type detection.
UART
sniff [raw] - Thanks to @fdufnews.
🔹 Passively monitor UART activity without transmitting data.
scan and autobaud
🔹 Reworked for more precise UART activity and baud-rate detection.
I2C
trace <addr> [reg] [ms]
🔹 Continuously monitor a specific register and display its changes.
USB
adapters
🔹 Added a dedicated USB adapter selection shell to transform your device into hardware USB adapters.
Available adapters
USB-UART Bridge
🔹 Expose a USB CDC serial port connected to configurable UART RX/TX GPIOs.
Flashrom SPI Programmer
🔹 Expose a serprog-compatible SPI programmer for use with flashrom.
AVRDUDE Bus Pirate SPI Programmer
🔹 Implement the legacy Bus Pirate binary SPI protocol used by avrdude -c buspirate.
SUMP Logic Analyzer
🔹 Transform the device into a SUMP-compatible logic analyzer for sigrok and PulseView.
🔹 Supports the display and configuration of up to eight GPIO channels.
OpenOCD Bus Pirate Adapter
🔹 Expose a Bus Pirate-compatible JTAG interface for OpenOCD.
USB IR Toy / LIRC Adapter
🔹 Emulate a USB IR Toy-compatible device for infrared tools such as LIRC.
SubGHz Raw CDC CC1101 Adapter
🔹 Expose the CC1101 through a simple USB CDC protocol for configuration, raw capture and transmission.
https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/99-Adapters
Some adapters can be used with https://geo-tp.github.io/ESP32-Bit-Pirate/web-tools/
JTAG
openocd
🔹 Directly configure and reboot the device as an OpenOCD-compatible USB adapter.
BLUETOOTH
mouse
🔹 Corrected BLE HID mouse and keyboard report definitions.
MISC
🔹 The project has been renamed from ESP32 Bus Pirate to ESP32 Bit Pirate across the firmware
🔹 Configured GPIOs are now automatically protected from duplicate assignments.
🔹 Inactive WebSocket connections are now properly closed to prevent unexpected WebUI disconnections.
🔹 Improved the smart-card PSC prompt to make PIN/security operations less confusing.
🔹 Improved HTTP server and hotspot-mode initialization.
🔹 Harmonized data prompt for flash and eeproms operations.
🔹 Reworked SubGHz reception around a ring buffer to avoid losing pulses while captured data is transferred or displayed.
🔹 Fixed CC1101 initialization on ESP32-S3 devices. Thanks to @AmorFati-coder.
🔹 The CC1101 is now properly deinitialized after transmit operations. Thanks to @manato-tajiri.
🔹 Various reliability, cleanup and resource-release improvements.
LINKS
详细ChangeLog
Changelog
GENERAL
alias
🔹 Create command shortcuts to simplify frequently used commands.
listen <pin>
🔹 Convert digital pin activity into audio output for easier signal monitoring.
repeat <count> <cmd>
🔹 Repeat a command or multiple commands automatically.
UART
🔹 Rework of write/spam, can now prompt args if not given and send raw hex data.
raw
🔹 Receive and display raw hexadecimal UART data.
I2C
regs <addr> [len]
🔹 Probe device registers and automatically attempt read/write operations to identify register behavior.
DIO
pins
🔹 Display the current state of all digital pins.
USB
sysctrl [action]
🔹 Execute hardware control actions through USB HID.
WIFI
flood [channel]
🔹 Flood a specific Wi‑Fi channel with packets for testing and stress analysis.
waterfall
🔹 Display channel activity in real time using a waterfall-style visualization.
SUBGHZ
🔹 Major rework of record / replay / receive logic for improved reliability.
send <payload> [te]
🔹 Send a raw RF frame payload.
waterfall
🔹 Display real‑time frequency peaks detected on the spectrum.
RF24
send
🔹 Send an RF24 frame payload.
receive
🔹 Receive RF24 frames.
waterfall
🔹 Display RF24 channel peaks and activity.
FM
sweep
🔹 Scan and analyze FM frequency ranges.
trace [freq]
🔹 Observe signal activity on a specific frequency.
waterfall
🔹 Display frequency peaks in real time.
broadcast
🔹 FM broadcast station operations.
reset
🔹 Reset the FM module via the hardware pin.
config
🔹 Configure Si4713 FM transmitter settings.
https://github.com/geo-tp/ESP32-Bus-Pirate/wiki/22-FM
CELL
modem
🔹 Display modem information.
network
🔹 Display current network information.
operator
🔹 List available cellular operators.
sim
🔹 Display SIM card details.
unlock
🔹 Unlock SIM card using PIN code.
phonebook
🔹 Show phonebook stored on the SIM card.
sms
🔹 Perform SMS operations (list send, delete...).
call
🔹 Perform call operations (dial, answer...).
ussd [code]
🔹 Send USSD codes to the network.
setmode
🔹 Change modem operating mode.
config
🔹 Configure modem settings.
https://github.com/geo-tp/ESP32-Bus-Pirate/wiki/23-CELL
EXPANDER
🔹 This mode bridges the device to an external expander over UART.
🔹 The expander acts as a radio expansion module.
🔹 Project link:
https://github.com/geo-tp/ESP32-Bus-Expander
🔹Available on web flasher:
https://geo-tp.github.io/ESP32-Bus-Pirate/webflasher/
NEW DEVICES
🔹 Support for TDisplay devices. (thanks to @fdufnews)

🔹 Support for TEmbed CC1101 Plus devices.

MISC
🔹 Fixed PWM issues. (thanks to @fdufnews )
🔹 Add I2S audio volume (thanks to @fdufnews)
🔹 Add system debug output and CPU temp
🔹 Fix LED mode crash when changing LED number
🔹 Warning/infos messages are now shorter for mobile reasons.
🔹 Add USB configuration (thanks to @AndreiVladescu)
🔹 WiFi/Eth discovery can now accept an optional request timeout as argument.
🔹 Fixed WebUI keyboard issue for mobile devices (thanks to @KonradIT )
🔹 Reworked Ethernet support using the latest driver.
🔹 Chain multiple command support mode dio || set 1 low || delayms 10 || set 1 high
LINKS
详细ChangeLog
Changelog
GENERAL
profile
🔹 Save and load complete pin configuration profiles to quickly switch between hardware setups.
hex [number]
🔹 Convert values between decimal, hexadecimal, and binary formats.
wizard <pin>
🔹 Advanced pin activity analyzer to monitor a pin and detect the signal type (Data, PWM, Noise...).
UART
scan (behavior change)
🔹 Monitor UART lines to detect activity on a group of pins and identify active UART lines
autobaud
🔹 Automatically detect the baud rate on the RX line by analyzing signal timing
emulator
🔹 Emulate a UART peripheral device (GPS, shell, bootloader) to test communication with external hardware.
trigger [pattern]
🔹 Automatically send a predefined response when a specific pattern is detected on the UART stream.
I2C
discovery
🔹 Perform extended I2C device discovery and provide detailed reporting on detected addresses.
health <addr>
🔹 Run timing and stability diagnostics on a specific I2C device to evaluate communication reliability.
DIO
pwm <pin> [frq] [duty%]
🔹 Improved, can go to higher frequencies.
scan
🔹 Scan a group of pins to detect signal transitions and identify active lines.
USB
host
🔹 Enable USB host mode to connect USB devices to the ESP32 and dump informations
BLUETOOTH
sniff
🔹 Improved, more readable format.
WIFI
repeater
🔹 Forward and relay Wi-Fi traffic, allowing the ESP32 to operate as a lightweight repeater.
MISC
autocorrection
🔹 Intelligent command autocorrection system that fixes common typos (e.g. "mode uaart" → "mode uart", "discovry" → "discovery").
autocompletion
🔹 Interactive command autocompletion including command keywords and command history navigation using TAB key.
arduino core update
🔹 Updated to the latest Arduino core version.
screen mode
🔹 Dedicated system screen mode allowing users to adjust display brightness.
infrared backend
🔹 New infrared backend powered by the ESP8266 IR library for improved compatibility and improved signal handling.
categorized help
🔹 Help output is now organized by functional categories for clearer navigation and improved usability.
LINKS
详细ChangeLog
Changelog
GENERAL
- analogic
<pin>
🔹 Analogic plotter on the ESP32 screen (thanks to @fdufnews)
- man
🔹 Show firmware guide
UART
- swap
🔹 Swap RX and TX pins
I2C
- swap
🔹 Swap SDA and SCL pins
- jam
🔹 Jam I2C bus with noise
DIO
- jam
<pin> [min max]
🔹 Random high/low states
INFRARED
- record
🔹 Record IR signals to file on the LittleFS
- jam
🔹 Send random IR signals to disrupt receiver
NEW DEVICES
- M5Stick S3

LINKS
详细ChangeLog
Changelog
GENERAL
- Add serial logic analyzer for devices with no screen (thanks to @fdufnews)
- Maximize available flash space for files (now up to 4.5MB instead of 1.5MB)
- Fix Tembed WiFi setup to accept specials chars (thanks to @fdufnews)
- Fix LED mode config to not prompt data/clock pins
NEW DEVICE
- Add support for the ESP32S3-DevKit N16R8 (thanks to @fdufnews)
MISC
详细ChangeLog
Changelog
I2C
sniff
🔹 More readable data, improvements.
DIO
pulldown <pin>
🔹 Active pulldown resistor on given pin
SUBGHZ
load
🔹 Fixes and improvements.
listen
🔹 RSSI to audio mapping (using I2S configured output or internal speaker if any)
replay
🔹 Fixes and improvement.
STANDALONE TERMINAL MODE (New)
Use arrows up/down to scroll and esc to scroll down line by line. Use tab for command history.
MISC
详细ChangeLog
Changelog
INFRARED
WIFI
SUBGHZ
RF24 (New mode)
scan
🔹 Search best active channel.
sniff
🔹 Sniff raw frames.
sweep
🔹 Analyze channels activity.
jam
🔹 Jam selected channels group.
setchannel
🔹 Set operating channel.
config
🔹 Configure NRF24 settings.
LittleFS (Storage / Import & Export)
New Device Supported
Misc / Notes
详细ChangeLog
Changelog
SUBGHZ (New mode)
scan
🔹 Search best frequencies.
sniff
🔹 Raw frame sniffing.
sweep
🔹 Analyze frequency band.
decode
🔹 Receive and decode frames.
replay
🔹 Record and replay frames.
jam
🔹 Jam selected frequencies.
bruteforce
🔹 Bruteforce 12-bit keys.
trace
🔹 Observe RX signal trace.
setfrequency
🔹 Set operating frequency.
config
🔹 Configure CC1101 settings.
RFID (New mode)
read
🔹 Read RFID tag data.
write
🔹 Write UID/Block to tag.
clone
🔹 Clone Mifare UID.
erase
🔹 Erase RFID tag.
config
🔹 Configure PN532 settings.
Webflasher (NEW)
🔹 Easily flash the firmware with a web browser: https://geo-tp.github.io/ESP32-Bus-Pirate/webflasher/
Python Scripting (NEW)
🔹 Easily automate hardware tasks, dump, log: https://github.com/geo-tp/ESP32-Bus-Pirate-Scripts
详细ChangeLog
Changelog
1WIRE
eeprom
🔹 EEPROM operations for 1-Wire chips (DS2431, DS2433, DS28).
DIO
servo <pin> <angle>
🔹 Sets the angle of a servo motor connected to the specified pin.
pulse <pin> <us>
🔹 Sends a pulse on the given pin with configurable duration (microseconds).
WIFI / ETHERNET
telnet <host> [port]
🔹 Opens a Telnet session to the target host (default port 23).
modbus <host> [port]
🔹 Performs Modbus TCP operations on the specified host.
http analyze <url>
🔹 Prints an analysis report of the given URL.
lookup mac|ip <addr>
🔹 Looks up information about a MAC or IP address (vendor, geolocation, etc.).
New Supported Device
- Seeed Studio XIAO ESP32S3

详细ChangeLog