Infuse-IoT SDK API 0.0.1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
KV Structure Definitions

Built-in KV Structure Definitions . More...

Data Structures

struct  kv_reboots
 Number of times device has rebooted. More...
 
struct  kv_bluetooth_addr
 Bluetooth advertising address. More...
 
struct  kv_exfat_disk_info
 exFAT disk information More...
 
struct  kv_bluetooth_ctlr_version
 External Bluetooth controller version. More...
 
struct  kv_device_name
 Personalised name for the device. More...
 
struct  kv_infuse_application_id
 CONFIG_INFUSE_APPLICATION_ID, store will be reset if the values don't match. More...
 
struct  kv_fixed_location
 Fixed global location of the device. More...
 
struct  kv_wifi_ssid
 WiFi network name. More...
 
struct  kv_wifi_psk
 WiFi network password. More...
 
struct  kv_wifi_channels
 WiFi band and channel configuration. More...
 
struct  kv_ntp_server_url
 URL of the NTP server to use for time synchronisation. More...
 
struct  kv_epacket_udp_url
 ePacket UDP server hostname More...
 
struct  kv_epacket_udp_port
 ePacket UDP server port More...
 
struct  kv_lte_modem_model
 Modem model as returned by AT+CGMM. More...
 
struct  kv_lte_modem_firmware_revision
 Modem firmware revision as returned by AT+CGMR. More...
 
struct  kv_lte_modem_esn
 'Electronic Serial Number' as returned by AT+CGSN=0 More...
 
struct  kv_lte_modem_imei
 'International Modem Equiment Identifier' as returned by AT+CGSN=1 More...
 
struct  kv_lte_sim_uicc
 SIM Universal Identifier (https://www.itu.int/en/ITU-T/inr/forms/Pages/iin.aspx) More...
 
struct  kv_lte_pdp_config
 Packet Data Protocol (PDP) default context configuration. More...
 
struct  kv_lte_networking_modes
 Enabled LTE networking modes and preferences. More...
 
struct  kv_lte_sim_imsi
 'International Modem Subscriber Identity' as returned by AT+CIMI More...
 
struct  kv_bluetooth_peer
 Bluetooth peer device. More...
 
struct  kv_lora_config
 LoRa modem configuration. More...
 
struct  kv_bluetooth_throughput_limit
 Request connected Bluetooth peers to limit throughtput. More...
 
struct  kv_gravity_reference
 Reference gravity vector for tilt calculations. More...
 
struct  kv_geofence
 Array of points defining a closed polygon. More...
 
struct  kv_task_schedules_default_id
 Unique identifier for default schedule set. More...
 
struct  kv_task_schedules
 Task runner task schedule definition (task_schedule) More...
 
struct  kv_secure_storage_reserved
 Keys reserved for secure storage (do not enable) More...
 
struct  key_value_slot_definition
 Key value slot description. More...
 

Macros

#define KV_REFLECT_NUM
 Number of KV pairs that can be reflected.
 
#define KV_KEY_TYPE(key)
 Convert key ID to key type.
 
#define KV_KEY_TYPE_VAR(key, num)
 Convert key ID to key type.
 
#define KV_STRING_CONST(name, val)
 Helper for generating compile time constant struct kv_string
 

Enumerations

enum  kv_builtin_id {
  KV_KEY_REBOOTS = 0 , KV_KEY_BLUETOOTH_ADDR = 1 , KV_KEY_EXFAT_DISK_INFO = 2 , KV_KEY_BLUETOOTH_CTLR_VERSION = 3 ,
  KV_KEY_DEVICE_NAME = 4 , KV_KEY_INFUSE_APPLICATION_ID = 5 , KV_KEY_FIXED_LOCATION = 10 , KV_KEY_WIFI_SSID = 20 ,
  KV_KEY_WIFI_PSK = 21 , KV_KEY_WIFI_CHANNELS = 22 , KV_KEY_NTP_SERVER_URL = 30 , KV_KEY_EPACKET_UDP_URL = 31 ,
  KV_KEY_EPACKET_UDP_PORT = 32 , KV_KEY_LTE_MODEM_MODEL = 40 , KV_KEY_LTE_MODEM_FIRMWARE_REVISION = 41 , KV_KEY_LTE_MODEM_ESN = 42 ,
  KV_KEY_LTE_MODEM_IMEI = 43 , KV_KEY_LTE_SIM_UICC = 44 , KV_KEY_LTE_PDP_CONFIG = 45 , KV_KEY_LTE_NETWORKING_MODES = 46 ,
  KV_KEY_LTE_SIM_IMSI = 47 , KV_KEY_BLUETOOTH_PEER = 50 , KV_KEY_LORA_CONFIG = 51 , KV_KEY_BLUETOOTH_THROUGHPUT_LIMIT = 52 ,
  KV_KEY_GRAVITY_REFERENCE = 60 , KV_KEY_GEOFENCE = 100 , KV_KEY_GEOFENCE_MAX = 115 , KV_KEY_TASK_SCHEDULES_DEFAULT_ID = 1000 ,
  KV_KEY_TASK_SCHEDULES = 1001 , KV_KEY_TASK_SCHEDULES_MAX = 1032 , KV_KEY_SECURE_STORAGE_RESERVED = 30000 , KV_KEY_SECURE_STORAGE_RESERVED_MAX = 30009 ,
  KV_KEY_BUILTIN_END = 32768
}
 
enum  kv_builtin_size
 Size of builtin KV definitions. More...
 
enum  kv_slot_flags { KV_FLAGS_REFLECT = BIT(0) , KV_FLAGS_WRITE_ONLY = BIT(1) , KV_FLAGS_READ_ONLY = BIT(2) }
 Flags that can be applied to a slot. More...
 

Detailed Description

Built-in KV Structure Definitions .

Macro Definition Documentation

◆ KV_KEY_TYPE

#define KV_KEY_TYPE ( key)

#include </__w/infuse-sdk/infuse-sdk/infuse-sdk/generated/include/infuse/fs/kv_types.h>

Value:
_##key##_TYPE

Convert key ID to key type.

◆ KV_KEY_TYPE_VAR

#define KV_KEY_TYPE_VAR ( key,
num )

#include </__w/infuse-sdk/infuse-sdk/infuse-sdk/generated/include/infuse/fs/kv_types.h>

Value:
_KV_KEY_TYPE_VAR_EXEC(_##key##_VAR, num)

Convert key ID to key type.

◆ KV_REFLECT_NUM

#define KV_REFLECT_NUM

#include </__w/infuse-sdk/infuse-sdk/infuse-sdk/generated/include/infuse/fs/kv_types.h>

Value:
( \
IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_ADDR, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_EXFAT_DISK_INFO, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_CTLR_VERSION, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_DEVICE_NAME, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_FIXED_LOCATION, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_SSID, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_PSK, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_CHANNELS, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_NTP_SERVER_URL, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_EPACKET_UDP_URL, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_EPACKET_UDP_PORT, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_MODEL, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_FIRMWARE_REVISION, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_ESN, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_IMEI, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_SIM_UICC, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_PDP_CONFIG, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_NETWORKING_MODES, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_SIM_IMSI, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_PEER, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_LORA_CONFIG, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_THROUGHPUT_LIMIT, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_GRAVITY_REFERENCE, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_GEOFENCE, \
(CONFIG_KV_STORE_KEY_GEOFENCE_RANGE +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_TASK_SCHEDULES_DEFAULT_ID, \
(1 +)) \
IF_ENABLED(CONFIG_KV_STORE_KEY_TASK_SCHEDULES, \
(CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE +)) \
0)

Number of KV pairs that can be reflected.

◆ KV_STRING_CONST

#define KV_STRING_CONST ( name,
val )

#include </__w/infuse-sdk/infuse-sdk/infuse-sdk/generated/include/infuse/fs/kv_types.h>

Value:
KV_STRUCT_KV_STRING_VAR(sizeof(val)) name = {sizeof(val), val};
#define KV_STRUCT_KV_STRING_VAR(num)
Compile time definition for known array length.
Definition kv_types.h:51

Helper for generating compile time constant struct kv_string

Enumeration Type Documentation

◆ kv_builtin_id

#include </__w/infuse-sdk/infuse-sdk/infuse-sdk/generated/include/infuse/fs/kv_types.h>

Enumerator
KV_KEY_REBOOTS 

Number of times device has rebooted.

KV_KEY_BLUETOOTH_ADDR 

Bluetooth advertising address.

KV_KEY_EXFAT_DISK_INFO 

exFAT disk information

KV_KEY_BLUETOOTH_CTLR_VERSION 

External Bluetooth controller version.

KV_KEY_DEVICE_NAME 

Personalised name for the device.

KV_KEY_INFUSE_APPLICATION_ID 

CONFIG_INFUSE_APPLICATION_ID, store will be reset if the values don't match.

KV_KEY_FIXED_LOCATION 

Fixed global location of the device.

KV_KEY_WIFI_SSID 

WiFi network name.

KV_KEY_WIFI_PSK 

WiFi network password.

KV_KEY_WIFI_CHANNELS 

WiFi band and channel configuration.

KV_KEY_NTP_SERVER_URL 

URL of the NTP server to use for time synchronisation.

KV_KEY_EPACKET_UDP_URL 

ePacket UDP server hostname

KV_KEY_EPACKET_UDP_PORT 

ePacket UDP server port

KV_KEY_LTE_MODEM_MODEL 

Modem model as returned by AT+CGMM.

KV_KEY_LTE_MODEM_FIRMWARE_REVISION 

Modem firmware revision as returned by AT+CGMR.

KV_KEY_LTE_MODEM_ESN 

'Electronic Serial Number' as returned by AT+CGSN=0

KV_KEY_LTE_MODEM_IMEI 

'International Modem Equiment Identifier' as returned by AT+CGSN=1

KV_KEY_LTE_SIM_UICC 

SIM Universal Identifier (https://www.itu.int/en/ITU-T/inr/forms/Pages/iin.aspx)

KV_KEY_LTE_PDP_CONFIG 

Packet Data Protocol (PDP) default context configuration.

KV_KEY_LTE_NETWORKING_MODES 

Enabled LTE networking modes and preferences.

KV_KEY_LTE_SIM_IMSI 

'International Modem Subscriber Identity' as returned by AT+CIMI

KV_KEY_BLUETOOTH_PEER 

Bluetooth peer device.

KV_KEY_LORA_CONFIG 

LoRa modem configuration.

KV_KEY_BLUETOOTH_THROUGHPUT_LIMIT 

Request connected Bluetooth peers to limit throughtput.

KV_KEY_GRAVITY_REFERENCE 

Reference gravity vector for tilt calculations.

KV_KEY_GEOFENCE 

Array of points defining a closed polygon.

KV_KEY_GEOFENCE_MAX 

Maximum number of KV_KEY_GEOFENCE slots that can be enabled.

KV_KEY_TASK_SCHEDULES_DEFAULT_ID 

Unique identifier for default schedule set.

KV_KEY_TASK_SCHEDULES 

Task runner task schedule definition (task_schedule)

KV_KEY_TASK_SCHEDULES_MAX 

Maximum number of KV_KEY_TASK_SCHEDULES slots that can be enabled.

KV_KEY_SECURE_STORAGE_RESERVED 

Keys reserved for secure storage (do not enable)

KV_KEY_SECURE_STORAGE_RESERVED_MAX 

Maximum number of KV_KEY_SECURE_STORAGE_RESERVED slots that can be enabled.

KV_KEY_BUILTIN_END 

End of builtin KV range.

◆ kv_builtin_size

◆ kv_slot_flags

#include </__w/infuse-sdk/infuse-sdk/infuse-sdk/generated/include/infuse/fs/kv_types.h>

Flags that can be applied to a slot.

Enumerator
KV_FLAGS_REFLECT 

KV reflection enabled for the slot.

KV_FLAGS_WRITE_ONLY 

Value can not be read by external actors.

KV_FLAGS_READ_ONLY 

Value can not be written by external actors.