Sunnto dives importer

34 views
Skip to first unread message

Alon Dotan

unread,
Aug 12, 2026, 4:46:25 PM (5 days ago) Aug 12
to Subsurface Divelog
tl;dr
I created  a small app enabling import dives directly from suunto cloud to subsurface instead downloading JSON + FIT from the suunto app -> local device -> subsurface.
the app handle the following data:
* deco profile
* GFs
* Gas types
* Gas switch

The long story:
Apparently Suunto have 3 different formats of exporting activities:
* FIT - very basic info, deco data is missing, but also contain some important info like the GFs, gas types
* JSON (exported from mobile app)- contains most of the data for the dive, deco information, events
* sml (JSON based structure available via API only) - combination of both FIT + JSON (app version), contains 99% of the dive data... this is the most fulfilled API I managed to find at this moment

So what I did with all of this information... I created a standalone app since I know Subsurface maintainers will not want to blend this unique flow for specific vendor in the upstream project,
what this app actually  does  is to login to Sunnto cloud (same as the mobile app), get the information for all of the recorded dives, allowing the user to select which dives he want to import, convert the imported sml format to the current Suunto impl format at core/import-suunto-json.cpp, and allowing the user to select if he wants to directly import it into subsurface or save the files to disk

Michael Keller

unread,
Aug 12, 2026, 5:13:12 PM (5 days ago) Aug 12
to subsurfac...@googlegroups.com
Hi Alon.

On Thu, 13 Aug 2026 at 08:46, Alon Dotan <alon1...@gmail.com> wrote:
So what I did with all of this information... I created a standalone app since I know Subsurface maintainers will not want to blend this unique flow for specific vendor in the upstream project,

While you are definitely free to create and maintain your own app, this seems to be a genuine better alternative to the current 'two files' implementation for Suunto Nautic. And Subsurface already has support for importing dives from cloud apps, like divelogs.de, so there is no need to add new patterns to Subsurface that will need to be maintained. So if you are keen feel free to propose an implementation of this inside Subsurface - but it should re-use existing APIs and patterns (like the libdivecomputer API, the existing JSON parsing, the existing third-party cloud integration,...) as much as possible.

Ngā mihi
  Michael Keller
--
GCS$/CC/E/IT d- s+ a C++ UL+++/S++ P L++ E-
W++ N o? K? w O(++) M-- V+ PS+ PE+ Y? PGP+ t
5? X R tv b++ DI++ D++ G e+++ h---- r+++ y+++

Alon Dotan

unread,
Aug 12, 2026, 5:36:22 PM (5 days ago) Aug 12
to subsurfac...@googlegroups.com
I actually using subsurface in my project as submodule in order to parse the json and import the dives, the architecture of the project is to use subsurface libs as much as possible in order to reduce code duplication, keep the standarts and if subsurface project would like to integrate this tool make the transition seamless as possible...

Would you prefer me to open an issue to discuss the structure of this feature or a pull request with the implementation itself?

--
You received this message because you are subscribed to the Google Groups "Subsurface Divelog" group.
To unsubscribe from this group and stop receiving emails from it, send an email to subsurface-dive...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/subsurface-divelog/CACJC9LZ8tobuM5GrsCO%3DzFobW4nuB-gqXeDNf-YnnOzqL0XY3Q%40mail.gmail.com.

Michael Keller

unread,
Aug 12, 2026, 7:21:50 PM (5 days ago) Aug 12
to subsurfac...@googlegroups.com
Hi Alon.

On Thu, 13 Aug 2026 at 09:36, Alon Dotan <alon1...@gmail.com> wrote:
Would you prefer me to open an issue to discuss the structure of this feature or a pull request with the implementation itself?

Yes, that's a good plan.
Reply all
Reply to author
Forward
0 new messages