From cf81ac79b3a280b2b6f35e349d2c3b0a6e9fd164 Mon Sep 17 00:00:00 2001 From: Jef Driesen Date: Wed, 18 Jan 2023 19:45:12 +0100 Subject: [PATCH] Add support for the 300bar pressure sensor The new 300bar pressure transmitter records the pressure in units of 2bar, because otherwise the value doesn't fit into an 8-bit integer. --- src/divesystem_idive_parser.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/divesystem_idive_parser.c b/src/divesystem_idive_parser.c index 9be5f54..3270c55 100644 --- a/src/divesystem_idive_parser.c +++ b/src/divesystem_idive_parser.c @@ -585,6 +585,11 @@ divesystem_idive_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callba unsigned int flags = data[offset + 47] & 0xF0; unsigned int pressure = data[offset + 49]; + if (flags & 0x20) { + // 300 bar transmitter. + pressure *= 2; + } + if (flags & 0x80) { // No active transmitter available } else if (flags & 0x40) {