User commands entered via the GUI need to be passed to the Formatter. There is a parameters.py file to list the commands, but they need to be encoded before sending over UDP. Experiment systems are also listed in parameters.py and should be encoded as well, then prepended to the encoded command string.
Also, there should be some encapsulation to ensure commands are routed only to relevant systems (e.g. no HV_SET command to HOUSEKEEPING). Maybe this interface should be exposed to the GUI-side. The interface class could also handle encoding of command strings.
To do:
[x] Write a class UplinkCommand to encapsulate commands. Should include attributes commandName, commandBits, [systems], read (write is False of read?), flightUse, etc.
[x] Enumerate or otherwise encode all commands.
[x] Create const instance of each required UplinkCommand. Maybe these should be read from a config file?
[x] Rewrite or overload FormatterInterface.sendto to accept UplinkCommand argument.
What's needed
User commands entered via the GUI need to be passed to the Formatter. There is a parameters.py file to list the commands, but they need to be encoded before sending over UDP. Experiment systems are also listed in parameters.py and should be encoded as well, then prepended to the encoded command string.
Also, there should be some encapsulation to ensure commands are routed only to relevant systems (e.g. no
HV_SET
command toHOUSEKEEPING
). Maybe this interface should be exposed to the GUI-side. The interface class could also handle encoding of command strings.To do:
UplinkCommand
to encapsulate commands. Should include attributescommandName
,commandBits
,[systems]
,read
(write
isFalse
ofread
?),flightUse
, etc.UplinkCommand
. Maybe these should be read from a config file?FormatterInterface.sendto
to acceptUplinkCommand
argument.