SatNOGS-COMMS  4.1.0
A COMMS subsystem for CubeSats
Loading...
Searching...
No Matches
Exceptions subsystem

Exception Handling in SatNOGS-COMMS. More...

Classes

class  satnogs::comms::lib::uninitialization_exception
 Raised if the get_instance() is called before the init(). More...
class  satnogs::comms::lib::initialization_exception
 Raised if the init() is called more than once. More...
class  satnogs::comms::lib::emc1702_thermal_shutdown_needed
 Exception thrown when a thermal shutdown is required. More...
class  satnogs::comms::lib::emc1702_incorrect_sensor_info
 Exception thrown when sensor information retrieval fails, indicating errors in I2C communication. More...
class  satnogs::comms::lib::emc1702_not_ready
 Exception thrown when the EMC1702 is busy. More...
class  satnogs::comms::lib::emc1702_inval
 Exception thrown when the EMC1702 has not be initialized properly. More...
class  satnogs::comms::lib::exception
 Exception base class. More...
class  satnogs::comms::lib::inval_arg_exception
 Generic exception indicating an invalid argument. More...
class  satnogs::comms::lib::msg_too_long_exception
 Generic exception indicating that a message requested for processing/handling was larger than the expected. More...
class  satnogs::comms::lib::resource_unavailable_exception
 Generic exception indicating an a resource or subsystem is not available at the time that was requested. More...
class  satnogs::comms::lib::timeout_exception
 Generic timeout exception. More...
class  satnogs::comms::lib::fpf270x_pin_not_configured_exception
 Exception indicating that a fpf270x pin is not configured. More...
class  satnogs::comms::lib::pll_ls_exception
 Exception indicating PLL lock status issue. More...
class  satnogs::comms::lib::radio_exception
 Exception indicating a generic exception of the radio subsystem. More...
class  satnogs::comms::lib::unsupported_freq_exception
 Exception indicating an invalid frequency. More...
class  satnogs::comms::lib::rf_frontend24_exception
 Exception for the S-Band RF-frontend. More...
class  satnogs::comms::lib::mixer_lock_exception
 Exception occurred when the RF mixer fails to lock. More...
class  satnogs::comms::lib::invalid_sensor_exception
 Exception class for accessing an invalid temperature sensor. More...

Detailed Description

Exception Handling in SatNOGS-COMMS.

The SatNOGS-COMMS control library leverages exceptions to gracefully handle abnormal behaviors, providing greater flexibility and clarity in error management. While this approach might slightly increase firmware size, the STM32H743 MCU offers enough flash memory to accommodate most applications.

Exceptions in SatNOGS-COMMS vary in severity, and their occurrence may not necessarily compromise the overall operational status of the subsystem. For instance, a failed frame transmission due to noise-induced SPI communication errors might be recoverable through retries.

However, more severe exceptions may necessitate additional recovery actions, such as:

  • Board Reboot: A complete system restart to address critical issues.
  • Subsystem Power Cycle: Resetting specific subsystems to resolve isolated problems.