Infuse-IoT SDK API 0.0.1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
kv_types.h
Go to the documentation of this file.
1
11
12#ifndef INFUSE_SDK_INCLUDE_GENERATED_KV_DEFINITIONS_H_
13#define INFUSE_SDK_INCLUDE_GENERATED_KV_DEFINITIONS_H_
14
15#include <stdint.h>
16
17#include <zephyr/toolchain.h>
18#include <zephyr/sys/util_macro.h>
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23
29
33 int32_t latitude;
35 int32_t longitude;
37 int32_t height;
38} __packed;
39
41struct bt_addr_le {
43 uint8_t type;
45 uint8_t val[6];
46} __packed;
47
49struct kv_string {
51 uint8_t value_num;
53 char value[];
54} __packed;
55
56/* clang-format off */
58#define KV_STRUCT_KV_STRING_VAR(num) \
59 struct { \
60 uint8_t value_num; \
61 char value[num]; \
62 } __packed
63/* clang-format on */
64
67 uint8_t major;
68 uint8_t minor;
69 uint16_t revision;
70 uint32_t build_num;
71} __packed;
72
75 uint8_t lower;
76 uint8_t upper;
77} __packed;
78
80struct kv_utc_hms {
81 uint8_t hour;
82 uint8_t minute;
83 uint8_t second;
84} __packed;
85
89 uint8_t loggers;
91 uint8_t tdf_mask;
92} __packed;
93
101
108} __packed;
109
113 uint32_t moving_for;
115 uint32_t threshold_ug;
116} __packed;
117
127
131 uint8_t init_res;
133 uint8_t initialized;
134} __packed;
135
139
145
148 uint32_t count;
149} __packed;
150
155} __packed;
156
160 uint32_t block_count;
162 uint32_t block_size;
163} __packed;
164
172
177} __packed;
178
179/* clang-format off */
181#define _KV_KEY_DEVICE_NAME_VAR(num) \
182 struct { \
183 KV_STRUCT_KV_STRING_VAR(num) name; \
184 } __packed
185/* clang-format on */
186
190} __packed;
191
195 uint8_t active;
196} __packed;
197
202} __packed;
203
204/* clang-format off */
206#define _KV_KEY_BOARD_TARGET_VAR(num) \
207 struct { \
208 KV_STRUCT_KV_STRING_VAR(num) board_target; \
209 } __packed
210/* clang-format on */
211
215 uint8_t public_key[32];
216} __packed;
217
224} __packed;
225
226/* clang-format off */
228#define _KV_KEY_Z_DEVSTATE_VAR(num) \
229 struct { \
230 struct kv_device_state first; \
231 struct kv_device_state remainder[num]; \
232 } __packed
233/* clang-format on */
234
239} __packed;
240
244 uint8_t indoors;
245} __packed;
246
250 uint32_t disk_version;
252 uint32_t block_size;
254 uint32_t block_count;
256 uint32_t blocks_used;
257} __packed;
258
262 uint8_t count;
264 uint32_t crc_xor;
265} __packed;
266
271} __packed;
272
273/* clang-format off */
275#define _KV_KEY_WIFI_SSID_VAR(num) \
276 struct { \
277 KV_STRUCT_KV_STRING_VAR(num) ssid; \
278 } __packed
279/* clang-format on */
280
285} __packed;
286
287/* clang-format off */
289#define _KV_KEY_WIFI_PSK_VAR(num) \
290 struct { \
291 KV_STRUCT_KV_STRING_VAR(num) psk; \
292 } __packed
293/* clang-format on */
294
298 uint8_t band;
300 uint8_t channels[];
301} __packed;
302
303/* clang-format off */
305#define _KV_KEY_WIFI_CHANNELS_VAR(num) \
306 struct { \
307 uint8_t band; \
308 uint8_t channels[num]; \
309 } __packed
310/* clang-format on */
311
316} __packed;
317
318/* clang-format off */
320#define _KV_KEY_NTP_SERVER_URL_VAR(num) \
321 struct { \
322 KV_STRUCT_KV_STRING_VAR(num) url; \
323 } __packed
324/* clang-format on */
325
330} __packed;
331
332/* clang-format off */
334#define _KV_KEY_EPACKET_UDP_URL_VAR(num) \
335 struct { \
336 KV_STRUCT_KV_STRING_VAR(num) server; \
337 } __packed
338/* clang-format on */
339
343 uint32_t port;
344} __packed;
345
350} __packed;
351
352/* clang-format off */
354#define _KV_KEY_LTE_MODEM_MODEL_VAR(num) \
355 struct { \
356 KV_STRUCT_KV_STRING_VAR(num) model; \
357 } __packed
358/* clang-format on */
359
365
366/* clang-format off */
368#define _KV_KEY_LTE_MODEM_FIRMWARE_REVISION_VAR(num) \
369 struct { \
370 KV_STRUCT_KV_STRING_VAR(num) revision; \
371 } __packed
372/* clang-format on */
373
378} __packed;
379
380/* clang-format off */
382#define _KV_KEY_LTE_MODEM_ESN_VAR(num) \
383 struct { \
384 KV_STRUCT_KV_STRING_VAR(num) esn; \
385 } __packed
386/* clang-format on */
387
391 uint64_t imei;
392} __packed;
393
398} __packed;
399
400/* clang-format off */
402#define _KV_KEY_LTE_SIM_UICC_VAR(num) \
403 struct { \
404 KV_STRUCT_KV_STRING_VAR(num) uicc; \
405 } __packed
406/* clang-format on */
407
411 uint8_t family;
414} __packed;
415
416/* clang-format off */
418#define _KV_KEY_LTE_PDP_CONFIG_VAR(num) \
419 struct { \
420 uint8_t family; \
421 KV_STRUCT_KV_STRING_VAR(num) apn; \
422 } __packed
423/* clang-format on */
424
428 uint8_t modes;
430 uint8_t prefer;
431} __packed;
432
436 uint64_t imsi;
437} __packed;
438
443} __packed;
444
448 uint32_t frequency;
450 uint8_t bandwidth;
454 uint8_t coding_rate;
456 uint16_t preamble_len;
458 int8_t tx_power;
460 uint8_t sync_word;
461} __packed;
462
466 uint16_t limit_kbps;
467} __packed;
468
476
480 uint8_t disable;
481} __packed;
482
486 uint8_t flags;
488 uint8_t percent;
489} __packed;
490
494 uint8_t major;
496 uint8_t minor;
498 uint16_t patch;
499} __packed;
500
504 int16_t x;
506 int16_t y;
508 int16_t z;
509} __packed;
510
514 uint8_t points_num;
517} __packed;
518
519/* clang-format off */
521#define _KV_KEY_GEOFENCE_VAR(num) \
522 struct { \
523 uint8_t points_num; \
524 struct gcs_location points[num]; \
525 } __packed
526/* clang-format on */
527
535
543
551
559
563 uint32_t set_id;
564} __packed;
565
569 uint8_t task_id;
571 uint8_t validity;
577 uint32_t timeout_s;
583 uint8_t _remainder[];
584} __packed;
585
586/* clang-format off */
588#define _KV_KEY_TASK_SCHEDULES_VAR(num) \
589 struct { \
590 uint8_t task_id; \
591 uint8_t validity; \
592 uint8_t periodicity_type; \
593 uint8_t boot_lockout_minutes; \
594 uint32_t timeout_s; \
595 struct kv_range_u8 battery_start; \
596 struct kv_range_u8 battery_terminate; \
597 uint8_t _remainder[num]; \
598 } __packed
599/* clang-format on */
600
604 uint8_t data_num;
606 uint8_t data[];
607} __packed;
608
609/* clang-format off */
611#define _KV_KEY_SECURE_STORAGE_RESERVED_VAR(num) \
612 struct { \
613 uint8_t data_num; \
614 uint8_t data[num]; \
615 } __packed
616/* clang-format on */
617
618/* Infuse-IoT builtin KV definitions */
697#ifdef CONFIG_KV_STORE_KEY_GEOFENCE_RANGE
699 KV_KEY_GEOFENCE_END = 100 + CONFIG_KV_STORE_KEY_GEOFENCE_RANGE - 1,
700#endif
715#ifdef CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE
717 KV_KEY_TASK_SCHEDULES_END = 1001 + CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE - 1,
718#endif
723#ifdef CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED_RANGE
725 KV_KEY_SECURE_STORAGE_RESERVED_END =
726 30000 + CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED_RANGE - 1,
727#endif
732};
733
736 _KV_KEY_REBOOTS_SIZE = sizeof(struct kv_reboots),
737 _KV_KEY_BLUETOOTH_ADDR_SIZE = sizeof(struct kv_bluetooth_addr),
738 _KV_KEY_EXFAT_DISK_INFO_SIZE = sizeof(struct kv_exfat_disk_info),
739 _KV_KEY_BLUETOOTH_CTLR_VERSION_SIZE = sizeof(struct kv_bluetooth_ctlr_version),
740 _KV_KEY_INFUSE_APPLICATION_ID_SIZE = sizeof(struct kv_infuse_application_id),
741 _KV_KEY_APPLICATION_ACTIVE_SIZE = sizeof(struct kv_application_active),
742 _KV_KEY_SECONDARY_REMOTE_PUBLIC_KEY_SIZE = sizeof(struct kv_secondary_remote_public_key),
743 _KV_KEY_FIXED_LOCATION_SIZE = sizeof(struct kv_fixed_location),
744 _KV_KEY_BROADCAST_FIXED_INDOORS_SIZE = sizeof(struct kv_broadcast_fixed_indoors),
745 _KV_KEY_LITTLEFS_FS_STATE_SIZE = sizeof(struct kv_littlefs_fs_state),
746 _KV_KEY_LITTLEFS_ALGORITHMS_STATE_SIZE = sizeof(struct kv_littlefs_algorithms_state),
747 _KV_KEY_EPACKET_UDP_PORT_SIZE = sizeof(struct kv_epacket_udp_port),
748 _KV_KEY_LTE_MODEM_IMEI_SIZE = sizeof(struct kv_lte_modem_imei),
749 _KV_KEY_LTE_NETWORKING_MODES_SIZE = sizeof(struct kv_lte_networking_modes),
750 _KV_KEY_LTE_SIM_IMSI_SIZE = sizeof(struct kv_lte_sim_imsi),
751 _KV_KEY_BLUETOOTH_PEER_SIZE = sizeof(struct kv_bluetooth_peer),
752 _KV_KEY_LORA_CONFIG_SIZE = sizeof(struct kv_lora_config),
753 _KV_KEY_BLUETOOTH_THROUGHPUT_LIMIT_SIZE = sizeof(struct kv_bluetooth_throughput_limit),
754 _KV_KEY_LED_DISABLE_DAILY_TIME_RANGE_SIZE = sizeof(struct kv_led_disable_daily_time_range),
755 _KV_KEY_MEMFAULT_DISABLE_SIZE = sizeof(struct kv_memfault_disable),
756 _KV_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS_SIZE =
758 _KV_KEY_NRF_EDGE_AI_RUNTIME_VERSION_SIZE = sizeof(struct kv_nrf_edge_ai_runtime_version),
759 _KV_KEY_GRAVITY_REFERENCE_SIZE = sizeof(struct kv_gravity_reference),
760 _KV_KEY_ALG_STATIONARY_WINDOWED_ARGS_SIZE = sizeof(struct kv_alg_stationary_windowed_args),
761 _KV_KEY_ALG_TILT_ARGS_SIZE = sizeof(struct kv_alg_tilt_args),
762 _KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_SIZE = sizeof(struct kv_alg_movement_threshold_args),
763 _KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2_SIZE =
765 _KV_KEY_TASK_SCHEDULES_DEFAULT_ID_SIZE = sizeof(struct kv_task_schedules_default_id),
766};
767
768/* clang-format off */
769/* Types of builtin KV definitions */
770#define _KV_KEY_REBOOTS_TYPE struct kv_reboots
771#define _KV_KEY_BLUETOOTH_ADDR_TYPE struct kv_bluetooth_addr
772#define _KV_KEY_EXFAT_DISK_INFO_TYPE struct kv_exfat_disk_info
773#define _KV_KEY_BLUETOOTH_CTLR_VERSION_TYPE struct kv_bluetooth_ctlr_version
774#define _KV_KEY_DEVICE_NAME_TYPE struct kv_device_name
775#define _KV_KEY_INFUSE_APPLICATION_ID_TYPE struct kv_infuse_application_id
776#define _KV_KEY_APPLICATION_ACTIVE_TYPE struct kv_application_active
777#define _KV_KEY_BOARD_TARGET_TYPE struct kv_board_target
778#define _KV_KEY_SECONDARY_REMOTE_PUBLIC_KEY_TYPE struct kv_secondary_remote_public_key
779#define _KV_KEY_Z_DEVSTATE_TYPE struct kv_z_devstate
780#define _KV_KEY_FIXED_LOCATION_TYPE struct kv_fixed_location
781#define _KV_KEY_BROADCAST_FIXED_INDOORS_TYPE struct kv_broadcast_fixed_indoors
782#define _KV_KEY_LITTLEFS_FS_STATE_TYPE struct kv_littlefs_fs_state
783#define _KV_KEY_LITTLEFS_ALGORITHMS_STATE_TYPE struct kv_littlefs_algorithms_state
784#define _KV_KEY_WIFI_SSID_TYPE struct kv_wifi_ssid
785#define _KV_KEY_WIFI_PSK_TYPE struct kv_wifi_psk
786#define _KV_KEY_WIFI_CHANNELS_TYPE struct kv_wifi_channels
787#define _KV_KEY_NTP_SERVER_URL_TYPE struct kv_ntp_server_url
788#define _KV_KEY_EPACKET_UDP_URL_TYPE struct kv_epacket_udp_url
789#define _KV_KEY_EPACKET_UDP_PORT_TYPE struct kv_epacket_udp_port
790#define _KV_KEY_LTE_MODEM_MODEL_TYPE struct kv_lte_modem_model
791#define _KV_KEY_LTE_MODEM_FIRMWARE_REVISION_TYPE struct kv_lte_modem_firmware_revision
792#define _KV_KEY_LTE_MODEM_ESN_TYPE struct kv_lte_modem_esn
793#define _KV_KEY_LTE_MODEM_IMEI_TYPE struct kv_lte_modem_imei
794#define _KV_KEY_LTE_SIM_UICC_TYPE struct kv_lte_sim_uicc
795#define _KV_KEY_LTE_PDP_CONFIG_TYPE struct kv_lte_pdp_config
796#define _KV_KEY_LTE_NETWORKING_MODES_TYPE struct kv_lte_networking_modes
797#define _KV_KEY_LTE_SIM_IMSI_TYPE struct kv_lte_sim_imsi
798#define _KV_KEY_BLUETOOTH_PEER_TYPE struct kv_bluetooth_peer
799#define _KV_KEY_LORA_CONFIG_TYPE struct kv_lora_config
800#define _KV_KEY_BLUETOOTH_THROUGHPUT_LIMIT_TYPE struct kv_bluetooth_throughput_limit
801#define _KV_KEY_LED_DISABLE_DAILY_TIME_RANGE_TYPE struct kv_led_disable_daily_time_range
802#define _KV_KEY_MEMFAULT_DISABLE_TYPE struct kv_memfault_disable
803#define _KV_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS_TYPE struct kv_gateway_bluetooth_forward_options
804#define _KV_KEY_NRF_EDGE_AI_RUNTIME_VERSION_TYPE struct kv_nrf_edge_ai_runtime_version
805#define _KV_KEY_GRAVITY_REFERENCE_TYPE struct kv_gravity_reference
806#define _KV_KEY_GEOFENCE_TYPE struct kv_geofence
807#define _KV_KEY_ALG_STATIONARY_WINDOWED_ARGS_TYPE struct kv_alg_stationary_windowed_args
808#define _KV_KEY_ALG_TILT_ARGS_TYPE struct kv_alg_tilt_args
809#define _KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_TYPE struct kv_alg_movement_threshold_args
810#define _KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2_TYPE struct kv_alg_movement_threshold_args_v2
811#define _KV_KEY_TASK_SCHEDULES_DEFAULT_ID_TYPE struct kv_task_schedules_default_id
812#define _KV_KEY_TASK_SCHEDULES_TYPE struct kv_task_schedules
813#define _KV_KEY_SECURE_STORAGE_RESERVED_TYPE struct kv_secure_storage_reserved
814/* clang-format on */
815
816/* clang-format off */
818#define KV_REFLECT_NUM ( \
819 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_ADDR, \
820 (1 +)) \
821 IF_ENABLED(CONFIG_KV_STORE_KEY_EXFAT_DISK_INFO, \
822 (1 +)) \
823 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_CTLR_VERSION, \
824 (1 +)) \
825 IF_ENABLED(CONFIG_KV_STORE_KEY_DEVICE_NAME, \
826 (1 +)) \
827 IF_ENABLED(CONFIG_KV_STORE_KEY_BOARD_TARGET, \
828 (1 +)) \
829 IF_ENABLED(CONFIG_KV_STORE_KEY_SECONDARY_REMOTE_PUBLIC_KEY, \
830 (1 +)) \
831 IF_ENABLED(CONFIG_KV_STORE_KEY_Z_DEVSTATE, \
832 (1 +)) \
833 IF_ENABLED(CONFIG_KV_STORE_KEY_FIXED_LOCATION, \
834 (1 +)) \
835 IF_ENABLED(CONFIG_KV_STORE_KEY_BROADCAST_FIXED_INDOORS, \
836 (1 +)) \
837 IF_ENABLED(CONFIG_KV_STORE_KEY_LITTLEFS_FS_STATE, \
838 (1 +)) \
839 IF_ENABLED(CONFIG_KV_STORE_KEY_LITTLEFS_ALGORITHMS_STATE, \
840 (1 +)) \
841 IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_SSID, \
842 (1 +)) \
843 IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_PSK, \
844 (1 +)) \
845 IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_CHANNELS, \
846 (1 +)) \
847 IF_ENABLED(CONFIG_KV_STORE_KEY_NTP_SERVER_URL, \
848 (1 +)) \
849 IF_ENABLED(CONFIG_KV_STORE_KEY_EPACKET_UDP_URL, \
850 (1 +)) \
851 IF_ENABLED(CONFIG_KV_STORE_KEY_EPACKET_UDP_PORT, \
852 (1 +)) \
853 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_MODEL, \
854 (1 +)) \
855 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_FIRMWARE_REVISION, \
856 (1 +)) \
857 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_ESN, \
858 (1 +)) \
859 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_IMEI, \
860 (1 +)) \
861 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_SIM_UICC, \
862 (1 +)) \
863 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_PDP_CONFIG, \
864 (1 +)) \
865 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_NETWORKING_MODES, \
866 (1 +)) \
867 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_SIM_IMSI, \
868 (1 +)) \
869 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_PEER, \
870 (1 +)) \
871 IF_ENABLED(CONFIG_KV_STORE_KEY_LORA_CONFIG, \
872 (1 +)) \
873 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_THROUGHPUT_LIMIT, \
874 (1 +)) \
875 IF_ENABLED(CONFIG_KV_STORE_KEY_LED_DISABLE_DAILY_TIME_RANGE, \
876 (1 +)) \
877 IF_ENABLED(CONFIG_KV_STORE_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS, \
878 (1 +)) \
879 IF_ENABLED(CONFIG_KV_STORE_KEY_NRF_EDGE_AI_RUNTIME_VERSION, \
880 (1 +)) \
881 IF_ENABLED(CONFIG_KV_STORE_KEY_GRAVITY_REFERENCE, \
882 (1 +)) \
883 IF_ENABLED(CONFIG_KV_STORE_KEY_GEOFENCE, \
884 (CONFIG_KV_STORE_KEY_GEOFENCE_RANGE +)) \
885 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_STATIONARY_WINDOWED_ARGS, \
886 (1 +)) \
887 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_TILT_ARGS, \
888 (1 +)) \
889 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS, \
890 (1 +)) \
891 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2, \
892 (1 +)) \
893 IF_ENABLED(CONFIG_KV_STORE_KEY_TASK_SCHEDULES_DEFAULT_ID, \
894 (1 +)) \
895 IF_ENABLED(CONFIG_KV_STORE_KEY_TASK_SCHEDULES, \
896 (CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE +)) \
897 0)
898/* clang-format on */
899
901#define KV_KEY_TYPE(key) _##key##_TYPE
902
903#define _KV_KEY_TYPE_VAR_EXEC(macro, num) macro(num)
904
906#define KV_KEY_TYPE_VAR(key, num) _KV_KEY_TYPE_VAR_EXEC(_##key##_VAR, num)
907
909#define KV_STRING_CONST(name, val) KV_STRUCT_KV_STRING_VAR(sizeof(val)) name = {sizeof(val), val};
910
920
924 uint16_t key;
926 uint8_t range;
928 uint8_t flags;
929};
930
931#ifdef _KV_SLOTS_ARRAY_DEFINE
932static struct key_value_slot_definition _KV_SLOTS_ARRAY_DEFINE[] = {
933#ifdef CONFIG_KV_STORE_KEY_REBOOTS
934 {
935 .key = KV_KEY_REBOOTS,
936 .range = 1,
937 .flags = 0,
938 },
939#endif /* CONFIG_KV_STORE_KEY_REBOOTS */
940#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_ADDR
941 {
943 .range = 1,
945 },
946#endif /* CONFIG_KV_STORE_KEY_BLUETOOTH_ADDR */
947#ifdef CONFIG_KV_STORE_KEY_EXFAT_DISK_INFO
948 {
950 .range = 1,
952 },
953#endif /* CONFIG_KV_STORE_KEY_EXFAT_DISK_INFO */
954#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_CTLR_VERSION
955 {
957 .range = 1,
958 .flags = KV_FLAGS_REFLECT,
959 },
960#endif /* CONFIG_KV_STORE_KEY_BLUETOOTH_CTLR_VERSION */
961#ifdef CONFIG_KV_STORE_KEY_DEVICE_NAME
962 {
963 .key = KV_KEY_DEVICE_NAME,
964 .range = 1,
965 .flags = KV_FLAGS_REFLECT,
966 },
967#endif /* CONFIG_KV_STORE_KEY_DEVICE_NAME */
968#ifdef CONFIG_KV_STORE_KEY_INFUSE_APPLICATION_ID
969 {
971 .range = 1,
972 .flags = 0,
973 },
974#endif /* CONFIG_KV_STORE_KEY_INFUSE_APPLICATION_ID */
975#ifdef CONFIG_KV_STORE_KEY_APPLICATION_ACTIVE
976 {
978 .range = 1,
979 .flags = 0,
980 },
981#endif /* CONFIG_KV_STORE_KEY_APPLICATION_ACTIVE */
982#ifdef CONFIG_KV_STORE_KEY_BOARD_TARGET
983 {
984 .key = KV_KEY_BOARD_TARGET,
985 .range = 1,
987 },
988#endif /* CONFIG_KV_STORE_KEY_BOARD_TARGET */
989#ifdef CONFIG_KV_STORE_KEY_SECONDARY_REMOTE_PUBLIC_KEY
990 {
992 .range = 1,
993 .flags = KV_FLAGS_REFLECT,
994 },
995#endif /* CONFIG_KV_STORE_KEY_SECONDARY_REMOTE_PUBLIC_KEY */
996#ifdef CONFIG_KV_STORE_KEY_Z_DEVSTATE
997 {
998 .key = KV_KEY_Z_DEVSTATE,
999 .range = 1,
1001 },
1002#endif /* CONFIG_KV_STORE_KEY_Z_DEVSTATE */
1003#ifdef CONFIG_KV_STORE_KEY_FIXED_LOCATION
1004 {
1005 .key = KV_KEY_FIXED_LOCATION,
1006 .range = 1,
1007 .flags = KV_FLAGS_REFLECT,
1008 },
1009#endif /* CONFIG_KV_STORE_KEY_FIXED_LOCATION */
1010#ifdef CONFIG_KV_STORE_KEY_BROADCAST_FIXED_INDOORS
1011 {
1013 .range = 1,
1014 .flags = KV_FLAGS_REFLECT,
1015 },
1016#endif /* CONFIG_KV_STORE_KEY_BROADCAST_FIXED_INDOORS */
1017#ifdef CONFIG_KV_STORE_KEY_LITTLEFS_FS_STATE
1018 {
1020 .range = 1,
1022 },
1023#endif /* CONFIG_KV_STORE_KEY_LITTLEFS_FS_STATE */
1024#ifdef CONFIG_KV_STORE_KEY_LITTLEFS_ALGORITHMS_STATE
1025 {
1027 .range = 1,
1029 },
1030#endif /* CONFIG_KV_STORE_KEY_LITTLEFS_ALGORITHMS_STATE */
1031#ifdef CONFIG_KV_STORE_KEY_WIFI_SSID
1032 {
1033 .key = KV_KEY_WIFI_SSID,
1034 .range = 1,
1035 .flags = KV_FLAGS_REFLECT,
1036 },
1037#endif /* CONFIG_KV_STORE_KEY_WIFI_SSID */
1038#ifdef CONFIG_KV_STORE_KEY_WIFI_PSK
1039 {
1040 .key = KV_KEY_WIFI_PSK,
1041 .range = 1,
1043 },
1044#endif /* CONFIG_KV_STORE_KEY_WIFI_PSK */
1045#ifdef CONFIG_KV_STORE_KEY_WIFI_CHANNELS
1046 {
1047 .key = KV_KEY_WIFI_CHANNELS,
1048 .range = 1,
1049 .flags = KV_FLAGS_REFLECT,
1050 },
1051#endif /* CONFIG_KV_STORE_KEY_WIFI_CHANNELS */
1052#ifdef CONFIG_KV_STORE_KEY_NTP_SERVER_URL
1053 {
1054 .key = KV_KEY_NTP_SERVER_URL,
1055 .range = 1,
1056 .flags = KV_FLAGS_REFLECT,
1057 },
1058#endif /* CONFIG_KV_STORE_KEY_NTP_SERVER_URL */
1059#ifdef CONFIG_KV_STORE_KEY_EPACKET_UDP_URL
1060 {
1062 .range = 1,
1063 .flags = KV_FLAGS_REFLECT,
1064 },
1065#endif /* CONFIG_KV_STORE_KEY_EPACKET_UDP_URL */
1066#ifdef CONFIG_KV_STORE_KEY_EPACKET_UDP_PORT
1067 {
1069 .range = 1,
1070 .flags = KV_FLAGS_REFLECT,
1071 },
1072#endif /* CONFIG_KV_STORE_KEY_EPACKET_UDP_PORT */
1073#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_MODEL
1074 {
1076 .range = 1,
1078 },
1079#endif /* CONFIG_KV_STORE_KEY_LTE_MODEM_MODEL */
1080#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_FIRMWARE_REVISION
1081 {
1083 .range = 1,
1085 },
1086#endif /* CONFIG_KV_STORE_KEY_LTE_MODEM_FIRMWARE_REVISION */
1087#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_ESN
1088 {
1089 .key = KV_KEY_LTE_MODEM_ESN,
1090 .range = 1,
1092 },
1093#endif /* CONFIG_KV_STORE_KEY_LTE_MODEM_ESN */
1094#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_IMEI
1095 {
1096 .key = KV_KEY_LTE_MODEM_IMEI,
1097 .range = 1,
1099 },
1100#endif /* CONFIG_KV_STORE_KEY_LTE_MODEM_IMEI */
1101#ifdef CONFIG_KV_STORE_KEY_LTE_SIM_UICC
1102 {
1103 .key = KV_KEY_LTE_SIM_UICC,
1104 .range = 1,
1106 },
1107#endif /* CONFIG_KV_STORE_KEY_LTE_SIM_UICC */
1108#ifdef CONFIG_KV_STORE_KEY_LTE_PDP_CONFIG
1109 {
1110 .key = KV_KEY_LTE_PDP_CONFIG,
1111 .range = 1,
1112 .flags = KV_FLAGS_REFLECT,
1113 },
1114#endif /* CONFIG_KV_STORE_KEY_LTE_PDP_CONFIG */
1115#ifdef CONFIG_KV_STORE_KEY_LTE_NETWORKING_MODES
1116 {
1118 .range = 1,
1119 .flags = KV_FLAGS_REFLECT,
1120 },
1121#endif /* CONFIG_KV_STORE_KEY_LTE_NETWORKING_MODES */
1122#ifdef CONFIG_KV_STORE_KEY_LTE_SIM_IMSI
1123 {
1124 .key = KV_KEY_LTE_SIM_IMSI,
1125 .range = 1,
1127 },
1128#endif /* CONFIG_KV_STORE_KEY_LTE_SIM_IMSI */
1129#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_PEER
1130 {
1131 .key = KV_KEY_BLUETOOTH_PEER,
1132 .range = 1,
1133 .flags = KV_FLAGS_REFLECT,
1134 },
1135#endif /* CONFIG_KV_STORE_KEY_BLUETOOTH_PEER */
1136#ifdef CONFIG_KV_STORE_KEY_LORA_CONFIG
1137 {
1138 .key = KV_KEY_LORA_CONFIG,
1139 .range = 1,
1140 .flags = KV_FLAGS_REFLECT,
1141 },
1142#endif /* CONFIG_KV_STORE_KEY_LORA_CONFIG */
1143#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_THROUGHPUT_LIMIT
1144 {
1146 .range = 1,
1147 .flags = KV_FLAGS_REFLECT,
1148 },
1149#endif /* CONFIG_KV_STORE_KEY_BLUETOOTH_THROUGHPUT_LIMIT */
1150#ifdef CONFIG_KV_STORE_KEY_LED_DISABLE_DAILY_TIME_RANGE
1151 {
1153 .range = 1,
1154 .flags = KV_FLAGS_REFLECT,
1155 },
1156#endif /* CONFIG_KV_STORE_KEY_LED_DISABLE_DAILY_TIME_RANGE */
1157#ifdef CONFIG_KV_STORE_KEY_MEMFAULT_DISABLE
1158 {
1160 .range = 1,
1161 .flags = 0,
1162 },
1163#endif /* CONFIG_KV_STORE_KEY_MEMFAULT_DISABLE */
1164#ifdef CONFIG_KV_STORE_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS
1165 {
1167 .range = 1,
1168 .flags = KV_FLAGS_REFLECT,
1169 },
1170#endif /* CONFIG_KV_STORE_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS */
1171#ifdef CONFIG_KV_STORE_KEY_NRF_EDGE_AI_RUNTIME_VERSION
1172 {
1174 .range = 1,
1175 .flags = KV_FLAGS_REFLECT,
1176 },
1177#endif /* CONFIG_KV_STORE_KEY_NRF_EDGE_AI_RUNTIME_VERSION */
1178#ifdef CONFIG_KV_STORE_KEY_GRAVITY_REFERENCE
1179 {
1181 .range = 1,
1182 .flags = KV_FLAGS_REFLECT,
1183 },
1184#endif /* CONFIG_KV_STORE_KEY_GRAVITY_REFERENCE */
1185#ifdef CONFIG_KV_STORE_KEY_GEOFENCE
1186 {
1187 .key = KV_KEY_GEOFENCE,
1188 .range = CONFIG_KV_STORE_KEY_GEOFENCE_RANGE,
1189 .flags = KV_FLAGS_REFLECT,
1190 },
1191#endif /* CONFIG_KV_STORE_KEY_GEOFENCE */
1192#ifdef CONFIG_KV_STORE_KEY_ALG_STATIONARY_WINDOWED_ARGS
1193 {
1195 .range = 1,
1196 .flags = KV_FLAGS_REFLECT,
1197 },
1198#endif /* CONFIG_KV_STORE_KEY_ALG_STATIONARY_WINDOWED_ARGS */
1199#ifdef CONFIG_KV_STORE_KEY_ALG_TILT_ARGS
1200 {
1201 .key = KV_KEY_ALG_TILT_ARGS,
1202 .range = 1,
1203 .flags = KV_FLAGS_REFLECT,
1204 },
1205#endif /* CONFIG_KV_STORE_KEY_ALG_TILT_ARGS */
1206#ifdef CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS
1207 {
1209 .range = 1,
1210 .flags = KV_FLAGS_REFLECT,
1211 },
1212#endif /* CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS */
1213#ifdef CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2
1214 {
1216 .range = 1,
1217 .flags = KV_FLAGS_REFLECT,
1218 },
1219#endif /* CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2 */
1220#ifdef CONFIG_KV_STORE_KEY_TASK_SCHEDULES_DEFAULT_ID
1221 {
1223 .range = 1,
1224 .flags = KV_FLAGS_REFLECT,
1225 },
1226#endif /* CONFIG_KV_STORE_KEY_TASK_SCHEDULES_DEFAULT_ID */
1227#ifdef CONFIG_KV_STORE_KEY_TASK_SCHEDULES
1228 {
1229 .key = KV_KEY_TASK_SCHEDULES,
1230 .range = CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE,
1231 .flags = KV_FLAGS_REFLECT,
1232 },
1233#endif /* CONFIG_KV_STORE_KEY_TASK_SCHEDULES */
1234#ifdef CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED
1235 {
1237 .range = CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED_RANGE,
1238 .flags = 0,
1239 },
1240#endif /* CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED */
1241};
1242#endif /* _KV_SLOTS_ARRAY_DEFINE */
1243
1247
1248#ifdef __cplusplus
1249}
1250#endif
1251
1252#endif /* INFUSE_SDK_INCLUDE_GENERATED_KV_DEFINITIONS_H_ */
kv_slot_flags
Flags that can be applied to a slot.
Definition kv_types.h:912
kv_builtin_id
Definition kv_types.h:619
kv_builtin_size
Size of builtin KV definitions.
Definition kv_types.h:735
@ KV_FLAGS_REFLECT
KV reflection enabled for the slot.
Definition kv_types.h:914
@ KV_FLAGS_READ_ONLY
Value can not be written by external actors.
Definition kv_types.h:918
@ KV_FLAGS_WRITE_ONLY
Value can not be read by external actors.
Definition kv_types.h:916
@ KV_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS
Forwarding configuration for Bluetooth advertising packets.
Definition kv_types.h:690
@ KV_KEY_BROADCAST_FIXED_INDOORS
Device is fixed indoors and should broadcast the fact.
Definition kv_types.h:646
@ KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:710
@ KV_KEY_BLUETOOTH_THROUGHPUT_LIMIT
Request connected Bluetooth peers to limit throughput.
Definition kv_types.h:684
@ KV_KEY_LTE_MODEM_MODEL
Modem model as returned by AT+CGMM.
Definition kv_types.h:664
@ KV_KEY_APPLICATION_ACTIVE
Control STATE_APPLICATION_ACTIVE.
Definition kv_types.h:633
@ KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:708
@ KV_KEY_NTP_SERVER_URL
URL of the NTP server to use for time synchronisation.
Definition kv_types.h:658
@ KV_KEY_LTE_SIM_IMSI
'International Modem Subscriber Identity' as returned by AT+CIMI
Definition kv_types.h:678
@ KV_KEY_BLUETOOTH_PEER
Bluetooth peer device.
Definition kv_types.h:680
@ KV_KEY_SECONDARY_REMOTE_PUBLIC_KEY
Storage of secondary remote public key.
Definition kv_types.h:637
@ KV_KEY_NRF_EDGE_AI_RUNTIME_VERSION
Version of the nRF Edge AI runtime.
Definition kv_types.h:692
@ KV_KEY_BUILTIN_END
End of builtin KV range.
Definition kv_types.h:731
@ KV_KEY_WIFI_CHANNELS
WiFi band and channel configuration.
Definition kv_types.h:656
@ KV_KEY_INFUSE_APPLICATION_ID
CONFIG_INFUSE_APPLICATION_ID, store will be reset if the values don't match.
Definition kv_types.h:631
@ KV_KEY_GEOFENCE
Array of points defining a closed polygon.
Definition kv_types.h:696
@ KV_KEY_EXFAT_DISK_INFO
exFAT disk information
Definition kv_types.h:625
@ KV_KEY_LTE_MODEM_FIRMWARE_REVISION
Modem firmware revision as returned by AT+CGMR.
Definition kv_types.h:666
@ KV_KEY_TASK_SCHEDULES_MAX
Maximum number of KV_KEY_TASK_SCHEDULES slots that can be enabled.
Definition kv_types.h:720
@ KV_KEY_FIXED_LOCATION
Fixed global location of the device.
Definition kv_types.h:644
@ KV_KEY_REBOOTS
Number of times device has rebooted.
Definition kv_types.h:621
@ KV_KEY_DEVICE_NAME
Personalised name for the device.
Definition kv_types.h:629
@ KV_KEY_LITTLEFS_ALGORITHMS_STATE
State of algorithms on the LittleFS filesystem.
Definition kv_types.h:650
@ KV_KEY_BOARD_TARGET
Value of CONFIG_BOARD_TARGET.
Definition kv_types.h:635
@ KV_KEY_BLUETOOTH_CTLR_VERSION
External Bluetooth controller version.
Definition kv_types.h:627
@ KV_KEY_WIFI_SSID
WiFi network name.
Definition kv_types.h:652
@ KV_KEY_EPACKET_UDP_URL
ePacket UDP server hostname
Definition kv_types.h:660
@ KV_KEY_LTE_PDP_CONFIG
Packet Data Protocol (PDP) default context configuration.
Definition kv_types.h:674
@ KV_KEY_SECURE_STORAGE_RESERVED_MAX
Maximum number of KV_KEY_SECURE_STORAGE_RESERVED slots that can be enabled.
Definition kv_types.h:729
@ KV_KEY_Z_DEVSTATE
State of the z_devstate section after boot.
Definition kv_types.h:642
@ KV_KEY_GEOFENCE_MAX
Maximum number of KV_KEY_GEOFENCE slots that can be enabled.
Definition kv_types.h:702
@ KV_KEY_ALG_TILT_ARGS
Configuration for the 'Tilt' algorithm.
Definition kv_types.h:706
@ KV_KEY_LORA_CONFIG
LoRa modem configuration.
Definition kv_types.h:682
@ KV_KEY_LTE_MODEM_ESN
'Electronic Serial Number' as returned by AT+CGSN=0
Definition kv_types.h:668
@ KV_KEY_LED_DISABLE_DAILY_TIME_RANGE
Disable LEDs between two UTC times daily.
Definition kv_types.h:686
@ KV_KEY_BLUETOOTH_ADDR
Bluetooth advertising address.
Definition kv_types.h:623
@ KV_KEY_LTE_SIM_UICC
SIM Universal Identifier (https://www.itu.int/en/ITU-T/inr/forms/Pages/iin.aspx)
Definition kv_types.h:672
@ KV_KEY_GRAVITY_REFERENCE
Reference gravity vector for tilt calculations.
Definition kv_types.h:694
@ KV_KEY_LTE_NETWORKING_MODES
Enabled LTE networking modes and preferences.
Definition kv_types.h:676
@ KV_KEY_WIFI_PSK
WiFi network password.
Definition kv_types.h:654
@ KV_KEY_TASK_SCHEDULES
Task runner task schedule definition (task_schedule)
Definition kv_types.h:714
@ KV_KEY_SECURE_STORAGE_RESERVED
Keys reserved for secure storage (do not enable)
Definition kv_types.h:722
@ KV_KEY_EPACKET_UDP_PORT
ePacket UDP server port
Definition kv_types.h:662
@ KV_KEY_LTE_MODEM_IMEI
'International Modem Equipment Identifier' as returned by AT+CGSN=1
Definition kv_types.h:670
@ KV_KEY_MEMFAULT_DISABLE
Disable Memfault reporting at runtime.
Definition kv_types.h:688
@ KV_KEY_ALG_STATIONARY_WINDOWED_ARGS
Configuration for the 'Stationary Windowed' algorithm.
Definition kv_types.h:704
@ KV_KEY_TASK_SCHEDULES_DEFAULT_ID
Unique identifier for default schedule set.
Definition kv_types.h:712
@ KV_KEY_LITTLEFS_FS_STATE
State of LittleFS filesystem.
Definition kv_types.h:648
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:922
uint16_t key
Base key ID for slot.
Definition kv_types.h:924
uint8_t range
Number of IDs used by the slot.
Definition kv_types.h:926
uint8_t flags
Bitmask of kv_slot_flags for slot.
Definition kv_types.h:928
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:553
struct kv_algorithm_movement_threshold_args_v2 args
Algorithm arguments.
Definition kv_types.h:557
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:555
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:545
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:547
struct kv_algorithm_movement_threshold_args args
Algorithm arguments.
Definition kv_types.h:549
Configuration for the 'Stationary Windowed' algorithm.
Definition kv_types.h:529
struct kv_algorithm_stationary_windowed_args args
Algorithm arguments.
Definition kv_types.h:533
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:531
Configuration for the 'Tilt' algorithm.
Definition kv_types.h:537
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:539
struct kv_algorithm_tilt_args args
Algorithm arguments.
Definition kv_types.h:541
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:193
uint8_t active
Active for any non-zero value.
Definition kv_types.h:195
Bluetooth advertising address.
Definition kv_types.h:152
struct bt_addr_le address
Broadcasting address.
Definition kv_types.h:154
External Bluetooth controller version.
Definition kv_types.h:166
uint32_t application
Application ID.
Definition kv_types.h:168
struct kv_mcuboot_img_sem_ver version
Application version number.
Definition kv_types.h:170
Bluetooth peer device.
Definition kv_types.h:440
struct bt_addr_le address
Peer device Bluetooth address.
Definition kv_types.h:442
Request connected Bluetooth peers to limit throughput.
Definition kv_types.h:464
uint16_t limit_kbps
Requested throughput limit (kbps)
Definition kv_types.h:466
Value of CONFIG_BOARD_TARGET.
Definition kv_types.h:199
struct kv_string board_target
Value of CONFIG_BOARD_TARGET.
Definition kv_types.h:201
Device is fixed indoors and should broadcast the fact.
Definition kv_types.h:242
uint8_t indoors
Non-zero: Device is indoors.
Definition kv_types.h:244
Personalised name for the device.
Definition kv_types.h:174
struct kv_string name
Personalised device name.
Definition kv_types.h:176
Initialisation results for a single device.
Definition kv_types.h:129
uint8_t initialized
Indicates the device initialization function invoked.
Definition kv_types.h:133
uint8_t init_res
Device initialization return code (positive errno value)
Definition kv_types.h:131
ePacket UDP server port
Definition kv_types.h:341
uint32_t port
UDP server port.
Definition kv_types.h:343
ePacket UDP server hostname
Definition kv_types.h:327
struct kv_string server
UDP server hostname.
Definition kv_types.h:329
exFAT disk information
Definition kv_types.h:158
uint32_t block_size
Disk block size.
Definition kv_types.h:162
uint32_t block_count
Disk block count.
Definition kv_types.h:160
Fixed global location of the device.
Definition kv_types.h:236
struct gcs_location location
Location.
Definition kv_types.h:238
Forwarding configuration for Bluetooth advertising packets.
Definition kv_types.h:484
uint8_t flags
Forwarding flags (see epacket_filter_flags)
Definition kv_types.h:486
uint8_t percent
Percent of packets to forward that pass flags (255 = all, 128 = half, 0 = none)
Definition kv_types.h:488
Array of points defining a closed polygon.
Definition kv_types.h:512
uint8_t points_num
Number of points in the geofence.
Definition kv_types.h:514
struct gcs_location points[]
Points in geofence.
Definition kv_types.h:516
Reference gravity vector for tilt calculations.
Definition kv_types.h:502
int16_t y
Y axis component of gravity vector.
Definition kv_types.h:506
int16_t z
Z axis component of gravity vector.
Definition kv_types.h:508
int16_t x
X axis component of gravity vector.
Definition kv_types.h:504
CONFIG_INFUSE_APPLICATION_ID, store will be reset if the values don't match.
Definition kv_types.h:188
uint32_t application_id
Definition kv_types.h:189
Disable LEDs between two UTC times daily.
Definition kv_types.h:470
struct kv_utc_hms disable_start
Disable LEDs at this time.
Definition kv_types.h:472
struct kv_utc_hms disable_end
Re-enable LEDs at this time.
Definition kv_types.h:474
State of algorithms on the LittleFS filesystem.
Definition kv_types.h:260
uint8_t count
Number of algorithms on filesystem.
Definition kv_types.h:262
uint32_t crc_xor
XOR of all file data CRCs.
Definition kv_types.h:264
State of LittleFS filesystem.
Definition kv_types.h:248
uint32_t block_size
Size of filesystem blocks in bytes.
Definition kv_types.h:252
uint32_t block_count
Total number of blocks in the filesystem.
Definition kv_types.h:254
uint32_t disk_version
On-disk filesystem version.
Definition kv_types.h:250
uint32_t blocks_used
Blocks currently in use by the filesystem.
Definition kv_types.h:256
LoRa modem configuration.
Definition kv_types.h:446
uint8_t bandwidth
Signal bandwidth (see enum lora_signal_bandwidth)
Definition kv_types.h:450
uint16_t preamble_len
Preamble length.
Definition kv_types.h:456
uint32_t frequency
Frequency (Hz)
Definition kv_types.h:448
int8_t tx_power
Transmit power (dBm)
Definition kv_types.h:458
uint8_t sync_word
Custom sync word.
Definition kv_types.h:460
uint8_t spreading_factor
Spreading factor (see enum lora_datarate)
Definition kv_types.h:452
uint8_t coding_rate
Coding rate (see enum lora_coding_rate)
Definition kv_types.h:454
'Electronic Serial Number' as returned by AT+CGSN=0
Definition kv_types.h:375
struct kv_string esn
ESN or IMEI if not available.
Definition kv_types.h:377
Modem firmware revision as returned by AT+CGMR.
Definition kv_types.h:361
struct kv_string revision
Firmware revision.
Definition kv_types.h:363
'International Modem Equipment Identifier' as returned by AT+CGSN=1
Definition kv_types.h:389
uint64_t imei
15 digit IMEI
Definition kv_types.h:391
Modem model as returned by AT+CGMM.
Definition kv_types.h:347
struct kv_string model
Modem model.
Definition kv_types.h:349
Enabled LTE networking modes and preferences.
Definition kv_types.h:426
uint8_t modes
Enabled modes as per enum lte_lc_system_mode
Definition kv_types.h:428
uint8_t prefer
Preference as per enum lte_lc_system_mode_preference
Definition kv_types.h:430
Packet Data Protocol (PDP) default context configuration.
Definition kv_types.h:409
struct kv_string apn
Access Point Name.
Definition kv_types.h:413
uint8_t family
Protocol family (0 = IPv4, 1 = IPv6, 2 = IPv4v6, 3 = Non-IP)
Definition kv_types.h:411
'International Modem Subscriber Identity' as returned by AT+CIMI
Definition kv_types.h:434
uint64_t imsi
15 digit IMSI
Definition kv_types.h:436
SIM Universal Identifier (https://www.itu.int/en/ITU-T/inr/forms/Pages/iin.aspx)
Definition kv_types.h:395
struct kv_string uicc
Variable length UICC string.
Definition kv_types.h:397
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:478
uint8_t disable
Disable for any non-zero value.
Definition kv_types.h:480
Version of the nRF Edge AI runtime.
Definition kv_types.h:492
uint8_t minor
Minor version.
Definition kv_types.h:496
uint8_t major
Major version.
Definition kv_types.h:494
uint16_t patch
Patch version.
Definition kv_types.h:498
URL of the NTP server to use for time synchronisation.
Definition kv_types.h:313
struct kv_string url
NTP server URL.
Definition kv_types.h:315
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:147
uint32_t count
Definition kv_types.h:148
Storage of secondary remote public key.
Definition kv_types.h:213
uint8_t public_key[32]
Remote public key.
Definition kv_types.h:215
Keys reserved for secure storage (do not enable)
Definition kv_types.h:602
uint8_t data_num
Opaque data.
Definition kv_types.h:604
uint8_t data[]
Opaque data.
Definition kv_types.h:606
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:561
uint32_t set_id
If this value changes, existing schedules are overwritten.
Definition kv_types.h:563
Task runner task schedule definition (task_schedule)
Definition kv_types.h:567
struct kv_range_u8 battery_terminate
Battery charge thresholds to terminate the task.
Definition kv_types.h:581
struct kv_range_u8 battery_start
Battery charge thresholds to start the task.
Definition kv_types.h:579
uint8_t validity
TASK_VALID_* value.
Definition kv_types.h:571
uint8_t task_id
Task ID referenced by schedule.
Definition kv_types.h:569
uint8_t boot_lockout_minutes
Task will not start for the first N minutes after boot.
Definition kv_types.h:575
uint8_t periodicity_type
TASK_PERIODICITY_* value.
Definition kv_types.h:573
uint32_t timeout_s
Duration after which task is requested to terminate.
Definition kv_types.h:577
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:296
uint8_t band
WiFi frequency band (0 = 2.4Ghz, 1 = 5GHz, 2 = 6Ghz, other = Unknown)
Definition kv_types.h:298
uint8_t channels[]
WiFi channels network uses.
Definition kv_types.h:300
WiFi network password.
Definition kv_types.h:282
struct kv_string psk
WiFi pre-shared-key.
Definition kv_types.h:284
WiFi network name.
Definition kv_types.h:268
struct kv_string ssid
WiFi network name.
Definition kv_types.h:270
State of the z_devstate section after boot.
Definition kv_types.h:219
struct kv_device_state first
struct device_state for first device in array
Definition kv_types.h:221
struct kv_device_state remainder[]
struct device_state for remaining devices
Definition kv_types.h:223