The Garmin Forerunner 955 Solar vs Apple Watch Ultra 2

As I train for my second ultramarathon, the battery life – or rather, lack thereof – on the Apple Watch Ultra 2 has become a concern. Some days, despite my disabling all the fanciness on the Watch (cellular, wifi, enabling Airplane Mode, activating low power mode, and using an external Bluetooth heart rate monitor), battery life still drops at around 8-10% per hour. Do the math and that tells me I’ll get maybe 10 hours of battery life on a workout. As I prep for a 50 mile race with an anticipated 4-5 mile per hour pace, that cuts it awfully close to not having enough juice to finish. So at my coach’s recommendation, I picked up a Garmin Forerunner 955 Solar last week (at the time of this writing). Here’s my analysis so far.

Apple Watch features I miss:

A lot more than you’d think. Right off the bat I knew the Garmin would not have a lot of the “nice to have” features I’ve grown accustomed to on the Apple. A little background – I’ve owned a Apple Watch Series 2, 4, 6, Ultra, and Ultra 2, so it’s pretty integrated with my daily life.

Siri. I know, hard to believe with all the complaining I do about Siri, you wouldn’t think I miss it. But I do. The ability to invoke Siri and (sometimes) have it do what I want is a nice plus. record a voice memo, set a reminder. Simple things I took for granted on my watch are no longer available to me without another Apple device. Saying “Hey Siri, add Greek Yogurt to the Shopping list” to my Garmin does nothing. Huh.

Making a call. Sometimes it’s really convenient to make – or moreover, receive – a call from the Watch. Like, when I leave the phone over on the counter and go outside for a few minutes. Also, the ability to discretely call 911 is appealing.

Sending a text. Garmin has a “Messenger” app. I haven’t gotten it to work yet. I tried. I set up the app and gave it access to select contacts I want to be able to message. It insists I need to add contacts before I can send. Even though it fails far too often, I still regularly say “hey Siri, Message so and so” or “send so and so an audio message.” Can’t do that on the Garmin.

Tracking Medications. Rolling over in bed after popping a melatonin, it’s nice to be able to log that on the Watch, but now I have to pick up the phone and blast some blue light radiation into my eyes for a minute or two as I log it there.

Responding to notifications. Yes, I can get notifications on the Garmin, but I can’t respond to notifications. And that’s the important part – the responding. Also, when I clear a notification on the Garmin, I have to clear it again on the iPhone. Side note: some days, particularly with weak cell signal it seems, responses to various notifications go nowhere. Only after I look at my phone do I realize that replies I’d thought I’d sent vanished into the ether somewhere over Cupertino.

Another big one is responding to Authenticator apps. As I went to upload this post to my blog I was prompted for my MFA code. My Garmin helpfully told me I had a notification, and I needed to get up and walk across the room to confirm it was me on my phone.

Turn by turn navigation in the car. I really REALLY appreciate Apple’s haptic feedback on the watch when driving. Not an option with Garmin.

Remote control of playback. Now I have to yell across the room and hope Siri will hear me on my phone. (Note: Siri won’t hear me on the phone.) Again, a nice to have when the phone is not within easy reach, which is my preferred way of watching TV or a movie! Leave the phone away from the couch and let myself enjoy the movie is my preferred mode.

Home automation. Turn off the lights. Unlock the front door. See a picture of the person AT the front door. Can’t do that on the Garmin.

Better UI. So much easier to find things. I’m learning the Garmin interface, but it is far more complex. I’m learning it but it is nowhere near as intuitive as WatchOS.

Apple’s magnetic charging experience is so much nicer than the Garmin plug in method. It’s very old school and reminds me of a cell phone from the 90s. Fortunately I only have to do it every week or so.

Music. Amazon Music, Spotify, and Youtube Music have apps for the Garmin but you need to download them to the watch for playback. That kinda ruins the experience for me. It feels like it’s 2003 and I need to download files to my MP3 player before I leave the house. Given that I canceled the cellular plan on my Ultra because I always have my phone with me when working out, this is functionally the same. Generally I only have one playlist which I use as a metronome, so functionally this isn’t a big detractor.

Podcast apps. I use Overcast religiously in the Apple ecosystem. To play podcasts from the Garmin, I presume I would need to download them in advance via Spotify.

The display. Apple completely owns this. Even on their older, cheaper models, Apple’s tech makes the Forerunner feel like a Timex or Casio I wore in high school. It’s not even in the same hemisphere, let alone zip code. Maybe one of the more expensive Garmin lines like the Feenix has better, but the Forerunner 955 Solar’s display is not a contender.

Update 2025-08-09: Replaceable bands. I have like 10 bands for my Apple Watch. I often swap them out more than once a day. With the Garmin, this is a process that requires a tiny flathead screwdriver or special tool to pry down the pins that hold the band to the watch. So instead of a simple process that takes 5 seconds, it’s now a process that takes five minutes and requires tools. I ordered this band from Amazon, which is like the Trail Loop for the Apple Watch.

Things I like about the Garmin Forerunner 955 Solar and/or Garmin Connect app:

Battery life. Hands down. No comparison. Apple, 36 hours is just a joke, even though I thought it a game changer when compared to 18 hours. Get some real athletes to use your product and see what they say. If Scott Jurek really uses the Ultra, it’s not to run 100 miles. (Okay, MAYBE Scott Jurek can outpace this thing’s battery on a 100 miler, but I sure as heck can’t.) This was the reason I bought the Garmin in the first place, and it does not disappoint.

Buttons! Yeah, sometimes buttons are better than a touch screen! Like when I’m hot and sweaty or accidentally trigger something on the Watch display. The only thing is there are 5 buttons and I’m still trying to wrap my head around which is which. While they do have their names etched into the case, unless I’m in bright light, I can’t see them.

Thanks to a third party app that my running coach uses, I can download workouts directly from their website to my Garmin account, which sends them to my Forerunner. On a day when they have a running workout scheduled for me, when I start a running workout, it asks if I want to do the one scheduled. This is much easier than creating a custom workout on the Apple Watch. Why can you only do this via the Watch itself? At LEAST let us do this from the phone. Better yet, allow us to import Garmin, Fit, and other format workouts into it.

There’s more in depth analysis in the Garmin Connect app than what I get in Apple Workouts. I like what I see here better than Strava, and I don’t have to pay Strava’s annual fee to see it. The presentation is not as pretty Apple’s Workouts app, but there’s more to drill in to.

The built in analysis of sleep and training recommendations are more useful on the Garmin. It takes a more proactive stance, not just telling me “you slept this many hours” but “you slept poorly and you may want to listen to your body before working out today.”

More actionable insights from Garmin. “Hey, you slept poorly. This may affect your performance. Maybe take a rest day, etc.” While I already know these things, I don’t always listen to my body and DO these things. Having a second opinion telling me “yeah, you could try to push through this, but you’re probably gonna regret it,” is huge for me.

Garmin seamlessly sends notifications from the Forerunner to my AirPods through the phone connection. I was very surprised when this first happened because I’d not paired my AirPods with the Forerunner, and yet when I started a run and got a mile down the road, a voice came over the music I was playing via my phone, gave me the lap update, and did not adversely affect playback. This is something Apple seems to get right sometimes, and completely fail other times. Sometimes the Watch will stop playback altogether to give me an update. Sometimes the Watch will give me updates for a few miles and then just stop for no reason. So far, the Garmin has not done this.

The Forerunner 955 Solar is noticeably lighter than the Ultra 2. Probably similar to the smaller Apple Watch Editions, but I noticed the difference immediately, and it’s less obtrusive when sleeping.

I was able to easily pair my COOSPO bluetooth heart rate monitor with the Forerunner. Unlike the Apple Watch, the Forerunner has a handy heart icon showing that it is paired, which saves me a trip into Settings > Bluetooth to double check that it’s connected to the Apple Watch.

Things that are the same (or close enough to not matter to me)

Workout tracking. I start the workout and go. Pretty much the same except for days when I have a pre-set workout scheduled.

GPS navigation on the Garmin is comparable to my experience using the Footpath app on the Apple Watch. I’ve only used the Garmin once, on class four roads in Vermont, but it seemed much more accurate than Footpath has ever been on trails. Obviously this is not an apples to apples comparison, so maybe Footpath would do better on roads and Garmin would do worse on trails.

Apple’s safety features. Prior to his passing, I bought my father an Apple Watch SE because of its fall detection. Given that I run on slippery, rock-hewn trails and am a decent fall candidate myself, I gain a modicum of peace of mind having that too. However, I think the only times I’ve ever had my Apple Watch trigger a fall alert was when I was punching my boxing bag, or deliberately practicing breakfalls. The Ultra also has a siren that you can use to call for help if you think it’s near but they can’t locate you. Despite having this feature at my fingertips (or rather, on my wrist) for over two years, I’ve never even tried it. Gamin has an “incident Detection” feature which I have not yet tried.

Things that are just different

Garmin’s workout app has turn by turn navigation when I import GPSX files. On Apple I need to use a third party app like Footpath for this.

Syncing from the Forerunner to the Garmin Connect app is seamless and near immediate. Syncing to Strava and Apple Health, however, seems to happen twice an hour or so.

Connect workouts don’t push map data into the Apple Fitness app? What??

Garmin seems to think I am in better shape than Apple does. This could be because Apple has much more historic data and Garmin only knows me for the last week. But after just a week Garmin upped my fitness levels and max heart rate and calculated a lower resting heart rate than Apple. I like that. Also, I think I proved that with my latest time trial in which I moved significantly faster than the previous one a couple weeks ago. That said, there are many factors besides the gear, like temperature, terrain, air quality, sleep quality, nutrition, etc. not necessarily considered.

Things that are bad

The documentation for the Forerunner is sometimes wrong. The manual says to activate the Flashlight feature, hold the Light button and select the Flashlight icon from the list. There is no flashlight icon on the list.

I also tried to set a silent timer. When I teach yoga, I want my watch to vibrate when it’s time to switch poses, but I don’t want an audible beep to disturb my students. The manual gives steps to set up a timer and then says to hold the menu button to see options on said timer. Problem is, holding the button returns you back to the previous menu. to get options for the timer, you’re supposed to press but NOT hold said button.

So which do I like better? Given a choice, I would take an Apple Watch with a one week battery life over a Garmin. But given that the Apple Watch has been a thing for over a decade now, I am not holding my breath waiting for that to happen any time soon. I expect I’ll be a two-watch guy for as long as I’m an ultra marathon runner, using a Garmin for the long runs and sleep, and an Apple for pretty much everything else.

TARC Fall Classic, 2023!

Yesterday I ran the TARC Fall Classic half marathon. This was a fun one! It was my fifth race, second half marathon, and second trail race. The terrain was very similar to the trails I normally run near my home in Medford, MA, as was the weather (since I was only about 30 minutes away). I finished in 2:37, which I think was a decent time for me.

Lessons learned:

  • The race provides no cups at the aid station. You must bring your own bottle. I did this, but I forgot to fill it at the start of the race. Fortunately for me the 13 mile course starts with a 1 mile loop around the cornfield and parking lot, then takes you right by the aid station again, so I stopped there and filled up again. Next time, I’ll take a bottle from the get go.
  • My Ultraspire waist belt – my normal goto on trail runs and long runs – proved to be a bit of a hindrance. This is because to get a snug, non-bouncy fit, I need to cinch it tightly around my waist. Unfortunately this interfered with my breathing when running at race pace, so I had a choice of a little bounce or restricted belly breathing.
  • I carried the right amount of food. I started off with some Harry & David Moose Munch popcorn (think “Cracker Jack with chocolate”) about half an hour before the start, a gel, an IQ bar, and some Gummy Bears. At the aid station I had peanut butter pretzels, an Oreo, and I snagged a bag of Doritos for the second lap. I definitely benefited from the salty snacks more than the sweet ones, so I plan to factor this in to nutrition/training moving forward. At the end of the race, I had some banana, boiled potato, and half a peanut butter and jelly sandwich.
  • I wore my Altra Lone Peak 5s – the same ones I ran the Vermont 50 in a year ago. They were fine for the terrain.

Seriously looking to run this one again next year – maybe the 20 miler or 50k,

Cheap Marathon – 2023

Last weekend I completed my second “classic” marathon. That is to say, a plain 26.2 miles. It was in Derry, NH, and is known as the “Cheap Marathon.” They don’t spend a lot on frills, that’s for sure. Just water and Gatorade at the aid stations, and bananas and yogurt at the finish. For completing, no medals – just a ribbon that says “I ran 26.2 miles and all I got was this lousy ribbon.” It was worth it.

I shaved several minutes off my 2021 Baystate Marathon time. My time was 4:26, compared to 4:38 in 2021. However this does not factor in the 4+ minutes where I stopped to call 911 because a gent in front of me collapsed along the trail. Turns out he had a pacemaker that thought he was working a little too hard and he needed to be stopped. It was dramatic. Despite my Apple Watch Ultra failing me (which is a topic for another post), it came through for him. Within seconds I was on with a 911 operator, who dispatched EMTs to the scene. Once he was in good hands, I continued my run.

Cheap Marathon Complete

I am happy to report that my knee was fine the entire way – not so much as a twinge. So I am comfortable saying this has healed.

Now… what to run this fall…?

Running Update

I’m now twice officially a runner. Why? Because statistically – I read somewhere – nearly 100% of runners suffer an injury. Last year I had a mild stress fracture. This year, I apparently had a torn meniscus. Hurray. So I’m double-officially a runner now.

It’s been five weeks. I’m in PT. It’s going great and I’m returning to running now.

Running Update 2022

Running continues to be my primary focus outside of work. Okay, I admit it – on most days I could leave out the “outside of work” qualifier. My long runs continue to approach marathon length. I recall how in 2019 I thought “maybe I’ll get to the point where I just run a half marathon equivalent (13.1 miles) twice a week and that will be my training schedule.” Now I’m back to the point where I’m doing 30-40+ miles a week as my prep for the Vermont 50 is peaking. It feels great. I love the continued training, challenge, and improvement.

2022 June July Running Log

Running Update 2022 – Stress Fracture, Hampton Half Marathon, Non-Minimalist Shoes, and an Ultra

Hampton Half Marathon Finish

A few days after my first marathon last year, my right foot swelled up. Massively. I took a couple days off, and did (relatively) short runs. The foot hurt and would swell up like a baloon. I self-diagnosed as having a stress injury (fracture?) and accepted I may have to stop running for the rest of the year. I was able to get an appointment with a sports orthopedist at MGH, and he prescribed physical therapy. X-Rays showed no (remaining) fractures.

You Don’t Need Running Shoes. Go Minimalist!

A Stack of New Balance Fresh Foams
A Fistful o’ Fresh Foams

From 2017 to early 2021, my go to running shoes were the New Balance Fresh Foam 1080 (I forget if they were version 9 or 10), and a pair of the New Balance Summit Unknown for trail running. In 2020 I went on a bit of a shopping spree and was trying all sorts of New Balance shoes, as I liked the wide toe box that didn’t mash my feet. I had an old pair of the Fresh Foam 960s, and bought a pair of the Fresh Foam 980s, as well as the Fresh Foam More. I liked my shows like I like my cappuccino – fresh and foamy.

Or so I thought.

Continue reading “You Don’t Need Running Shoes. Go Minimalist!”

My Journey Into Analyzing Apple Health Data

I’ve owned an Apple Watch for years – since the Series 2. I’ve also been running consistently for years – three of them, to be precise. I also like data. I’ve been collecting data on my workouts via my phone and watch for years, but getting data off of the iPhone’s small screen has always been problematic.

“But Peter!” you say “Apple lets you export data from the Health app!” Yes, it does. Have you ever looked at it? It looks something like this. Correction – it looks EXACTLY like this.

Well-structured XML

It’s XML data, and that doesn’t easily lend itself to a graph. Also, my data is over 1.3GB at present. That’s a lot of data for one guy. So I looked around for how to analyze my iOS Health data. The first site I found that looked promising was Analyze the Crap Out of Your Apple Health/HealthKit Data (sep.com) and GitHub – jonfuller/health-parse: Parses an Apple Health data export… for reasons. The developer offers an email address – email your health data to [email protected] and it will send back parsed stuff. Sure. I’ll email you my 1.3GB of Apple Health Data. Let me know when you get it. Okay, no, I did not try that because it’s never going to work. So I downloaded his code from Github, but I couldn’t get it to compile. Seems like I’m not the only one, as others reported the same issue.

Next I tried the Heartwatch app for iOS. So close! It generates some nice reports but only goes back one year. I want to track data over multiple years. I emailed the developer, and he said he’d consider it.

Then I tried the YouTube video (1) How to download, graph and assess physical activity and exercise data from Apple Watch – YouTube. OMG hilarious. Fail. 

Something in Python perhaps?  Analyze Your iOS Health Data With Python | by Guido Casiraghi | Better Programming | Medium Prerequisites: You know the basics of Pandas. I don’t even know what pandas is, other than a big bear-like thing that lives in China. 

I tried to import the XML files into Excel. Hahahaha. I’m running the 32-bit version. It cannot open a 1.3GB XML file. 

I poked around and found this article by Taras Kaduk: Analyze and visualize your iPhone’s Health app data in R. I was told R is easy to learn and use, so I figured I’d give it a try.

I installed R for Windows. The UI seems a bit dated and barebones. The Comprehensive R Archive Network (case.edu) How do I install libraries, anyway?  HodentekHelp: How do you install the XML library for R programming? Okay, manual process, must select stuff from a list by point and click. Yuck. 

How do I change directories in R?  how to set path in R on Windows – Google Search

Hm. This looks kinda neat and more polished.   Download the RStudio IDE – RStudioHave to install those libraries, but at least I can type their names in a comma-separated list. Much quicker. 

How do I change directories in R again?  getwd, setwd | R Function of the Day

What’s the path to my files in my OneDrive folder without spaces in it?  Use PowerShell to display Short File and Folder Names | Scripting Blog (microsoft.com)

How do you comment in R? Comments in R – GeeksforGeeks

How do you print more lines than it’s showing me?  how to increase the limit for max.print in R – Stack Overflow

What does that %>% do?  Simplify Your Code with %>% · UC Business Analytics R Programming Guide (uc-r.github.io)

Oof. Guess I should take a lesson. Learn R | Codecademy

Yup, that did it! The following R code imports my Health XML data and spits out a CSV. And yeah, it took a lot of floundering to get these few lines of code:

library(XML)
library(dplyr)
xml <- xmlParse('export.xml')
df_workout <-  XML:::xmlAttrsToDataFrame(xml["//Workout"])
write_csv(df_workout,'health_export.csv')

Now I have a CSV file! Great! I’ll make a chart in Excel. OMFG Excel charting is beyond convoluted. Why is it so F***ING COMPLICATED?!?! 

Google Sheets to the rescue. Finally. I have what I have sought for months.

I realized that with the right libraries, I likely could have accomplished the same thing with Perl or Python, but learning R has been fun and I may have applications for this professionally as well as personally. Also, I should be able to generate the graphs directly from R, but haven’t learned that yet. Finally, I will likely need to dive deeper into the data to incorporate steps per minute and heartrate into the above chart. I’m really interested in overlaying my steps per minute and average heartrate to see how this affects energy used and pace. So while I’ve taken the first step (no pun intended), I’m not done yet!

180 Steps Per Minute

On my last two 10k runs, I experimented with upping my cadence (steps per minute). My normal cadence has been in the 155-165 steps per minute, and my normal pace has usually been in the high 9 to low 10 minutes per mile. This is mainly because I haven’t really cared to address my speed, so I would just ramble on at whatever pace I felt like running at, unless I was in a hurry or with someone else.

While I had heard that my pace “should be 180 steps per minute,” it was never clear to me as to why this was important. Additionally, given my training in yoga and anatomy, in which a recurring theme was “ever body is different,” how could it be that these two guys should be expected to have the same cadence?

Game of Thrones: Tyrion Lannister (Season 7) | 1:6 Scale Peter Dinklage |  Three Zero 903959
Tyrion
Gregor Clegane - Wikipedia
The Mountain

No, really. How can that make any sense? It should not be a surprise that there is some room for variation here, as with all things anatomy, and 180 is likely just an average. That said, I figured “what the heck? Why not give it a try.” After a little digging I found a website that suggested working your way up to 180 by starting with a playlist that runs around 10 bpm faster than your current average cadence. So I found a playlist on Apple Music that ran at 165 bpm, and I hit the road.

I immediately felt like I was moving faster – and I was. At first it was definitely more work, but after a while, I got into a rhythm. On a funny note, I found out after I finished my run that I had averaged 182 steps per minute! I knew that I was not keeping time with the beat of the music, but I didn’t realize it was because I was going too fast. Given that, I picked another playlist, this time running at 180 bpm. On my second attempt at keeping this cadence, I actually was a bit slower, coming down to the mid 170s on average. That said, it was still one of my fastest – if not the fastest – 10k I’ve done, coming in with an average of 8’59”.

In short, I’m sold. I’m going to try to keep up with the 180 steps per minute cadence. Supposedly this is universal, and applies to all forms of terrain. Time will tell as I experiment. Watch this space for an update!