Subsurface interface with libdivecomputer
jef at libdivecomputer.org
Thu May 21 02:49:09 PDT 2015
On 2015-05-19 20:57, Salvador Cuñat wrote:
> 2015-05-19 10:50 GMT+02:00 Willem Ferguson
> <willemferguson at zoology.up.ac.za>
>> Dirk you are absolutely correct. I ran universal after your last mail,
>> above, and the events are not shown in the xml, even though I see them
>> clearly in the binary dump. So the problem is on the libdivecomputer
>> At least I have eliminated Subsurface as the cause of the problem. I
>> have run universal earlier.
> Back in march Jef introduced some changes in uwatec_smart_parser.c,
> specifically, he turned off gasmix support for galileo devices with
> firmware, so, if your DCs are trimix you won't have gasmix events
> recorded by the galileo.
That may indeed be the problem. The good news is that I already do know
where the gas mixes are stored for the trimix. They are no longer in the
header, but in one of the unknown sample types. This is still work in
> There is another posibility, as far as had understood libdc code. I
> you have to set more than one mix in the galileo, (even although they
> the same mix) for libdc to detect them. So, if you were doing, e.g., a
> sidemount dive with the same mix in both tanks and you have set only
> mix you won't have gaschange events too.
That's another thing. Internally Uwatec stores the id of the gasmix, but
currently the libdivecomputer api delivers only the o2/he percentages,
so you can distinguish between two identical mixes.
This mistake will be fixed in the near future. The implementation is
already done, but I haven't applied it yet, because it breaks backwards
An intermediate solution might be to introduce the new DC_SAMPLE_GASMIX
api right now, but maintain the old gaschange events in parallel. The
old gaschange events will become deprecated, but applications using them
will continue to work as before. And once v0.5 is out, we can finally
remove the old events.
More information about the subsurface