CTS-SAT-1-OBC-Firmware
Loading...
Searching...
No Matches
rtos_background_upkeep.c File Reference
Include dependency graph for rtos_background_upkeep.c:

Functions

static void subtask_monitor_eps_power (void)
static void subtask_reset_system_after_very_long_uptime (void)
 If the system exceeds a very long uptime, reset the system.
static void subtask_reset_system_after_no_recent_uplinks (void)
 If the system has not received an uplink in a very long time, reset the system.
static void subtask_update_rf_switch (void)
 Update the RF switch state based on the current mode.
static void subtask_send_beacon (void)
void TASK_background_upkeep (void *argument)

Variables

uint32_t STM32_system_reset_interval_sec = 604800
 If the system uptime exceeds this value, the system will reset (reboot).
uint32_t STM32_system_reset_no_uplink_interval_sec = 216000
 If the duration since an AX100 uplink telecommand exceeds this value, the system will reset (reboot).
static uint32_t EPS_monitor_last_uptime_ms = 0

Function Documentation

◆ subtask_monitor_eps_power()

void subtask_monitor_eps_power ( void )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ subtask_reset_system_after_no_recent_uplinks()

void subtask_reset_system_after_no_recent_uplinks ( void )
static

If the system has not received an uplink in a very long time, reset the system.

Parameters
<br>
Note
Associated issue: https://github.com/CalgaryToSpace/CTS-SAT-1-OBC-Firmware/issues/547
The intenion of this function is to recover the system in case of a radiation-induced hang that isn't caught by the watchdog timer. The configuration can be extended to even longer if necessary.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ subtask_reset_system_after_very_long_uptime()

void subtask_reset_system_after_very_long_uptime ( void )
static

If the system exceeds a very long uptime, reset the system.

Parameters
<br>
Note
Associated issue: https://github.com/CalgaryToSpace/CTS-SAT-1-OBC-Firmware/issues/282
The intenion of this function is to recover the system in case of a radiation-induced hang that isn't caught by the watchdog timer. The configuration can be extended to even longer if necessary.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ subtask_send_beacon()

void subtask_send_beacon ( void )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ subtask_update_rf_switch()

void subtask_update_rf_switch ( void )
static

Update the RF switch state based on the current mode.

Note
Implemented per https://github.com/CalgaryToSpace/CTS-SAT-1-OBC-Firmware/issues/228
Here is the call graph for this function:
Here is the caller graph for this function:

◆ TASK_background_upkeep()

void TASK_background_upkeep ( void * argument)
Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ EPS_monitor_last_uptime_ms

uint32_t EPS_monitor_last_uptime_ms = 0
static

◆ STM32_system_reset_interval_sec

uint32_t STM32_system_reset_interval_sec = 604800

If the system uptime exceeds this value, the system will reset (reboot).

Note
This is to recover the system in case of a radiation-induced hang or other invalid state.
Default: 604800 sec = 7 days.
Set to 0 to disable this feature.

◆ STM32_system_reset_no_uplink_interval_sec

uint32_t STM32_system_reset_no_uplink_interval_sec = 216000

If the duration since an AX100 uplink telecommand exceeds this value, the system will reset (reboot).

Note
This is to recover the system in case of a radiation-induced hang or other invalid state.
Default: 216000 sec = 2.5 days.
Set to 0 to disable this feature.