diff --git a/src/hw_ostc_parser.c b/src/hw_ostc_parser.c index f84e611..4d81f0c 100644 --- a/src/hw_ostc_parser.c +++ b/src/hw_ostc_parser.c @@ -918,7 +918,12 @@ hw_ostc_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t call value = array_uint16_le (data + offset); if (value != 0) { sample.pressure.tank = tank; - sample.pressure.value = value / 10.0; + sample.pressure.value = value; + // The hwOS Sport firmware used a resolution of + // 0.1 bar between versions 10.40 and 10.50. + if (parser->model != OSTC4 && (firmware >= 0x0A28 && firmware <= 0x0A32)) { + sample.pressure.value /= 10.0; + } if (callback) callback (DC_SAMPLE_PRESSURE, sample, userdata); } break;