From da18ebab775cbfce8b5b520af7eba07a090a355d Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Wed, 25 May 2022 18:15:22 +0200 Subject: [PATCH] added sus hk parsing --- pus_tm/devs/sus.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 pus_tm/devs/sus.py diff --git a/pus_tm/devs/sus.py b/pus_tm/devs/sus.py new file mode 100644 index 0000000..1c05504 --- /dev/null +++ b/pus_tm/devs/sus.py @@ -0,0 +1,21 @@ +import struct + +from pus_tm.defs import PrintWrapper +from pus_tc.devs.sus import SetIds +from tmtccmd.utility import ObjectId +from tmtccmd.utility.tmtc_printer import FsfwTmTcPrinter + + +def handle_sus_hk(object_id: ObjectId, hk_data: bytes, printer: FsfwTmTcPrinter, set_id: int): + pw = PrintWrapper(printer) + pw.dlog(f"Received SUS HK data from {object_id}") + if set_id == SetIds.HK: + current_idx = 0 + temperature = struct.unpack('!f', hk_data[current_idx : current_idx + 4])[0] + current_idx += 4 + channels = [] + for _ in range(6): + channels.append(struct.unpack('!H', hk_data[current_idx : current_idx + 2])) + current_idx += 2 + printer.print_validity_buffer(validity_buffer=hk_data[current_idx:], num_vars=7) +