Open-Source Smartwatches & Wearables
PineTime, Bangle.js, Watchy, AsteroidOS — when you really want to own your wrist hardware.
A small but vibrant scene of fully open-source wearables: open hardware schematics, swappable firmware, hackable on a Tuesday night. None of these are as polished as an Apple Watch or as accurate as a Garmin — but you own them down to the silicon.
Sister sections: Apple Watch, Garmin, Oura & Whoop, GadgetBridge & Aggregation, MCU Platforms, Embedded Rust, BLE & Bluetooth IoT, Quantified Self DIY.
PineTime (PINE64)
- ★ PINE64 PineTime — open hardware NRF52832-based smartwatch; ~$30 retail; HR, accelerometer, color LCD, BLE; community-developed.
- ★ InfiniTime — the dominant FOSS firmware for PineTime; FreeRTOS-based; activity counts, HR, notifications, music control; Watchface SDK; OTA via GadgetBridge / nRF Connect / amazfish.
- Wasp-OS — alt MicroPython firmware for PineTime; smaller community; useful if you'd rather Python than C++.
The PineTime is the gateway open-source smartwatch in 2026 — it's cheap enough that bricking it is fine and the community is large enough to ask questions.
Bangle.js 2
- ★ Bangle.js 2 (Espruino) — open hardware + open firmware; JavaScript on your wrist; nRF52840; HR, accel, vibration, GPS bandable; ~$80.
- App loader — install / write apps from the Web Bluetooth IDE; a few hundred community apps and watch faces.
- The "I'd like to write my own watch app on the toilet on a phone" choice. Genuinely fun.
Watchy (SQFMI)
- ★ Watchy — ESP32-based Arduino smartwatch; e-paper display; week-long battery; ~$80 kit. Hardware design is open; you 3D-print the case.
- PlatformIO + Arduino dev flow. See Arduino & PlatformIO.
- Crystalfontz / open watch face repos — community face library.
The Watchy is the maker's smartwatch — barebones, ugly by default, fully programmable. Good companion to ESPHome + Home Assistant.
AsteroidOS
- ★ AsteroidOS — FOSS Linux-based smartwatch OS; replaces Wear OS on a number of Wear OS-era hardware (Asus ZenWatch 3, LG Urbane, Sony SmartWatch 3, Mobvoi TicWatch E2/Pro, others).
- Active dev; Bluetooth pairing with Android via
asteroid-companion. - Niche but the right answer if you have aging Wear OS hardware lying around.
RP2040 / Pico-based watches
- WatchX, OpenWatch, MiraOS — DIY watch projects on RP2040 or nRF52; lower polish but hackable.
- Adafruit Feather + LCD + battery — DIY scaffolding. Genuinely a weekend project.
Mi Band / Amazfit + GadgetBridge
- ★ GadgetBridge — FOSS Android client; pairs with Mi Band 4/5/6/7/8, Amazfit GTR/GTS/Bip, Fossil Hybrid, Sony SmartWatch, Pebble, and Pixel Watch (limited). Reads steps, sleep, HR, notifications — without the official app or cloud account.
- The closest thing to "open-source firmware on closed hardware" — you don't reflash, but you replace the cloud account with a local app.
Pebble revival
- Rebble — community keeping classic Pebble watches alive after Fitbit shut it down; firmware updates, app store, weather; works on Pebble Time / Time 2 / Time Steel.
- ★ Core Devices Pebble 2 successor (announced 2024 by Eric Migicovsky) — small batches; runs PebbleOS open-sourced by Google in early 2025. Worth tracking in 2026.
CrowPanel / TrueWear / Hexabyte
- CrowPanel — Elecrow's ESP32-S3 + 1.4" round screen kits; effectively a Watchy with a color screen.
- DIY Arduino smartwatch tutorials — ample on Hackaday / Adafruit; for the "I want to learn embedded" crowd.
Sensor / firmware ecosystem
- Open BLE HR strap firmware (community ports of Polar H10-style firmware to nRF52 dev kits) — niche but exists.
- See Embedded Rust and MicroPython / CircuitPython for firmware language choices.
Reality check
- ★ None of these match Apple Watch / Garmin sensor accuracy for HR / HRV / GPS. They're for hobbyists, not endurance athletes.
- Battery life is generally good (e-paper Watchy = days; PineTime / Bangle.js 2 = days).
- App ecosystem is thin — no Strava on your Bangle.js. (You can sync via GadgetBridge but features are limited.)
- The point is ownership, learning, and modification — not parity with the closed flagships.
Cost / license honesty
- PineTime — ~$30 hardware; InfiniTime / Wasp-OS GPL.
- Bangle.js 2 — ~$80 hardware; firmware MIT/Espruino-licensed.
- Watchy — ~$80 kit; firmware MIT.
- AsteroidOS — repurpose old Wear OS hardware ($0-50 secondhand); GPL.
Pick this if…
- Cheapest "real" open watch: PineTime + InfiniTime.
- JavaScript on your wrist: Bangle.js 2.
- E-paper, Arduino, hackable: Watchy.
- Repurposing old Wear OS: AsteroidOS.
- Closed hardware, open client: Mi Band / Amazfit + GadgetBridge.
- Pebble nostalgia: Rebble + watch out for the 2026 Core Devices Pebble.
- Want sensor accuracy + polish: none of these — see Garmin or Apple Watch.