12#ifndef INFUSE_SDK_INCLUDE_GENERATED_KV_DEFINITIONS_H_
13#define INFUSE_SDK_INCLUDE_GENERATED_KV_DEFINITIONS_H_
17#include <zephyr/toolchain.h>
18#include <zephyr/sys/util_macro.h>
58#define KV_STRUCT_KV_STRING_VAR(num) \
173#define _KV_KEY_DEVICE_NAME_VAR(num) \
175 KV_STRUCT_KV_STRING_VAR(num) name; \
198#define _KV_KEY_BOARD_TARGET_VAR(num) \
200 KV_STRUCT_KV_STRING_VAR(num) board_target; \
230#define _KV_KEY_WIFI_SSID_VAR(num) \
232 KV_STRUCT_KV_STRING_VAR(num) ssid; \
244#define _KV_KEY_WIFI_PSK_VAR(num) \
246 KV_STRUCT_KV_STRING_VAR(num) psk; \
260#define _KV_KEY_WIFI_CHANNELS_VAR(num) \
263 uint8_t channels[num]; \
275#define _KV_KEY_NTP_SERVER_URL_VAR(num) \
277 KV_STRUCT_KV_STRING_VAR(num) url; \
289#define _KV_KEY_EPACKET_UDP_URL_VAR(num) \
291 KV_STRUCT_KV_STRING_VAR(num) server; \
309#define _KV_KEY_LTE_MODEM_MODEL_VAR(num) \
311 KV_STRUCT_KV_STRING_VAR(num) model; \
323#define _KV_KEY_LTE_MODEM_FIRMWARE_REVISION_VAR(num) \
325 KV_STRUCT_KV_STRING_VAR(num) revision; \
337#define _KV_KEY_LTE_MODEM_ESN_VAR(num) \
339 KV_STRUCT_KV_STRING_VAR(num) esn; \
357#define _KV_KEY_LTE_SIM_UICC_VAR(num) \
359 KV_STRUCT_KV_STRING_VAR(num) uicc; \
373#define _KV_KEY_LTE_PDP_CONFIG_VAR(num) \
376 KV_STRUCT_KV_STRING_VAR(num) apn; \
466#define _KV_KEY_GEOFENCE_VAR(num) \
468 uint8_t points_num; \
469 struct gcs_location points[num]; \
528 uint8_t _remainder[];
533#define _KV_KEY_TASK_SCHEDULES_VAR(num) \
537 uint8_t periodicity_type; \
538 uint8_t boot_lockout_minutes; \
539 uint32_t timeout_s; \
540 struct kv_range_u8 battery_start; \
541 struct kv_range_u8 battery_terminate; \
542 uint8_t _remainder[num]; \
556#define _KV_KEY_SECURE_STORAGE_RESERVED_VAR(num) \
631#ifdef CONFIG_KV_STORE_KEY_GEOFENCE_RANGE
633 KV_KEY_GEOFENCE_END = 100 + CONFIG_KV_STORE_KEY_GEOFENCE_RANGE - 1,
649#ifdef CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE
651 KV_KEY_TASK_SCHEDULES_END = 1001 + CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE - 1,
657#ifdef CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED_RANGE
659 KV_KEY_SECURE_STORAGE_RESERVED_END =
660 30000 + CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED_RANGE - 1,
670 _KV_KEY_REBOOTS_SIZE =
sizeof(
struct kv_reboots),
688 _KV_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS_SIZE =
694 _KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2_SIZE =
701#define _KV_KEY_REBOOTS_TYPE struct kv_reboots
702#define _KV_KEY_BLUETOOTH_ADDR_TYPE struct kv_bluetooth_addr
703#define _KV_KEY_EXFAT_DISK_INFO_TYPE struct kv_exfat_disk_info
704#define _KV_KEY_BLUETOOTH_CTLR_VERSION_TYPE struct kv_bluetooth_ctlr_version
705#define _KV_KEY_DEVICE_NAME_TYPE struct kv_device_name
706#define _KV_KEY_INFUSE_APPLICATION_ID_TYPE struct kv_infuse_application_id
707#define _KV_KEY_APPLICATION_ACTIVE_TYPE struct kv_application_active
708#define _KV_KEY_BOARD_TARGET_TYPE struct kv_board_target
709#define _KV_KEY_SECONDARY_REMOTE_PUBLIC_KEY_TYPE struct kv_secondary_remote_public_key
710#define _KV_KEY_FIXED_LOCATION_TYPE struct kv_fixed_location
711#define _KV_KEY_BROADCAST_FIXED_INDOORS_TYPE struct kv_broadcast_fixed_indoors
712#define _KV_KEY_WIFI_SSID_TYPE struct kv_wifi_ssid
713#define _KV_KEY_WIFI_PSK_TYPE struct kv_wifi_psk
714#define _KV_KEY_WIFI_CHANNELS_TYPE struct kv_wifi_channels
715#define _KV_KEY_NTP_SERVER_URL_TYPE struct kv_ntp_server_url
716#define _KV_KEY_EPACKET_UDP_URL_TYPE struct kv_epacket_udp_url
717#define _KV_KEY_EPACKET_UDP_PORT_TYPE struct kv_epacket_udp_port
718#define _KV_KEY_LTE_MODEM_MODEL_TYPE struct kv_lte_modem_model
719#define _KV_KEY_LTE_MODEM_FIRMWARE_REVISION_TYPE struct kv_lte_modem_firmware_revision
720#define _KV_KEY_LTE_MODEM_ESN_TYPE struct kv_lte_modem_esn
721#define _KV_KEY_LTE_MODEM_IMEI_TYPE struct kv_lte_modem_imei
722#define _KV_KEY_LTE_SIM_UICC_TYPE struct kv_lte_sim_uicc
723#define _KV_KEY_LTE_PDP_CONFIG_TYPE struct kv_lte_pdp_config
724#define _KV_KEY_LTE_NETWORKING_MODES_TYPE struct kv_lte_networking_modes
725#define _KV_KEY_LTE_SIM_IMSI_TYPE struct kv_lte_sim_imsi
726#define _KV_KEY_BLUETOOTH_PEER_TYPE struct kv_bluetooth_peer
727#define _KV_KEY_LORA_CONFIG_TYPE struct kv_lora_config
728#define _KV_KEY_BLUETOOTH_THROUGHPUT_LIMIT_TYPE struct kv_bluetooth_throughput_limit
729#define _KV_KEY_LED_DISABLE_DAILY_TIME_RANGE_TYPE struct kv_led_disable_daily_time_range
730#define _KV_KEY_MEMFAULT_DISABLE_TYPE struct kv_memfault_disable
731#define _KV_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS_TYPE struct kv_gateway_bluetooth_forward_options
732#define _KV_KEY_GRAVITY_REFERENCE_TYPE struct kv_gravity_reference
733#define _KV_KEY_GEOFENCE_TYPE struct kv_geofence
734#define _KV_KEY_ALG_STATIONARY_WINDOWED_ARGS_TYPE struct kv_alg_stationary_windowed_args
735#define _KV_KEY_ALG_TILT_ARGS_TYPE struct kv_alg_tilt_args
736#define _KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_TYPE struct kv_alg_movement_threshold_args
737#define _KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2_TYPE struct kv_alg_movement_threshold_args_v2
738#define _KV_KEY_TASK_SCHEDULES_DEFAULT_ID_TYPE struct kv_task_schedules_default_id
739#define _KV_KEY_TASK_SCHEDULES_TYPE struct kv_task_schedules
740#define _KV_KEY_SECURE_STORAGE_RESERVED_TYPE struct kv_secure_storage_reserved
745#define KV_REFLECT_NUM ( \
746 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_ADDR, \
748 IF_ENABLED(CONFIG_KV_STORE_KEY_EXFAT_DISK_INFO, \
750 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_CTLR_VERSION, \
752 IF_ENABLED(CONFIG_KV_STORE_KEY_DEVICE_NAME, \
754 IF_ENABLED(CONFIG_KV_STORE_KEY_BOARD_TARGET, \
756 IF_ENABLED(CONFIG_KV_STORE_KEY_SECONDARY_REMOTE_PUBLIC_KEY, \
758 IF_ENABLED(CONFIG_KV_STORE_KEY_FIXED_LOCATION, \
760 IF_ENABLED(CONFIG_KV_STORE_KEY_BROADCAST_FIXED_INDOORS, \
762 IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_SSID, \
764 IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_PSK, \
766 IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_CHANNELS, \
768 IF_ENABLED(CONFIG_KV_STORE_KEY_NTP_SERVER_URL, \
770 IF_ENABLED(CONFIG_KV_STORE_KEY_EPACKET_UDP_URL, \
772 IF_ENABLED(CONFIG_KV_STORE_KEY_EPACKET_UDP_PORT, \
774 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_MODEL, \
776 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_FIRMWARE_REVISION, \
778 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_ESN, \
780 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_IMEI, \
782 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_SIM_UICC, \
784 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_PDP_CONFIG, \
786 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_NETWORKING_MODES, \
788 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_SIM_IMSI, \
790 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_PEER, \
792 IF_ENABLED(CONFIG_KV_STORE_KEY_LORA_CONFIG, \
794 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_THROUGHPUT_LIMIT, \
796 IF_ENABLED(CONFIG_KV_STORE_KEY_LED_DISABLE_DAILY_TIME_RANGE, \
798 IF_ENABLED(CONFIG_KV_STORE_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS, \
800 IF_ENABLED(CONFIG_KV_STORE_KEY_GRAVITY_REFERENCE, \
802 IF_ENABLED(CONFIG_KV_STORE_KEY_GEOFENCE, \
803 (CONFIG_KV_STORE_KEY_GEOFENCE_RANGE +)) \
804 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_STATIONARY_WINDOWED_ARGS, \
806 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_TILT_ARGS, \
808 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS, \
810 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2, \
812 IF_ENABLED(CONFIG_KV_STORE_KEY_TASK_SCHEDULES_DEFAULT_ID, \
814 IF_ENABLED(CONFIG_KV_STORE_KEY_TASK_SCHEDULES, \
815 (CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE +)) \
820#define KV_KEY_TYPE(key) _##key##_TYPE
822#define _KV_KEY_TYPE_VAR_EXEC(macro, num) macro(num)
825#define KV_KEY_TYPE_VAR(key, num) _KV_KEY_TYPE_VAR_EXEC(_##key##_VAR, num)
828#define KV_STRING_CONST(name, val) KV_STRUCT_KV_STRING_VAR(sizeof(val)) name = {sizeof(val), val};
850#ifdef _KV_SLOTS_ARRAY_DEFINE
852#ifdef CONFIG_KV_STORE_KEY_REBOOTS
859#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_ADDR
866#ifdef CONFIG_KV_STORE_KEY_EXFAT_DISK_INFO
873#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_CTLR_VERSION
880#ifdef CONFIG_KV_STORE_KEY_DEVICE_NAME
887#ifdef CONFIG_KV_STORE_KEY_INFUSE_APPLICATION_ID
894#ifdef CONFIG_KV_STORE_KEY_APPLICATION_ACTIVE
901#ifdef CONFIG_KV_STORE_KEY_BOARD_TARGET
908#ifdef CONFIG_KV_STORE_KEY_SECONDARY_REMOTE_PUBLIC_KEY
915#ifdef CONFIG_KV_STORE_KEY_FIXED_LOCATION
922#ifdef CONFIG_KV_STORE_KEY_BROADCAST_FIXED_INDOORS
929#ifdef CONFIG_KV_STORE_KEY_WIFI_SSID
936#ifdef CONFIG_KV_STORE_KEY_WIFI_PSK
943#ifdef CONFIG_KV_STORE_KEY_WIFI_CHANNELS
950#ifdef CONFIG_KV_STORE_KEY_NTP_SERVER_URL
957#ifdef CONFIG_KV_STORE_KEY_EPACKET_UDP_URL
964#ifdef CONFIG_KV_STORE_KEY_EPACKET_UDP_PORT
971#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_MODEL
978#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_FIRMWARE_REVISION
985#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_ESN
992#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_IMEI
999#ifdef CONFIG_KV_STORE_KEY_LTE_SIM_UICC
1006#ifdef CONFIG_KV_STORE_KEY_LTE_PDP_CONFIG
1013#ifdef CONFIG_KV_STORE_KEY_LTE_NETWORKING_MODES
1020#ifdef CONFIG_KV_STORE_KEY_LTE_SIM_IMSI
1027#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_PEER
1034#ifdef CONFIG_KV_STORE_KEY_LORA_CONFIG
1041#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_THROUGHPUT_LIMIT
1048#ifdef CONFIG_KV_STORE_KEY_LED_DISABLE_DAILY_TIME_RANGE
1055#ifdef CONFIG_KV_STORE_KEY_MEMFAULT_DISABLE
1062#ifdef CONFIG_KV_STORE_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS
1069#ifdef CONFIG_KV_STORE_KEY_GRAVITY_REFERENCE
1076#ifdef CONFIG_KV_STORE_KEY_GEOFENCE
1079 .range = CONFIG_KV_STORE_KEY_GEOFENCE_RANGE,
1083#ifdef CONFIG_KV_STORE_KEY_ALG_STATIONARY_WINDOWED_ARGS
1090#ifdef CONFIG_KV_STORE_KEY_ALG_TILT_ARGS
1097#ifdef CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS
1104#ifdef CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2
1111#ifdef CONFIG_KV_STORE_KEY_TASK_SCHEDULES_DEFAULT_ID
1118#ifdef CONFIG_KV_STORE_KEY_TASK_SCHEDULES
1121 .range = CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE,
1125#ifdef CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED
1128 .range = CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED_RANGE,
kv_slot_flags
Flags that can be applied to a slot.
Definition kv_types.h:831
kv_builtin_id
Definition kv_types.h:564
kv_builtin_size
Size of builtin KV definitions.
Definition kv_types.h:669
@ KV_FLAGS_REFLECT
KV reflection enabled for the slot.
Definition kv_types.h:833
@ KV_FLAGS_READ_ONLY
Value can not be written by external actors.
Definition kv_types.h:837
@ KV_FLAGS_WRITE_ONLY
Value can not be read by external actors.
Definition kv_types.h:835
@ KV_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS
Forwarding configuration for Bluetooth advertising packets.
Definition kv_types.h:626
@ KV_KEY_BROADCAST_FIXED_INDOORS
Device is fixed indoors and should broadcast the fact.
Definition kv_types.h:586
@ KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:644
@ KV_KEY_BLUETOOTH_THROUGHPUT_LIMIT
Request connected Bluetooth peers to limit throughput.
Definition kv_types.h:620
@ KV_KEY_LTE_MODEM_MODEL
Modem model as returned by AT+CGMM.
Definition kv_types.h:600
@ KV_KEY_APPLICATION_ACTIVE
Control STATE_APPLICATION_ACTIVE.
Definition kv_types.h:578
@ KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:642
@ KV_KEY_NTP_SERVER_URL
URL of the NTP server to use for time synchronisation.
Definition kv_types.h:594
@ KV_KEY_LTE_SIM_IMSI
'International Modem Subscriber Identity' as returned by AT+CIMI
Definition kv_types.h:614
@ KV_KEY_BLUETOOTH_PEER
Bluetooth peer device.
Definition kv_types.h:616
@ KV_KEY_SECONDARY_REMOTE_PUBLIC_KEY
Storage of secondary remote public key.
Definition kv_types.h:582
@ KV_KEY_BUILTIN_END
End of builtin KV range.
Definition kv_types.h:665
@ KV_KEY_WIFI_CHANNELS
WiFi band and channel configuration.
Definition kv_types.h:592
@ KV_KEY_INFUSE_APPLICATION_ID
CONFIG_INFUSE_APPLICATION_ID, store will be reset if the values don't match.
Definition kv_types.h:576
@ KV_KEY_GEOFENCE
Array of points defining a closed polygon.
Definition kv_types.h:630
@ KV_KEY_EXFAT_DISK_INFO
exFAT disk information
Definition kv_types.h:570
@ KV_KEY_LTE_MODEM_FIRMWARE_REVISION
Modem firmware revision as returned by AT+CGMR.
Definition kv_types.h:602
@ KV_KEY_TASK_SCHEDULES_MAX
Maximum number of KV_KEY_TASK_SCHEDULES slots that can be enabled.
Definition kv_types.h:654
@ KV_KEY_FIXED_LOCATION
Fixed global location of the device.
Definition kv_types.h:584
@ KV_KEY_REBOOTS
Number of times device has rebooted.
Definition kv_types.h:566
@ KV_KEY_DEVICE_NAME
Personalised name for the device.
Definition kv_types.h:574
@ KV_KEY_BOARD_TARGET
Value of CONFIG_BOARD_TARGET.
Definition kv_types.h:580
@ KV_KEY_BLUETOOTH_CTLR_VERSION
External Bluetooth controller version.
Definition kv_types.h:572
@ KV_KEY_WIFI_SSID
WiFi network name.
Definition kv_types.h:588
@ KV_KEY_EPACKET_UDP_URL
ePacket UDP server hostname
Definition kv_types.h:596
@ KV_KEY_LTE_PDP_CONFIG
Packet Data Protocol (PDP) default context configuration.
Definition kv_types.h:610
@ KV_KEY_SECURE_STORAGE_RESERVED_MAX
Maximum number of KV_KEY_SECURE_STORAGE_RESERVED slots that can be enabled.
Definition kv_types.h:663
@ KV_KEY_GEOFENCE_MAX
Maximum number of KV_KEY_GEOFENCE slots that can be enabled.
Definition kv_types.h:636
@ KV_KEY_ALG_TILT_ARGS
Configuration for the 'Tilt' algorithm.
Definition kv_types.h:640
@ KV_KEY_LORA_CONFIG
LoRa modem configuration.
Definition kv_types.h:618
@ KV_KEY_LTE_MODEM_ESN
'Electronic Serial Number' as returned by AT+CGSN=0
Definition kv_types.h:604
@ KV_KEY_LED_DISABLE_DAILY_TIME_RANGE
Disable LEDs between two UTC times daily.
Definition kv_types.h:622
@ KV_KEY_BLUETOOTH_ADDR
Bluetooth advertising address.
Definition kv_types.h:568
@ KV_KEY_LTE_SIM_UICC
SIM Universal Identifier (https://www.itu.int/en/ITU-T/inr/forms/Pages/iin.aspx)
Definition kv_types.h:608
@ KV_KEY_GRAVITY_REFERENCE
Reference gravity vector for tilt calculations.
Definition kv_types.h:628
@ KV_KEY_LTE_NETWORKING_MODES
Enabled LTE networking modes and preferences.
Definition kv_types.h:612
@ KV_KEY_WIFI_PSK
WiFi network password.
Definition kv_types.h:590
@ KV_KEY_TASK_SCHEDULES
Task runner task schedule definition (task_schedule)
Definition kv_types.h:648
@ KV_KEY_SECURE_STORAGE_RESERVED
Keys reserved for secure storage (do not enable)
Definition kv_types.h:656
@ KV_KEY_EPACKET_UDP_PORT
ePacket UDP server port
Definition kv_types.h:598
@ KV_KEY_LTE_MODEM_IMEI
'International Modem Equipment Identifier' as returned by AT+CGSN=1
Definition kv_types.h:606
@ KV_KEY_MEMFAULT_DISABLE
Disable Memfault reporting at runtime.
Definition kv_types.h:624
@ KV_KEY_ALG_STATIONARY_WINDOWED_ARGS
Configuration for the 'Stationary Windowed' algorithm.
Definition kv_types.h:638
@ KV_KEY_TASK_SCHEDULES_DEFAULT_ID
Unique identifier for default schedule set.
Definition kv_types.h:646
Bluetooth address type (bt_addr_le_t)
Definition kv_types.h:41
uint8_t type
Address type (0 == Public, 1 == Random)
Definition kv_types.h:43
uint8_t val[6]
Address bytes.
Definition kv_types.h:45
Geographic Co-ordinate System location.
Definition kv_types.h:31
int32_t latitude
Degrees north/south, scaled by 1e-7.
Definition kv_types.h:33
int32_t height
Height above WGS-84 ellipsoid, mm.
Definition kv_types.h:37
int32_t longitude
Degrees north/south, scaled by 1e-7.
Definition kv_types.h:35
Key value slot description.
Definition kv_types.h:841
uint16_t key
Base key ID for slot.
Definition kv_types.h:843
uint8_t range
Number of IDs used by the slot.
Definition kv_types.h:845
uint8_t flags
Bitmask of kv_slot_flags for slot.
Definition kv_types.h:847
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:498
struct kv_algorithm_movement_threshold_args_v2 args
Algorithm arguments.
Definition kv_types.h:502
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:500
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:490
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:492
struct kv_algorithm_movement_threshold_args args
Algorithm arguments.
Definition kv_types.h:494
Configuration for the 'Stationary Windowed' algorithm.
Definition kv_types.h:474
struct kv_algorithm_stationary_windowed_args args
Algorithm arguments.
Definition kv_types.h:478
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:476
Configuration for the 'Tilt' algorithm.
Definition kv_types.h:482
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:484
struct kv_algorithm_tilt_args args
Algorithm arguments.
Definition kv_types.h:486
Algorithm logging configuration.
Definition kv_types.h:87
uint8_t tdf_mask
TDFs to log (algorithm specific bitmask.
Definition kv_types.h:91
uint8_t loggers
TDF logger to log to.
Definition kv_types.h:89
Arguments for 'Shot Triggered' algorithm.
Definition kv_types.h:119
uint32_t moving_for
How long moving state is refreshed for when movement detected.
Definition kv_types.h:121
uint32_t initial_threshold_ug
Magnitude this far away from 1G triggers the moving state.
Definition kv_types.h:123
uint32_t continue_threshold_ug
Magnitude this far away from 1G continues the moving state.
Definition kv_types.h:125
Arguments for 'Shot Triggered' algorithm.
Definition kv_types.h:111
uint32_t moving_for
How long moving state is refreshed for when movement detected.
Definition kv_types.h:113
uint32_t threshold_ug
Magnitude this far away from 1G triggers the moving state.
Definition kv_types.h:115
Arguments for 'Stationary Windowed' algorithm.
Definition kv_types.h:95
uint32_t window_seconds
Duration of the window in seconds.
Definition kv_types.h:97
uint32_t std_dev_threshold_ug
Standard deviation threshold in micro-g, above this value the device is moving.
Definition kv_types.h:99
Arguments for 'Tilt' algorithm.
Definition kv_types.h:103
float iir_filter_alpha
IIR filter alpha (see iir_filter_single_pole_f32)
Definition kv_types.h:105
uint8_t one_g_percent
Percentage within one G magnitude must be to use for tilt calculation.
Definition kv_types.h:107
Control STATE_APPLICATION_ACTIVE.
Definition kv_types.h:185
uint8_t active
Active for any non-zero value.
Definition kv_types.h:187
Bluetooth advertising address.
Definition kv_types.h:144
struct bt_addr_le address
Broadcasting address.
Definition kv_types.h:146
External Bluetooth controller version.
Definition kv_types.h:158
uint32_t application
Application ID.
Definition kv_types.h:160
struct kv_mcuboot_img_sem_ver version
Application version number.
Definition kv_types.h:162
Bluetooth peer device.
Definition kv_types.h:395
struct bt_addr_le address
Peer device Bluetooth address.
Definition kv_types.h:397
Request connected Bluetooth peers to limit throughput.
Definition kv_types.h:419
uint16_t limit_kbps
Requested throughput limit (kbps)
Definition kv_types.h:421
Value of CONFIG_BOARD_TARGET.
Definition kv_types.h:191
struct kv_string board_target
Value of CONFIG_BOARD_TARGET.
Definition kv_types.h:193
Device is fixed indoors and should broadcast the fact.
Definition kv_types.h:217
uint8_t indoors
Non-zero: Device is indoors.
Definition kv_types.h:219
Personalised name for the device.
Definition kv_types.h:166
struct kv_string name
Personalised device name.
Definition kv_types.h:168
ePacket UDP server port
Definition kv_types.h:296
uint32_t port
UDP server port.
Definition kv_types.h:298
ePacket UDP server hostname
Definition kv_types.h:282
struct kv_string server
UDP server hostname.
Definition kv_types.h:284
exFAT disk information
Definition kv_types.h:150
uint32_t block_size
Disk block size.
Definition kv_types.h:154
uint32_t block_count
Disk block count.
Definition kv_types.h:152
Fixed global location of the device.
Definition kv_types.h:211
struct gcs_location location
Location.
Definition kv_types.h:213
Forwarding configuration for Bluetooth advertising packets.
Definition kv_types.h:439
uint8_t flags
Forwarding flags (see epacket_filter_flags)
Definition kv_types.h:441
uint8_t percent
Percent of packets to forward that pass flags (255 = all, 128 = half, 0 = none)
Definition kv_types.h:443
Array of points defining a closed polygon.
Definition kv_types.h:457
uint8_t points_num
Number of points in the geofence.
Definition kv_types.h:459
struct gcs_location points[]
Points in geofence.
Definition kv_types.h:461
Reference gravity vector for tilt calculations.
Definition kv_types.h:447
int16_t y
Y axis component of gravity vector.
Definition kv_types.h:451
int16_t z
Z axis component of gravity vector.
Definition kv_types.h:453
int16_t x
X axis component of gravity vector.
Definition kv_types.h:449
CONFIG_INFUSE_APPLICATION_ID, store will be reset if the values don't match.
Definition kv_types.h:180
uint32_t application_id
Definition kv_types.h:181
Disable LEDs between two UTC times daily.
Definition kv_types.h:425
struct kv_utc_hms disable_start
Disable LEDs at this time.
Definition kv_types.h:427
struct kv_utc_hms disable_end
Re-enable LEDs at this time.
Definition kv_types.h:429
LoRa modem configuration.
Definition kv_types.h:401
uint8_t bandwidth
Signal bandwidth (see enum lora_signal_bandwidth)
Definition kv_types.h:405
uint16_t preamble_len
Preamble length.
Definition kv_types.h:411
uint32_t frequency
Frequency (Hz)
Definition kv_types.h:403
int8_t tx_power
Transmit power (dBm)
Definition kv_types.h:413
uint8_t sync_word
Custom sync word.
Definition kv_types.h:415
uint8_t spreading_factor
Spreading factor (see enum lora_datarate)
Definition kv_types.h:407
uint8_t coding_rate
Coding rate (see enum lora_coding_rate)
Definition kv_types.h:409
'Electronic Serial Number' as returned by AT+CGSN=0
Definition kv_types.h:330
struct kv_string esn
ESN or IMEI if not available.
Definition kv_types.h:332
Modem firmware revision as returned by AT+CGMR.
Definition kv_types.h:316
struct kv_string revision
Firmware revision.
Definition kv_types.h:318
'International Modem Equipment Identifier' as returned by AT+CGSN=1
Definition kv_types.h:344
uint64_t imei
15 digit IMEI
Definition kv_types.h:346
Modem model as returned by AT+CGMM.
Definition kv_types.h:302
struct kv_string model
Modem model.
Definition kv_types.h:304
Enabled LTE networking modes and preferences.
Definition kv_types.h:381
uint8_t modes
Enabled modes as per enum lte_lc_system_mode
Definition kv_types.h:383
uint8_t prefer
Preference as per enum lte_lc_system_mode_preference
Definition kv_types.h:385
Packet Data Protocol (PDP) default context configuration.
Definition kv_types.h:364
struct kv_string apn
Access Point Name.
Definition kv_types.h:368
uint8_t family
Protocol family (0 = IPv4, 1 = IPv6, 2 = IPv4v6, 3 = Non-IP)
Definition kv_types.h:366
'International Modem Subscriber Identity' as returned by AT+CIMI
Definition kv_types.h:389
uint64_t imsi
15 digit IMSI
Definition kv_types.h:391
SIM Universal Identifier (https://www.itu.int/en/ITU-T/inr/forms/Pages/iin.aspx)
Definition kv_types.h:350
struct kv_string uicc
Variable length UICC string.
Definition kv_types.h:352
MCUboot semantic versioning struct.
Definition kv_types.h:66
uint32_t build_num
Definition kv_types.h:70
uint8_t major
Definition kv_types.h:67
uint8_t minor
Definition kv_types.h:68
uint16_t revision
Definition kv_types.h:69
Disable Memfault reporting at runtime.
Definition kv_types.h:433
uint8_t disable
Disable for any non-zero value.
Definition kv_types.h:435
URL of the NTP server to use for time synchronisation.
Definition kv_types.h:268
struct kv_string url
NTP server URL.
Definition kv_types.h:270
Generic range structure.
Definition kv_types.h:74
uint8_t lower
Definition kv_types.h:75
uint8_t upper
Definition kv_types.h:76
Number of times device has rebooted.
Definition kv_types.h:139
uint32_t count
Definition kv_types.h:140
Storage of secondary remote public key.
Definition kv_types.h:205
uint8_t public_key[32]
Remote public key.
Definition kv_types.h:207
Keys reserved for secure storage (do not enable)
Definition kv_types.h:547
uint8_t data_num
Opaque data.
Definition kv_types.h:549
uint8_t data[]
Opaque data.
Definition kv_types.h:551
String type.
Definition kv_types.h:49
char value[]
NULL terminated C string.
Definition kv_types.h:53
uint8_t value_num
Length of value (including NULL)
Definition kv_types.h:51
Unique identifier for default schedule set.
Definition kv_types.h:506
uint32_t set_id
If this value changes, existing schedules are overwritten.
Definition kv_types.h:508
Task runner task schedule definition (task_schedule)
Definition kv_types.h:512
struct kv_range_u8 battery_terminate
Battery charge thresholds to terminate the task.
Definition kv_types.h:526
struct kv_range_u8 battery_start
Battery charge thresholds to start the task.
Definition kv_types.h:524
uint8_t validity
TASK_VALID_* value.
Definition kv_types.h:516
uint8_t task_id
Task ID referenced by schedule.
Definition kv_types.h:514
uint8_t boot_lockout_minutes
Task will not start for the first N minutes after boot.
Definition kv_types.h:520
uint8_t periodicity_type
TASK_PERIODICITY_* value.
Definition kv_types.h:518
uint32_t timeout_s
Duration after which task is requested to terminate.
Definition kv_types.h:522
UTC Hour-Minute-Second.
Definition kv_types.h:80
uint8_t minute
Definition kv_types.h:82
uint8_t hour
Definition kv_types.h:81
uint8_t second
Definition kv_types.h:83
WiFi band and channel configuration.
Definition kv_types.h:251
uint8_t band
WiFi frequency band (0 = 2.4Ghz, 1 = 5GHz, 2 = 6Ghz, other = Unknown)
Definition kv_types.h:253
uint8_t channels[]
WiFi channels network uses.
Definition kv_types.h:255
WiFi network password.
Definition kv_types.h:237
struct kv_string psk
WiFi pre-shared-key.
Definition kv_types.h:239
WiFi network name.
Definition kv_types.h:223
struct kv_string ssid
WiFi network name.
Definition kv_types.h:225