iPad external beta + Android open testing

Python over Bluetooth Low Energy

Code your MicroPython board. Leave the cable behind.

PyBLE is a free, open-source, tablet-first IDE designed for boards that run MicroPython and support Bluetooth Low Energy. Public v0.6.1 firmware is available for all five exact profiles: classic ESP32, generic ESP32-S3, Waveshare ESP32-S3-LCD-1.47B, ESP32-C3, and Raspberry Pi Pico 2 W. Publication follows the project owner's qualification confirmation.

  • MIT open source
  • Offline-first
  • No account
Actual PyBLE app showing a GPIO 48 NeoPixel Blocks program beside its generated Python
Actual PyBLE appNeoPixel Blocks · GPIO 48 · Generated Python

BLE-firstThe cable is for initial setup, not your everyday workflow.

Private by defaultYour code stays on your tablet and the board you connect.

Built in the openApp, firmware, and PBLE/1 are free under the MIT license.

A simpler development loop

One wired setup. Then build over BLE.

PyBLE keeps the familiar MicroPython workflow and removes the cable from the part you repeat all day.

  1. 01

    Provision once

    Use USB once to install the exact matching v0.6.1 firmware. Four ESP profiles use Web Serial; Pico 2 W uses a verified UF2 download and BOOTSEL copy.

  2. 02

    Connect from your tablet

    Open PyBLE, find your nearby board, and connect directly over Bluetooth Low Energy.

  3. 03

    Create without the cable

    Edit files, build with Blocks, run code, and use the console through the BLE connection.

A focused MicroPython workspace

Everything in the loop, close at hand.

PyBLE brings the essentials together without requiring an account, a cloud project, or a permanent USB connection.

Editor and board files

Write MicroPython with syntax-aware editing, then move files between your tablet and connected board.

A live console

Run, stop, soft reboot, and follow standard output and errors without returning to a USB terminal.

Blocks that stay useful

Start visually, inspect generated Python, and move into a deliberately supported beginner Python subset.

An open connection

PBLE/1 is an open protocol, and both the tablet app and board agent are released under the MIT license.

From Blocks to Python

Start visually. See the real code.

Build offline with eight editable beginner examples, including an explicit TFT display example, explicit numeric or named GPIO pins such as Pin("LED"), and the standard MicroPython NeoPixel API. Generated Python is always visible and editable.

  • Enter the numeric GPIO or named pin for your own board
  • Reopen exact workspaces from verified sidecars
  • Convert a safe, bounded Python subset all-or-nothing

Python-to-Blocks is intentionally bounded: unsupported Python stays untouched instead of producing a partial or misleading workspace.

Platform scope

MicroPython + Bluetooth, not one chip family.

PyBLE is designed for boards that can run MicroPython and host PBLE/1 over Bluetooth Low Energy. A validated PyBLE agent port is still required before a board is supported.

Public firmware targets · v0.6.1

esp32-4mbClassic ESP324 MiB external SPI flash · no PSRAM assumedv0.6.1 public release · owner-confirmed
esp32-s3-n16r8ESP32-S3 N16R8 · lean generic16 MiB flash · 8 MiB Octal PSRAMv0.6.1 public release · owner-confirmed
waveshare-esp32-s3-lcd-147bWaveshare ESP32-S3-LCD-1.47BExact B version · 16 MiB flash · 8 MiB Octal PSRAMv0.6.1 public release · owner-confirmed
esp32-c3-4mbESP32-C34 MiB external SPI flash · no PSRAM assumedv0.6.1 public release · owner-confirmed
rpi-pico2-wRaspberry Pi Pico 2 WRP2350 + CYW43439 · UF2 / BOOTSELv0.6.1 public release · owner-confirmed
Actual Waveshare ESP32-S3-LCD-1.47B displaying the PyBLE v0.5.0 boot splash and app QRReal hardware
Actual board · PyBLE firmware v0.5.0Opt-in boot splash and app QR on the B-version 172 × 320 display.Open this board's installer

Free and open source

See how PyBLE is built.

The tablet app, board-agent firmware, PBLE/1 protocol, tests, and documentation are developed in public under the MIT license. Explore how the pieces fit together, build from source, or help bring PyBLE to another MicroPython + BLE board.

Explore PyBLE on GitHub

PyBLE for iPad + Android

Choose your tablet beta.

Both builds come from the same open-source Flutter app. Choose the iPad external beta on TestFlight or Android open testing on Google Play.

External testing is open

Join the PyBLE beta on TestFlight.

Install the free iPad external beta through Apple TestFlight. Firmware availability and qualification depend on the exact target; check the firmware installer before provisioning. After one-time USB setup, everyday coding runs over Bluetooth Low Energy.

QR code for the PyBLE beta on Apple TestFlight
Scan with your iPad cameraOr open this address on the device:testflight.apple.com/join/yU4e8s6d

Android · Google Play open testing

Get PyBLE on Google Play.

PyBLE 0.2.0 is available on Google Play open testing. Install the Android beta from Google Play and follow any enrollment prompts. Google Play determines availability for your account, country, and device. Firmware availability depends on your exact board; check the firmware installer before provisioning.

QR code for PyBLE on Google Play open testing
Scan with your Android cameraOr open Google Play on your Android device:https://play.google.com/store/apps/details?id=dev.pyble.pyble