rebreathers on Subsurface (2)

Willem Ferguson willemferguson at zoology.up.ac.za
Tue May 20 06:18:47 PDT 2014


On 20/05/2014 09:29, Dirk Hohndel wrote:
> You're getting lost here.
> a) while I can see that CCR divers might be interested in two cylinders at
> a time, who would ever want more than that? So wouldn't it make more sense
> to have a "secondary_cylinderindex" for the dilutent?
> b) gas composition and partial pressures don't depend on cylinder
> pressures at all - they have nothing to do with any of this. They depend
> on the pO2 settings of the rebreather and the current depth.
> c) whatever we do, we will NOT make the common case for 99% of the divers
> more complicated / convoluted. I said this before, I'm open to adding
> features for CCR divers but ONLY if they don't negatively impact OC
> divers. And two events, disconnect and connect? Nope, not happening.
>
> I'll consider tracking a secondary cylinder. If we have a clean design to
> do so.
The most important point is, if one provides for more than two 
cylinders, that one does this in a way that provides maximum 
adaptability in future.The Poseidon MkVI tracks the O2 and the diluent 
cylinders simuntaneously. Currently the Galileo provides for 
simultaneous tracking of up to four cylinders. If you are prepared to 
throw enough money at it, the APD Inspiration will track the O2 and up 
to six different diluent gases. This is not first hand knowledge, 
though. In the coming weeks I will have some close contact with APD 
equipment and will be able to speak more authoritatively.

I would be perfectly happy to work with only two cylinders.  But this 
should preferably be done in a way that allows for relatively easy 
expansion, in future, to more than two cylinders, should there be a 
need.  But this means that the single variable (e.g. the pressure[] 
variable in plot_data would probably need to become an array, keeping in 
mind that half of pressure is used for storing interpolated values). If 
this becomes an array (more accurately, a [2][2] array), the question is 
whether one should not provide for MAX_CYLINDERS different cylinders (I 
think currently 7). Personally I am not sure why anyone would really 
like to track more than 2 cylinders (CCR) or more than one cylinder 
(OC), but that is not the point. In terms of processing it comes down to 
it that, instead of storing the log as one long list list, the pressure 
data from the different cylinders need to be stored in separate places 
and this has marked effects on how processing takes place.

>> Another point. I think the existing code provides for good agreement between
>> the order of cylinders in the equipment tab (or, more precisely, in the dive
>> structure) and cylinder order in the plot_info structure. However, one needs
>> to think of potential situations that can destroy this agreement. I think
>> this would mostly relate to the way the dc reports cylinder pressures and
>> how the user manually adds cylinders after the dive.
> Please explain more what you think could destroy this relationship? Right
> now we have the frustrating reality that most dive computers cannot deal
> with multiple cylinders using the same gas (and some don't even allow you
> to enter more than one cylinder with the same gas) because they don't
> report switches between cylinders but switches between gases.
I was thinking of making ensuring that this relationship could not be 
upset by the user tinkering with the equipment tag. What would happen if 
the user messed around with the information in italics, provided by the 
dc, possibly overwriting the existing cylinder-specific info? 
Fortunately the user can only insert an additional cylinder at the 
bottom of the list, not higher up. I do not think this is an important 
problem area, just something to watch because the syncronisation of the 
cylinder fields with the data in the profile is critical. This relates 
to your final comment below.
> We adopted
> that model from libdivecomputer and therefore have some flexibility
> regarding the association of a pressure graph with the corresponding
> cylinder, but I would actually like to modify this specifically in order
> for people to have more than one cylinder with the same gas and to switch
> between them (this is a common request we get from side mount divers, for
> example). So whatever new design we come up with needs to keep that
> direction in mind as well.
I do sidemount diving with a Galileo and it records switches in 
cylinder, not in gas and it works perfectly. In order to explore any 
problems/limitations with Subsurface, I am borrowing some sensors and 
will be logging some multi-sensor sidemount dives within the next few 
weeks. But your point is taken that we should keep that aspect in the 
eye, as well.

If there are any clear constraints that need to be kept to for 
maintaining compatibility with libdivecomputer, then it is important to 
define them clearly.

> My thinking would be to have each cylinder get a (per dive) unique ID
> assigned and then reference that ID in gas switches. Obviously today that
> unique ID could be the sequential number in the cylinders array - if you
> believe that that won't work, please explain why and how you think we
> should arrange things.
At the moment this is surely the best solution.
Kind regards,
willem


More information about the subsurface mailing list