26
Ask HN: Programmable Watches with WiFi?
Hi. I'm looking for a programmable watch with wifi. Ideally I should be able to write custom programs/apps for the watch to display whatever I want to on them (e.g., make the watch make an https call to a server, receive json and render accordingly; allow the watch to receive "notifications" from the server)
Also, ideally, no requirement of a smartphone to send-receive data (it's ok to need a smartphone for the initial setup of the watch, though). I know about Pebble, but it doesn't have wifi. I know about some Garmins with wifi but for the kind of apps I want to write, the communication between the watch and the server has to be mediated by a phone. Also, correct me if I'm wrong, I don't want to pay $100/year just to be able to use my custom app in apple watches. I usually don't trust Google either (e.g., they discontinue everything in a blink of an eye).
So, what are my options?
I have one of the TTGO T-watches: https://www.tinytronics.nl/en/development-boards/microcontro...
For me it is mainly a decoration of my drawer, but maybe comes close to what you are looking for. :)
AsteroidOS, which runs on many Android watches, and offers a Linux environment over SSH and WiFi (for watches that support it). https://asteroidos.org/
The simplest integration is writing a daemon (in the language of your choice) that schedules wakes, syncs, and sends FreeDesktop notifications.
If you want more of a UI, then you'll be writing QtQuick, which is QML/Javascript/C++.
Their best supported watch is the TicWatch Pro: https://asteroidos.org/watches/catfish/
I have a TicWatch Pro (catfish) running AsteroidOS nightly. If I turn Wi-Fi on, (understandably) its battery drains fast and it gets kinda hot so I leave it off. (I don't know if this is the case for other AsteroidOS watches.) I personally wouldn't recommend it for this specific task even though it's great for anything else.
Wear OS watches commonly have wifi, and can be programmed with the standard Android API and toolchain/IDEs. I doubt that Google will discontinue Wear OS - although your evaluation of risk will undoubtedly depend on whether you're looking at developing personal or commercial apps.
I'm currently wearing a TicWatch Pro 3 Ultra, which has wifi, Bluetooth, and GPS. I've written personal tools for it, and its fairly painless (and free). As a developer with some background in Android, I enjoyed the experience. Getting apps approved for the app store is a pita though, as Google sets quite high bars for the review process.
I also have a Samsung Galaxy Watch4, which also has wifi. People here speak well of Pebble, which might be an option, but I have no real knowledge of it.
Finally, though, wifi is power-hungry and watches have limited batteries and endurance. Both Wear OS and WatchOS will limit wifi use by apps to conserve power, and you ultimately can't do much about that. Using Bluetooth to a phone, and its much greater wifi capacity, is a common approach.
If you want truly standalone + WiFi + custom code, check SQFMI Watchy (ESP32). You can flash your own firmware, call HTTPS endpoints, parse JSON, and render custom UI without a phone in the loop.
Main tradeoff: it’s very DIY (power management, UX polish, tooling). If you want less DIY, Wear OS gives a better SDK, but the platform lock-in is much stronger.
https://watchy.sqfmi.com :)
If you self assemble take great care with the buttons! Otherwise a great reliable device. Bought myself one as "reward". But broke the left lower push button. On board contact still works so it's usable. ESP so comes with wifi&BT goodness built in.
Bangle is a good one https://banglejs.com/ Quite fun to work with. I got one from a conference, and my kid has been enjoying it a lot.
Wonder if you could get Clojure (through the SCI) running on it.
How is the general watch API? The development experience?
is there some community or list of exciting projects made for it? for inspiration :)
When your watch supports the most common computer language on Earth, it is hard to go wrong with it. 4 week standby is pretty good too.
Bangle doesn't have standalone wifi...
I've used one of these ESP32-S3 watches: https://www.waveshare.com/esp32-s3-touch-amoled-2.06.htm
You can write code using the Arduino IDE and there's a lot of Arduino/ESP32 libraries for MQTT, HTTP Clients, Websockets.
https://unexpectedmaker.com/shop.html#!/TinyWATCH-S3-P10/p/5...
You should definitely check out the pinetime. I’m about to pick one up myself. For ~30 bucks why not.
Default OS is a community project. I followed development for a few years. It’s pretty solid last I checked with good battery life and support for user apps written in rust
Second that. Have had one for 2 years and it's brilliant. Haven't yet tried to build any app for it. But it runs a month for me on single charge. I use it for travel or when out for day trips with family.
Does it have WiFi?
Is this question in any way related to television?
I just had to solve this problem recently. I've settled on Google Pixel Watch 4. There are some rabbit holes to go down though before it works reliably.