SRS-4 Client Library

The Satlab SRS-4 client library provides remote access to the receiver using functions that wrap CSP protocol messages.

Ground Watchdog

This file provides functions for resetting and reading the ground watchdog timer.

Defines

SL_SRS4_GWDT_RESET_KEY

Functions

static inline int sl_srs4_gwdt_reset(uint8_t node, uint32_t timeout, uint32_t key)

Reset ground watchdog timer.

Helper function to reset the ground watchdog timer property.

Parameters:
  • node – CSP address of the SRS-4 node.

  • timeout – Timeout of the command in milliseconds.

  • key – Must be SL_SRS4_GWDT_RESET_KEY.

Returns:

0 on success, and a negative error code on error.

static inline int sl_srs4_gwdt_counter(uint8_t node, uint32_t timeout, uint32_t *counter)

Read ground watchdog timer.

Helper function to read the current ground watchdog timer counter. The counter holds the remaing time in seconds before the ground watchdog timer resets the system.

Parameters:
  • node – CSP address of the SRS-4 node.

  • timeout – Timeout of the command in milliseconds.

  • counter – Pointer where the current counter is stored.

Returns:

0 on success, and a negative error code on error.

Remote Command

This file provides functions for running debug shell commands remotely.

It is meant as a debugging aid and should not be required during normal operation of the device.

Functions

int sl_srs4_shell_run(uint8_t node, uint32_t timeout, const char *cmd)

Run debug shell command.

This function allows debug shell commands to be run on the Polaris system. The command is evaluated on the remote systems, and the command return value is returned. Output from the command is not available.

Parameters:
  • node – CSP address of the property node.

  • timeout – Timeout of the command in milliseconds.

  • cmd – Command to execute

Returns:

0 on success, and a negative error code on error.

Protocol Specification

Defines

SL_SRS4_DEFAULT_ADDRESS
SL_SRS4_PORT_BOOTLOADER

CSP ports.

SL_SRS4_PORT_SHELL
SL_SRS4_ERR_NONE

Error codes.

SL_SRS4_ERR_INVAL
SL_SRS4_ERR_IO
SL_SRS4_ERR_NOMEM
SL_SRS4_ERR_BUSY
SL_SRS4_SHELL_RUN_REQ
SL_SRS4_SHELL_RUN_REP
SL_SRS4_SHELL_RUN_KEY
SL_SRS4_SHELL_RUN_MAX
struct sl_srs4_req_t

Public Members

uint8_t type
struct sl_srs4_rep_t

Public Members

uint8_t type
uint8_t error
struct sl_srs4_shell_run_req_t

Public Members

uint8_t type

Must be SL_SRS4_SHELL_RUN_REQ.

uint8_t flags

Flags, currently unused - set to zero.

uint32_t key

Must be SL_SRS4_SHELL_RUN_KEY.

uint8_t cmd[100]

Command to execute.

struct sl_srs4_shell_run_rep_t

Public Members

uint8_t type

Must be SL_SRS4_SHELL_RUN_REP.

uint8_t error

Error code.