Uwatec Aladin Tec 2G supports maximum 2 gas mixes.

According to the technical specifications, the Uwatec Aladin Tec 2G
supports maximum two gas mixes. The data appears to confirm this,
because the extra third gas mix always contains unrealistic oxygen
percentages.

However, I came across some data containing gas switches to the third
gas mix. The interesting part is that according to the Uwatec
application, this is actually a switch to the second gas mix in the
header. One possible explanation is that for models with up to 3 gas
mixes, they are labelled respectively "bottom", "travel" and "deco" mix.
But the documentation for the Aladin Tec 2G only refers to the bottom
and deco mix. So it might be that internally the index of the deco mix
is always the 3th mix, regardless of whether a travel mix is supported
or not.

If the only allowed values for the gas mix index are 0 (for the bottom
mix) or 2 (for the deco mix), then manually remapping the deco mix is
equivalent with ignoring the lowest bit. This has the advantage that the
required bitmasks and shifts are no longer different from those for the
other models.
This commit is contained in:
Jef Driesen 2015-03-07 23:27:26 +01:00
parent 8b64ce0edc
commit 4fd825cdac

View File

@ -151,7 +151,7 @@ static const
uwatec_smart_header_info_t uwatec_smart_aladin_tec2g_header = {
22,
26,
34, 3,
34, 2,
30, /* temp_minimum */
28, /* temp_maximum */
32, /* temp_surface */
@ -713,11 +713,7 @@ uwatec_smart_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t
alarms[table[id].index] = value;
have_alarms = 1;
if (table[id].index == 1) {
if (parser->model == ALADINTEC || parser->model == ALADINTEC2G) {
gasmix = (value & 0x18) >> 3;
} else {
gasmix = (value & 0x30) >> 4;
}
gasmix = (value & 0x30) >> 4;
}
break;
case TIME: