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

Functions

uint8_t TCMDEXEC_get_system_time (const char *args_str, char *response_output_buf, uint16_t response_output_buf_len)
uint8_t TCMDEXEC_set_system_time (const char *args_str, char *response_output_buf, uint16_t response_output_buf_len)
 Set the system time to the provided Unix epoch time in milliseconds.
uint8_t TCMDEXEC_correct_system_time (const char *args_str, char *response_output_buf, uint16_t response_output_buf_len)
 Adjust the system time by a correction offset in ms.
uint8_t TCMDEXEC_set_obc_time_based_on_eps_time (const char *args_str, char *response_output_buf, uint16_t response_output_buf_len)
 Sync's obc time to eps time (+/- 1 second).
uint8_t TCMDEXEC_set_obc_time_based_on_gnss_time (const char *args_str, char *response_output_buf, uint16_t response_output_buf_len)
 Sync OBC time based on the GNSS time report (+/- ~100ms, based on system latency).
uint8_t TCMDEXEC_set_obc_time_based_on_gnss_pps (const char *args_str, char *response_output_buf, uint16_t response_output_buf_len)
 Corrects the OBC time based on the GNSS PPS signal. Very precise.
uint8_t TCMDEXEC_set_eps_time_based_on_obc_time (const char *args_str, char *response_output_buf, uint16_t response_output_buf_len)
 Sync's eps time to obc time (+/- 1 second).

Function Documentation

◆ TCMDEXEC_correct_system_time()

uint8_t TCMDEXEC_correct_system_time ( const char * args_str,
char * response_output_buf,
uint16_t response_output_buf_len )

Adjust the system time by a correction offset in ms.

Parameters
args_str
  • Arg 0: Correction time in milliseconds (int64_t). Positive = forward in time, negative = backward in time.
Returns
0 if successful, 1 if error
Note
Math: new_system_time_ms = current_system_time_ms + correction_time_ms
Here is the call graph for this function:

◆ TCMDEXEC_get_system_time()

uint8_t TCMDEXEC_get_system_time ( const char * args_str,
char * response_output_buf,
uint16_t response_output_buf_len )
Here is the call graph for this function:

◆ TCMDEXEC_set_eps_time_based_on_obc_time()

uint8_t TCMDEXEC_set_eps_time_based_on_obc_time ( const char * args_str,
char * response_output_buf,
uint16_t response_output_buf_len )

Sync's eps time to obc time (+/- 1 second).

Returns
0 on success, >0 on failure.
Here is the call graph for this function:

◆ TCMDEXEC_set_obc_time_based_on_eps_time()

uint8_t TCMDEXEC_set_obc_time_based_on_eps_time ( const char * args_str,
char * response_output_buf,
uint16_t response_output_buf_len )

Sync's obc time to eps time (+/- 1 second).

Returns
0 on success, >0 on failure.
Here is the call graph for this function:

◆ TCMDEXEC_set_obc_time_based_on_gnss_pps()

uint8_t TCMDEXEC_set_obc_time_based_on_gnss_pps ( const char * args_str,
char * response_output_buf,
uint16_t response_output_buf_len )

Corrects the OBC time based on the GNSS PPS signal. Very precise.

Parameters
args_strNo arguments.
Returns
0 on success, >0 on failure.
Note
Requires that the GNSS receiver's EPS channel is already powered on, and that a time fix is ready.
Requires an accurate GNSS time fix, and requires that set_obc_time_based_on_gnss_time has been run recently (or that the OBC time is correct within 500ms based on another time source).
Here is the call graph for this function:

◆ TCMDEXEC_set_obc_time_based_on_gnss_time()

uint8_t TCMDEXEC_set_obc_time_based_on_gnss_time ( const char * args_str,
char * response_output_buf,
uint16_t response_output_buf_len )

Sync OBC time based on the GNSS time report (+/- ~100ms, based on system latency).

Parameters
args_strNo arguments.
Returns
0 on success, >0 on failure.
Note
Requires that the GNSS receiver's EPS channel is already powered on, and that a time fix is ready.
Here is the call graph for this function:

◆ TCMDEXEC_set_system_time()

uint8_t TCMDEXEC_set_system_time ( const char * args_str,
char * response_output_buf,
uint16_t response_output_buf_len )

Set the system time to the provided Unix epoch time in milliseconds.

Parameters
args_str
  • Arg 0: Unix epoch time in milliseconds (uint64_t)
Returns
0 if successful, 1 if error
Here is the call graph for this function: