Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: A cheap smartwatch with a supported SDK
52 points by 41209 on Dec 11, 2021 | hide | past | favorite | 45 comments
Hi HN, I'd love to buy a smart watch for 50$ or less that'll allow me to develop my own apps.

Looks like Google is coming out with Wear OS 3 soon, so I don't want to invest any real money in a Watch until then




Depending on what you mean by "smart watch": you can try the Pine Time: https://www.pine64.org/pinetime/

51 USD will get you a sealed smart watch and a dev kit :)


Actually this isn't a bad idea, anyway to save on shipping or get a promo code.

Once it's shipped, it's 60$ or so venturing close to what a WearOS watch cost ( I'm seeing older ones at 80$ or so)


It doesn't seem to have always-on display :(

I also want to find a good smartwatch, tired of waiting for wear3.0, but an always-on display is a must have for me.


With that budget you won't find an always-on display. OLED panels are just too expensive.


How about e-ink watches? I know nothing about them, but it seems they exist and aren't specially pricy.


Watchy [1] has already be mentioned somewhere below and has an e-paper display.

[1] https://watchy.sqfmi.com


What about transflective lcd, like some Garmin forerunners?


Can I write my own apps for the sealed version?

The dev kit seems a bit too low level for me



Fantastic, I think I'll go with the Colmi P8 and try to build something silly with it.

Thanks


they provide an emulator, so you can develop apps on your computer before you deploy to watch

https://wasp-os.readthedocs.io/en/latest/appguide.html#testi...

the OS itself is a app and is easily customizable

but best the thing has to the community on Matrix/IRC. Daniel, (the creator) is very responsive and without his support i wouldn’t be able to create my app


I'm just waiting on my PineTime (one sealed, one dev) to arrive.

I've used a P8 with InfiniTime but the latest code no longer runs due to a driver change.

Bite the bullet and get a PineTime. The community is working hard on the software, as they are with all Pine64 devices.

Free advice is worth what you spend on it, but this is from the heart.


Good point, assuming I can cancel the order I already made for a P8 watch( one thing I do love about Amazon is canceling is very very easy compared to other retailers )


The Bangle.js 2 just delivered to kickstarter backers: https://www.kickstarter.com/projects/gfw/banglejs-2-the-open...

AFAICT, it's fully open source software (except, presumably, the nordic hal stuff?), with a JS SDK and a hosted IDE. But, I haven't used it yet because it requires WebBluetooth, and I refuse to use chrome, and I haven't figured out if the rasppi hosted IDE is still supported or not, it seems that the `nw` package doesn't support arm (anymore?).

But this was the best option I found when I was looking awhile ago.

The other things I considered were the Pinetime (software is still a bit too early from what I've seen) and "Paul's Open-Smartwatch" https://open-smartwatch.github.io/, but I really wanted GPS and that version's design isn't finished yet.


Upvote for BangleJS2. Been wearing mine for a couple of weeks now and it's great. The always on transreflective screen is really easy to read in sunlight and the battery seems great (over a week). Being able to quickly hack watch faces using the online IDE is great, i've hacked mine to be easy to read when i'm usually asleep and only care about the time, not the date and other stuff.


This looks closest to what I want, I signed up for their waiting list


I'm wearing mine for a few weeks now, but it's been rather unstable for me. BTLE disconnects are common, and I'm not sure what the source of the problem might be. Also, it sometimes freezes in an infinite loop and drains battery really quickly when that happens.

These are all problems fixable with software updates, and it's very early stages of the project. The app store grew from 80 to 130 apps in the last 3 weeks.

The hardware on the other hand is great. It doesn't feel cheap, but it's really lightweight, which I enjoy. The e-ink display is crisp and clear, easily readable in direct sunlight, and it has 8 colors, which is a cool feature for an e-ink display.

Didn't get my hands dirty with the SDK yet, but will hopefully find some time during the holidays. It looks well thought out though, and the web IDE and emulator seem useful.

Really looking forward to dig into it.


Just got my Bangle.js 2 and like it very much. Also purchased a Watchy for the epaper display a few months back. Compared to Watchy, the espruino IDE and ecosystem for Bangle.js 2 is much more developed and the community much more active. There is support for widgets, custom settings, and apps other than watch faces, and the development / sharing path is much more thought through. Check out the app loader, and the 300 or so apps (all source available on github) here: https://banglejs.com/apps/


This is pretty amazing, I'll buy one as soon as possible.

Can you modify the OS itself.

I want to program a watch that doesn't actually tell time.


I haven't tried hacking the OS yet but I'm sure it's possible. Yep, I made a watch that tells time imprecisely, called "Imprecise word clock" aka "The No Shit Sherlock Clock" - https://banglejs.com/apps/apps/impwclock/bangle1-impercise-w...


I got a Bangle 1 and have the same problem about WebBluetooth and refusing to use Chrome. It's put a real damper in all my exciting hacking plans. I would love an alternative.


I have worked for many years on fitness trackers from https://www.jointcorp.com. Talking with them, they sent PDF files for the communications protocol (Bluetooth Low Energy). I wrote a generic codec that consumes a YAML file and could decode packets from these devices to Python objects, and which could take a Python API call for a function you didn't write and encode it to binary packets the watch could understand. Practically, when we needed to use another device, I just added to the YAML file and the thing worked with practically no code change. New watch with GPS data? Just add to the YAML file and magic happens. Watch with blood pressure feature? Just add a few lines to the YAML file and magic happens.

The code was on a Raspberry PI in which a 3G/4G dongle was plugged, and it connected to the watch, uploaded data, was robust do disconnection events either internet or BLE (used Thespian and the Actor model to create and kill actors). The devices were geographically distributed on different timezones (a fucking nightmare) and basically needed to work for users with zero technical skills. It needed to be plug and play and it just works. Even configuring the pairing between a Raspberry PI and the watch needed to be low touch (I used the analogy of a dog and a hand: you put your hand out for the dog to smell and recognize you, you put the watch nearby the Raspberry PI and it computed the RSSI and duration to detect the "intent" so it didn't pair with "drive-by" devices). Kind of like NFC, but for BLE. The data was sent to a backend, then displayed on a mobile application (the prototype had a Grafana dashboard that showed your activity in near-real time).

Talk with them. They'll probably send you the PDF spec and you can do whatever you want.


That's cool, but I was trying to find a company that publishes it's SDK. Ideally some app examples as well.

That said, given how cheap these watches are I'm open to trying anything. Were you able to write your own custom app too, or just consume existing data ?


>Were you able to write your own custom app too, or just consume existing data ?

As mentioned in my original comment with additional: I wrote an application that ran on Raspberry PI devices in different continents, countries, and time zones that connected to trackers worn by people with zero technical skills and worked nonetheless surviving disconnection events and automatically upgrading the software, communicating with the trackers and sending serialized data (protobufs) to a server application in Scala my colleague wrote, that then made analysis and aggregations and sent result to yet another mobile application (Android) another colleague wrote to display graphs and other data. The application I wrote worked with several models of this company's products, and at some point, we thought of making it more generic and use it for video and sound feeds for another project ("sound event detection", let's say).

Yes, I was able to build a custom app and it worked not only on my data, but on others' data as well.

The funniest conversations we had were about time and time zones. At some point, we started using timestamp timestamp and timestamp not timestamp because working on data from multiple time zones makes you question what on earth is time, and what actually is now ("Now for whom?" "Now where?").

I had literally nightmares about time and time zones. No, I am not kidding.


>that ran on Raspberry PI devices

You were able to create a companion app, but I'm talking about actually running custom apps on the tracker itself. Do you know if that's possible


>You were able to create a companion app, but I'm talking about actually running custom apps on the tracker itself. Do you know if that's possible

I understand. You meant an SDK to create an application for the tracker itself, not get the raw data (which many of the trackers don't even give easily) and then make something with that.

I am not aware if they support, or give access to this. I misunderstood your original question.


Yes, I want to actually make apps for the tracker. Other watches do support this, according to other posts in the thread.

However, your use case did spark my interest. Were you running a fitness company or something, was the tracker a key part of making sure your customers stayed on track.


We worked on a project for the elderly: we wanted to detect anomalies in their behavior to scale social workers and draw their attention to the seniors who actually needed assistance. Is there an anomaly in their behavior (lack of heart-rate variability is thought to be a sign of depression or other problems? are they walking less than usual? are they sleeping well? what is the proxy for loneliness? what is a proxy for anxiousness? are they waking up in the middle of the night when they didn't use to? Have they fell?)

The mobile application was for social workers to track the behavior of seniors who were assigned to them. They received alerts based on some triggers and rules after analyzing the data that we consulted cariologists, social workers, paramedics for.

It was psychologically hard because the question I always asked the team was "Would you trust your parents' life with this?", and we built against that standard with the constraints at the time with the answer almost always being "no, I can improve X, Y, and Z". It was never enough.


Hi!

Check out the watchX: https://youtu.be/AKSIGRdL-ts You can code it with Scratch or Arduino. There are a lot of examples available: https://community.watchx.io/t/watchx-watch-face-collection/6...


You can still develop for Pebble, even though the entire thing is EoL. There are lots of Pebble enthusiasts and work is still being done on the platform through Rebble.

There's also Bangle.js to keep an eye on.


Yeah, Pebble has a great SDK and since it's defunct there's no update treadmill anymore. Anything you build today will be guaranteed to work as long as the hardware does.


Maybe Watchy does what you want. No personal experience though. https://watchy.sqfmi.com/


I have one, and have found it quite excellent. Easy to play around with, pretty good documentation, and the eink is really nice. There's something like 30 watch faces already designed, so you can just fork off one you like.

Highly recommend the anodized aluminum case. The plastic one is sturdy enough, but with the thickness of the material, makes the watch feel bulky. Also, the aluminum one has such a good fit (they are precision CNCed) that it can handle water splashes with no problem, and a few gaskets can get it to IP64 or 65


You can find old Pebbles at that price at eBay[1]

IMO, it still is one of the best smartwatches.

[1]: https://www.ebay.com/sch/i.html?_from=R40&_trksid=p2380057.m...


How do you deal with the lack of Pebbles cloud services?


hopefully you find this helpful...

On December 7th, 2016, Pebble announced that they were ceasing operations. Two days later, on December 9th, 2016, the Rebble web site went live, announcing our intention to "maintain and advance Pebble functionality, in the absence of Pebble Technology Corp." We have fulfilled much of this goal via Rebble Web Services, which restores most of the functionality that the Pebble community knows and loves.

https://rebble.io/


Personally, I find the lack of cloud services to be relaxing. Because the thing always works that way, instead of occasionally melting down because some cloud service is having an outage and the failure mode is not well thought out.


Rebble is still hosting them and they work great. But they're not really required for the watch to work.


There are many ESP32 smartwatches available on Aliexpress for about this price. ESP32 is compatible with Arduino IDE, PlatformIO, and many other development tools.


The Lillygo or TTGO watches you'll find on AliExpress support Arduino libraries, Python, C or even JavaScript.


> Looks like Google is coming out with Wear OS 3 soon

Wear OS 3 is already out.

https://www.androidauthority.com/wear-os-3-watches-2736393/


I picked up a (used) Series 3 Apple Watch for $100 early last year. If you got one of those, it’s surely going to be worth $50 in 12 months.

I’m in the Apple ecosystem and very happy with the watch, even though the newer versions are surely nicer.


Apple Watch practically requires an iPhone though.


See if you can find a Timex Datalink on eBay


pinetime




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: