Skip to content

Picodroid

Picodroid is a stripped-down Android-shaped runtime that fits on a Raspberry Pi Pico. App code is written in Java, compiled to bytecode, and interpreted by a lightweight JVM built in Rust running on bare-metal embedded hardware.

If you’re new, follow this path: Build & flashYour first appMulti-screen tutorialEmbedded gotchasLimits & memory budgets. Then copy whichever Example is closest to what you want to build.

Two paths in

Raspberry Pi Pico (RP2040 / RP2350)

The reference platform. Stable across boards (Pico, Pico 2, Pico 2 W, Pico Enviro Mon). Start at Build & flash.

Porting to a new MCU family

The HAL contract and build seams are documented for future families. Start at the porting guide.

What’s in here

  • Get started — install the toolchain, build, flash, and run the simulator.
  • Tutorials — guided, end-to-end builds: a multi-screen app and a background service.
  • Examples — 72 example apps grouped by category. Pick one close to what you want.
  • Java API — what the framework exposes to your app, by area: peripherals, storage, networking, sensors, services, UI.
  • Guides — embedded gotchas, button-only navigation, debugging, troubleshooting, bundled image assets, theming.
  • Reference — limits & memory budgets, the manifest schema, the class-name shrinker, the porting guide, JVM tunables.
  • Project — architecture, release notes, contributing, licensing.

Search (top-right) is full-text — type Snackbar, NumberPicker, setImageSource, or BackgroundExecutor and you’ll land on the relevant page.