[Release] BAC2Sober šŸ» - A Real-Time, Vector-Based BAC Tracker

I’m really excited to share a project I’ve been building: BAC2Sober, a premium, real-time blood alcohol tracking companion native to PebbleOS. It is officially live on the Core Devices App Store and the source is up on GitHub!

I wanted a tracker that felt completely native to the wrist—something incredibly lightweight but visually dynamic. Instead of relying on heavy image assets, the app uses Pebble’s 2D vector routines (GPath) to trace out precise silhouettes of your drinks (everything from standard cans to growlers and stemmed wine glasses). The graphics engine dynamically calculates the volumetric displacement and visually ā€œfillsā€ the glass with amber or red liquid based on your entry.

Whether you’re casually sipping a pilsner or logging a heavy imperial stout from Third Moon Brewing, you can dial in the exact volume and ABV down to 0.1% for perfect accuracy.

Key Technical Features:

  • Real-Time Metabolism: Hooks directly into the system MINUTE_UNIT tick timer to constantly recalculate the Widmark formula. Your BAC and ā€œSober Byā€ countdown update live on your wrist without draining the battery.

  • Native Vector Graphics: 100% GPath drawn silhouettes with clipping masks for liquid fills. Keeps the .pbw tiny and lightning fast.

  • Custom Theme Engine: Fully supports Dark and Light modes. If you are rocking a color display like the Pebble Time 2, the UI pops with Electric Ultramarine and Candy Apple Red highlights.

  • Privacy First: Completely offline. No cloud sync, no accounts, all local storage (persist_write_data).

Links:

Disclaimer: BAC2Sober is for entertainment and informational purposes only. It is not a medical device or a legal breathalyzer. Its calculations must never be relied upon to determine your fitness to operate a vehicle or machinery. Never drink and drive.

Well done. Looks very nice! I’ll rely on it tomorrow to determine my fitness to operate a vehicle! :winking_face_with_tongue:

Jokes aside, I will test it out tomorrow and let you know if there’s any improvements that come to mind.

Let me know if you run into any issues. Thanks!

Just downloaded this. I played around with it for a bit, and seems pretty solid so far.

My test case last weekend was not exactly ideal. I’ve had 2 drinks which were mixed by the host. I put it in as an estimate of the alcoholic portion, which was a little more convoluted than a regular beer/wine, but still very doable.

What would certainly be a nice addition is being able to define custom drinks using a settings menu on the phone, which you can then use without a lot of hassle on the watch.

Yup definitely need the ability to create custom drinks - also missing a category for premixed whisky cans (375ml 4.6 to 6.5% kinda deal)

Also category for shots of varying %

Pretty neat

Thanks for the feedback! I will add for shots. What should be the default volume? Around these parts its 2 oz for a single shot. I can also default the alcohol content for shots at, say 25%? I don’t really do shots so I’m not sure what makes sense. I can add the 375 ml cans as well.

As far as a settings menu on the phone, I was trying to avoid this as the other app that is similar to mine has this feature, but it is so out of date it is unconfigurable now. I didn’t want this to happen to my app in case I abandon development.

Anyway, I’ll get started on this

Hey J_B,

Sounds great.
Definitely true that standard sizes vary greatly. Over here 1 oz (30ml) is standard, 2 oz (60ml) is a double.

Shots would average 40% ABV (whisky). Think that’s pretty universal.

You could never add enough to suit everybody, but the two above + 375ml premix/beer at ~5% would be helpful for those from my region :slight_smile:

Good stuff!

Ok yeah 1 oz is probably right for a shot. I can add that. Mixed drinks are tough, but I think most bartenders use a 1 oz or 2 oz system for mixing drinks, but I’m not entirely sure TBH.

@epleb, you asked for a 375 ml @ ~5% abv. Is that 12 oz or some other size? I’m asking because I already have a 12 oz bottle and can that, albeit, isn’t exactly the same as 375 ml. I don’t want to have too many categories, especially when there’s a custom size option already available (at the bottom of the list). That being said, I can put the custom size at the top if we’re finding that the majority of people are finding that they are drinking non-standard sizes.

Also, I originally added the the ability to split the portion size (by %age of volume) in case people are splitting drinks-- which is something I frequently do. However, if most people are finding this annoying and just skipping past this screen I can make a ā€œsplittingā€ option and it can be toggled on/off as needed, then people won’t see the screen without specifically toggling it on. Thoughts?

Also, and this is more of a joke, should there be a Mexican Resort option that automatically waters the drink down when logged? :stuck_out_tongue:

Hi all, so I worked on adding the shots option and also I added a few other features including touch screen capability! Here’s the changelog:

Here is what is new in the v1.0.0 update:

  • Full Touch Screen Support: If you are rocking a newer touch-enabled watch like the Core Devices Pebble Time 2, BAC2Sober now fully supports swipe and tap gestures! We’ve integrated the native PebbleOS TouchService to make navigating menus and logging drinks faster and more intuitive than ever.

  • Auto Dark Mode: No more blinding yourself with a bright white screen at night. You can now set your theme to ā€œAuto,ā€ and the app will intelligently switch between Light and Dark modes depending on your local time of day.

  • Shots Added to the Menu: By popular demand, we have added a dedicated ā€œShotsā€ option to the drink selection menu, making it much easier to accurately log spirits alongside your beers and wines.

  • Under-the-Hood Improvements: The app has been fully updated to compile against the latest open-source Core Devices SDK. This ensures maximum stability, better memory management, and future-proofing for the entire PebbleOS ecosystem.

  • New option for splitting drinks: I added this feature as an optional setting.

Thank your for your feedback so far and please keep it coming! Cheers!

J_B

Updated to v1.0.1:

  • Added ā€˜back’ gesture
  • Add right hand mode in settings
  • Fixed Imperial units display