From be691fd2780e58e0425d444d96310da1ca048374 Mon Sep 17 00:00:00 2001 From: Mark Thompson <129641948+NotherNgineer@users.noreply.github.com> Date: Mon, 3 Apr 2023 15:36:10 -0500 Subject: [PATCH 1/2] Fixed TPMS type 5 sensor readings Fixed issue with temperature & pressure values for OOK-8400-Schrader TPMS sensor type 5 (temperature & pressure were swapped and using wrong conversion ratio). Tested fix against 14 sensors of this type. --- firmware/common/tpms_packet.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/firmware/common/tpms_packet.cpp b/firmware/common/tpms_packet.cpp index f81ef35aa..dc89f751b 100644 --- a/firmware/common/tpms_packet.cpp +++ b/firmware/common/tpms_packet.cpp @@ -100,8 +100,8 @@ Optional Packet::reading_ook_8k4_schrader() const { * Preamble: 01*40 * System ID: 01100101, ??*20 (not really sure what this data is) * ID: 32 Manchester symbols - * Value: 8 Manchester symbols (temperature?) - * Value: 8 Manchester symbols (pressure?) + * Value: 8 Manchester symbols (pressure) + * Value: 8 Manchester symbols (temperature) * Checksum: 8 Manchester symbols (uint8_t sum of bytes starting with system ID) */ /* NOTE: First four bits of packet are consumed in preamble detection. @@ -123,8 +123,8 @@ Optional Packet::reading_ook_8k4_schrader() const { return Reading { Reading::Type::GMC_96, (uint32_t)id, - Pressure { static_cast(value_1) * 4 / 3 }, - Temperature { static_cast(value_0) - 56 } + Pressure { static_cast(value_0) * 8 / 3 }, + Temperature { static_cast(value_1) - 61 } }; } else { return { }; From 35db3685278c564ada3a1aa71f1c58328661f73b Mon Sep 17 00:00:00 2001 From: Mark Thompson <129641948+NotherNgineer@users.noreply.github.com> Date: Mon, 3 Apr 2023 16:40:07 -0500 Subject: [PATCH 2/2] Update tpms_packet.cpp --- firmware/common/tpms_packet.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/firmware/common/tpms_packet.cpp b/firmware/common/tpms_packet.cpp index dc89f751b..9f8df9bd2 100644 --- a/firmware/common/tpms_packet.cpp +++ b/firmware/common/tpms_packet.cpp @@ -123,7 +123,7 @@ Optional Packet::reading_ook_8k4_schrader() const { return Reading { Reading::Type::GMC_96, (uint32_t)id, - Pressure { static_cast(value_0) * 8 / 3 }, + Pressure { static_cast(value_0) * 11 / 4 }, Temperature { static_cast(value_1) - 61 } }; } else {