
Инструмент для взлома аппаратного обеспечения с веб-интерфейсом командной строки, который общается по всем протоколам
# ESP32 Bit Pirate
[](https://geo-tp.github.io/ESP32-Bit-Pirate/)
**ESP32 Bit Pirate** — это прошивка с открытым исходным кодом, которая превращает ваше устройство в многофункциональный инструмент для разработки и анализа, вдохновлённый легендарным Bus Pirate.
Она поддерживает сниффинг, отправку, написание скриптов и взаимодействие с различными цифровыми протоколами (I2C, UART, 1-Wire, SPI и т. д.) через последовательный терминал или веб-CLI. Также она взаимодействует с радио-протоколами, такими как Bluetooth, Wi-Fi, Sub-GHz, LoRa и RFID.
Официальный сайт проекта объединяет всё в одном месте: [Сайт ESP32 Bit Pirate](https://geo-tp.github.io/ESP32-Bit-Pirate/).
Оттуда вы можете [установить прошивку](https://geo-tp.github.io/ESP32-Bit-Pirate/webflasher/), открыть [веб-инструменты](https://geo-tp.github.io/ESP32-Bit-Pirate/web-tools/), ознакомиться с [руководствами по аппаратному обеспечению](https://geo-tp.github.io/ESP32-Bit-Pirate/hardware/), изучить [рецепты](https://geo-tp.github.io/ESP32-Bit-Pirate/recipes/) и получить доступ к [документации](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki).

[](https://geo-tp.github.io/ESP32-Bit-Pirate/web-tools/)
## Возможности
- Интерактивный интерфейс командной строки (CLI) через **USB Serial или WiFi Web**.
- **Режимы для:**
- [HiZ](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/01-HiZ) (по умолчанию)
- [I2C](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/05-I2C) (сканирование, glitch, режим slave, дамп, eeprom)
- [SPI](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/06-SPI) (eeprom, flash, sdcard, режим slave)
- [UART](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/03-UART) / [Half-Duplex UART](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/04-HDUART) (мост, чтение, запись)
- [1WIRE](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/02-1WIRE) (ibutton, eeprom)
- [2WIRE](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/07-2WIRE) (сниффинг, смарт-карты) / [3WIRE](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/08-3WIRE) (eeprom)
- [DIO](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/09-DIO) (цифровой ввод-вывод, чтение, pullup, установка, pwm)
- [Infrared](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/11-INFRARED) (отправка, запись, универсальный пульт)
- [USB](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/12-USB) (HID, flashrom, накопитель, usb-uart)
- [Bluetooth](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/13-BLUETOOTH) (BLE HID, сканирование, спуфинг, сниффинг)
- [Wi-Fi](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/14-WIFI) / [Ethernet](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/18-ETHERNET) (сниффинг, деаутентификация, nmap, netcat)
- [JTAG](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/15-JTAG) (сканирование, SWD, openOCD)
- [LED](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/10-LED) (анимации, управление светодиодами)
- [I2S](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/16-I2S) (тестирование динамиков, микрофона, воспроизведение звука)
- [CAN](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/17-CAN) (сниффинг, отправка и приём кадров)
- [SUBGHZ](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/19-SUBGHZ) (анализ, запись, воспроизведение)
- [RFID](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/20-RFID) (чтение, запись, клонирование)
- [RF24](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/21-RF24) (сканирование, отправка, приём)
- [FM](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/22-FM) (анализ, вещание)
- [CELL](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/23-CELL) (дамп SIM-карты, SMS, звонки)
- [LORA](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/24-LORA) (сниффинг, полезная нагрузка, meshtastic)
- **Снифферы протоколов** I2C, UART, SPI, 1Wire, 2wire, CAN, Wi-Fi, Bluetooth, SubGhz.
- **Автоопределение скорости передачи данных**, AT-команды и различные инструменты для UART.
- Манипуляция регистрами, **инструменты дампа EEPROM**, идентификация устройств для I2C.
- Чтение всевозможных **EEPROM, Flash** и другие инструменты для SPI.
- Написание скриптов с использованием **байт-кода в стиле Bus Pirate** или **Python**.
- Поддержка инфракрасного диапазона с более чем **80 протоколами**.
- Прямое управление вводом-выводом, **PWM, сервоприводы, состояние GPIO**.
- Анализ радиосигналов и частот **на всех диапазонах**.
- Поддержка почти **50 протоколов адресуемых светодиодов**.
- **Pirate assistant** для помощи с прошивкой.
- **USB-Uart адаптер, SPI-программатор, логический анализатор, ESP-SDR** и многое другое.
- [**Веб-инструменты Serial**](https://geo-tp.github.io/ESP32-Bit-Pirate/web-tools/) для использования USB Serial через веб-браузер.
## Поддерживаемые устройства
Все перечисленные ниже платы предлагают абсолютно одинаковые функции Bit Pirate, без различий в функциональности или статусе разработки. Некоторые функции могут требовать дополнительного оборудования.
| Устройство | | Описание |
|-----------------------|------------------------------------------|---------------------------------------------------|
| **ESP32 S3 Dev Kit (N8, N8R2, N8R8, N16R8...)** |  | Более 20 доступных GPIO, 1 кнопка |
| **ESP32 S3 Zero / Super Mini** |  | 15 GPIO (выведенные пины), 1 кнопка |
| [**M5 AtomS3 Lite**](https://shop.m5stack.com/products/atoms3-lite-esp32s3-dev-kit?ref=pvosfmid) | [](https://shop.m5stack.com/products/atoms3-lite-esp32s3-dev-kit?ref=pvosfmid) | 8 GPIO (Grove, Header), IR TX, 1 кнопка |
| **M5 Cardputer** |  | 2 GPIO (Grove), экран, клавиатура, микрофон, динамик, IR TX, SD-карта, батарея, [автономный режим](#standalone-mode-for-the-cardputer) |
| [**M5 Cardputer ADV**](https://shop.m5stack.com/products/m5stack-cardputer-adv-version-esp32-s3?ref=pvosfmid) | [](https://shop.m5stack.com/products/m5stack-cardputer-adv-version-esp32-s3?ref=pvosfmid) | 12 GPIO (Grove, Header), экран, клавиатура, микрофон, динамик, IR TX, SD-карта, IMU, батарея, [Lora](https://shop.m5stack.com/products/cap-lora-1262-for-cardputer-adv-sx1262-atgm336h?ref=pvosfmid), [CC1101](https://shop.m5stack.com/products/cap-cc1101-nfc-for-cardputer?ref=pvosfmid), [автономный режим](#standalone-mode-for-the-cardputer) |
| [**M5 StampS3**](https://shop.m5stack.com/products/m5stamps3a-with-2-54-header-pin?ref=pvosfmid) | [](https://shop.m5stack.com/products/m5stamps3a-with-2-54-header-pin?ref=pvosfmid) | 9 GPIO (выведенные пины), 1 кнопка |
| [**M5 Stick S3**](https://shop.m5stack.com/products/m5sticks3-esp32s3-mini-iot-dev-kit?ref=pvosfmid) | [](https://shop.m5stack.com/products/m5sticks3-esp32s3-mini-iot-dev-kit?ref=pvosfmid) | 13 GPIO (Grove, Header), экран, микрофон, динамик, IR TX, IR RX, IMU, 3 кнопки, батарея |
| **LILYGO T-Display** |  | 13 GPIO (1 Qwicc), экран, 2 кнопки |
| **LILYGO T-Embed** |  | 9 GPIO (Grove, Header), экран, энкодер, динамик, микрофон, SD-карта |
| **LILYGO T-Embed CC1101** |  | 4 GPIO (2x Qwiic), экран, энкодер, динамик, микрофон, SD-карта, CC1101, PN532, IR TX, IR RX , батарея |
| **LILYGO T-Embed CC1101 Plus** |  | 4 GPIO (2x Qwiic), экран, энкодер, динамик, микрофон, SD-карта, CC1101, NRF24, PN532, IR TX, IR RX , батарея |
| **Heltec WiFi LoRa 32 V4** |  | 15 GPIO (Header), SX1262 LoRa, 2 кнопки, **экран не поддерживается** |
| **Heltec Vision Master T190** |  | 15 GPIO (Header, Qwiiic), экран, 2 кнопки, SX1262 LoRa |
| **Seeed Studio Xiao S3** |  | 9 GPIO (выведенные пины), 1 кнопка |
| **Waveshare ESP32-S3-GEEK** |  | 7 GPIO (разъём Dupont), экран, 1 кнопка, SD-карта |
| **Unexpected Maker ProS3**| [](https://www.adafruit.com/product/5401) | Более 20 доступных GPIO (Header, STEMMA QT), 1 кнопка|
- **Другие платы на базе ESP32-S3**
- Все платы на базе **ESP32-S3 могут поддерживаться** при условии наличия как минимум **4 МБ флеш-памяти.**
- Вы можете **прошить прошивку s3 dev-kit (8 МБ флеш-памяти) или supermini (4 МБ флеш-памяти) на любую плату ESP32-S3.**
- Учтите, что **сопоставление пинов по умолчанию в прошивке может не совпадать** с вашей конкретной платой.
## Начало работы
[](https://geo-tp.github.io/ESP32-Bit-Pirate/webflasher/)
1. 🔧 Прошейте прошивку
- Используйте [ESP32 Bit Pirate Web Flasher](https://geo-tp.github.io/ESP32-Bit-Pirate/webflasher/) для прошивки прямо из веб-браузера.
- Вы также можете прошить её через [M5Burner](https://docs.m5stack.com/en/download) в категории StickS3, AtomS3, M5StampS3 или Cardputer.
2. 🔌 Подключитесь через Serial или Web
- Serial: любое терминальное приложение или [бесплатный браузерный Web Serial терминал](https://geo-tp.github.io/ESP32-Bit-Pirate/web-tools/web-serial-terminal/) (см. [Подключение через Serial](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/99-Serial))
- Web: настройте Wi-Fi и получите доступ к CLI через браузер (см. [Подключение Wi-Fi](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/00-Terminal))
3. 🧪 Используйте команды, такие как:
```
mode
help
scan
sniff
...
```
## Wiki
[](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/)
📚 **[Посетите Wiki](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki)** для подробной документации по каждому режиму и команде.
Включает:
- [Режим терминала](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/00-Terminal) - О последовательном и веб-терминале.
- [Обзоры режимов](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki) - Просмотр поддерживаемых режимов.
- [Настройка Serial](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/99-Serial) - Доступ через USB.
Wiki — лучшее место, чтобы узнать, как всё работает.
## Написание скриптов
[](https://github.com/geo-tp/ESP32-Bit-Pirate-Scripts/)
🛠️ [**Автоматизируйте взаимодействие с ESP32 Bit Pirate**](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/99-Python) с помощью **Python-скриптов через последовательный порт.**
Вы можете писать и тестировать скрипты прямо в браузере с помощью [ESP32 Bit Pirate Python Lab](https://geo-tp.github.io/ESP32-Bit-Pirate/web-tools/python-lab/).
**Включая:** логирование данных в файл, дамп eeprom и flash, взаимодействие с GPIO, анимацию светодиодов...
## Expander
[](https://github.com/geo-tp/ESP32-Bus-Expander)
🔌 **[Расширьте возможности ESP32 Bit Pirate](https://github.com/geo-tp/ESP32-Bus-Expander)** с помощью дополнительных аппаратных модулей.
Expander добавляет поддержку **WiFi 5 ГГц, Zigbee** и других радио-протоколов.
[](https://github.com/geo-tp/ESP32-Bus-Expander)
## Dock
[](https://github.com/AndreiVladescu/ESP32-Bit-Pirate-Dock)
🔧 **[Док-станция для ESP32 S3 DevKit](https://github.com/AndreiVladescu/ESP32-Bit-Pirate-Dock), разработанная для работы с оригинальными адаптерами Bus Pirate.**
Она позволяет подключать и использовать оригинальную экосистему адаптеров и аксессуаров [Bus Pirate](https://buspirate.com/).
[](https://www.pcbway.com/project/shareproject/ESP32_Bit_Pirate_Dock_ca02ded7.html)
[**Получите ESP32 Bit Pirate Dock на PCBWay.**](https://www.pcbway.com/project/shareproject/ESP32_Bit_Pirate_Dock_ca02ded7.html)
[](https://www.pcbway.com/project/shareproject/ESP32_Bit_Pirate_Dock_ca02ded7.html)
## Интерфейсы командной строки
Прошивка ESP32 Bit Pirate предоставляет три режима интерфейса командной строки (CLI):
| Интерфейс | Преимущества | Идеально для... |
|------------------|-----------------------------------------------------------------------------|----------------------------------------|
| **Веб-интерфейс** | - Доступен из любого браузера<br>- ПК, планшеты, мобильные устройства<br>- Работает через Wi-Fi<br>- Не требует кабелей | Быстрые тесты, демонстрации, настройки без монитора |
| **Последовательный интерфейс** | - Более высокая производительность<br>- Мгновенный отклик<br>- Плавная обработка больших объёмов данных | Интенсивные сессии, частые взаимодействия |
| **Автономный** | - Только для Cardputer<br>- Клавиатура на устройстве<br>- Экран на устройстве | Портативные сессии, быстрые тесты |
Все интерфейсы используют одинаковую структуру команд и могут использоваться взаимозаменяемо ([подробнее](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/00-Terminal)).
## Мобильный веб-интерфейс через WiFi

## Автономный режим для Cardputer

## Участие в разработке
См. раздел [Как внести вклад](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/99-Contribute), в котором описан **простой способ добавить новую плату или новую команду**.
## Визуальные материалы
#### [](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/99-Visual-Assets)
См. [изображения, логотип, презентации, фото, видео, иллюстрации](https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/99-Visual-Assets). Эти материалы можно **свободно использовать в блогах, документации, видео или статьях** для объяснения и продвижения прошивки.
## Предупреждение
> ⚠️ **Предупреждение о напряжении**: Устройства должны работать только при **3.3V** или **5V**.
> - **Не** подключайте периферийные устройства с другими уровнями напряжения — это может **повредить ваш ESP32**.
> ⚠️ **Предупреждение об использовании**: Эта прошивка предоставляется **исключительно в образовательных, диагностических целях и для тестирования совместимости**.
> - Не используйте её для вмешательства, зондирования или манипулирования устройствами без надлежащего разрешения.
> - Избегайте любых несанкционированных RF-передач (например, sub-GHz), которые могут нарушить местные нормы или создать помехи сетям и связи.
> - Авторы не несут ответственности за любое неправомерное использование этого программного или аппаратного обеспечения, включая юридические последствия, возникшие в результате несанкционированного доступа или излучения сигналов.
> - Всегда соблюдайте законы вашей страны и политики ответственного раскрытия информации.