You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am currently making an interface between an Fprime application and a GUI other than fprime-gds, and one of the first steps I am taking is to use a TlmPacketizer and load its auto-coded *Packets.xml file in a python script using fprime-gds's PktXmlLoader.
I have two questions:
1/ *Packets.xml seems auto-generated, but in this case how do we define in which packets go each Tlm? Related, what happens when components change and telemetry gets updated? The only way I see so far is to write the *Packets.xml file ourselves and manually keep it updated as telemetry changes, but since this is tedious and error prone perhaps there is something that already exists to manage that.
2/ I have generated and built the Ref app as it is (v3.5.1) and wrote this short script to get started but the traceback says the channels names need "Ref." prepended to every channel name for this to work. Ref was already set up to use TlmPacketizer, so isn't this how we use the API for this purpose?
(fprime-venv) XXX@XXXXXX:~/software/temp_test/scripts$ python test_pkt_dict.py
Traceback (most recent call last):
File "/home/XXX/software/temp_test/scripts/test_pkt_dict.py", line 8, in
pktNameDict = pktLoader.get_name_dict('../fprime/Ref/Top/RefPackets.xml', name_dict)
File "/home/XXX/software/temp_test/fprime-venv/lib/python3.10/site-packages/fprime_gds/common/loaders/pkt_xml_loader.py", line 71, in get_name_dict
(id_dict, name_dict) = self.construct_dicts(path, ch_name_dict)
File "/home/XXX/software/temp_test/fprime-venv/lib/python3.10/site-packages/fprime_gds/common/loaders/pkt_xml_loader.py", line 118, in construct_dicts
raise exceptions.GseControllerParsingException(
fprime_gds.common.data_types.exceptions.GseControllerParsingException: Parsing error: Channel Ref.cmdDisp.CommandsDispatched in pkt CDH, but cannot be found in channel dictionary
I have checked and "cmdDisp.CommandsDispatched" is among the keys of name_dict.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
I am currently making an interface between an Fprime application and a GUI other than fprime-gds, and one of the first steps I am taking is to use a TlmPacketizer and load its auto-coded *Packets.xml file in a python script using fprime-gds's PktXmlLoader.
I have two questions:
1/ *Packets.xml seems auto-generated, but in this case how do we define in which packets go each Tlm? Related, what happens when components change and telemetry gets updated? The only way I see so far is to write the *Packets.xml file ourselves and manually keep it updated as telemetry changes, but since this is tedious and error prone perhaps there is something that already exists to manage that.
2/ I have generated and built the Ref app as it is (v3.5.1) and wrote this short script to get started but the traceback says the channels names need "Ref." prepended to every channel name for this to work. Ref was already set up to use TlmPacketizer, so isn't this how we use the API for this purpose?
The script:
The traceback:
I have checked and "cmdDisp.CommandsDispatched" is among the keys of name_dict.
Beta Was this translation helpful? Give feedback.
All reactions