Edit Edge Data for macOS is a binary editor that changes the values of common data items found on your Garmin Edge bike computer. Edit Edge Data operates on the Flexible and Interoperable Data Transfer (
FIT) files stored on the Edge by first displaying a
FIT's content, then allowing you to change any of those fields.
This App exists primarily because of a particular demand to manipulate an Edge's various device and trip odometer values stored in the Settings and Totals FITs, see the section Edge Odometers for details.
Topics
Capabilities At A Glance
- Various FIT editors, each designed to perform a simple task upon a specific type of Garmin Edge FIT file:
- Settings.fit - the Settings Editor changes age, height, weight and device odometer.
- Totals.fit - the Totals Editor targets a specific Activity Profile and changes the profile trip odometer, ride count, ride time and calories. Even if your Edge device does not explicitly support Activity Profiles it likely contains a single, unadvertised, pseudo Activity Profile.
- Activities FIT - the Activities Editor changes an activity's ride distance, speed, vertical and time. These FITs are named with the ride's starting date and time; e.g. 2021-03-29-18-04-13.fit. Remember that an Activities FIT is not the same as an Activity Profile: each ride generates a timestamp-named Activities FIT, while Activity Profiles summarize all of your ride Activities.
- Ability to display the binary contents of a FIT in a vaguely readable dump format:
- Opening an unsupported FIT type will fail, but then allow you to dump the file.
- During FIT editing click its filename, or use the File menu item Display FIT to dump the file.
The FIT dump includes all extracted data structures relevant to the current FIT editor, if any, and a field-by-field breakdown of the entire file.
Topics
Disclaimer
You must be deliberate and aware when using Edit Edge Data. Make backup copies off all FIT files that you plan on editing - see this Garmin knowlegde base article:
The essential idea is that you connect the Edge to a computer, wait for it to be mounted, and then copy files from the device to a backup location. Safely store these backup copies in case something becomes FUBAR.
Use Edit Edge Data at your own risk, the App is provided on as "AS IS" basis only.
Topics
Overview
When you USB-connect your Garmin bike computer (for example, an Edge 1000) to a Macintosh, one of two things will happen:
- After a short delay, it's mounted and appears in the /Volumes folder. It may also appear as a removable disk on your Desktop if the Finder Setting "External disks" is enabled. A typical name is Edge 1000. To see the FIT files on the device navigate to the folder named Garmin :
- Use the Finder and click to Edge 1000 → Garmin.
- Use the Terminal command line and cd /Volumes/Edge\ 1000/Garmin.
- Garmin devices using recent firmware versions relying on Media Transfer Protocol (MTP) may not auto-mount on your Mac. If this occurs, use an MTP App such as MacDroid - available on the Mac App Store - to mount the device, then click Show in Finder. Another solution is OpenMTP, available from MacUpdate.com. Note the folder Internal Storage, and within that the actual Garmin folder.
Upon examination, notice all the FIT files and folders of FIT files, in particular Settings/Settings.fit, Totals/Totals.fit and all your timestamped rides in the Activities folder. So now what? Here's the short answer :
- If you haven't done so already, make a backup copy the target FIT file, as described in the Disclaimer section. Because that's a backup, now make a second copy of the file - the version that you will actually edit! Trust me on this.
- Run Edit Edge Data and click File → Open FIT ... to open the desired FIT file.
- Select an entry from the popup menu, make your changes, and click Queue This Edit. You can make multiple changes which are queued for later processing.
- Use File → Save To FIT ... to save the FIT to yet another file. During the save operation the edit queue of modifications is applied, on-the-fly.
- Copy the edited FIT to the Edge 1000 → Garmin → NewFiles folder and rename it to its original name.
- Eject the Edge 1000 and disconnect the USB cable.
- Restart the Edge 1000. During startup files in the NewFiles folder are copied to their proper destinations and installed. You should see your changes on the device.
Topics
Edge Odometers
The Edge bike computer has two odometers, analagous to an automobile, one that tracks the total distance the device has traveled and typically cannot be reset, and another trip odometer that can be reset to zero. You can examine the Edge device odometer by touching History → Totals → Device Totals. Additionally, the Edge maintains resettable ride count, ride time and calories.
But having just one instance of this data is problematic for folks who have multiple bicycles and want to tally distance / rides / time / calories on a per-bike basis. Assuming your device supports it, the typical work-around is to create and uniquely name a user Activity Profile that tablulates this information for each bike. Thus, as long as you remember to select the Activity Profile corresponding to the bike you are riding, distance / rides / time / calories per bike is accurate. An Activity Profile contains these items:
- unique name
- odometer †
- count
- time
- calories
Interestingly, exactly where all this information is stored depends, indeed, on whether your Edge device supports user Activity Profiles:
- NO
The device odometer is stored in Settings.fit and there is one pseudo Activity Profile in Totals.fit with the trip odometer, ride count, ride time and calories. The reason this is called a pseudo Activity Profile is because there is no unique name associated with it.
- YES
The device odometer and all trip odometers are associated with multiple, uniquely named Activity Profiles, and those profiles are stored in Totals.fit, as well as ride count, ride time and calories for each Activity Profile. The old fashioned device odometer in Settings.fit is vestigial and not used.
The device totals profile, called the Summary Activity Profile and named "" (the emptry string), is stored in profile slot one, with your personal Activity Profiles stored sequentially starting at slot two. This is the order that the Activity Profiles are listed in the profile selector popup menu. So even if you do not explicitly create Activity Profiles there is always one, the Summary Activity Profile, which doesn't necessarily
representy device totals, rather, your bike Activity Profile totals, see section Summary Activity Profile for details.
† A note on distance units:
- The distances stored in Totals.fit Activity Profiles (or pseudo Activity Profile) are 32-bit unsigned integers with units of meters, so the maximum distance that can be recorded is 232-1 meters, or 4,294,967,295 meters, or 4,294,967.295 kilometers (approximately 2,668,768.94 miles).
- In contrast the Settings.fit odometer distance, while also a 32-bit unsigned integer, has units of 1/100 meter, for a maximum odometer distance of 42,949.67295 kilometers (approximately 26,687.6894 miles). Because this limit was routinely exceeded, an additional Settings.fit field called odometer_rollover was eventually added. Some Edge devices - presumably older ones - do not support odometer_rollover, but, if your device does, Edit Edge Data will honor it.
Topics
The Totals Editor
Sample Usage
Let's look at a concrete example. Suppose that Alice, who was running late for a group ride, forgot to set her Edge 1000 Activity Profile to match the bike she was riding that day. It was only after the ride that she realized there were an extra 100 metric-century-kilometers on her mountain bike that should really be on her road bike. Here is how Alice recovers from that mistake.
- She connects her Edge 1000 via the Garmin-supplied USB cable to her iMac and uses the Finder to illuminate the full path to Totals.fit.
- Alice is a prudent person, and using the Finder she makes a new folder on the Deskop named FITBackups, and then drags Totals.fit from the Edge to the backup folder. Remember, files in the backup folder are never edited.
The Terminal commands to do this are :
- mkdir ~/Desktop/FITBackups
- cp /Volumes/Edge\ 1000/Garmin/Totals/Totals.fit ~/Desktop/FITBackups/Totals.fit
- She duplicates Totals.fit somewhere that's convenient to edit, perhaps Desktop. This will be the input file to Edit Edge Data.
- cp /Volumes/Edge\ 1000/Garmin/Totals/Totals.fit ~/Desktop/Totals.fit
- She runs Edit Edge Data and selects the Totals Editor from the row of Editor tabs, then clicks File → Open FIT ... to choose ~/Desktop/Totals.fit. When she clicks the App's pulldown button she sees her four bike Activity Profiles and the distance traveled by each bike.
Notice the distances are in kilometers, but that's a Settings option - you may use miles if desired. So the task at hand is to subtract 100 kilometers from bike profile #3 (the mountain bike) and add 100 kilometers to profile #4 (the road bike).
- Alice uses her favorite calculator App GO-21 SciRPN, available on the
iOS, Mac and Apple TV App Stores 🙂, to compute 7696.268 - 100 = 7596.268 km and 1565.932 + 100 = 1665.932 km. To make those two edits she first selects bike profile #3, makes the distance change, then clicks Queue This Edit.
- She repeats the procedure for bike profile #4, resulting in this. Notice the Edit Queue has two entries and the Save To FIT ... button is enabled.
- She clicks Save To FIT ..., which asks for a filename (perhaps Totals-1.fit), then processes the edit queue and writes the new output file. To double-check the results, Alice opens the new FIT file and sees that, indeed, her distances are back in synch.
- Lasty, Alice needs to install the new FIT onto her Edge 1000. She does this by dragging Totals-1.fit to Edge 1000 → Garmin → NewFiles → Totals.fit. IMPORTANT: the file must be renamed Totals.fit, not left as
Totals-1.fit.
- cp ~/Desktop/Totals-1.fit /Volumes/Edge\ 1000.Garmin/NewFiles/Totals.fit
- Eject the Edge 1000 and disconnect the USB cable. Restart the Edge 1000. Fini.
Summary Activity Profile
Admittedly, the previous example was contrived, it was designed for simplicity and to illustrate essential Edit Edge Data concepts. For instance, Alice only adjusted bike distance and failed to even consider changing ride count, time and calories. But more importantly, the device totals stored in the Summary Activity Profile remained the same because there was a symmetric change in two bike Activity Profiles - adding 100 km to one profile and subtracting 100 km from another did not change the overall device odometer distance.
Perhaps a more typical case would involve editing a single bike Activity Profile, which means the sum of your personal bike Activity Profiles data would no longer match the Summary Activity Profile values.
You can certainly edit the Summary Activity Profile just like any other profile, but that's a manual action prone to error; the Totals Editor can do that work for you, automatically. First, there is a Setting that you may enable so that the Summary Activity Profile always reflects the edits you make to the bike Activity Profiles. Even if this Setting is off, the Save To FIT ... operation gives you the chance to make the update, which is highly recommended:
When you choose Yes an implict edit to update the Summary Activity Profile is generated on your behalf and added to the Edit Queue for processing when the new FIT is saved:
Topics
The Settings Editor
After selecting the Settings Editor from the row of Editor tabs, use it similarly to the Totals Editor to change multiple Settings.fit values:
- age
- height
- weight
- odometer (not related to Totals.fit Activity Profile distances)
Here is what the Settings Editor looks like when macOS is running with its Dark appearance:
Topics
The Activities Editor
After selecting the Activities Editor from the row of Editor tabs, use it similarly to the Totals Editor to change multiple activity values:
- distance
- speed
- vertical
- time
An activity FIT is uniquely named with the date and time that it was created. For example, here is what the Activities Editor looks like when editing the ride 2021-03-29-18-04-13.fit:
Topics
Compatible Devices
Edit Edge Data has been tested on FIT files from these Edge Bike Computers :
- Edge 130
- Edge 520
- Edge 820 Touring
- Edge 830 (Note: this device does not support odometer_rollover, so distance is limited to 42,949.67295 km)
- Edge 1000
- Edge 1030
- Edge 1030 Plus
- Edge 1040 Solar
My testing and verification really requires community input, I am constanly searching for FIT files from devices I do not own. If you have an unlisted device, please consider sending me at least its Totals.fit file. Thanks, support@bigcatos.com!
Topics
Acknowledgment
Many thanks to Kiyokazu SUTO suto@ks-and-ks.ne.jp for his fantastically thorough Perl modules that manipulate FIT bits.
Thanks to these folks who sent me test FIT files from devices I do not have:
- Carsten Voss
- Bob Perchonoko
- Arsen Dzodzaev
- Howard Postlethwaite
- Robert Wenig
- Roger Mella
- Michal Sidlo
- Tom Stevens
Topics
What's New?
OS Version Compatibilty
   macOS | 10.13 | - | 15.3.2 |
3.5 - 2025.03.19
- Documentation update regarding FIT transfers to and from your Garmin device.
- Add support for an activity's enhanced_avg_speed field.
- Update for macOS 15.3.2 and the summer 2025 biking season. Enjoy.
3.4 - 2024.03.13
- Documentation updates.
- Update for macOS 14.4.
3.3.1 - 2022.12.14
- Re-fix preferences bug that could mix units for first-time users.
- Update for macOS 13.1.
3.3 - 2022.12.09
- Fix a preferences bug that could mix units for first-time users.
- Update for macOS 13.0.1.
3.2 - 2022.08.18
- Add support for Edge 1040 Solar.
- Minor bug fixes and improvements.
- Update for macOS 12.5.1.
3.1 - 2022.01.24
- Minor bug fixes and improvements.
- Update for macOS 12.2.
3.0 - 2021.05.01
- New Activities Editor to modify ride metrics distance, speed, vertical and time. Useful after forgetting to start and/or stop your Edge.
- New Time Unit preference for seconds, minutes, hours or days.
- New File menu item Display FIT shows the entire raw FIT content.
- For supported FIT types the editor is chosen automatically when the file is opened.
- Minor bug fixes and improvements.
- Update for macOS 11.3.1.
2.7 - 2021.02.14
- Calories were mistakenly labelled in units of kCal (note case - 1,000 small calories), rather than kcal (note case - 1 food calorie). When the Edge shows "Calories" the implied unit is kcal.
- Update for macOS 11.2.1.
2.6 - 2021.01.20
- Support Edge 1030 Plus.
- New Universal binary that runs on either Apple Silicon or Intel Macs.
- Replace deprecated frameworks.
- Update for macOS 11.1 (Big Sur).
2.5 - 2020.06.02
- Support Edge 820 Touring Totals.fit and Settings.fit files, and hopefully other devices that do not support Activity Profiles.
- Ability to dump a FIT.
- Ensure conformance with Apple's 2020.06.30 App Store guidelines.
- Update for macOS 10.15.4.
2.4 - 2019.09.15
- Fix to support Edge 130 Totals.fit files.
- Support the Settings.fit odometer_rollover field so distance over 42,949.67295 km is possible.
- Update for macOS 10.15 Catalina.
2.3 - 2019.08.15
- Update for macOS 10.14.6.
- Fix to support Edge 1030 Totals.fit files.
2.2 - 2019.03.21
- Update for macOS 10.14.3.
- Documentation now supports BigCatOs Appearances.
- Minimum macOS version is now 10.11 El Capitan.
2.1 - 2018.11.18
- A new Settings Editor for editing a Settings.fit file : age, height, weight and odometer.
- The Totals Editor now updates the Edge device totals stored in the Summary Profile.
- Restore Cut / Copy / Paste.
- Number format is locale dependant, e.g. 1234.56 for USA, 1234,56 for Germany.
- Update for macOS 10.14.1.
- Minor bug fixes.
2.0 - 2018.11.05
- A new Totals Editor for editing a Totals.fit file : distance, time, rides and calories.
- Add support for the Edge 520.
- Now runs on earlier versions of macOS - 10.10 Yosemite and up.
- Compatible with macOS Light and Dark appearances.
1.0 - 2018.10.05
- Initial release for macOS 10.14 Mojave. The Distance Editor is capable of editing only odometer and bike profile distances found in Settings.fit and Totals.fit files.
Topics
Copyright (©) 2018 - 2025 BigCatOS. All rights reserved. | Contact