ENTS-tock
Environmental NeTworked Sensor firmware on Tock OS
Loading...
Searching...
No Matches
user_config.h
Go to the documentation of this file.
1
15#pragma once
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21#include <stdbool.h>
22#include <stdint.h>
23#include <stdio.h>
24#include <string.h>
25
26#include "./proto/user_config.pb.h"
27
44// Maximum size of the received data buffer (from protobuf definition).
45#define RX_BUFFER_SIZE UserConfiguration_size
46// Starting address for user config data in FRAM.
47#define USER_CONFIG_START_ADDRESS 1794
48// Address for storing the user config data length in FRAM.
49#define USER_CONFIG_LEN_ADDR 1792
50
63
75
82UserConfigStatus UserConfigSave(const UserConfiguration* config);
83
92const UserConfiguration* UserConfigGet(void);
93
100void UserConfigPrintAny(const UserConfiguration* config);
101
107void UserConfigPrint(void);
108
117
126UserConfigStatus UserConfigBytes(uint8_t* buffer, uint16_t* length);
127
136UserConfigStatus UserConfigLoadBytes(uint8_t* buffer, uint16_t length);
137
142#ifdef __cplusplus
143}
144#endif
uint8_t buffer[32]
UserConfigStatus UserConfigBytes(uint8_t *buffer, uint16_t *length)
Gets encoded bytes from userconfig.
Definition user_config.c:79
UserConfigStatus UserConfigClear(void)
Clears the user configuration stored in FRAM.
void UserConfigPrintAny(const UserConfiguration *config)
Prints arbitrary user config over serial.
UserConfigStatus UserConfigSave(const UserConfiguration *config)
Saves the configuration to FRAM.
void UserConfigPrint(void)
Prints the current user configuration over serial.
UserConfigStatus UserConfigLoad(void)
Loads user configuration data from FRAM to RAM.
const UserConfiguration * UserConfigGet(void)
Gets a reference to the loaded user configuration data in RAM.
UserConfigStatus UserConfigLoadBytes(uint8_t *buffer, uint16_t length)
Load user config from bytes.
UserConfigStatus
Definition user_config.h:51
@ USERCONFIG_NO_RESPONSE
Definition user_config.h:55
@ USERCONFIG_ENCODE_ERROR
Definition user_config.h:60
@ USERCONFIG_OK
Definition user_config.h:52
@ USERCONFIG_DECODE_ERROR
Definition user_config.h:54
@ USERCONFIG_NOT_LOADED
Definition user_config.h:58
@ USERCONFIG_EMPTY_CONFIG
Definition user_config.h:59
@ USERCONFIG_INVALID_RESPONSE
Definition user_config.h:57
@ USERCONFIG_NULL_CONFIG
Definition user_config.h:61
@ USERCONFIG_COMM_ERROR
Definition user_config.h:56
@ USERCONFIG_FRAM_ERROR
Definition user_config.h:53