ACS CTRL fix for MEKF HK handling
This commit is contained in:
parent
5b613f98ee
commit
bc85ccd8ef
@ -10,6 +10,10 @@ list yields a list of all related PRs for each release.
|
|||||||
|
|
||||||
# [unreleased]
|
# [unreleased]
|
||||||
|
|
||||||
|
## Fixed
|
||||||
|
|
||||||
|
- MEKF: Handle NOT_FINITE status (key 5)
|
||||||
|
|
||||||
# [v2.20.0] 2023-03-28
|
# [v2.20.0] 2023-03-28
|
||||||
|
|
||||||
## Changed
|
## Changed
|
||||||
|
@ -989,6 +989,7 @@ def handle_mekf_data(pw: PrintWrapper, hk_data: bytes):
|
|||||||
2: "NO_MODEL_VECTORS",
|
2: "NO_MODEL_VECTORS",
|
||||||
3: "NO_SUS_MGM_STR_DATA",
|
3: "NO_SUS_MGM_STR_DATA",
|
||||||
4: "COVARIANCE_INVERSION_FAILED",
|
4: "COVARIANCE_INVERSION_FAILED",
|
||||||
|
5: "NOT_FINITE",
|
||||||
10: "INITIALIZED",
|
10: "INITIALIZED",
|
||||||
11: "RUNNING",
|
11: "RUNNING",
|
||||||
}
|
}
|
||||||
@ -1016,7 +1017,10 @@ def handle_mekf_data(pw: PrintWrapper, hk_data: bytes):
|
|||||||
current_idx += inc_len_vec
|
current_idx += inc_len_vec
|
||||||
status = struct.unpack(fmt_sts, hk_data[current_idx : current_idx + inc_len_sts])[0]
|
status = struct.unpack(fmt_sts, hk_data[current_idx : current_idx + inc_len_sts])[0]
|
||||||
current_idx += inc_len_sts
|
current_idx += inc_len_sts
|
||||||
|
if mekf_status.get(status) is not None:
|
||||||
pw.dlog(f"{'MEKF Status'.ljust(25)}: {mekf_status[status]}")
|
pw.dlog(f"{'MEKF Status'.ljust(25)}: {mekf_status[status]}")
|
||||||
|
else:
|
||||||
|
pw.dlog(f"{'MEKF Raw Status (key unknown)'.ljust(25)}: {status}")
|
||||||
pw.dlog(f"{'MEKF Quaternion'.ljust(25)}: {fmt_str_4.format(*quat)}")
|
pw.dlog(f"{'MEKF Quaternion'.ljust(25)}: {fmt_str_4.format(*quat)}")
|
||||||
pw.dlog(f"{'MEKF Rotational Rate'.ljust(25)}: {fmt_str_3.format(*rates)}")
|
pw.dlog(f"{'MEKF Rotational Rate'.ljust(25)}: {fmt_str_3.format(*rates)}")
|
||||||
pw.printer.print_validity_buffer(hk_data[current_idx:], num_vars=3)
|
pw.printer.print_validity_buffer(hk_data[current_idx:], num_vars=3)
|
||||||
|
Loading…
Reference in New Issue
Block a user