Settings

Theme

Show HN: Manage Casio G-Shock watches from the browser

github.com

2 points by izivkov a day ago · 0 comments · 1 min read

Reader

I've been maintaining GShockSmartSync (Android) for a while, and a recurring ask was "can I do this without installing an app?" So I built a browser-based version using the Web Bluetooth API.

What it does: - Time sync with NTP (atomic-clock precision) - Full alarm management (all 5 alarms) - Reminders/events with labels - Watch settings (illumination, sound, display) - Battery level monitoring - Zero install, zero accounts — all BLE traffic stays local between your browser and the watch

Tech: Next.js + TypeScript, Web Bluetooth API, Material Design 3. Supports 19+ G-Shock models with per-model capability detection.

Live demo: https://gshock.avmedia.org Source: https://github.com/izivkov/gshock-smart-sync-webapp

Can be self-hosted on a Raspberry Pi or any Node-capable server.

Browser support: Chrome/Edge/Opera (desktop & Android). iOS needs Bluefy or WebBLE. Safari and Firefox don't support Web Bluetooth — that's a vendor decision, not a fixable limitation on my end.

One honest limitation: Web Bluetooth requires an explicit user gesture to initiate a connection, so there's no background auto-sync — you click "Pair Watch" each session. Fine for my use case, but worth knowing upfront.

The most interesting part was reverse-engineering the BLE protocol. Happy to go into detail on that if anyone's curious.

No comments yet.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection