import dive computer logs

How can I import dive logs from my old suunto zoop that im considering replcing with a decent G1. I tried all formats i can think of.

  • Seems like there's no easy answer here from my research.


  • Notes: (sorry, hit send too soon):

    Background: Garmin Descent Mk2i owner looking for synchronising between existing Dive Log applications (DiveLogDT or Subsurface)

    Here's what I've discovered:

    1. Garmin Connect (website / application) allows you to import files from the application on the watch (via the filesystem or usb link) using an import function. These files must be in the FIT format created on the phone.
    2. Garmin Dive Log application (Garmin Dive) allows you to manually enter logs, or sync them from the watch directly.

    My existing dive apps (subsurface / divelog) have the ability to grab data from the Garmin, but only via USB (for subsurface) - - haven't tried it for divelogDT yet.


    Importing data, here's your best shot:

    1. Your dive computer -> third party dive application (subsurface, whatever)
    2. Third party dive application -> neutral format (csv, xml, etc)
    3. Some magical (TBD) method to go from neutral format -> Garmin FIT format (if I find one, I'll come back and post here)
    4. Put FIT format files into Garmin\Activity folder on the watch, and sync (or upload via Garmin connect).

    This isn't exactly the smooth and simple experience I was expecting from a watch of this price.


    In short here's what I think most of us would want:

    1. Import my historic dives (we provide a JSON, CSV, SQL, standard divelog format XML whatever) by file upload (this should include the ability to handle all the usual diving details (depth, temperature, O2 , mix, etc) that the app currently handles + GPS coordinates etc.
    2. Import my gear (don't make my type all this stuff again) - should just be a simple CSV file or similar to upload.
    3. Allow me to export that data because I already manage it in another application.



    For me personally, I don't really mind how this is implemented, honestly, give me a CSV download/upload option and that's sufficient. Doesn't have to be fancy APIs and an amazing UI experience (not that I'm holding my breath on that).

    As odd as it sounds, the more data interchange you allow, the more likely it is that people will recommend your product because it works in their integrated lifestyle. We all have a cobbled together set of health, diving, personal, financial and lifeplan data distributed across 4 ecosystems and 17 applications,

    Please don't try to replace all that with a suite of apps that's designed to be a general solution for everyone. Instead make it easy for me to get data in and out and I'll be a customer forever. 

    It's 2022, and there are plenty of simple solutions that can help resolve this issue - if folks at Garmin need deeper help, please reach out. 

  • https://developer.garmin.com/fit/file-types/ has some useful tools and a few clues. If I come up with anything more concrete, I'll post here.

  • OK, having had a quick look at it, and shaking my head as I type this, there is clearly a csv file format that can be generated for FIT files. 

    I'm not sure if I can be bothered but maybe I'll hack at it whilst on my trip.

    Clues are all on the SDK site above, the fit2csv jar file extractor (JAR file, hahaha, how 2008) and then the resultant CSV (which it appears can be uploaded back via the garmin connect site).

    Ugh. 

  • Thanks ramjiv for spending time on this. I totally agree with your conclusion.

    I actually bought the G1 and looking forward to try it out under the surface.

    What i did was manually enter my dive history whish in my case was manageable ~50 dives and ~20 in the Suunto.

    I attached a picture of my paper log pages and a screen dump from Suntos Dm5 in the Garmin log to have some kind of backup if I lose my paper log book which I will continue using.

    But of course it Garmin solve this I will replace my manually added dives with the Suunto log files or preferably just add the dive profile.

    BR Jonas

  • Hi ramjlv,

    did you solved it?
    Iam also looking for a solution and thinking about a kind of reverse-engineering, but therefore i need a garmin-dive.fit file.

    Steps would be:

    1. get a garmin-dive.fit file (proper record of a Garmin Dive Computer Mk2i e.g.). Anyone here?

    2. convert the .fit file with FIT CSV TOOL to a .csv file.

    3. grab my own logs and convert it with python to the same valid .csv-format i got from the original one

    4. convert the new .csv with FIT CSV TOOL to a .fit file

    5. try to upload it to garmin connect.

    what are you thoughts?
    Iam not able to write the fit file directly. Iam not into the sdk as deep as i wish.

    FIT CSV Tool: https://developer.garmin.com/fit/fitcsvtool/

    br,

    Peter

  • I wrote a program that can convert at least some Suunto dive logs into Garmin FIT format. It's open source so you can modify it to do what you need.

    github.com/.../SdeToFit

  • After changing the command line i try to execute it but it stops at first 0.xml file in the sde file with the following error: 

    Converting dive log: "0.xml"
    Exception in thread "main" java.lang.NumberFormatException: For input string: "19,99"
    at java.base/jdk.internal.math.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:2054)
    at java.base/jdk.internal.math.FloatingDecimal.parseFloat(FloatingDecimal.java:122)
    at java.base/java.lang.Float.parseFloat(Float.java:556)
    at com.github.nradov.sdetofit.suunto.SuuntoXml.<init>(SuuntoXml.java:72)
    at com.github.nradov.sdetofit.suunto.SuuntoSde.<init>(SuuntoSde.java:46)
    at com.github.nradov.sdetofit.DivesSourceFactory.create(DivesSourceFactory.java:55)
    at com.github.nradov.sdetofit.SdeToFit.convert(SdeToFit.java:72)
    at com.github.nradov.sdetofit.SdeToFit.main(SdeToFit.java:68)