Review request: mCCR diving with OSTC3 fixed setpoints

Jan Mulder jlmulder at
Fri Apr 28 05:12:42 PDT 2017

Let me first explain the use case. I (and some fellow cave explorers I 
dive with) dive mCCR units (Kiss Classic specifically) in its most 
primitive form. No attached divecomputer to the mCCR, but only some 
analog po2 devices to fly the unit. This obviously results in no logging 
from po2 sensors. I use a OSTC3, and most of my buddies some Shearwater 
divecomputer. As I am (at this point), not aware how a Shearwater 
handles this use case, I consider only an OSTC3 for now.

it appears, in the current code, the manual changes of setpoint on the 
divecomputer are correctly recorded (as events) and are correctly 
handled on import from the OSTC3 in to Subsurface. The initial setpoint  
at the start of the dive is, however, a little bit  a can of worms. The 
OSCTS3 does not record a setpoint change at the beginning of the dive, 
and the recorded po2 values are from the diluent (so not very useful).

To deal with this use case, had to adapt libdivecomputer (see my branch, and after that 
Subsurface (

As libdivecomputer did not interface the fixed setpoints (including the 
initial one at the start of the dive), I had to add those. After that, 
Subsurface can determine the initial setpoint. For completeness, this 
setpoint is added to the XML and git storage backends as well.

I would really appreciate a review for this change.



More information about the subsurface mailing list