# PyBLE firmware 0.6.0 — 2026-08-21

Supported browser profiles:

- `esp32-4mb`: classic ESP32 with exactly 4 MiB flash.
- `esp32-s3-n16r8`: ESP32-S3 N16R8-class only — exactly 16 MiB flash plus 8 MiB Octal PSRAM; lean common runtime, with no bundled board-specific display drivers.
- `waveshare-esp32-s3-lcd-147b`: exact Waveshare ESP32-S3-LCD-1.47B B-version only; includes its ST7789 runtime and fresh-install PyBLE splash with persistent disable.
- `esp32-c3-4mb`: ESP32-C3 revision v0.3 or newer with exactly 4 MiB flash and no PSRAM requirement.
- `rpi-pico2-w`: Raspberry Pi Pico 2 W (RP2350 with CYW43439); verified UF2 download followed by manual BOOTSEL copy.

Agent `0.6.0`; protocol `PBLE/1`; MicroPython `v1.28.0` @ `e0e9fbb17ed6fd06bb76e266ae554784c9c80804`; ESP-IDF `v5.5.1` @ `fcae32885b0296b32044cb99ecbdc50d98dddb83`; PyBLE source `0c7230d6708797c241160ba71fbd37e6b22f180a`; tag `firmware-v0.6.0`.

Installation is destructive and erases the existing firmware and workspace. Back up board files first. The four ESP profiles use ESP Web Serial from a supported desktop Chromium browser. The `rpi-pico2-w` profile instead uses a verified UF2 download and manual copy to the BOOTSEL mass-storage volume. iPadOS cannot perform either wired provisioning step. Runtime use remains BLE-first. Upgrade only with the same exact qualified profile. See `RECOVERY.md` before installing.

Known limitations: the initial profile set covers only the exact memory configurations above. Stop on wrong-memory symptoms instead of trying another image. Support: https://pyble.dev/support/.
