Setting up the Pebble Time 2

I recently received my pre-ordered Pebble Time 2 and wanted to configure it for maximum privacy without compromising on features (as much as possible). Most of it was pretty straightforward, but one aspect was somewhat perplexing.

When setting up the watch, I declined to create a Pebble account as it currently only does OAuth through Google, Apple, and Github (Microsoft). I don't particularly have an issue with cloud backups of installed apps and settings, but I don't want to use OAuth through any of those providers. Either way, the watch pretty much doesn't require an account unless you want to submit a bug report or want battery analytics (more on that later). Certainly not ideal, but not the end of the world either as I expect that if I genuinely have issues I can submit an issue on their Github repo and manually attach logs as required. As for battery analytics, if it's an issue I can install and configure Muninn —– so far I'm very impressed with the battery life (I charged it after opening and doing the initial setup and it's literally sipping battery...it's fantastic).

I then went into the Settings tab in the Pebble app and disabled everything under Diagnostics (which would disable battery analytics anyway, even if I had an account). Everything is by-default local (including health information etc), so the analytics were the only thing that needed to be manually toggled.

The one thing I had to figure out, though, was how to get proper (as in exportable) access to my watch's health data. This isn't currently possible within the Pebble app, and I didn't want to use Google Fit (or their replacement for it).

I am on an Android 13 device (with Play Services), so I installed Health Connect (a service which locally aggregates health data from any number of sources —– it comes installed by default on Android 14+, but needs to be installed manually on older devices). This operates purely locally if you believe Google (I'm not sure that I do, but I'm sure we can verify this using Wireshark or other tools). I allowed Pebble to share data with Health Connect, but that was only one half of the picture.

I then needed a consumer of the Health Connect data, something that would allow me to view it and export it as desired. My first try was OpenVitals, but I ran into issues with it hitting rate limits for some reason. The bug reports there implied that it was because I installed Health Connect through the Play Store (rather than having it pre-installed through the OS).

Then I stumbled upon Heartwood, which operates purely locally. No cloud storage, no uploads, nothing. It simply allows me to look at my data and export it to either a JSON file or CSV file. This was exactly what I needed to complete the picture.

So now I have a smartwatch that can track my workouts, steps, heartrate, etc and seamlessly export it to a CSV or JSON that I can play with on the computer (look at trends etc). All in a privacy-respecting way (as far as I can tell).

I selected the Pebble Time 2 for a few reasons:

  1. Open source: The OS and mobile app are all open source.
  2. epaper screen: The epaper screen means the battery life is insanely good compared to most normal smartwatches.
  3. Private: Overall, the watch is privacy-forward. It's not perfect (analytics are enabled by default, only OAuth logins enabled for now, etc), but miles better than pretty much any other major smartwatch out there.
  4. Hackable: The whole ethos around Pebble seems to be very hacker-forward, which is something I really like.

I disabled most notifications other than communication ones (so Signal, WhatsApp, Messenger, Messages, and Cheogram) as well as Proton Calendar (I enable notification reminders for many events, so this functions as enough of an integration for now).

Overall, I am extremely satisfied with my new watch! There are of course rough edges (I mean, the ecosystem was dormant for 10 years!). But I expect it to only improve, and it's already more than satisfactory for my needs.