bugfix tm parsing syrlinks
This commit is contained in:
parent
9178251ed7
commit
8d23f29f94
@ -319,6 +319,7 @@ def handle_syrlinks_rx_registers_dataset(printer: FsfwTmTcPrinter, hk_data: byte
|
|||||||
validity_buffer = hk_data[22:]
|
validity_buffer = hk_data[22:]
|
||||||
for header, content in zip(header_list, content_list):
|
for header, content in zip(header_list, content_list):
|
||||||
pw.dlog(f"{header}: {content}")
|
pw.dlog(f"{header}: {content}")
|
||||||
|
printer.print_validity_buffer(validity_buffer=validity_buffer, num_vars=8)
|
||||||
pw.dlog(f"Carrier Detect: {carrier_detect}")
|
pw.dlog(f"Carrier Detect: {carrier_detect}")
|
||||||
pw.dlog(f"Carrier Lock: {carrier_lock}")
|
pw.dlog(f"Carrier Lock: {carrier_lock}")
|
||||||
pw.dlog(f"Data Lock (data clock recovery loop lock status): {data_lock}")
|
pw.dlog(f"Data Lock (data clock recovery loop lock status): {data_lock}")
|
||||||
@ -327,7 +328,6 @@ def handle_syrlinks_rx_registers_dataset(printer: FsfwTmTcPrinter, hk_data: byte
|
|||||||
pw.dlog(f"RX AGC Inhibit: {rx_agc_inhibit}")
|
pw.dlog(f"RX AGC Inhibit: {rx_agc_inhibit}")
|
||||||
pw.dlog(f"RX AGC: {rx_agc}")
|
pw.dlog(f"RX AGC: {rx_agc}")
|
||||||
pw.dlog(f"Eb / E0RX [dB]: {eb_to_n0}")
|
pw.dlog(f"Eb / E0RX [dB]: {eb_to_n0}")
|
||||||
printer.print_validity_buffer(validity_buffer=validity_buffer, num_vars=8)
|
|
||||||
|
|
||||||
|
|
||||||
class TxConv(enum.IntEnum):
|
class TxConv(enum.IntEnum):
|
||||||
@ -335,6 +335,18 @@ class TxConv(enum.IntEnum):
|
|||||||
VITERBI_HALF_G1G2INV = 0b010
|
VITERBI_HALF_G1G2INV = 0b010
|
||||||
VITERBI_HALF = 0b111
|
VITERBI_HALF = 0b111
|
||||||
|
|
||||||
|
class TxStatus(enum.IntEnum):
|
||||||
|
NOT_AVAILABLE = 0b00
|
||||||
|
MODULATION = 0b01
|
||||||
|
CW = 0b10
|
||||||
|
STANDBY = 0b11
|
||||||
|
|
||||||
|
|
||||||
|
class TxCfgSet(enum.IntEnum):
|
||||||
|
START_WITH_CURRENT_CFG = 0b00
|
||||||
|
START_WITH_CONF_0 = 0b01
|
||||||
|
START_WITH_CONF_1 = 0b10
|
||||||
|
|
||||||
|
|
||||||
WAVEFORM_STRINGS = ["OFF", "CW", "QPSK", "0QPSK", "PCM/PM", "PSK/PM", "BPSK"]
|
WAVEFORM_STRINGS = ["OFF", "CW", "QPSK", "0QPSK", "PCM/PM", "PSK/PM", "BPSK"]
|
||||||
|
|
||||||
@ -346,14 +358,23 @@ def handle_syrlinks_tx_registers_dataset(
|
|||||||
pw = PrintWrapper(printer)
|
pw = PrintWrapper(printer)
|
||||||
header_list = ["TX Status Raw", "TX Waveform", "TX AGC value"]
|
header_list = ["TX Status Raw", "TX Waveform", "TX AGC value"]
|
||||||
tx_status = hk_data[0]
|
tx_status = hk_data[0]
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
tx_conv = TxConv(tx_status & 0b111)
|
tx_conv = TxConv(tx_status & 0b111)
|
||||||
except IndexError:
|
except ValueError:
|
||||||
logging.getLogger(__name__).warning(
|
logging.getLogger(__name__).warning(
|
||||||
f"invalid TX conv value {tx_status & 0b111}"
|
f"invalid TX conv value {tx_status & 0b111}"
|
||||||
)
|
)
|
||||||
tx_conv = -1
|
tx_conv = -1
|
||||||
tx_diff_encoder_enable = (tx_status >> 3) & 0b1
|
tx_diff_encoder_enable = (tx_status >> 3) & 0b1
|
||||||
|
"""
|
||||||
|
tx_status_status = TxStatus(tx_status & 0b11)
|
||||||
|
try:
|
||||||
|
tx_conf_set = TxCfgSet((tx_status >> 2) & 0b11)
|
||||||
|
except ValueError:
|
||||||
|
logging.getLogger(__name__).warning(f"invalid TX conf set {(tx_status >> 2) & 0b11}")
|
||||||
|
tx_conf_set = -1
|
||||||
|
tx_clock_detect = (tx_status >> 4) & 0b1
|
||||||
tx_waveform = hk_data[1]
|
tx_waveform = hk_data[1]
|
||||||
waveform = tx_waveform & 0b1111
|
waveform = tx_waveform & 0b1111
|
||||||
try:
|
try:
|
||||||
@ -369,10 +390,13 @@ def handle_syrlinks_tx_registers_dataset(
|
|||||||
validity_buffer = hk_data[4:]
|
validity_buffer = hk_data[4:]
|
||||||
for header, content in zip(header_list, content_list):
|
for header, content in zip(header_list, content_list):
|
||||||
pw.dlog(f"{header}: {content}")
|
pw.dlog(f"{header}: {content}")
|
||||||
pw.dlog(f"TX CONV: {tx_conv!r}")
|
printer.print_validity_buffer(validity_buffer=validity_buffer, num_vars=3)
|
||||||
pw.dlog(f"TX DIFF (differential encoder enable): {tx_diff_encoder_enable}")
|
# pw.dlog(f"TX CONV: {tx_conv!r}")
|
||||||
|
# pw.dlog(f"TX DIFF (differential encoder enable): {tx_diff_encoder_enable}")
|
||||||
|
pw.dlog(f"TX Status: {tx_status_status!r}")
|
||||||
|
pw.dlog(f"TX Config Set: {tx_conf_set!r}")
|
||||||
|
pw.dlog(f"TX Clock Detect: {tx_clock_detect}")
|
||||||
pw.dlog(f"Waveform: {waveform_str}")
|
pw.dlog(f"Waveform: {waveform_str}")
|
||||||
pw.dlog(f"PCM Mode: {pcm_mode}")
|
pw.dlog(f"PCM Mode: {pcm_mode}")
|
||||||
pw.dlog(f"TX AGC Inhibit: {tx_agc_inhibit}")
|
pw.dlog(f"TX AGC Inhibit: {tx_agc_inhibit}")
|
||||||
pw.dlog(f"TX AGC: {tx_agc}")
|
pw.dlog(f"TX AGC: {tx_agc}")
|
||||||
printer.print_validity_buffer(validity_buffer=validity_buffer, num_vars=3)
|
|
||||||
|
Loading…
Reference in New Issue
Block a user