Thanks for this, I did some work on cobalt import earlier. Will take a look of what new info you have figured out once back in the north.
miika > On 15 Jan 2015, at 04:14, Rainer Mohr <[email protected]> wrote: > > Gentlemen, > > Atomic Aquatics provides a (windows) software called "Atomic Logbook" to > download the dives from the Cobalt and Cobalt 2 > Thanks to Jef who sent me an example file, I could write an import for > divelogs.de and would like to share my findings with you, in case you want to > write an import for it too... > > The software saves its data in an SQlite database at > C:\ProgramData\AtomicsAquatics\Cobalt-Logbook\Cobalt.db > > To get a list of all dives, fire the following SQL: > > SELECT Dive.Id, strftime('%Y-%m-%d',Dive.DiveStartTime) as date, > strftime('%H:%M',Dive.DiveStartTime) as time, place.Data AS place, site.Data > AS site, weather.Data AS weather, viz.Data AS viz, buddy.Data AS buddy, > notes.Data as notes, > LogPeriod AS samplerate, Temperature, SurfacePressure, > (SurfHours*60+SurfMinutes)*60 AS si, Units, Segments, MaxDepthPressure, > round((MaxDepthPressure-SurfacePressure)*0.99*0.01,1) AS MaxDepth, DiveMinutes > FROM Dive > LEFT JOIN (SELECT Items.DiveId, Data FROM Items INNER JOIN List ON > Items.Value1= List.Id WHERE Items.type=0) place ON Dive.Id = place.DiveId > LEFT JOIN (SELECT Items.DiveId, Data FROM Items INNER JOIN List ON > Items.Value1= List.Id WHERE Items.type=1) site ON Dive.Id = site.DiveId > LEFT JOIN (SELECT Items.DiveId, Data FROM Items INNER JOIN List ON > Items.Value1= List.Id WHERE Items.type=2) weather ON Dive.Id = weather.DiveId > LEFT JOIN (SELECT Items.DiveId, Data FROM Items INNER JOIN List ON > Items.Value1= List.Id WHERE Items.type=3) viz ON Dive.Id = viz.DiveId > LEFT JOIN (SELECT Items.DiveId, Data FROM Items INNER JOIN List ON > Items.Value1= List.Id WHERE Items.type=4) buddy ON Dive.Id = buddy.DiveId > LEFT JOIN (SELECT DiveId, Data FROM List WHERE Type=5) notes ON Dive.Id = > notes.DiveId > > To get all *used* gas mixes (there are always at least three tanks, even if > not actually used) with start- and endpressure of each tank, fire: > > SELECT max(gaspressure) as startpress, min(gaspressure) as endpress, gasmix, > tankpressure, tanksize, O2, he > FROM TrackPoints > LEFT JOIN GasMixes ON TrackPoints.GasMix = GasMixNumber AND > TrackPoints.DiveId = GasMixes.DiveId > WHERE TrackPoints.DiveId = {the_dives_id} AND gaspressure > 0 > GROUP BY GasMix > > Here, the Tanksizes are somewhat stupid. > If your tankpressure == 0 then the tanksize is "tenths of a liter", so 100 > will give you a 10 liter tank > If the tankpressure > 0, then the tanksize is cuft with the workingpressure > "tankpressure", so will need to convert to liters if needed in metric. > > To get the profile data from a dive fire: > > SELECT round((depthpressure-{SurfacePressure_from_dive})*0.99*0.01,1) as > depth, Temperature, GasPressure, GasMix, O2, He, runtime FROM `TrackPoints` > WHERE DiveId = {the_dives_id} Order by runtime > > if you need any further info, shoot... > > Regards, > Rainer > > > > > > > _______________________________________________ > subsurface mailing list > [email protected] > http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface
_______________________________________________ subsurface mailing list [email protected] http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface
