‹ back home

I'm really happy with my Pinetime

2025-08-09 #hardware #infinitime #pinetime #watch

I’ve been using my Pinetime with InfiniTime since 2021. It’s not perfect, but it’s definitely great. I’m quite happy with it, and wouldn’t trade it for any other existing watch or smartwatch.

I have few requirements for a watch. It should: (1) keep the time, (2) show the time in a clear, readable fashion, and (3) track steps taken each day, (4) have a battery duration of no less than a week. Heart rate monitor is a nice plus, and the Pinetime includes one.

Aside from meeting these requirements, the Pinetime has the upsides of being (really) cheap, running open source software, and using standard 20mm straps. These straps are the same as plenty of other regular watches, there’s immense variety and they’re available in countless shops.

Keeping track of time

This sounds like an obvious requirement for a watch. But my last two Fitbit smartwatches didn’t meet this requirement. After having my Fitbit watches for over a year, the time would start being off. It sounds like a silly issue and one that would be easy to fix. That was far from being the truth. The watches didn’t allow manually adjusting the time — instead they sync the time automatically with the iOS app. Syncing with the app worked fine, and it would reflect the amount of steps tracked and other measurements. But the time remained wrong. It didn’t sync. Their support staff always said “maybe the timezone is wrong on your profile, check that”. The timezone was fine — if it had been off, the time would have been off by an exact amount of hours, not by twenty-something or thirty-something minutes.

When this happened to the first Fitbit, I thought it was a fluke. When this happened to the second one, I started to see a pattern. Some time later, a friend had the same issue and stopped wearing hers too.

So while “it keeps the time” is an obvious requirement for a watch, be aware that not all smartwatches make it this far.

Showing the time clearly

The Pinetime has only a few watch faces. One of them shows the time in clear large numbers, with good contrast on a backlit display and easily readable in the dark. It also shows the date in smaller font underneath. There’s no need to convert angles into hours and minutes, no obscuring the time with implicit ante meridiem and post meridiem, just obvious numbers. Sure it’s easy to convert post meridiem times to 24hs time, but I hate waking up, seeing 07:00 on a clock, and having to wonder if it’s seven in the morning or seven in the evening. I see no reason for which my watch should show anything other than the exact time, clear and straight. Infinitime can do exactly this.

The Pinetime has a few other watch faces. They look cool, but are not of my interest. It’s also possible to develop your own, although it seems that you need to actually know C++ to write a watch face. That’s definitely a downside, but not one that affects me.

Tracking steps

InfiniTime tracks how many steps I take each day quite accurately. It’s interesting trivia which I care about, since it gives me a vague reference of whether I’ve been too sedentary or not.

Sadly, it only tracks steps taken today. There’s a patch to also record steps taken the previous day. I mostly only care about this when I’m up past midnight. I don’t have any interest in keeping historical records of steps. I understand others do want this. If you do, you might need a companion app on a phone or laptop which syncs the data off the device. I don’t use any such thing, so can’t comment on them.

Sometimes if I take a single step, the step doesn’t register immediately. Instead, when I take three more, the total of four steps register at once. I suspect that the device needs several steps worth of readings to identify false positives, or might do processing in tiny batches. To be frank, I haven’t cared enough to dig into it, but a fascinating aspect of this device is that development was and is done entirely in the open. Not only is the source code available, but discussion of development is also public, so if you’re really curious you can peek at why things work this way and how the algorithms work.

Battery duration

Battery lasts about 30 days.

There’s an “always on” mode for the display which reduces that to about three. The display is not OLED, nor optimised for this. I don’t use this “always on” mode, but do wish that I could configure the device to automatically enable this mode while it’s charging.

Leaving Bluetooth on also dramatically reduces battery. I think to around a week? I only enable Bluetooth when I want to upgrade the software, or sync the time. The time only needs to be synced after I let the battery get down to zero percent.

The heart rate monitor also reduces battery duration substantially. I seldom use it, so I’m not sure how long the battery lasts when using it continuously.

It’s cheap

USD 26.99

Accidental taps

An annoying issue is accidental taps. Any skin touching the watch screen triggers a tap (or swipe). Some activities (including sleep) can trigger the occasional accidental tap. A few times I’ve woken up to find that some random menu had been opened and some toggle changed, or the watch face was changed. This only happens a couple of times per month, and typically it’s just a menu having been opened without any changes made. But it’s still annoying.

There’s a patch which only unlocks the screen when the button is pressed and not when tapping the screen. In theory an algorithm could detect all false taps, and that would be the ideal solution. The patch works in the meantime. I’m not sure we’ll ever have completely perfect detection for false taps.

Community maintained software

InfiniTime is open source and community maintained software. There’s a lot of people working on improving it, and I really like the spirit behind it.

Both the code itself and discussions on feature implementations are public, and some issues have really interesting discussion on how the algorithms were implemented. This includes non-obvious algorithms like counting steps, optimising the heart rate monitor, and reducing the detection rate of false taps (this last one still not being quite there yet).

If you’re interested in data analysis in resource constrained environments, you’re going to love this project. Personally, that’s a bit out of my area of expertise, so I can only provide feedback on whether things are an improvement or not.

The open source nature of the project also helps me test patches made by others. Some of these patches, like the ones pointed out above, fix issues which affect me directly. My Pinetime actually runs a build of InfiniTime which includes both patches. Building my own image is actually really easy using a docker container which ships all the required build tools.

Unique charger

The charging cradle is its own unique thing. You can’t re-use the charging cable for anything else but a Pinetime. I kinda get why they did it — a USB-C port would accumulate dirt or liquid easily and be a pain to maintain. Qi charging would likely have made the design much more complex, but would still be a great improvement, and I’d love to see this in a second iteration of this device. The design is open source though, so a capable enough hacker could design a variation with Qi charging.

The unique charging cradle isn’t an issue because of the great battery duration. I only really need to bring the charger with me if I’m travelling somewhere more than four weeks, which isn’t often at all. For anything shorter, I can just charge the watch before I leave.

Build quality

The build quality is great. The watch is no larger than a standard watch and the casing is solid metal. It’s sturdy, durable and water-resistant (rated at IP67).

Have comments or want to discuss this topic?
Send an email to my public inbox: ~whynothugo/public-inbox@lists.sr.ht.
Or feel free to reply privately by email: hugo@whynothugo.nl.

— § —