How to Build a Smartwatch: Picking a Chip

97 rcarmo 46 5/14/2025, 7:02:54 AM ericmigi.com ↗

Comments (46)

rjmunro · 1h ago
PebbleOS isn't the only player in this space. There's also https://www.espruino.com/ which powers https://banglejs.com/. It's a tiny implementation of Javascript for microcontrollers, so it's really easy to hack your device in real time.

It also powers the Fallout Pip boy and possibly some other stuff from the wand company: https://www.thewandcompany.com/fallout-pip-boy/ See: https://github.com/orgs/espruino/discussions/7577

rgoulter · 2h ago
"The SDK is open source" Oh, a BLE MCU with open source code SDK?

AFAICT, the BLE code is provided as a binary blob. https://github.com/OpenSiFli/SiFli-SDK/tree/6c82a9b15db49871...

Which isn't a problem. But, I wish if something is described as "open source", you could read the source code for it.

pjc50 · 2h ago
BLE radio device firmware is always going to be provided as binary blobs for a combination of IP and regulatory reasons.
WJW · 1h ago
I know very little about bluetooth firmware beyond using it for apps and such, but what kind of regulatory reasons are there that prevent publishing source code for bluetooth radios?
archi42 · 1h ago
The BT blob (or WiFi blob, or general radio blob) often controls low level aspects of the actual RF device. So you can often alter frequencies, power levels and other parameters. This results in the device acting out of spec.

Now one might say that's the fault of the person doing the modifications/manipulations, but regulations in various countries require the device to prevent these manipulations.

(N.B. I'm not in the exact business, but that's my take away from looking into the topic some time ago)

cik · 59m ago
To be fair, depending on your partnership you actually do get the code to these blobs, and export control comes into play.
ratatoskrt · 1h ago
I think often it's also a combination of what you described and big companies being super risk-averse. Why risk breaking regulations if you can just say no?

Then again, lots of Wi-Fi-enabled devices support simply changing their region setting and will happily let you use different Wi-Fi bands or increase signal power.

sampullman · 1h ago
That was my takeaway as well when I was working with Bluetooth modules a few years back.

There were a few more reasons too, at least at the time. The companies in the space didn't have a culture of open sourcing, and there's probably no perceived commercial upside to releasing code for a chip like that.

HPsquared · 1h ago
Surely it's possible to maintain control over that while still publishing the source code? Seems like security by obscurity.
ratatoskrt · 1h ago
I don't know, I don't think there are many open-source third-party firmware implementations for these kinds of chipsets out there, so it seems pretty well obscured.
tcbawo · 1h ago
To avoid intentionally or unintentionally interfering with frequency spectrum it should not be.
outadoc · 8m ago
Thank you for the write-up. Cool to see some degree of open-source hardware running PebbleOS.

Though, can we stop having left-aligned blogs in 2025? Wide screens have been here for a while, it makes it unnecessarily hard to read :(

stateoff · 2h ago
mrheosuper · 3h ago
Interesting they did not go with 2-chip design(1 for main application, 1 for BLE stuff). Which is sometime makes sense because high power mcu usually does not have RF
bArray · 3h ago
The "high-end" modern MCUs are pretty great, you have the NRF offerings, but also the likes of the ESP32 where you can get Bluetooth and WiFi in a single package.

Personally these days I would lean towards the ESP32, they continue to iterate on it nicely and it has great community support. I'm personally developing a smart watch platform based on micropython.

Max-q · 2h ago
While the ESP32 is great for many applications, it’s not for battery operated stuff. When an nRF draws 1-2 mA when using BLE, ESP32 will draw 40 mA. And the chip they selected is even more efficient.

The low power chips can also run in low power mode without BLE running using micro amps, something the ESP can’t match.

I really like ESP32 and I hope they have a low power chip on their roadmap.

bArray · 41m ago
Sure I agree, but the WiFi functionality is a killer feature. As mentioned in another comment, it means a smart watch stops being a smart phone addition and can actually operate as a stand-alone device.

Years ago I had a "smart" watch that had a sim card and was a full mobile phone within its own right, I think it was just 10 years or so too early.

mrheosuper · 2h ago
I would not consider ESP32 high-end MCU, it still lacks many peripheral(DSP, GPU), its core clock is not high(only 240mhz iirc).

Recently they release ESP32P4, with very strong performance, but like you guess, without Radio

bArray · 44m ago
We are talking about an MCU, not a CPU :)

I think once we start talking about GPU, MMU, USB, display, etc, we're getting towards a CPU of sorts.

Speaking of a low-end CPU, I want to test out the RV1103 Rockchip, those crazy little chips are running Linux apparently [1], and even able to run Python [2]. Depending on power draw, a Linux-based smart watch could be on the horizon.

[1] https://www.luckfox.com/EN-Luckfox-Pico

[2] https://wiki.luckfox.com/Luckfox-Pico/Luckfox-Pico-SDK

bobmcnamara · 21m ago
ESP32-S3 has all that minus a GPU. Runs Linux.
jsheard · 2h ago
Aren't ESP32s way more power hungry than typical BT-only parts though?
bArray · 2h ago
Not insanely for a smart watch. Your smart watch battery will be something like 200mAh, so for 20 hours you need to average 10mAh. With zero optimisation, screen refresh rate at 30+fps, I have smart watch chewing 30mAh.

Getting down to 10mAh is not so bad. If you're not actively driving the display, you can under-clock significantly [1], if you're not using WiFi you can turn the modem off [2].

[1] https://docs.espressif.com/projects/esp-idf/en/stable/esp32/...

[2] https://docs.espressif.com/projects/esp-idf/en/stable/esp32/...

jononor · 1h ago
It might be just-about acceptable for a smartwatch. But anything the micro takes out of the power budget means less screen and radio time, which does add constraints.

PineTime, based on NRF52, will get you 4-7 days of practical usage.

bayesianbot · 1h ago
There are ESP32 watches. One I have[1] comes with quite thick 940mAh battery but my understanding is the battery life still isn't that amazing (just got it, haven't really tested the battery) - something like less than a day of constant runtime or few days if you turn it off constantly

[1] https://lilygo.cc/products/t-watch-s3-plus

bArray · 1h ago
I have a similar one with a microphone, I dread to think how the GPS module and LoRa of that variant affects battery life!
aa-jv · 1h ago
Can confirm, I regularly get about 9 days of charge on my PineTime, running the latest PineTimeOS release. Its gotten better and better over the years, and the functionality keeps coming ..
bArray · 1h ago
I used to use the PineTime with PineTimeOS, but mine eventually broke (corroded inside), but not having WiFi made it annoying to develop for. With WiFi suddenly you don't need to communicate regularly with a phone and the possibilities really open up.
mrheosuper · 2h ago
no, esp32(the original one) is insanely power hungry, especially its radio.

Also 20 hours of runtime is horrible.

bArray · 1h ago
I'm getting 10 hours run time with the screen continuously running and drawing graphics every refresh in micropython - extending this time out is definitely possible.

There are many ESP32 variants, depending on what you pick some may be more compelling for your use-case.

numpad0 · 2h ago
It's just a watch. You don't need a full UNIX computer to tell time, or to record heart rates or pinging AWS for those matters.
mschuster91 · 3h ago
the more chips you have, the more complex the project becomes. BOM is one thing, every chip needs support passives and oscillators, but now you also need to coordinate communication between the chips, you need to devise a way to update firmwares and access both chips for debugging purposes... that might be worth to trade off for less battery life.
mrheosuper · 2h ago
in my experience they are not that much difference between 2 design. The BLE FW is a binary blob that you will download at boot with 2 chip-design, or load it to correct address with single chip-design.

From the CPU perspective, they are the same

Max-q · 2h ago
From a PCB layout and supply chain perspective, it’s a big difference.
alin23 · 3h ago
Glad to finaly see someone in the low-power chip industry going in the open source direction. Thanks for the insight!

When I saw rePebble be announced, I signed up for it right away. Only later I realized I actually don't want a smartwatch, I want a dumb watch with vibration notifications.

I know I'm in the minority, but it's a niche that has a few very interested people in it [0] [1] [2]

After wearing the Casio F105 for the past 2 years, I can't go back to something larger, heavier or thicker than this. I could accept weekly battery charging for the benefit of having some bluetooth functionality.

So nowadays I'm looking for a super small bluetooth chip that can power a small vibration motor, which can receive all notifications from my iPhone. I would like to glue that chip, motor and a small lithium battery between the two straps of my F105, because in my tests it seems I don't notice if I add a small weight there.

I still remember when I first used my first Mi Band 1, a forgotten fitness band that had no display, just 3 RGB LEDs that could even get specific colors based on the app that sent the notification. I could know right away when I got a blue Messenger chat that I needed to answer now, or a yellow Google Keep reminder that I could ignore until I got back to my computer.

[0] https://www.reddit.com/r/pebble/comments/9xw2j2/im_looking_f...

[1] https://www.reddit.com/r/smartwatch/comments/174hq9x/need_a_...

[2] https://tildes.net/~tech/18nf/smartwatch_primarily_for_notif...

ramses0 · 1h ago
Same boat, Apple watch has terrible UX (1cm fingertip in a 2cm screen??!?), tries to do too much and not to my liking.

Pebble allows me to walk away from my phone because I will get the notifications (text or phone call) and can see enough to decide to respond.

Pebble is pretty lightweight and if you load up this watchface you'll feel right at home: https://store-beta.rebble.io/app/52f0939b1ac7948708001fc9

dsalzman · 39m ago
I agree. I’ve been looking for a “smart” watch strap or strap clasp I can use with my vintage seiko watch. I just want vibration alerts when very specific things happen on my phone. My wife is calling etc. Dont need all the features or display of a typical smart watch. Too distracting.
0xEF · 2h ago
I still rock my OG Pebble and while I am excited they're coming back, I have no plans to upgrade.

Like you, my needs are simple; vibrating alarm, notifications, but with one key factor; I need a display that I can read in broad daylight that plays nice with my far-sighted eyes. The eInk display on the OG Pebbles hits the mark. Being able to read a text without pulling out my phone is also nice.

Plus they can be got on eBay for about $30 USD and a fresh battery is about $15, so they don't break the bank. The Rebble.io community's work is still functioning well enough for my use, as well.

mrweasel · 1h ago
Apparent my wish for a fitness tracker that's not a watch is also pretty niche. I know that there are rings, but I also don't like rings.

Basically I want a bracelet, if it must be on my arm, but ideally it would be an ankle bracelet. I'm not sure that would provide a convenient spot to get heart rate, or data beyond steps.

ramses0 · 1h ago
Whoop.com, your wish has been granted! Just pony up $19.95/mo (or whatever) as well...
mrweasel · 1h ago
So close... but why the subscription? It just needs to stuff the data into Apple Health when it is within range of my phone.

It is actually tempting, but I can't support a subscription based hardware product. Just charge me whatever the device cost + profits.

hombre_fatal · 59m ago
I've had one since October and really like it.

I justify the ~$20/mo the same way I justify a gym membership: it's a bargain if it's compelling you to make positive choices about health/sleep/exercise. If it's not, then yeah, it's just an expensive mood ring.

Of course, there are also smart rings (Oura) and much cheaper devices (FitBit https://store.google.com/category/trackers).

lmm · 58m ago
As per your last link, the current Mi Bands fill that niche pretty well. Screen, but decent battery life and small enough to not get in the way.
MrAlex94 · 2h ago
Would Withings[1] watches not fit the bill? I have a ScanWatch and the battery life lasts almost a month.

1: https://www.withings.com/

alin23 · 2h ago
The Scanwatch Light seems to be very close to what I need. While they're priced reasonably for what they offer, they're crazy expensive for what I would need. I'm really not interested in fitness or sleep tracking these days anymore.

I'm also a bit scared of the many "charging issues" some people seem to have with them after a few months, but I guess every batch has a few bad devices so I could hopefully return it.

Thanks for the recommendation! I might try one soon.

MrAlex94 · 1h ago
For what it’s worth, after I bought one, around five other people I know got them, varying models from the Steel HR to Nova, and haven’t been made aware of any issues. Of course, personal experience doesn’t apply to the mass of products, and these are all UK SKUs, so who knows if issues vary between countries as well?

Overall everyone has been happy though and I haven’t seen Withings come up on HN which is surprising tbh!

amelius · 2h ago
> The most interesting and difficult constraint is actually software compatibility.

But it is probably the easiest constraint to get around. I would put this one more towards the end of the list.