More GPS TM #226
@ -97,8 +97,27 @@ def pack_gps_command(object_id: bytes, q: DefaultPusQueueHelper, op_code: str):
|
|||||||
q.add_pus_tc(create_mode_command(object_id, Mode.OFF, 0))
|
q.add_pus_tc(create_mode_command(object_id, Mode.OFF, 0))
|
||||||
|
|
||||||
|
|
||||||
def handle_gps_data(pw: PrintWrapper, hk_data: bytes):
|
def handle_gps_data(
|
||||||
pw.dlog(f"Received GPS data, HK data length {len(hk_data)}")
|
pw: PrintWrapper,
|
||||||
|
set_id: int,
|
||||||
|
hk_data: bytes,
|
||||||
|
packet_time: datetime.datetime,
|
||||||
|
):
|
||||||
|
pw.ilog(_LOGGER, f"Received GPS CTRL HK with packet time {packet_time}")
|
||||||
|
match set_id:
|
||||||
|
case SetId.CORE_HK:
|
||||||
|
handle_core_data(pw, hk_data)
|
||||||
|
case SetId.SKYVIEW_HK:
|
||||||
|
handle_mgm_data_processed(pw, hk_data)
|
||||||
|
|
||||||
|
|
||||||
|
def handle_core_data(pw: PrintWrapper, hk_data: bytes):
|
||||||
|
if len(hk_data) < 4*8+4+2+8:
|
||||||
|
pw.dlog(
|
||||||
|
f"GPS Core dataset with size {len(hk_data)} does not have expected size"
|
||||||
|
f" of {4*8+4+2+8} bytes"
|
||||||
|
)
|
||||||
|
return
|
||||||
current_idx = 0
|
current_idx = 0
|
||||||
fmt_str = "!ddddBBBHBBBBBI"
|
fmt_str = "!ddddBBBHBBBBBI"
|
||||||
inc_len = struct.calcsize(fmt_str)
|
inc_len = struct.calcsize(fmt_str)
|
||||||
|
Loading…
Reference in New Issue
Block a user