Skip to content
Snippets Groups Projects
Commit 593af951 authored by Marko Mecina's avatar Marko Mecina
Browse files

add Athena WFI DE communication template

parent 22c23ff8
No related branches found
No related tags found
No related merge requests found
"""
Examples for Athena WFI DE communications
"""
import communication as com
import packet_config_ATHENA_DE as de
# set up socket and connect
decon = com.Connector('', 12345, msgdecoding='hex')
decon.connect()
# example commands
decon.send(b'\x20\xDE\xAD') # test echo interface (0x20)
decon.send(de.HkCmdRecv(0x1000)) # get PCM MODE register
decon.send(de.CmdSend(0x3C00, 1)) # write sequencer register
decon.send(de.CmdSend(0x3C00, 1), rx=False) # write sequencer register, but don't fetch cmd response from socket
decon.send(de.SciCmd(100)) # set science data output rate
# dump cmd log (decon.log)
logfile = '/path/to/de_cmd.log'
decon.dump_log(logfile)
# automatically log to file
decon.setup_storage(logfile)
# run rx thread on socket, received data is put in recvd_data_buf queue
decon.start_receiver()
decon.receiver.recvd_data_buf
# custom TM processing function; must take bytestring as arg *data*, and timestamp kwarg *ts*
def msg_to_hex_string(data, ts=''):
try:
return '{}: {}\n'.format(ts, data.hex(' ', 1))
except Exception as err:
print(err)
return '# ERROR #\n'
# optionally, add custom TM processing
# this logs the received data hex-formatted in outfile
decon.start_receiver(procfunc=msg_to_hex_string, outfile='/path/to/de_rx.log', ofmode='w')
# processed data is also collected in
decon.receiver.proc_data
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment