SatNOGS-COMMS  4.1.0
A COMMS subsystem for CubeSats
Loading...
Searching...
No Matches
satnogs::comms::telecommand Class Reference

#include <telecommand.hpp>

Classes

class  parser
class  ccsds_tc_header
class  prefixed_string
class  parser< telecommand::packet_id::TEST_TX_SIMPLE >
class  parser< telecommand::packet_id::TESTS_STOP >
class  parser< telecommand::packet_id::FPGA_ENABLE >
class  parser< telecommand::packet_id::SET_FLASH_MONITOR_DELAY_SEC >
class  parser< telecommand::packet_id::STORAGE_ENABLE >
class  parser< telecommand::packet_id::STORAGE_DIRECTION >
class  parser< telecommand::packet_id::STOP_WDT_UPDATE >
class  parser< telecommand::packet_id::FREQ_SET >
class  parser< telecommand::packet_id::TX_INHIBIT >
class  parser< telecommand::packet_id::SET_TX_GS_TURNAROUND_TIME >
class  parser< telecommand::packet_id::RESET_ALL_OTA_SESSIONS >
class  parser< telecommand::packet_id::CONFIRM_IMAGE >
class  parser< telecommand::packet_id::RESET_OTA_SESSION >
class  parser< telecommand::packet_id::SET_RADIO_ENABLE >
class  parser< telecommand::packet_id::TX_GAIN >
class  parser< telecommand::packet_id::IO_WDT_PERIOD >
class  parser< telecommand::packet_id::SET_RX_GAIN_MODE >
class  parser< telecommand::packet_id::EMMC_TEST >
class  parser< telecommand::packet_id::RESET_RADIO_STATS >
class  parser< telecommand::packet_id::SET_RFFE_PARAMS >
class  parser< telecommand::packet_id::SET_RTC >
class  parser< telecommand::packet_id::SET_PLL_CLK_SRC >
class  parser< telecommand::packet_id::SET_FILTER >
class  parser< telecommand::packet_id::REBOOT >
class  parser< telecommand::packet_id::RESET_SETTINGS >
class  parser< telecommand::packet_id::STORAGE_RM >
class  parser< telecommand::packet_id::STORAGE_RMDIR >
class  parser< telecommand::packet_id::STORAGE_MKDIR >
class  parser< telecommand::packet_id::STORAGE_WRITE >
class  parser< telecommand::packet_id::STORAGE_WRITE_OFFSET >
class  parser< telecommand::packet_id::SAVE_SETTINGS >
class  parser< telecommand::packet_id::SET_AGC0_CONF >
class  parser< telecommand::packet_id::SET_AGC1_CONF >
class  parser< telecommand::packet_id::SET_GAIN0_CONF >
class  parser< telecommand::packet_id::SET_GAIN1_CONF >
class  parser< telecommand::packet_id::SET_MODULATION >
class  parser< telecommand::packet_id::SET_TX_FSK_CONF >
class  parser< telecommand::packet_id::SET_RX_FSK_CONF >
class  parser< telecommand::packet_id::DISK_RAW_WRITE >
class  parser< telecommand::packet_id::DISK_RAW_READ >
class  parser< telecommand::packet_id::DISK_SECTORS_ERASE >
class  parser< telecommand::packet_id::SET_THERMAL_MONITOR_PARAMS >
class  parser< telecommand::packet_id::FPGA_SET_BOOT_MODE >
class  parser< telecommand::packet_id::OTA_REQUEST >
class  parser< telecommand::packet_id::OTA_DATA >
class  parser< telecommand::packet_id::OTA_FINISH >
class  parser< telecommand::packet_id::SET_RADIO_DUTY_CYCLE >
class  parser< telecommand::packet_id::SET_TX_WAIT_MS >

Public Types

enum class  packet_id : uint16_t {
  PING = 1 , TELEMETRY_REQ = 2 , OTA_REQUEST = 3 , OTA_FINISH = 4 ,
  OTA_DATA = 5 , TEST_TX_SIMPLE = 6 , TESTS_STOP = 7 , FPGA_ENABLE = 8 ,
  STORAGE_ENABLE = 9 , STORAGE_DIRECTION = 10 , STOP_WDT_UPDATE = 11 , FREQ_SET = 12 ,
  TX_INHIBIT = 13 , TX_GAIN = 14 , IO_WDT_PERIOD = 15 , SET_RX_GAIN_MODE = 16 ,
  EMMC_TEST = 17 , RESET_RADIO_STATS = 18 , SET_RFFE_PARAMS = 19 , SET_RTC = 20 ,
  REBOOT = 21 , SET_PLL_CLK_SRC = 22 , RESET_SETTINGS = 23 , SET_FILTER = 24 ,
  STORAGE_LS = 25 , STORAGE_READ = 26 , STORAGE_MKDIR = 27 , STORAGE_RMDIR = 28 ,
  STORAGE_RM = 29 , STORAGE_WRITE = 30 , STORAGE_WRITE_OFFSET = 31 , STORAGE_FSTATS = 32 ,
  RING_BUFFER_LOGS = 33 , SAVE_SETTINGS = 34 , SET_AGC0_CONF = 35 , SET_AGC1_CONF = 36 ,
  SET_GAIN0_CONF = 37 , SET_GAIN1_CONF = 38 , SET_MODULATION = 39 , SET_TX_FSK_CONF = 40 ,
  SET_RX_FSK_CONF = 41 , DISK_RAW_WRITE = 42 , DISK_RAW_READ = 43 , DISK_SECTORS_ERASE = 44 ,
  SET_RADIO_ENABLE = 45 , SET_THERMAL_MONITOR_PARAMS = 46 , SET_TX_GS_TURNAROUND_TIME = 47 , FPGA_SET_BOOT_MODE = 48 ,
  SET_FLASH_MONITOR_DELAY_SEC = 49 , RESET_ALL_OTA_SESSIONS = 50 , RESET_OTA_SESSION = 51 , CONFIRM_IMAGE = 52 ,
  SET_RADIO_DUTY_CYCLE = 53 , SET_TX_WAIT_MS = 54
}
enum class  storage_direction : bool { MCU = 0 , FPGA = 1 }

Public Member Functions

 telecommand (telecommand const &)=delete
void operator= (telecommand const &)=delete
bool ccsds_frame_valid (const uint8_t *b, size_t len)
int get_frame_count ()
bool decode_ccsds_xtce (msg_arbiter::msg &m, int wdgid)
bool decode_ccsds_xtce (msg_arbiter::msg &resp, const msg_arbiter::msg &req, int wdgid)
 Tries to decode and process an XTCE format CCSDS space packet.

Static Public Member Functions

static telecommandget_instance ()
static void deserialize (etl::bit_stream_reader &reader, float &x)
static void deserialize (etl::bit_stream_reader &reader, double &x)

Detailed Description

Definition at line 33 of file telecommand.hpp.

Member Enumeration Documentation

◆ packet_id

enum class satnogs::comms::telecommand::packet_id : uint16_t
strong
Enumerator
PING 
TELEMETRY_REQ 
OTA_REQUEST 
OTA_FINISH 
OTA_DATA 
TEST_TX_SIMPLE 
TESTS_STOP 
FPGA_ENABLE 
STORAGE_ENABLE 
STORAGE_DIRECTION 
STOP_WDT_UPDATE 
FREQ_SET 
TX_INHIBIT 
TX_GAIN 
IO_WDT_PERIOD 
SET_RX_GAIN_MODE 
EMMC_TEST 
RESET_RADIO_STATS 
SET_RFFE_PARAMS 
SET_RTC 
REBOOT 
SET_PLL_CLK_SRC 
RESET_SETTINGS 
SET_FILTER 
STORAGE_LS 
STORAGE_READ 
STORAGE_MKDIR 
STORAGE_RMDIR 
STORAGE_RM 
STORAGE_WRITE 
STORAGE_WRITE_OFFSET 
STORAGE_FSTATS 
RING_BUFFER_LOGS 
SAVE_SETTINGS 
SET_AGC0_CONF 
SET_AGC1_CONF 
SET_GAIN0_CONF 
SET_GAIN1_CONF 
SET_MODULATION 
SET_TX_FSK_CONF 
SET_RX_FSK_CONF 
DISK_RAW_WRITE 
DISK_RAW_READ 
DISK_SECTORS_ERASE 
SET_RADIO_ENABLE 
SET_THERMAL_MONITOR_PARAMS 
SET_TX_GS_TURNAROUND_TIME 
FPGA_SET_BOOT_MODE 
SET_FLASH_MONITOR_DELAY_SEC 
RESET_ALL_OTA_SESSIONS 
RESET_OTA_SESSION 
CONFIRM_IMAGE 
SET_RADIO_DUTY_CYCLE 
SET_TX_WAIT_MS 

Definition at line 43 of file telecommand.hpp.

◆ storage_direction

Enumerator
MCU 
FPGA 

Definition at line 105 of file telecommand.hpp.

Constructor & Destructor Documentation

◆ telecommand()

satnogs::comms::telecommand::telecommand ( telecommand const & )
delete

Member Function Documentation

◆ ccsds_frame_valid()

bool satnogs::comms::telecommand::ccsds_frame_valid ( const uint8_t * b,
size_t len )

Definition at line 52 of file telecommand.cpp.

◆ decode_ccsds_xtce() [1/2]

bool satnogs::comms::telecommand::decode_ccsds_xtce ( msg_arbiter::msg & m,
int wdgid )

◆ decode_ccsds_xtce() [2/2]

bool satnogs::comms::telecommand::decode_ccsds_xtce ( msg_arbiter::msg & resp,
const msg_arbiter::msg & req,
int wdgid )

Tries to decode and process an XTCE format CCSDS space packet.

Parameters
respthe message to place the response
reqthe telecommand received contained in a CCSDS space packet
wdgidthe task watchdog ID for the long lasting TCs
Returns
true if the message was decoded successfully and there is a response
false if no response has been generated

Definition at line 1744 of file telecommand.cpp.

◆ deserialize() [1/2]

void satnogs::comms::telecommand::deserialize ( etl::bit_stream_reader & reader,
double & x )
static

Definition at line 45 of file telecommand.cpp.

◆ deserialize() [2/2]

void satnogs::comms::telecommand::deserialize ( etl::bit_stream_reader & reader,
float & x )
static

Definition at line 38 of file telecommand.cpp.

◆ get_frame_count()

int satnogs::comms::telecommand::get_frame_count ( )

Definition at line 68 of file telecommand.cpp.

◆ get_instance()

telecommand & satnogs::comms::telecommand::get_instance ( )
inlinestatic

Definition at line 37 of file telecommand.hpp.

◆ operator=()

void satnogs::comms::telecommand::operator= ( telecommand const & )
delete

The documentation for this class was generated from the following files: