🌸Spring 2026 Pebble App Contest — View the entries!

Changelog

Version 1.0.52026-09-18T19:34:45.156

Added alarm clock indicator with red accent hands, refactored source into modular files.

Version 1.0.42026-09-16T20:42:29.27

Procedural Warning Icons

- Changed Bluetooth and empty-battery icons from PDC resources to procedural C drawing — zero external assets, fully anti-aliased on Emery.
- Changed Bluetooth disconnected icon: redesigned with thin phone outline (18×28 px), centered red X (12×12 px), and small home button — two-color black + red design, fully procedural.
- Changed Empty battery icon layer bounds 24×18 → 32×36 for consistency with other status icons (added 2 px padding on all sides for stroke-bleed margin; icon drawing unchanged).
- Changed Empty battery warning threshold from 5 % to 10 % — earlier warning gives users more time to charge before shutdown.
- Added Quiet mode "Zzz" icon (also procedural, 24×32).

Version 1.0.22026-08-09T20:48:23.463

Redesigned Warning Icons

- Changed Bluetooth disconnected icon: bigger (24x32), bolder strokes, two-color design — black phone shape with red diagonal slash.
- Changed Empty battery icon: bigger (24x18), bolder strokes,two-color design — black battery outline with red X.
- Changed icon layer positions in `src/layers.c` to accommodate larger dimensions.

Version 1.0.12026-08-07T17:59:00.906

Bluetooth Connection Stability Hotfix

- Added 15-second Bluetooth disconnect debounce to prevent spurious "no Bluetooth" icon flashing caused by PebbleOS standby mode power-management (especially on Pebble Time 2 / Emery).
- Added live re-check in the debounce timer — verifies the actual connection state before showing the icon.
- Removed per-minute Bluetooth resync from the time tick to respect PebbleOS v4.30.0 "fewer background wakeups" battery optimization.
- Fixed missing `connection_service_unsubscribe()` in window unload (resource leak).
- Fixed missing `bt_debounce_cancel()` teardown — pending timers are now cancelled on app exit.
- Removed unused `setToReady()` / `isInitialized` state (dead code cleanup).
- Added inline firmware timeline comments documenting the root cause across PebbleOS releases (core35 → v4.9.175 → v4.31.1).

Version 1.0.02026-06-03T19:27:06.473

Initial Release

- Migrated from ClockLight project.
- Emery (Pebble Time 2) platform support only.
- Displays time, date, weekday, battery level, and Bluetooth connection status.
- High-contrast LECO 60 font for time; custom Milford font for date/weekday.
- Battery bar and empty-battery indicator.
- No-Bluetooth icon with emulator test scripts.