Page 1 of 1
Differences in Dive Log programs on computer
Posted: 13 Mar 2012, 16:26
by bogaerbr
Hallo,
I noticed quite some important differences in the way dive log programs present my dives after importing the data.
Here are some examples from my last dives:
(Time dive started / duration of the dive)
OSTC:
- 10h04 / 26'15''
- 10h40 / 27'29''
SubSurface
- 10h34 / 29'20''
- 11h17 / 37'10''
JDiveLog
- 10h07 / 26'25''
- 10h49 / 27'48''
MacDive
- 10h07 / 26'20''
- 10h49 / 27'30''
Does someone has an idea why the programs have their own ways to report my dives?
And why is SubSurface that different from the others?
Bruno
Re: Differences in Dive Log programs on computer
Posted: 13 Mar 2012, 17:58
by Bardass
what are your versions of Divelog and firmware ?
Re: Differences in Dive Log programs on computer
Posted: 13 Mar 2012, 18:14
by bogaerbr
The firmware of my OSTC is 2.21
The version of SubSurface is 1.1
The version of JDiveLog is 10.2
The version of MacDive is 2.1.3
Re: Differences in Dive Log programs on computer
Posted: 13 Mar 2012, 19:12
by tjannes
I confirm similar experiences. I was Bruno's buddy for the dives above, bud read the logs independently from my own OSTC (2.21) on a Windows 7 computer:
OSTC (2.21) In: 10:04 / Duration:26:03 / Max Depth: 9.04
OSTC (2.21) In: 10:40 / Duration:26:10 / Max Depth: 18.62
JDiveLog (2.16) In: 10:07 / Duration:26:05 / Max Depth: 8.82
JDiveLog (2.16) In: 10:50 / Duration:26:17 / Max Depth: 18.18
Diving Log (5.0.6) In: 10:08 / Duration:26 / Max Depth: 9
Diving Log (5.0.6) In: 10:51 / Duration:26 / Max Depth: 18.6
Subsurface (1.2) In: 10:34 / Duration:30 / Max Depth: 9.0
Subsurface (1.2) In: 11:17 / Duration:37.4 / Max Depth: 18.6
It looks like Subsurface is keeping Time Out instead of Time In. But still...
Thomas
Re: Differences in Dive Log programs on computer
Posted: 13 Mar 2012, 19:49
by swissdiving
I don't believe these questions belong in this forum as they are not directly related to the OSTC.
At best you could expect a guess from some of the members here. A definite answer is very unlikely. Maybe Sven from DivingLog has some ideas.
Re: Differences in Dive Log programs on computer
Posted: 14 Mar 2012, 08:09
by Jean-François
I can only speak for MacDive. I've talked to Nick about the discrepancies between what the OSTC recorded and what MacDive would log. It seems it comes down to what is the last sample you take.
He did tweak it down in his latest version and the worst difference I had was 8 seconds, which is perfectly fine for me.
Re: Differences in Dive Log programs on computer
Posted: 14 Mar 2012, 13:17
by TnT
Those differences are quite easy to explain once you know how the data is stored. First of all, the date/time value recorded by the ostc is the exit time instead of the start of the dive. Thus you have to substract the divetime to get the start of the dive.
To get the divetime, you can either use the value that is recorded by the ostc in the dive header, or calculate it manually based on the number of samples in the profile data. Those two are not necessary identical. For example there is CF02 (delay in s for end of dive mode, with a default value of 240 seconds) that causes a number of shallow depth samples recorded at the end of each dive. An application could compensate for that, by substracting the CF value from the divetime. You can even go one step further and ignore all samples with a depth below the configured threshold (CF01). Ignoring such samples is typically done by dive computers to ignore short surface intervals.
@HW: How is the divetime in the header calculated in the ostc firmware? Does it ignore the tail of the dive and/or shallow samples during a dive?
Thus the final date/time and divetime that is reported by an application will depend on how the duration is calculated. The value used in the correction of the date/time value isn't necessary the same as the divetime. For example if your divetime ignores shallow samples, you shouldn't really ignore those samples when calculating the start date/time value.
If I had to make a guess, I would say this is what happens:
OSTC: Substracts the full profile duration from the exit time, but divetime ignores shallow samples.
Subsurface: Uses exit time, and full duration as the divetime.
JDiveLog and MacDive: Uses a single divetime, ignoring shallow samples.
BTW, the fact that subsurface displays the exit time is a bug in the libdivecomputer library.
Re: Differences in Dive Log programs on computer
Posted: 14 Mar 2012, 15:50
by divinglog
Jef (TnT) explained it already very well. Diving Log takes the dive time from the dive header (not from the profile) and substracts it from the exit time to get the entry time. That's a very simple calculation and as long as the dive time in the header is correct, the entry time is correct.
If the header dive time is compensated and zero depth values are removed from the dive time, the entry time would vary by a few minutes (the time your OSTC stays in dive mode after you've surfaced).
Edit: To find out which calculation is correct, someone needs to note or remember the time displayed on the OSTC when the dive starts. Then compare it after the dive with the OSTC logbook and dive log programs.
Re: Differences in Dive Log programs on computer
Posted: 02 Apr 2012, 12:12
by TnT
I have been looking at how the OSTC calculates the dive start time. For dives in the new format (0x21), there are 10 extra bytes. One of the new fields is the "total dive time in seconds" (bytes 47-48), which in contrast to the normal divetime (bytes 10-12, does include the shallow parts of the dive. This is the value that is substracted from the exit time by the ostc firmware. See this commit for the details:
https://bitbucket.org/heinrichsweikamp/ ... da3e962e98
The ostc seems to drop the seconds (e.g. rounding down to the nearest minute) before substracting the value from the exit time. Thus if the desktop application doesn't drop the seconds, there will be a small difference (max 1 minute) between the time shown by the ostc and the desktop application.
Now, as a question for the end-users, what would you prefer? An exact match with the date/time shown by the ostc (e.g. dropping the seconds), or take into account the seconds too (e.g. allow a small difference in the dive start time)?
Re: Differences in Dive Log programs on computer
Posted: 02 Apr 2012, 12:29
by Rob
Hi TnT,
TnT Wrote:
-------------------------------------------------------
Now, as a question for the end-users, what would
> you prefer? An exact match with the date/time
> shown by the ostc (e.g. dropping the seconds), or
> take into account the seconds too (e.g. allow a
> small difference in the dive start time)?
The exit time in the ostc logbook doesn't have seconds!
So you win nothing if you are calculating the "exact" time.
regards
Rob
Re: Differences in Dive Log programs on computer
Posted: 02 Apr 2012, 13:58
by TnT
Rob Wrote:
-------------------------------------------------------
> The exit time in the ostc logbook doesn't have seconds!
> So you win nothing if you are calculating the "exact" time.
I'm aware the exit time doesn't have seconds. But the divetime does have seconds. I just wondered whether users would prefer to have the time as "correct" as possible (using the data that is available), or just prefer to match with the time displayed by the ostc.
I'm not claiming one is better than the other. In fact the seconds are not very relevant at all. Chances are high the ostc clock (or any other dive computer clock) isn't perfectly synchronized, and that error alone is already greater. So my question is all about preference, not correctness.