K-FSW ec10f94
Modular flight software on Zephyr, for small satellites
Loading...
Searching...
No Matches
K-FSW ground watchdog

Data Structures

struct  kfsw_gndwdt_status
 

Macros

#define KFSW_GNDWDT_PARAM_TABLE_ID   35U
 
#define KFSW_GNDWDT_PARAM_TABLE_NAME   "gndwdt"
 
#define KFSW_COMMAND_ID_GROUND_WTD   16U
 

Enumerations

enum  kfsw_gndwdt_event { KFSW_EVENT_GNDWDT_EXPIRED = 1 }
 

Functions

int kfsw_gndwdt_start (void)
 
int kfsw_gndwdt_stop (void)
 
int kfsw_gndwdt_evaluate (void)
 
void kfsw_gndwdt_get_status (struct kfsw_gndwdt_status *status)
 
int kfsw_gndwdt_set_timeout_s (uint32_t timeout_s)
 
void kfsw_gndwdt_set_enabled (bool enabled)
 

Variables

const struct kfsw_command_definition_set kfsw_gndwdt_command_definitions
 
const struct kfsw_param_definition_set kfsw_gndwdt_param_definitions
 

Description

Resets the node if no valid ground_wtd CSP feed arrives before the timeout.

The feed must contain KFSWWSFK; any subsystem may send it. The get command reads the countdown without feeding.

This timer is independent of K-FSW health monitoring component deadlines.

Macro Documentation

◆ KFSW_COMMAND_ID_GROUND_WTD

#define KFSW_COMMAND_ID_GROUND_WTD   16U

#include <gndwdt.h>

Stable wire ID for ground_wtd, with one text argument: KFSWWSFK or get.

◆ KFSW_GNDWDT_PARAM_TABLE_ID

#define KFSW_GNDWDT_PARAM_TABLE_ID   35U

#include <gndwdt.h>

Table 35: ground watchdog configuration and counters.

◆ KFSW_GNDWDT_PARAM_TABLE_NAME

#define KFSW_GNDWDT_PARAM_TABLE_NAME   "gndwdt"

#include <gndwdt.h>

Parameter table name.

Enumeration Documentation

◆ kfsw_gndwdt_event

#include <gndwdt.h>

Event IDs of this service.

Enumerator
KFSW_EVENT_GNDWDT_EXPIRED 

No valid feed arrived before the timeout; a reset follows.

Function Documentation

◆ kfsw_gndwdt_evaluate()

int kfsw_gndwdt_evaluate ( void  )

#include <gndwdt.h>

Check the timer once.

Return values
0The feed is recent enough, or the watchdog is stopped or disabled.
-ETIMEDOUTThe timeout has passed. The caller resets the node.

◆ kfsw_gndwdt_get_status()

void kfsw_gndwdt_get_status ( struct kfsw_gndwdt_status *  status)

#include <gndwdt.h>

Copy the current status.

◆ kfsw_gndwdt_set_enabled()

void kfsw_gndwdt_set_enabled ( bool  enabled)

#include <gndwdt.h>

Turn the timer on or off.

Changing this does not restart the countdown.

◆ kfsw_gndwdt_set_timeout_s()

int kfsw_gndwdt_set_timeout_s ( uint32_t  timeout_s)

#include <gndwdt.h>

Set the feed timeout.

Changing the timeout does not feed or restart the countdown.

Return values
0Applied.
-ERANGEOutside the configured bounds.

◆ kfsw_gndwdt_start()

int kfsw_gndwdt_start ( void  )

#include <gndwdt.h>

Start the timer.

The countdown begins now, not at boot.

◆ kfsw_gndwdt_stop()

int kfsw_gndwdt_stop ( void  )

#include <gndwdt.h>

Stop the timer, and cancel a reset already queued.

Variable Documentation

◆ kfsw_gndwdt_command_definitions

const struct kfsw_command_definition_set kfsw_gndwdt_command_definitions
extern

#include <gndwdt.h>

Register this set on both the flight node and its command clients.

◆ kfsw_gndwdt_param_definitions

const struct kfsw_param_definition_set kfsw_gndwdt_param_definitions
extern

#include <gndwdt.h>

Parameter table 35.