RocketLogger  2.0.1
rl.h File Reference
#include <stdbool.h>
#include <stdint.h>
#include <linux/limits.h>
#include <sys/types.h>
#include "version.h"
+ Include dependency graph for rl.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  rl_config
 
struct  rl_status
 

Macros

#define SUCCESS   (0)
 Function return value for successful completion. More...
 
#define ERROR   (-1)
 Function return value for errors (use errno to indicate the error) More...
 
#define RL_MEASUREMENT_LOG_FILE   "/var/log/rocketlogger/rocketlogger.log"
 RocketLogger measurement log file. More...
 
#define RL_DAEMON_LOG_FILE   "/var/log/rocketlogger/rocketloggerd.log"
 RocketLogger daemon log file. More...
 
#define RL_PID_FILE   "/run/rocketlogger.pid"
 Process ID file for the RocketLogger process. More...
 
#define RL_CHANNEL_COUNT   9
 Number of RocketLogger analog channels. More...
 
#define RL_CHANNEL_SWITCHED_COUNT   2
 Number of RocketLogger switched channels (allowing to force range) More...
 
#define RL_CHANNEL_DIGITAL_COUNT   6
 Number of RocketLogger digital channels. More...
 
#define RL_SAMPLE_RATE_MIN   1000
 Minimum native sample rate of the ADC in samples per second. More...
 
#define RL_SENSOR_COUNT_MAX   128
 Maximum number of sensors that can be connected to the system. More...
 
#define RL_SENSOR_SAMPLE_RATE   1
 Ambient sensor read out rate in samples per second. More...
 
#define RL_CALIBRATION_USER_FILE    "/home/rocketlogger/.config/rocketlogger/calibration.dat"
 User folder calibration file path. More...
 
#define RL_CALIBRATION_SYSTEM_FILE   "/etc/rocketlogger/calibration.dat"
 Default system wide calibration file path. More...
 
#define RL_CONFIG_USER_FILE    "/home/rocketlogger/.config/rocketlogger/settings.dat"
 User configuration file path. More...
 
#define RL_CONFIG_SYSTEM_FILE   "/etc/rocketlogger/settings.dat"
 Default system configuration file path. More...
 
#define RL_CONFIG_VERSION   0x03
 Default system configuration file path. More...
 
#define RL_CONFIG_CHANNEL_V1   0
 Configuration channel indexes. More...
 
#define RL_CONFIG_CHANNEL_V2   1
 
#define RL_CONFIG_CHANNEL_V3   2
 
#define RL_CONFIG_CHANNEL_V4   3
 
#define RL_CONFIG_CHANNEL_I1L   4
 
#define RL_CONFIG_CHANNEL_I1H   5
 
#define RL_CONFIG_CHANNEL_I2L   6
 
#define RL_CONFIG_CHANNEL_I2H   7
 
#define RL_CONFIG_CHANNEL_DT   8
 
#define RL_CONFIG_CHANNEL_ENABLE_DEFAULT    { true, true, true, true, true, true, true, true, false }
 Configuration channel enable default. More...
 
#define RL_CONFIG_CHANNEL_I1   0
 Configuration merged/forced channel indexes. More...
 
#define RL_CONFIG_CHANNEL_I2   1
 
#define RL_CONFIG_CHANNEL_FORCE_RANGE_DEFAULT    { false, false }
 Configuration channel force range default. More...
 
#define RL_CONFIG_FILE_DIR_DEFAULT   "/home/rocketlogger/data"
 Configuration data file directory default. More...
 
#define RL_CONFIG_FILE_DEFAULT   RL_CONFIG_FILE_DIR_DEFAULT "/data.rld"
 Configuration file name default. More...
 
#define RL_CONFIG_FILE_SIZE_MIN   (5UL * 1000UL * 1000UL)
 Minimum measurement split file size (5 MB to fit largest block at max rate) More...
 
#define RL_CONFIG_FILE_SIZE_DEFAULT   (1000UL * 1000UL * 1000UL)
 Configuration file size default. More...
 
#define RL_CONFIG_COMMENT_DEFAULT   "Sampled using the RocketLogger"
 Configuration file comment default. More...
 
#define RL_SHMEM_STATUS_KEY   1111
 Key for status shared memory (used for creation) More...
 
#define RL_SHMEM_DATA_KEY   4443
 Key for web shared memory (used for creation) More...
 
#define RL_SHMEM_PERMISSIONS   0666
 Permissions for shared memory. More...
 
#define RL_ZMQ_STATUS_SOCKET   "tcp://127.0.0.1:8276"
 ZeroMQ socket identifier for status publishing. More...
 
#define RL_ZMQ_DATA_SOCKET   "tcp://127.0.0.1:8277"
 ZeroMQ socket identifier for data publishing status. More...
 

Typedefs

typedef enum rl_aggregation_mode rl_aggregation_mode_t
 
typedef enum rl_file_format rl_file_format_t
 
typedef struct rl_config rl_config_t
 
typedef struct rl_status rl_status_t
 

Enumerations

enum  rl_aggregation_mode { RL_AGGREGATION_MODE_DOWNSAMPLE , RL_AGGREGATION_MODE_AVERAGE }
 
enum  rl_file_format { RL_FILE_FORMAT_CSV , RL_FILE_FORMAT_RLD }
 

Functions

void rl_config_print (rl_config_t const *const config)
 
void rl_config_print_cmd (rl_config_t const *const config)
 
void rl_config_print_json (rl_config_t const *const config)
 
char * rl_config_get_json (rl_config_t const *const config)
 
void rl_config_reset (rl_config_t *const config)
 
int rl_config_read_default (rl_config_t *const config)
 
int rl_config_write_default (rl_config_t const *const config)
 
int rl_config_validate (rl_config_t const *const config)
 
pid_t rl_pid_get (void)
 
int rl_pid_set (pid_t pid)
 
void rl_status_reset (rl_status_t *const status)
 
int rl_status_pub_init (void)
 
int rl_status_pub_deinit (void)
 
int rl_status_shm_init (void)
 
int rl_status_shm_deinit (void)
 
int rl_status_read (rl_status_t *const status)
 
int rl_status_write (rl_status_t *const status)
 
void rl_status_print (rl_status_t const *const status)
 
void rl_status_print_json (rl_status_t const *const status)
 
char * rl_status_get_json (rl_status_t const *const status)
 

Variables

char const *const RL_CHANNEL_NAMES [RL_CHANNEL_COUNT]
 RocketLogger channel names sorted by name. More...
 
char const *const RL_CHANNEL_FORCE_NAMES [RL_CHANNEL_SWITCHED_COUNT]
 RocketLogger force range channel names. More...
 
char const *const RL_CHANNEL_DIGITAL_NAMES [RL_CHANNEL_DIGITAL_COUNT]
 RocketLogger digital channel names. More...
 
char const *const RL_CHANNEL_VALID_NAMES [RL_CHANNEL_SWITCHED_COUNT]
 RocketLogger valid channel names. More...
 
rl_status_t rl_status
 Global RocketLogger status variable. More...
 

Macro Definition Documentation

◆ ERROR

#define ERROR   (-1)

Function return value for errors (use errno to indicate the error)

Definition at line 46 of file rl.h.

◆ RL_CALIBRATION_SYSTEM_FILE

#define RL_CALIBRATION_SYSTEM_FILE   "/etc/rocketlogger/calibration.dat"

Default system wide calibration file path.

Definition at line 72 of file rl.h.

◆ RL_CALIBRATION_USER_FILE

#define RL_CALIBRATION_USER_FILE    "/home/rocketlogger/.config/rocketlogger/calibration.dat"

User folder calibration file path.

Definition at line 69 of file rl.h.

◆ RL_CHANNEL_COUNT

#define RL_CHANNEL_COUNT   9

Number of RocketLogger analog channels.

Definition at line 56 of file rl.h.

◆ RL_CHANNEL_DIGITAL_COUNT

#define RL_CHANNEL_DIGITAL_COUNT   6

Number of RocketLogger digital channels.

Definition at line 60 of file rl.h.

◆ RL_CHANNEL_SWITCHED_COUNT

#define RL_CHANNEL_SWITCHED_COUNT   2

Number of RocketLogger switched channels (allowing to force range)

Definition at line 58 of file rl.h.

◆ RL_CONFIG_CHANNEL_DT

#define RL_CONFIG_CHANNEL_DT   8

Definition at line 91 of file rl.h.

◆ RL_CONFIG_CHANNEL_ENABLE_DEFAULT

#define RL_CONFIG_CHANNEL_ENABLE_DEFAULT    { true, true, true, true, true, true, true, true, false }

Configuration channel enable default.

Definition at line 93 of file rl.h.

◆ RL_CONFIG_CHANNEL_FORCE_RANGE_DEFAULT

#define RL_CONFIG_CHANNEL_FORCE_RANGE_DEFAULT    { false, false }

Configuration channel force range default.

Definition at line 99 of file rl.h.

◆ RL_CONFIG_CHANNEL_I1

#define RL_CONFIG_CHANNEL_I1   0

Configuration merged/forced channel indexes.

Definition at line 96 of file rl.h.

◆ RL_CONFIG_CHANNEL_I1H

#define RL_CONFIG_CHANNEL_I1H   5

Definition at line 88 of file rl.h.

◆ RL_CONFIG_CHANNEL_I1L

#define RL_CONFIG_CHANNEL_I1L   4

Definition at line 87 of file rl.h.

◆ RL_CONFIG_CHANNEL_I2

#define RL_CONFIG_CHANNEL_I2   1

Definition at line 97 of file rl.h.

◆ RL_CONFIG_CHANNEL_I2H

#define RL_CONFIG_CHANNEL_I2H   7

Definition at line 90 of file rl.h.

◆ RL_CONFIG_CHANNEL_I2L

#define RL_CONFIG_CHANNEL_I2L   6

Definition at line 89 of file rl.h.

◆ RL_CONFIG_CHANNEL_V1

#define RL_CONFIG_CHANNEL_V1   0

Configuration channel indexes.

Definition at line 83 of file rl.h.

◆ RL_CONFIG_CHANNEL_V2

#define RL_CONFIG_CHANNEL_V2   1

Definition at line 84 of file rl.h.

◆ RL_CONFIG_CHANNEL_V3

#define RL_CONFIG_CHANNEL_V3   2

Definition at line 85 of file rl.h.

◆ RL_CONFIG_CHANNEL_V4

#define RL_CONFIG_CHANNEL_V4   3

Definition at line 86 of file rl.h.

◆ RL_CONFIG_COMMENT_DEFAULT

#define RL_CONFIG_COMMENT_DEFAULT   "Sampled using the RocketLogger"

Configuration file comment default.

Definition at line 111 of file rl.h.

◆ RL_CONFIG_FILE_DEFAULT

#define RL_CONFIG_FILE_DEFAULT   RL_CONFIG_FILE_DIR_DEFAULT "/data.rld"

Configuration file name default.

Definition at line 105 of file rl.h.

◆ RL_CONFIG_FILE_DIR_DEFAULT

#define RL_CONFIG_FILE_DIR_DEFAULT   "/home/rocketlogger/data"

Configuration data file directory default.

Definition at line 103 of file rl.h.

◆ RL_CONFIG_FILE_SIZE_DEFAULT

#define RL_CONFIG_FILE_SIZE_DEFAULT   (1000UL * 1000UL * 1000UL)

Configuration file size default.

Definition at line 109 of file rl.h.

◆ RL_CONFIG_FILE_SIZE_MIN

#define RL_CONFIG_FILE_SIZE_MIN   (5UL * 1000UL * 1000UL)

Minimum measurement split file size (5 MB to fit largest block at max rate)

Definition at line 107 of file rl.h.

◆ RL_CONFIG_SYSTEM_FILE

#define RL_CONFIG_SYSTEM_FILE   "/etc/rocketlogger/settings.dat"

Default system configuration file path.

Definition at line 78 of file rl.h.

◆ RL_CONFIG_USER_FILE

#define RL_CONFIG_USER_FILE    "/home/rocketlogger/.config/rocketlogger/settings.dat"

User configuration file path.

Definition at line 75 of file rl.h.

◆ RL_CONFIG_VERSION

#define RL_CONFIG_VERSION   0x03

Default system configuration file path.

Definition at line 81 of file rl.h.

◆ RL_DAEMON_LOG_FILE

#define RL_DAEMON_LOG_FILE   "/var/log/rocketlogger/rocketloggerd.log"

RocketLogger daemon log file.

Definition at line 51 of file rl.h.

◆ RL_MEASUREMENT_LOG_FILE

#define RL_MEASUREMENT_LOG_FILE   "/var/log/rocketlogger/rocketlogger.log"

RocketLogger measurement log file.

Definition at line 49 of file rl.h.

◆ RL_PID_FILE

#define RL_PID_FILE   "/run/rocketlogger.pid"

Process ID file for the RocketLogger process.

Definition at line 53 of file rl.h.

◆ RL_SAMPLE_RATE_MIN

#define RL_SAMPLE_RATE_MIN   1000

Minimum native sample rate of the ADC in samples per second.

Definition at line 62 of file rl.h.

◆ RL_SENSOR_COUNT_MAX

#define RL_SENSOR_COUNT_MAX   128

Maximum number of sensors that can be connected to the system.

Definition at line 64 of file rl.h.

◆ RL_SENSOR_SAMPLE_RATE

#define RL_SENSOR_SAMPLE_RATE   1

Ambient sensor read out rate in samples per second.

Definition at line 66 of file rl.h.

◆ RL_SHMEM_DATA_KEY

#define RL_SHMEM_DATA_KEY   4443

Key for web shared memory (used for creation)

Definition at line 116 of file rl.h.

◆ RL_SHMEM_PERMISSIONS

#define RL_SHMEM_PERMISSIONS   0666

Permissions for shared memory.

Definition at line 118 of file rl.h.

◆ RL_SHMEM_STATUS_KEY

#define RL_SHMEM_STATUS_KEY   1111

Key for status shared memory (used for creation)

Definition at line 114 of file rl.h.

◆ RL_ZMQ_DATA_SOCKET

#define RL_ZMQ_DATA_SOCKET   "tcp://127.0.0.1:8277"

ZeroMQ socket identifier for data publishing status.

Definition at line 123 of file rl.h.

◆ RL_ZMQ_STATUS_SOCKET

#define RL_ZMQ_STATUS_SOCKET   "tcp://127.0.0.1:8276"

ZeroMQ socket identifier for status publishing.

Definition at line 121 of file rl.h.

◆ SUCCESS

#define SUCCESS   (0)

Function return value for successful completion.

Definition at line 44 of file rl.h.

Typedef Documentation

◆ rl_aggregation_mode_t

Type definition for RocketLogger data aggregation mode.

Definition at line 1 of file rl.h.

◆ rl_config_t

typedef struct rl_config rl_config_t

Type definition for RocketLogger configuration.

Definition at line 1 of file rl.h.

◆ rl_file_format_t

Type definition for RocketLogger file format.

Definition at line 1 of file rl.h.

◆ rl_status_t

typedef struct rl_status rl_status_t

Type definition for RocketLogger configuration.

Definition at line 1 of file rl.h.

Enumeration Type Documentation

◆ rl_aggregation_mode

RocketLogger data aggregation modes.

Enumerator
RL_AGGREGATION_MODE_DOWNSAMPLE 
RL_AGGREGATION_MODE_AVERAGE 

Aggregate using down sampling.

Definition at line 128 of file rl.h.

◆ rl_file_format

RocketLogger file formats.

Enumerator
RL_FILE_FORMAT_CSV 
RL_FILE_FORMAT_RLD 

CSV format.

Definition at line 141 of file rl.h.

Function Documentation

◆ rl_config_get_json()

◆ rl_config_print()

void rl_config_print ( rl_config_t const *const  config)

Print RocketLogger configuration as text output.

Parameters
configThe measurement configuration to print

Definition at line 142 of file rl.c.

◆ rl_config_print_cmd()

◆ rl_config_print_json()

void rl_config_print_json ( rl_config_t const *const  config)

Print RocketLogger configuration as JSON data structure.

Parameters
configThe measurement configuration to print

Definition at line 275 of file rl.c.

References rl_config_get_json().

+ Here is the call graph for this function:

◆ rl_config_read_default()

int rl_config_read_default ( rl_config_t *const  config)

Read default configuration from file.

Try to read user configuration otherwis fallback to system configuration.

Parameters
configThe measurement configuration structure to store the default to
Returns
Returns 0 on success, negative on failure with errno set accordingly
Todo:
drop once comment is stored together with default config

Definition at line 364 of file rl.c.

References rl_config::config_version, ERROR, rl_config::file_comment, RL_CONFIG_COMMENT_DEFAULT, rl_config_reset(), RL_CONFIG_SYSTEM_FILE, RL_CONFIG_USER_FILE, RL_CONFIG_VERSION, rl_log(), RL_LOG_ERROR, RL_LOG_WARNING, and SUCCESS.

Referenced by main().

+ Here is the call graph for this function:

◆ rl_config_reset()

void rl_config_reset ( rl_config_t *const  config)

Reset configuration to standard values.

Parameters
configThe measurement configuration to reset

Definition at line 360 of file rl.c.

References rl_config_default.

Referenced by adc_calibrate(), and rl_config_read_default().

◆ rl_config_validate()

int rl_config_validate ( rl_config_t const *const  config)

Validate RocketLogger configuration.

Parameters
configThe measurement configuration to validate
Returns
Returns 0 on success, negative on failure with errno set accordingly

Definition at line 431 of file rl.c.

References rl_config::background_enable, rl_config::config_version, ERROR, rl_config::file_comment, rl_config::file_size, rl_config::interactive_enable, is_printable_string(), RL_CONFIG_FILE_SIZE_MIN, RL_CONFIG_VERSION, rl_log(), RL_LOG_ERROR, RL_SAMPLE_RATE_MIN, rl_config::sample_rate, SUCCESS, and rl_config::update_rate.

+ Here is the call graph for this function:

◆ rl_config_write_default()

int rl_config_write_default ( rl_config_t const *const  config)

Write provided configuration as default to file.

Parameters
configThe measurement configuration write as default configuration
Returns
Returns 0 on success, negative on failure with errno set accordingly

Definition at line 414 of file rl.c.

References ERROR, RL_CONFIG_USER_FILE, rl_log(), RL_LOG_ERROR, and SUCCESS.

+ Here is the call graph for this function:

◆ rl_pid_get()

pid_t rl_pid_get ( void  )

Get process ID (PID) of background sampling process.

Returns
If running in background the PID of the background or zero if not running, a negative value is returned on failure with errno set accordingly

Definition at line 508 of file rl.c.

References RL_PID_FILE.

Referenced by rl_stop().

◆ rl_pid_set()

int rl_pid_set ( pid_t  pid)

Store process ID (PID) of the RocketLogger process.

Parameters
pidThe PID of the running process to sture
Returns
Returns 0 on success, negative on failure with errno set accordingly

Definition at line 521 of file rl.c.

References ERROR, rl_log(), RL_LOG_ERROR, RL_PID_FILE, and SUCCESS.

Referenced by pru_sample().

+ Here is the call graph for this function:

◆ rl_status_get_json()

char* rl_status_get_json ( rl_status_t const *const  status)

Get RocketLogger status as JSON data structure string.

Parameters
statusThe status data structure
Returns
The status as JSON formatted string

Definition at line 736 of file rl.c.

References rl_status::buffer_count, rl_status::calibration_file, rl_status::calibration_time, rl_status::config, rl_status::disk_free, rl_status::disk_free_permille, rl_status::disk_use_rate, rl_status::error, rl_config_get_json(), RL_JSON_BUFFER_SIZE, rl_status::sample_count, rl_status::sampling, rl_status::sensor_available, rl_status::sensor_count, SENSOR_REGISTRY, SENSOR_REGISTRY_SIZE, and snprintfcat().

Referenced by rl_status_print_json(), and rl_status_write().

+ Here is the call graph for this function:

◆ rl_status_print()

void rl_status_print ( rl_status_t const *const  status)

Print RocketLogger status as text output.

Parameters
statusThe status data structure to print

Definition at line 709 of file rl.c.

◆ rl_status_print_json()

void rl_status_print_json ( rl_status_t const *const  status)

Print RocketLogger status as JSON data structure.

Parameters
statusThe status data structure to print

Definition at line 731 of file rl.c.

References rl_status_get_json().

+ Here is the call graph for this function:

◆ rl_status_pub_deinit()

int rl_status_pub_deinit ( void  )

Deinitialize the RocketLogger status publishing.

Returns
Returns 0 on success, negative on failure with errno set accordingly

Definition at line 554 of file rl.c.

References SUCCESS, zmq_status_context, and zmq_status_publisher.

◆ rl_status_pub_init()

int rl_status_pub_init ( void  )

Initialize the RocketLogger status publishing.

Returns
Returns 0 on success, negative on failure with errno set accordingly

Definition at line 539 of file rl.c.

References ERROR, rl_log(), RL_LOG_ERROR, RL_ZMQ_STATUS_SOCKET, SUCCESS, zmq_status_context, and zmq_status_publisher.

+ Here is the call graph for this function:

◆ rl_status_read()

int rl_status_read ( rl_status_t *const  status)

Read the status of the RocketLogger from shared memory.

Parameters
statusThe status data structure to write the read status to
Returns
Returns 0 on success, negative on failure with errno set accordingly

Definition at line 602 of file rl.c.

References rl_status::config, ERROR, rl_log(), RL_LOG_ERROR, RL_SHMEM_PERMISSIONS, RL_SHMEM_STATUS_KEY, and SUCCESS.

Referenced by adc_calibrate(), button_interrupt_handler(), and rl_get_status().

+ Here is the call graph for this function:

◆ rl_status_reset()

void rl_status_reset ( rl_status_t *const  status)

Get the RocketLogger default status.

Parameters
statusThe status data structure to write the default value to

Definition at line 535 of file rl.c.

References rl_status_default.

Referenced by rl_get_status(), and rl_is_sampling().

◆ rl_status_shm_deinit()

int rl_status_shm_deinit ( void  )

Deinitialize and remove the shared memory for the RocketLogger status.

Returns
Returns 0 on success, negative on failure with errno set accordingly

Definition at line 579 of file rl.c.

References ERROR, rl_log(), RL_LOG_ERROR, RL_SHMEM_PERMISSIONS, RL_SHMEM_STATUS_KEY, and SUCCESS.

+ Here is the call graph for this function:

◆ rl_status_shm_init()

int rl_status_shm_init ( void  )

Create and initialize the shared memory for the RocketLogger status.

Returns
Returns 0 on success, negative on failure with errno set accordingly

Definition at line 565 of file rl.c.

References ERROR, rl_log(), RL_LOG_ERROR, RL_SHMEM_PERMISSIONS, RL_SHMEM_STATUS_KEY, and SUCCESS.

+ Here is the call graph for this function:

◆ rl_status_write()

int rl_status_write ( rl_status_t *const  status)

Write new status of the RocketLogger to shared memory.

Parameters
statusThe status data structure to copy to the shared memory
Returns
Returns 0 on success, negative on failure with errno set accordingly

Definition at line 641 of file rl.c.

References rl_status::config, rl_status::disk_free, rl_status::disk_free_permille, ERROR, rl_config::file_name, fs_space_free(), fs_space_total(), RL_CONFIG_FILE_DIR_DEFAULT, rl_log(), RL_LOG_ERROR, RL_SHMEM_PERMISSIONS, RL_SHMEM_STATUS_KEY, rl_status_get_json(), SUCCESS, and zmq_status_publisher.

Referenced by adc_calibrate(), hw_deinit(), hw_init(), and pru_sample().

+ Here is the call graph for this function:

Variable Documentation

◆ RL_CHANNEL_DIGITAL_NAMES

char const* const RL_CHANNEL_DIGITAL_NAMES[RL_CHANNEL_DIGITAL_COUNT]
extern

RocketLogger digital channel names.

Definition at line 103 of file rl.c.

Referenced by meter_print_buffer(), and rl_file_setup_data_channels().

◆ RL_CHANNEL_FORCE_NAMES

char const* const RL_CHANNEL_FORCE_NAMES[RL_CHANNEL_SWITCHED_COUNT]
extern

RocketLogger force range channel names.

Definition at line 99 of file rl.c.

Referenced by rl_config_get_json(), and rl_config_print_cmd().

◆ RL_CHANNEL_NAMES

char const* const RL_CHANNEL_NAMES[RL_CHANNEL_COUNT]
extern

RocketLogger channel names sorted by name.

RocketLogger channel names sorted by name.

Definition at line 95 of file rl.c.

Referenced by meter_print_buffer(), rl_config_get_json(), rl_config_print_cmd(), rl_file_setup_data_channels(), and rl_socket_metadata().

◆ RL_CHANNEL_VALID_NAMES

char const* const RL_CHANNEL_VALID_NAMES[RL_CHANNEL_SWITCHED_COUNT]
extern

RocketLogger valid channel names.

Definition at line 107 of file rl.c.

Referenced by rl_file_setup_data_channels().

◆ rl_status

Global RocketLogger status variable.

Definition at line 112 of file rl.c.

Referenced by adc_calibrate().