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
30
34 int32_t latitude;
36 int32_t longitude;
38 int32_t height;
39} __packed;
40
42struct bt_addr_le {
44 uint8_t type;
46 uint8_t val[6];
47} __packed;
48
50struct kv_string {
52 uint8_t value_num;
54 char value[];
55} __packed;
56
57/* clang-format off */
59#define KV_STRUCT_KV_STRING_VAR(num) \
60 struct { \
61 uint8_t value_num; \
62 char value[num]; \
63 } __packed
64/* clang-format on */
65
69 uint8_t major;
71 uint8_t minor;
73 uint16_t revision;
75 uint32_t build_num;
76} __packed;
77
81 uint8_t lower;
83 uint8_t upper;
84} __packed;
85
87struct kv_utc_hms {
89 uint8_t hour;
91 uint8_t minute;
93 uint8_t second;
94} __packed;
95
99 uint8_t loggers;
101 uint8_t tdf_mask;
102} __packed;
103
111
118} __packed;
119
123 uint32_t moving_for;
125 uint32_t threshold_ug;
126} __packed;
127
137
141 uint8_t init_res;
143 uint8_t initialized;
144} __packed;
145
149
156
160 uint32_t count;
161} __packed;
162
167} __packed;
168
172 uint32_t block_count;
174 uint32_t block_size;
175} __packed;
176
184
189} __packed;
190
191/* clang-format off */
193#define _KV_KEY_DEVICE_NAME_VAR(num) \
194 struct { \
195 KV_STRUCT_KV_STRING_VAR(num) name; \
196 } __packed
197/* clang-format on */
198
203} __packed;
204
208 uint8_t active;
209} __packed;
210
215} __packed;
216
217/* clang-format off */
219#define _KV_KEY_BOARD_TARGET_VAR(num) \
220 struct { \
221 KV_STRUCT_KV_STRING_VAR(num) board_target; \
222 } __packed
223/* clang-format on */
224
228 uint8_t public_key[32];
229} __packed;
230
237} __packed;
238
239/* clang-format off */
241#define _KV_KEY_Z_DEVSTATE_VAR(num) \
242 struct { \
243 struct kv_device_state first; \
244 struct kv_device_state remainder[num]; \
245 } __packed
246/* clang-format on */
247
252} __packed;
253
257 uint8_t indoors;
258} __packed;
259
263 uint32_t disk_version;
265 uint32_t block_size;
267 uint32_t block_count;
269 uint32_t blocks_used;
270} __packed;
271
275 uint8_t count;
277 uint32_t crc_xor;
278} __packed;
279
283 uint32_t id;
284} __packed;
285
289 uint32_t id;
290} __packed;
291
296} __packed;
297
298/* clang-format off */
300#define _KV_KEY_WIFI_SSID_VAR(num) \
301 struct { \
302 KV_STRUCT_KV_STRING_VAR(num) ssid; \
303 } __packed
304/* clang-format on */
305
310} __packed;
311
312/* clang-format off */
314#define _KV_KEY_WIFI_PSK_VAR(num) \
315 struct { \
316 KV_STRUCT_KV_STRING_VAR(num) psk; \
317 } __packed
318/* clang-format on */
319
323 uint8_t band;
325 uint8_t channels[];
326} __packed;
327
328/* clang-format off */
330#define _KV_KEY_WIFI_CHANNELS_VAR(num) \
331 struct { \
332 uint8_t band; \
333 uint8_t channels[num]; \
334 } __packed
335/* clang-format on */
336
341} __packed;
342
343/* clang-format off */
345#define _KV_KEY_NTP_SERVER_URL_VAR(num) \
346 struct { \
347 KV_STRUCT_KV_STRING_VAR(num) url; \
348 } __packed
349/* clang-format on */
350
355} __packed;
356
357/* clang-format off */
359#define _KV_KEY_EPACKET_UDP_URL_VAR(num) \
360 struct { \
361 KV_STRUCT_KV_STRING_VAR(num) server; \
362 } __packed
363/* clang-format on */
364
368 uint32_t port;
369} __packed;
370
375} __packed;
376
377/* clang-format off */
379#define _KV_KEY_LTE_MODEM_MODEL_VAR(num) \
380 struct { \
381 KV_STRUCT_KV_STRING_VAR(num) model; \
382 } __packed
383/* clang-format on */
384
390
391/* clang-format off */
393#define _KV_KEY_LTE_MODEM_FIRMWARE_REVISION_VAR(num) \
394 struct { \
395 KV_STRUCT_KV_STRING_VAR(num) revision; \
396 } __packed
397/* clang-format on */
398
403} __packed;
404
405/* clang-format off */
407#define _KV_KEY_LTE_MODEM_ESN_VAR(num) \
408 struct { \
409 KV_STRUCT_KV_STRING_VAR(num) esn; \
410 } __packed
411/* clang-format on */
412
416 uint64_t imei;
417} __packed;
418
423} __packed;
424
425/* clang-format off */
427#define _KV_KEY_LTE_SIM_UICC_VAR(num) \
428 struct { \
429 KV_STRUCT_KV_STRING_VAR(num) uicc; \
430 } __packed
431/* clang-format on */
432
436 uint8_t family;
439} __packed;
440
441/* clang-format off */
443#define _KV_KEY_LTE_PDP_CONFIG_VAR(num) \
444 struct { \
445 uint8_t family; \
446 KV_STRUCT_KV_STRING_VAR(num) apn; \
447 } __packed
448/* clang-format on */
449
453 uint8_t modes;
455 uint8_t prefer;
456} __packed;
457
461 uint64_t imsi;
462} __packed;
463
468} __packed;
469
473 uint32_t frequency;
475 uint8_t bandwidth;
479 uint8_t coding_rate;
481 uint16_t preamble_len;
483 int8_t tx_power;
485 uint8_t sync_word;
486} __packed;
487
491 uint16_t limit_kbps;
492} __packed;
493
501
505 uint8_t disable;
506} __packed;
507
511 uint8_t flags;
513 uint8_t percent;
514} __packed;
515
519 uint8_t major;
521 uint8_t minor;
523 uint16_t patch;
524} __packed;
525
529 int16_t x;
531 int16_t y;
533 int16_t z;
534} __packed;
535
539 uint8_t points_num;
542} __packed;
543
544/* clang-format off */
546#define _KV_KEY_GEOFENCE_VAR(num) \
547 struct { \
548 uint8_t points_num; \
549 struct gcs_location points[num]; \
550 } __packed
551/* clang-format on */
552
560
568
576
584
588 uint32_t set_id;
589} __packed;
590
594 uint8_t task_id;
596 uint8_t validity;
602 uint32_t timeout_s;
608 uint8_t _remainder[];
609} __packed;
610
611/* clang-format off */
613#define _KV_KEY_TASK_SCHEDULES_VAR(num) \
614 struct { \
615 uint8_t task_id; \
616 uint8_t validity; \
617 uint8_t periodicity_type; \
618 uint8_t boot_lockout_minutes; \
619 uint32_t timeout_s; \
620 struct kv_range_u8 battery_start; \
621 struct kv_range_u8 battery_terminate; \
622 uint8_t _remainder[num]; \
623 } __packed
624/* clang-format on */
625
629 uint8_t data_num;
631 uint8_t data[];
632} __packed;
633
634/* clang-format off */
636#define _KV_KEY_SECURE_STORAGE_RESERVED_VAR(num) \
637 struct { \
638 uint8_t data_num; \
639 uint8_t data[num]; \
640 } __packed
641/* clang-format on */
642
726#ifdef CONFIG_KV_STORE_KEY_GEOFENCE_RANGE
728 KV_KEY_GEOFENCE_END = 100 + CONFIG_KV_STORE_KEY_GEOFENCE_RANGE - 1,
729#endif
744#ifdef CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE
746 KV_KEY_TASK_SCHEDULES_END = 1001 + CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE - 1,
747#endif
752#ifdef CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED_RANGE
754 KV_KEY_SECURE_STORAGE_RESERVED_END =
755 30000 + CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED_RANGE - 1,
756#endif
761};
762
765 _KV_KEY_REBOOTS_SIZE = sizeof(struct kv_reboots),
766 _KV_KEY_BLUETOOTH_ADDR_SIZE = sizeof(struct kv_bluetooth_addr),
767 _KV_KEY_EXFAT_DISK_INFO_SIZE = sizeof(struct kv_exfat_disk_info),
768 _KV_KEY_BLUETOOTH_CTLR_VERSION_SIZE = sizeof(struct kv_bluetooth_ctlr_version),
769 _KV_KEY_INFUSE_APPLICATION_ID_SIZE = sizeof(struct kv_infuse_application_id),
770 _KV_KEY_APPLICATION_ACTIVE_SIZE = sizeof(struct kv_application_active),
771 _KV_KEY_SECONDARY_REMOTE_PUBLIC_KEY_SIZE = sizeof(struct kv_secondary_remote_public_key),
772 _KV_KEY_FIXED_LOCATION_SIZE = sizeof(struct kv_fixed_location),
773 _KV_KEY_BROADCAST_FIXED_INDOORS_SIZE = sizeof(struct kv_broadcast_fixed_indoors),
774 _KV_KEY_LITTLEFS_FS_STATE_SIZE = sizeof(struct kv_littlefs_fs_state),
775 _KV_KEY_LITTLEFS_ALGORITHMS_STATE_SIZE = sizeof(struct kv_littlefs_algorithms_state),
776 _KV_KEY_NETWORK_ID_PRIMARY_SIZE = sizeof(struct kv_network_id_primary),
777 _KV_KEY_NETWORK_ID_SECONDARY_SIZE = sizeof(struct kv_network_id_secondary),
778 _KV_KEY_EPACKET_UDP_PORT_SIZE = sizeof(struct kv_epacket_udp_port),
779 _KV_KEY_LTE_MODEM_IMEI_SIZE = sizeof(struct kv_lte_modem_imei),
780 _KV_KEY_LTE_NETWORKING_MODES_SIZE = sizeof(struct kv_lte_networking_modes),
781 _KV_KEY_LTE_SIM_IMSI_SIZE = sizeof(struct kv_lte_sim_imsi),
782 _KV_KEY_BLUETOOTH_PEER_SIZE = sizeof(struct kv_bluetooth_peer),
783 _KV_KEY_LORA_CONFIG_SIZE = sizeof(struct kv_lora_config),
784 _KV_KEY_BLUETOOTH_THROUGHPUT_LIMIT_SIZE = sizeof(struct kv_bluetooth_throughput_limit),
785 _KV_KEY_LED_DISABLE_DAILY_TIME_RANGE_SIZE = sizeof(struct kv_led_disable_daily_time_range),
786 _KV_KEY_MEMFAULT_DISABLE_SIZE = sizeof(struct kv_memfault_disable),
787 _KV_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS_SIZE =
789 _KV_KEY_NRF_EDGE_AI_RUNTIME_VERSION_SIZE = sizeof(struct kv_nrf_edge_ai_runtime_version),
790 _KV_KEY_GRAVITY_REFERENCE_SIZE = sizeof(struct kv_gravity_reference),
791 _KV_KEY_ALG_STATIONARY_WINDOWED_ARGS_SIZE = sizeof(struct kv_alg_stationary_windowed_args),
792 _KV_KEY_ALG_TILT_ARGS_SIZE = sizeof(struct kv_alg_tilt_args),
793 _KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_SIZE = sizeof(struct kv_alg_movement_threshold_args),
794 _KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2_SIZE =
796 _KV_KEY_TASK_SCHEDULES_DEFAULT_ID_SIZE = sizeof(struct kv_task_schedules_default_id),
797};
798
799/* clang-format off */
800/* Types of builtin KV definitions */
801#define _KV_KEY_REBOOTS_TYPE struct kv_reboots
802#define _KV_KEY_BLUETOOTH_ADDR_TYPE struct kv_bluetooth_addr
803#define _KV_KEY_EXFAT_DISK_INFO_TYPE struct kv_exfat_disk_info
804#define _KV_KEY_BLUETOOTH_CTLR_VERSION_TYPE struct kv_bluetooth_ctlr_version
805#define _KV_KEY_DEVICE_NAME_TYPE struct kv_device_name
806#define _KV_KEY_INFUSE_APPLICATION_ID_TYPE struct kv_infuse_application_id
807#define _KV_KEY_APPLICATION_ACTIVE_TYPE struct kv_application_active
808#define _KV_KEY_BOARD_TARGET_TYPE struct kv_board_target
809#define _KV_KEY_SECONDARY_REMOTE_PUBLIC_KEY_TYPE struct kv_secondary_remote_public_key
810#define _KV_KEY_Z_DEVSTATE_TYPE struct kv_z_devstate
811#define _KV_KEY_FIXED_LOCATION_TYPE struct kv_fixed_location
812#define _KV_KEY_BROADCAST_FIXED_INDOORS_TYPE struct kv_broadcast_fixed_indoors
813#define _KV_KEY_LITTLEFS_FS_STATE_TYPE struct kv_littlefs_fs_state
814#define _KV_KEY_LITTLEFS_ALGORITHMS_STATE_TYPE struct kv_littlefs_algorithms_state
815#define _KV_KEY_NETWORK_ID_PRIMARY_TYPE struct kv_network_id_primary
816#define _KV_KEY_NETWORK_ID_SECONDARY_TYPE struct kv_network_id_secondary
817#define _KV_KEY_WIFI_SSID_TYPE struct kv_wifi_ssid
818#define _KV_KEY_WIFI_PSK_TYPE struct kv_wifi_psk
819#define _KV_KEY_WIFI_CHANNELS_TYPE struct kv_wifi_channels
820#define _KV_KEY_NTP_SERVER_URL_TYPE struct kv_ntp_server_url
821#define _KV_KEY_EPACKET_UDP_URL_TYPE struct kv_epacket_udp_url
822#define _KV_KEY_EPACKET_UDP_PORT_TYPE struct kv_epacket_udp_port
823#define _KV_KEY_LTE_MODEM_MODEL_TYPE struct kv_lte_modem_model
824#define _KV_KEY_LTE_MODEM_FIRMWARE_REVISION_TYPE struct kv_lte_modem_firmware_revision
825#define _KV_KEY_LTE_MODEM_ESN_TYPE struct kv_lte_modem_esn
826#define _KV_KEY_LTE_MODEM_IMEI_TYPE struct kv_lte_modem_imei
827#define _KV_KEY_LTE_SIM_UICC_TYPE struct kv_lte_sim_uicc
828#define _KV_KEY_LTE_PDP_CONFIG_TYPE struct kv_lte_pdp_config
829#define _KV_KEY_LTE_NETWORKING_MODES_TYPE struct kv_lte_networking_modes
830#define _KV_KEY_LTE_SIM_IMSI_TYPE struct kv_lte_sim_imsi
831#define _KV_KEY_BLUETOOTH_PEER_TYPE struct kv_bluetooth_peer
832#define _KV_KEY_LORA_CONFIG_TYPE struct kv_lora_config
833#define _KV_KEY_BLUETOOTH_THROUGHPUT_LIMIT_TYPE struct kv_bluetooth_throughput_limit
834#define _KV_KEY_LED_DISABLE_DAILY_TIME_RANGE_TYPE struct kv_led_disable_daily_time_range
835#define _KV_KEY_MEMFAULT_DISABLE_TYPE struct kv_memfault_disable
836#define _KV_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS_TYPE struct kv_gateway_bluetooth_forward_options
837#define _KV_KEY_NRF_EDGE_AI_RUNTIME_VERSION_TYPE struct kv_nrf_edge_ai_runtime_version
838#define _KV_KEY_GRAVITY_REFERENCE_TYPE struct kv_gravity_reference
839#define _KV_KEY_GEOFENCE_TYPE struct kv_geofence
840#define _KV_KEY_ALG_STATIONARY_WINDOWED_ARGS_TYPE struct kv_alg_stationary_windowed_args
841#define _KV_KEY_ALG_TILT_ARGS_TYPE struct kv_alg_tilt_args
842#define _KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_TYPE struct kv_alg_movement_threshold_args
843#define _KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2_TYPE struct kv_alg_movement_threshold_args_v2
844#define _KV_KEY_TASK_SCHEDULES_DEFAULT_ID_TYPE struct kv_task_schedules_default_id
845#define _KV_KEY_TASK_SCHEDULES_TYPE struct kv_task_schedules
846#define _KV_KEY_SECURE_STORAGE_RESERVED_TYPE struct kv_secure_storage_reserved
847/* clang-format on */
848
849/* clang-format off */
851#define KV_REFLECT_NUM ( \
852 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_ADDR, \
853 (1 +)) \
854 IF_ENABLED(CONFIG_KV_STORE_KEY_EXFAT_DISK_INFO, \
855 (1 +)) \
856 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_CTLR_VERSION, \
857 (1 +)) \
858 IF_ENABLED(CONFIG_KV_STORE_KEY_DEVICE_NAME, \
859 (1 +)) \
860 IF_ENABLED(CONFIG_KV_STORE_KEY_BOARD_TARGET, \
861 (1 +)) \
862 IF_ENABLED(CONFIG_KV_STORE_KEY_SECONDARY_REMOTE_PUBLIC_KEY, \
863 (1 +)) \
864 IF_ENABLED(CONFIG_KV_STORE_KEY_Z_DEVSTATE, \
865 (1 +)) \
866 IF_ENABLED(CONFIG_KV_STORE_KEY_FIXED_LOCATION, \
867 (1 +)) \
868 IF_ENABLED(CONFIG_KV_STORE_KEY_BROADCAST_FIXED_INDOORS, \
869 (1 +)) \
870 IF_ENABLED(CONFIG_KV_STORE_KEY_LITTLEFS_FS_STATE, \
871 (1 +)) \
872 IF_ENABLED(CONFIG_KV_STORE_KEY_LITTLEFS_ALGORITHMS_STATE, \
873 (1 +)) \
874 IF_ENABLED(CONFIG_KV_STORE_KEY_NETWORK_ID_PRIMARY, \
875 (1 +)) \
876 IF_ENABLED(CONFIG_KV_STORE_KEY_NETWORK_ID_SECONDARY, \
877 (1 +)) \
878 IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_SSID, \
879 (1 +)) \
880 IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_PSK, \
881 (1 +)) \
882 IF_ENABLED(CONFIG_KV_STORE_KEY_WIFI_CHANNELS, \
883 (1 +)) \
884 IF_ENABLED(CONFIG_KV_STORE_KEY_NTP_SERVER_URL, \
885 (1 +)) \
886 IF_ENABLED(CONFIG_KV_STORE_KEY_EPACKET_UDP_URL, \
887 (1 +)) \
888 IF_ENABLED(CONFIG_KV_STORE_KEY_EPACKET_UDP_PORT, \
889 (1 +)) \
890 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_MODEL, \
891 (1 +)) \
892 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_FIRMWARE_REVISION, \
893 (1 +)) \
894 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_ESN, \
895 (1 +)) \
896 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_MODEM_IMEI, \
897 (1 +)) \
898 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_SIM_UICC, \
899 (1 +)) \
900 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_PDP_CONFIG, \
901 (1 +)) \
902 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_NETWORKING_MODES, \
903 (1 +)) \
904 IF_ENABLED(CONFIG_KV_STORE_KEY_LTE_SIM_IMSI, \
905 (1 +)) \
906 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_PEER, \
907 (1 +)) \
908 IF_ENABLED(CONFIG_KV_STORE_KEY_LORA_CONFIG, \
909 (1 +)) \
910 IF_ENABLED(CONFIG_KV_STORE_KEY_BLUETOOTH_THROUGHPUT_LIMIT, \
911 (1 +)) \
912 IF_ENABLED(CONFIG_KV_STORE_KEY_LED_DISABLE_DAILY_TIME_RANGE, \
913 (1 +)) \
914 IF_ENABLED(CONFIG_KV_STORE_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS, \
915 (1 +)) \
916 IF_ENABLED(CONFIG_KV_STORE_KEY_NRF_EDGE_AI_RUNTIME_VERSION, \
917 (1 +)) \
918 IF_ENABLED(CONFIG_KV_STORE_KEY_GRAVITY_REFERENCE, \
919 (1 +)) \
920 IF_ENABLED(CONFIG_KV_STORE_KEY_GEOFENCE, \
921 (CONFIG_KV_STORE_KEY_GEOFENCE_RANGE +)) \
922 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_STATIONARY_WINDOWED_ARGS, \
923 (1 +)) \
924 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_TILT_ARGS, \
925 (1 +)) \
926 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS, \
927 (1 +)) \
928 IF_ENABLED(CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2, \
929 (1 +)) \
930 IF_ENABLED(CONFIG_KV_STORE_KEY_TASK_SCHEDULES_DEFAULT_ID, \
931 (1 +)) \
932 IF_ENABLED(CONFIG_KV_STORE_KEY_TASK_SCHEDULES, \
933 (CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE +)) \
934 0)
935/* clang-format on */
936
938#define KV_KEY_TYPE(key) _##key##_TYPE
939
940#define _KV_KEY_TYPE_VAR_EXEC(macro, num) macro(num)
941
943#define KV_KEY_TYPE_VAR(key, num) _KV_KEY_TYPE_VAR_EXEC(_##key##_VAR, num)
944
946#define KV_STRING_CONST(name, val) KV_STRUCT_KV_STRING_VAR(sizeof(val)) name = {sizeof(val), val};
947
957
961 uint16_t key;
963 uint8_t range;
965 uint8_t flags;
966};
967
968#ifdef _KV_SLOTS_ARRAY_DEFINE
969static struct key_value_slot_definition _KV_SLOTS_ARRAY_DEFINE[] = {
970#ifdef CONFIG_KV_STORE_KEY_REBOOTS
971 {
972 .key = KV_KEY_REBOOTS,
973 .range = 1,
974 .flags = 0,
975 },
976#endif /* CONFIG_KV_STORE_KEY_REBOOTS */
977#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_ADDR
978 {
980 .range = 1,
982 },
983#endif /* CONFIG_KV_STORE_KEY_BLUETOOTH_ADDR */
984#ifdef CONFIG_KV_STORE_KEY_EXFAT_DISK_INFO
985 {
987 .range = 1,
989 },
990#endif /* CONFIG_KV_STORE_KEY_EXFAT_DISK_INFO */
991#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_CTLR_VERSION
992 {
994 .range = 1,
995 .flags = KV_FLAGS_REFLECT,
996 },
997#endif /* CONFIG_KV_STORE_KEY_BLUETOOTH_CTLR_VERSION */
998#ifdef CONFIG_KV_STORE_KEY_DEVICE_NAME
999 {
1000 .key = KV_KEY_DEVICE_NAME,
1001 .range = 1,
1002 .flags = KV_FLAGS_REFLECT,
1003 },
1004#endif /* CONFIG_KV_STORE_KEY_DEVICE_NAME */
1005#ifdef CONFIG_KV_STORE_KEY_INFUSE_APPLICATION_ID
1006 {
1008 .range = 1,
1009 .flags = 0,
1010 },
1011#endif /* CONFIG_KV_STORE_KEY_INFUSE_APPLICATION_ID */
1012#ifdef CONFIG_KV_STORE_KEY_APPLICATION_ACTIVE
1013 {
1015 .range = 1,
1016 .flags = 0,
1017 },
1018#endif /* CONFIG_KV_STORE_KEY_APPLICATION_ACTIVE */
1019#ifdef CONFIG_KV_STORE_KEY_BOARD_TARGET
1020 {
1021 .key = KV_KEY_BOARD_TARGET,
1022 .range = 1,
1024 },
1025#endif /* CONFIG_KV_STORE_KEY_BOARD_TARGET */
1026#ifdef CONFIG_KV_STORE_KEY_SECONDARY_REMOTE_PUBLIC_KEY
1027 {
1029 .range = 1,
1031 },
1032#endif /* CONFIG_KV_STORE_KEY_SECONDARY_REMOTE_PUBLIC_KEY */
1033#ifdef CONFIG_KV_STORE_KEY_Z_DEVSTATE
1034 {
1035 .key = KV_KEY_Z_DEVSTATE,
1036 .range = 1,
1038 },
1039#endif /* CONFIG_KV_STORE_KEY_Z_DEVSTATE */
1040#ifdef CONFIG_KV_STORE_KEY_FIXED_LOCATION
1041 {
1042 .key = KV_KEY_FIXED_LOCATION,
1043 .range = 1,
1044 .flags = KV_FLAGS_REFLECT,
1045 },
1046#endif /* CONFIG_KV_STORE_KEY_FIXED_LOCATION */
1047#ifdef CONFIG_KV_STORE_KEY_BROADCAST_FIXED_INDOORS
1048 {
1050 .range = 1,
1051 .flags = KV_FLAGS_REFLECT,
1052 },
1053#endif /* CONFIG_KV_STORE_KEY_BROADCAST_FIXED_INDOORS */
1054#ifdef CONFIG_KV_STORE_KEY_LITTLEFS_FS_STATE
1055 {
1057 .range = 1,
1059 },
1060#endif /* CONFIG_KV_STORE_KEY_LITTLEFS_FS_STATE */
1061#ifdef CONFIG_KV_STORE_KEY_LITTLEFS_ALGORITHMS_STATE
1062 {
1064 .range = 1,
1066 },
1067#endif /* CONFIG_KV_STORE_KEY_LITTLEFS_ALGORITHMS_STATE */
1068#ifdef CONFIG_KV_STORE_KEY_NETWORK_ID_PRIMARY
1069 {
1071 .range = 1,
1073 },
1074#endif /* CONFIG_KV_STORE_KEY_NETWORK_ID_PRIMARY */
1075#ifdef CONFIG_KV_STORE_KEY_NETWORK_ID_SECONDARY
1076 {
1078 .range = 1,
1080 },
1081#endif /* CONFIG_KV_STORE_KEY_NETWORK_ID_SECONDARY */
1082#ifdef CONFIG_KV_STORE_KEY_WIFI_SSID
1083 {
1084 .key = KV_KEY_WIFI_SSID,
1085 .range = 1,
1086 .flags = KV_FLAGS_REFLECT,
1087 },
1088#endif /* CONFIG_KV_STORE_KEY_WIFI_SSID */
1089#ifdef CONFIG_KV_STORE_KEY_WIFI_PSK
1090 {
1091 .key = KV_KEY_WIFI_PSK,
1092 .range = 1,
1094 },
1095#endif /* CONFIG_KV_STORE_KEY_WIFI_PSK */
1096#ifdef CONFIG_KV_STORE_KEY_WIFI_CHANNELS
1097 {
1098 .key = KV_KEY_WIFI_CHANNELS,
1099 .range = 1,
1100 .flags = KV_FLAGS_REFLECT,
1101 },
1102#endif /* CONFIG_KV_STORE_KEY_WIFI_CHANNELS */
1103#ifdef CONFIG_KV_STORE_KEY_NTP_SERVER_URL
1104 {
1105 .key = KV_KEY_NTP_SERVER_URL,
1106 .range = 1,
1107 .flags = KV_FLAGS_REFLECT,
1108 },
1109#endif /* CONFIG_KV_STORE_KEY_NTP_SERVER_URL */
1110#ifdef CONFIG_KV_STORE_KEY_EPACKET_UDP_URL
1111 {
1113 .range = 1,
1114 .flags = KV_FLAGS_REFLECT,
1115 },
1116#endif /* CONFIG_KV_STORE_KEY_EPACKET_UDP_URL */
1117#ifdef CONFIG_KV_STORE_KEY_EPACKET_UDP_PORT
1118 {
1120 .range = 1,
1121 .flags = KV_FLAGS_REFLECT,
1122 },
1123#endif /* CONFIG_KV_STORE_KEY_EPACKET_UDP_PORT */
1124#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_MODEL
1125 {
1127 .range = 1,
1129 },
1130#endif /* CONFIG_KV_STORE_KEY_LTE_MODEM_MODEL */
1131#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_FIRMWARE_REVISION
1132 {
1134 .range = 1,
1136 },
1137#endif /* CONFIG_KV_STORE_KEY_LTE_MODEM_FIRMWARE_REVISION */
1138#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_ESN
1139 {
1140 .key = KV_KEY_LTE_MODEM_ESN,
1141 .range = 1,
1143 },
1144#endif /* CONFIG_KV_STORE_KEY_LTE_MODEM_ESN */
1145#ifdef CONFIG_KV_STORE_KEY_LTE_MODEM_IMEI
1146 {
1147 .key = KV_KEY_LTE_MODEM_IMEI,
1148 .range = 1,
1150 },
1151#endif /* CONFIG_KV_STORE_KEY_LTE_MODEM_IMEI */
1152#ifdef CONFIG_KV_STORE_KEY_LTE_SIM_UICC
1153 {
1154 .key = KV_KEY_LTE_SIM_UICC,
1155 .range = 1,
1157 },
1158#endif /* CONFIG_KV_STORE_KEY_LTE_SIM_UICC */
1159#ifdef CONFIG_KV_STORE_KEY_LTE_PDP_CONFIG
1160 {
1161 .key = KV_KEY_LTE_PDP_CONFIG,
1162 .range = 1,
1163 .flags = KV_FLAGS_REFLECT,
1164 },
1165#endif /* CONFIG_KV_STORE_KEY_LTE_PDP_CONFIG */
1166#ifdef CONFIG_KV_STORE_KEY_LTE_NETWORKING_MODES
1167 {
1169 .range = 1,
1170 .flags = KV_FLAGS_REFLECT,
1171 },
1172#endif /* CONFIG_KV_STORE_KEY_LTE_NETWORKING_MODES */
1173#ifdef CONFIG_KV_STORE_KEY_LTE_SIM_IMSI
1174 {
1175 .key = KV_KEY_LTE_SIM_IMSI,
1176 .range = 1,
1178 },
1179#endif /* CONFIG_KV_STORE_KEY_LTE_SIM_IMSI */
1180#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_PEER
1181 {
1182 .key = KV_KEY_BLUETOOTH_PEER,
1183 .range = 1,
1184 .flags = KV_FLAGS_REFLECT,
1185 },
1186#endif /* CONFIG_KV_STORE_KEY_BLUETOOTH_PEER */
1187#ifdef CONFIG_KV_STORE_KEY_LORA_CONFIG
1188 {
1189 .key = KV_KEY_LORA_CONFIG,
1190 .range = 1,
1191 .flags = KV_FLAGS_REFLECT,
1192 },
1193#endif /* CONFIG_KV_STORE_KEY_LORA_CONFIG */
1194#ifdef CONFIG_KV_STORE_KEY_BLUETOOTH_THROUGHPUT_LIMIT
1195 {
1197 .range = 1,
1198 .flags = KV_FLAGS_REFLECT,
1199 },
1200#endif /* CONFIG_KV_STORE_KEY_BLUETOOTH_THROUGHPUT_LIMIT */
1201#ifdef CONFIG_KV_STORE_KEY_LED_DISABLE_DAILY_TIME_RANGE
1202 {
1204 .range = 1,
1205 .flags = KV_FLAGS_REFLECT,
1206 },
1207#endif /* CONFIG_KV_STORE_KEY_LED_DISABLE_DAILY_TIME_RANGE */
1208#ifdef CONFIG_KV_STORE_KEY_MEMFAULT_DISABLE
1209 {
1211 .range = 1,
1212 .flags = 0,
1213 },
1214#endif /* CONFIG_KV_STORE_KEY_MEMFAULT_DISABLE */
1215#ifdef CONFIG_KV_STORE_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS
1216 {
1218 .range = 1,
1219 .flags = KV_FLAGS_REFLECT,
1220 },
1221#endif /* CONFIG_KV_STORE_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS */
1222#ifdef CONFIG_KV_STORE_KEY_NRF_EDGE_AI_RUNTIME_VERSION
1223 {
1225 .range = 1,
1226 .flags = KV_FLAGS_REFLECT,
1227 },
1228#endif /* CONFIG_KV_STORE_KEY_NRF_EDGE_AI_RUNTIME_VERSION */
1229#ifdef CONFIG_KV_STORE_KEY_GRAVITY_REFERENCE
1230 {
1232 .range = 1,
1233 .flags = KV_FLAGS_REFLECT,
1234 },
1235#endif /* CONFIG_KV_STORE_KEY_GRAVITY_REFERENCE */
1236#ifdef CONFIG_KV_STORE_KEY_GEOFENCE
1237 {
1238 .key = KV_KEY_GEOFENCE,
1239 .range = CONFIG_KV_STORE_KEY_GEOFENCE_RANGE,
1240 .flags = KV_FLAGS_REFLECT,
1241 },
1242#endif /* CONFIG_KV_STORE_KEY_GEOFENCE */
1243#ifdef CONFIG_KV_STORE_KEY_ALG_STATIONARY_WINDOWED_ARGS
1244 {
1246 .range = 1,
1247 .flags = KV_FLAGS_REFLECT,
1248 },
1249#endif /* CONFIG_KV_STORE_KEY_ALG_STATIONARY_WINDOWED_ARGS */
1250#ifdef CONFIG_KV_STORE_KEY_ALG_TILT_ARGS
1251 {
1252 .key = KV_KEY_ALG_TILT_ARGS,
1253 .range = 1,
1254 .flags = KV_FLAGS_REFLECT,
1255 },
1256#endif /* CONFIG_KV_STORE_KEY_ALG_TILT_ARGS */
1257#ifdef CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS
1258 {
1260 .range = 1,
1261 .flags = KV_FLAGS_REFLECT,
1262 },
1263#endif /* CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS */
1264#ifdef CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2
1265 {
1267 .range = 1,
1268 .flags = KV_FLAGS_REFLECT,
1269 },
1270#endif /* CONFIG_KV_STORE_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2 */
1271#ifdef CONFIG_KV_STORE_KEY_TASK_SCHEDULES_DEFAULT_ID
1272 {
1274 .range = 1,
1275 .flags = KV_FLAGS_REFLECT,
1276 },
1277#endif /* CONFIG_KV_STORE_KEY_TASK_SCHEDULES_DEFAULT_ID */
1278#ifdef CONFIG_KV_STORE_KEY_TASK_SCHEDULES
1279 {
1280 .key = KV_KEY_TASK_SCHEDULES,
1281 .range = CONFIG_KV_STORE_KEY_TASK_SCHEDULES_RANGE,
1282 .flags = KV_FLAGS_REFLECT,
1283 },
1284#endif /* CONFIG_KV_STORE_KEY_TASK_SCHEDULES */
1285#ifdef CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED
1286 {
1288 .range = CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED_RANGE,
1289 .flags = 0,
1290 },
1291#endif /* CONFIG_KV_STORE_KEY_SECURE_STORAGE_RESERVED */
1292};
1293#endif /* _KV_SLOTS_ARRAY_DEFINE */
1294
1298
1299#ifdef __cplusplus
1300}
1301#endif
1302
1303#endif /* INFUSE_SDK_INCLUDE_GENERATED_KV_DEFINITIONS_H_ */
kv_slot_flags
Flags that can be applied to a slot.
Definition kv_types.h:949
kv_builtin_id
Infuse-IoT builtin KV definitions.
Definition kv_types.h:644
kv_builtin_size
Size of builtin KV definitions.
Definition kv_types.h:764
@ KV_FLAGS_REFLECT
KV reflection enabled for the slot.
Definition kv_types.h:951
@ KV_FLAGS_READ_ONLY
Value can not be written by external actors.
Definition kv_types.h:955
@ KV_FLAGS_WRITE_ONLY
Value can not be read by external actors.
Definition kv_types.h:953
@ KV_KEY_GATEWAY_BLUETOOTH_FORWARD_OPTIONS
Forwarding configuration for Bluetooth advertising packets.
Definition kv_types.h:719
@ KV_KEY_BROADCAST_FIXED_INDOORS
Device is fixed indoors and should broadcast the fact.
Definition kv_types.h:671
@ KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS_V2
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:739
@ KV_KEY_BLUETOOTH_THROUGHPUT_LIMIT
Request connected Bluetooth peers to limit throughput.
Definition kv_types.h:713
@ KV_KEY_LTE_MODEM_MODEL
Modem model as returned by AT+CGMM.
Definition kv_types.h:693
@ KV_KEY_APPLICATION_ACTIVE
Control STATE_APPLICATION_ACTIVE.
Definition kv_types.h:658
@ KV_KEY_ALG_MOVEMENT_THRESHOLD_ARGS
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:737
@ KV_KEY_NTP_SERVER_URL
URL of the NTP server to use for time synchronisation.
Definition kv_types.h:687
@ KV_KEY_LTE_SIM_IMSI
'International Modem Subscriber Identity' as returned by AT+CIMI
Definition kv_types.h:707
@ KV_KEY_BLUETOOTH_PEER
Bluetooth peer device.
Definition kv_types.h:709
@ KV_KEY_SECONDARY_REMOTE_PUBLIC_KEY
Storage of secondary remote public key (update through security_key_update)
Definition kv_types.h:662
@ KV_KEY_NRF_EDGE_AI_RUNTIME_VERSION
Version of the nRF Edge AI runtime.
Definition kv_types.h:721
@ KV_KEY_BUILTIN_END
End of builtin KV range.
Definition kv_types.h:760
@ KV_KEY_WIFI_CHANNELS
WiFi band and channel configuration.
Definition kv_types.h:685
@ KV_KEY_INFUSE_APPLICATION_ID
CONFIG_INFUSE_APPLICATION_ID, store will be reset if the values don't match.
Definition kv_types.h:656
@ KV_KEY_GEOFENCE
Array of points defining a closed polygon.
Definition kv_types.h:725
@ KV_KEY_EXFAT_DISK_INFO
exFAT disk information
Definition kv_types.h:650
@ KV_KEY_LTE_MODEM_FIRMWARE_REVISION
Modem firmware revision as returned by AT+CGMR.
Definition kv_types.h:695
@ KV_KEY_TASK_SCHEDULES_MAX
Maximum number of KV_KEY_TASK_SCHEDULES slots that can be enabled.
Definition kv_types.h:749
@ KV_KEY_FIXED_LOCATION
Fixed global location of the device.
Definition kv_types.h:669
@ KV_KEY_REBOOTS
Number of times device has rebooted.
Definition kv_types.h:646
@ KV_KEY_DEVICE_NAME
Personalised name for the device.
Definition kv_types.h:654
@ KV_KEY_LITTLEFS_ALGORITHMS_STATE
State of algorithms on the LittleFS filesystem.
Definition kv_types.h:675
@ KV_KEY_BOARD_TARGET
Value of CONFIG_BOARD_TARGET.
Definition kv_types.h:660
@ KV_KEY_BLUETOOTH_CTLR_VERSION
External Bluetooth controller version.
Definition kv_types.h:652
@ KV_KEY_WIFI_SSID
WiFi network name.
Definition kv_types.h:681
@ KV_KEY_EPACKET_UDP_URL
ePacket UDP server hostname
Definition kv_types.h:689
@ KV_KEY_NETWORK_ID_SECONDARY
Identifier of the secondary network.
Definition kv_types.h:679
@ KV_KEY_LTE_PDP_CONFIG
Packet Data Protocol (PDP) default context configuration.
Definition kv_types.h:703
@ KV_KEY_SECURE_STORAGE_RESERVED_MAX
Maximum number of KV_KEY_SECURE_STORAGE_RESERVED slots that can be enabled.
Definition kv_types.h:758
@ KV_KEY_Z_DEVSTATE
State of the z_devstate section after boot.
Definition kv_types.h:667
@ KV_KEY_GEOFENCE_MAX
Maximum number of KV_KEY_GEOFENCE slots that can be enabled.
Definition kv_types.h:731
@ KV_KEY_ALG_TILT_ARGS
Configuration for the 'Tilt' algorithm.
Definition kv_types.h:735
@ KV_KEY_LORA_CONFIG
LoRa modem configuration.
Definition kv_types.h:711
@ KV_KEY_LTE_MODEM_ESN
'Electronic Serial Number' as returned by AT+CGSN=0
Definition kv_types.h:697
@ KV_KEY_LED_DISABLE_DAILY_TIME_RANGE
Disable LEDs between two UTC times daily.
Definition kv_types.h:715
@ KV_KEY_BLUETOOTH_ADDR
Bluetooth advertising address.
Definition kv_types.h:648
@ KV_KEY_LTE_SIM_UICC
SIM Universal Identifier (https://www.itu.int/en/ITU-T/inr/forms/Pages/iin.aspx)
Definition kv_types.h:701
@ KV_KEY_GRAVITY_REFERENCE
Reference gravity vector for tilt calculations.
Definition kv_types.h:723
@ KV_KEY_LTE_NETWORKING_MODES
Enabled LTE networking modes and preferences.
Definition kv_types.h:705
@ KV_KEY_WIFI_PSK
WiFi network password.
Definition kv_types.h:683
@ KV_KEY_TASK_SCHEDULES
Task runner task schedule definition (task_schedule)
Definition kv_types.h:743
@ KV_KEY_SECURE_STORAGE_RESERVED
Keys reserved for secure storage (do not enable)
Definition kv_types.h:751
@ KV_KEY_EPACKET_UDP_PORT
ePacket UDP server port
Definition kv_types.h:691
@ KV_KEY_LTE_MODEM_IMEI
'International Modem Equipment Identifier' as returned by AT+CGSN=1
Definition kv_types.h:699
@ KV_KEY_NETWORK_ID_PRIMARY
Identifier of the primary network.
Definition kv_types.h:677
@ KV_KEY_MEMFAULT_DISABLE
Disable Memfault reporting at runtime.
Definition kv_types.h:717
@ KV_KEY_ALG_STATIONARY_WINDOWED_ARGS
Configuration for the 'Stationary Windowed' algorithm.
Definition kv_types.h:733
@ KV_KEY_TASK_SCHEDULES_DEFAULT_ID
Unique identifier for default schedule set.
Definition kv_types.h:741
@ KV_KEY_LITTLEFS_FS_STATE
State of LittleFS filesystem.
Definition kv_types.h:673
Bluetooth address type (bt_addr_le_t)
Definition kv_types.h:42
uint8_t type
Address type (0 == Public, 1 == Random)
Definition kv_types.h:44
uint8_t val[6]
Address bytes.
Definition kv_types.h:46
Geographic Co-ordinate System location.
Definition kv_types.h:32
int32_t latitude
Degrees north/south, scaled by 1e-7.
Definition kv_types.h:34
int32_t height
Height above WGS-84 ellipsoid, mm.
Definition kv_types.h:38
int32_t longitude
Degrees north/south, scaled by 1e-7.
Definition kv_types.h:36
Key value slot description.
Definition kv_types.h:959
uint16_t key
Base key ID for slot.
Definition kv_types.h:961
uint8_t range
Number of IDs used by the slot.
Definition kv_types.h:963
uint8_t flags
Bitmask of kv_slot_flags for slot.
Definition kv_types.h:965
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:578
struct kv_algorithm_movement_threshold_args_v2 args
Algorithm arguments.
Definition kv_types.h:582
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:580
Configuration for the 'Movement Threshold' algorithm.
Definition kv_types.h:570
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:572
struct kv_algorithm_movement_threshold_args args
Algorithm arguments.
Definition kv_types.h:574
Configuration for the 'Stationary Windowed' algorithm.
Definition kv_types.h:554
struct kv_algorithm_stationary_windowed_args args
Algorithm arguments.
Definition kv_types.h:558
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:556
Configuration for the 'Tilt' algorithm.
Definition kv_types.h:562
struct kv_algorithm_logging logging
Algorithm logging.
Definition kv_types.h:564
struct kv_algorithm_tilt_args args
Algorithm arguments.
Definition kv_types.h:566
Algorithm logging configuration.
Definition kv_types.h:97
uint8_t tdf_mask
TDFs to log (algorithm specific bitmask.
Definition kv_types.h:101
uint8_t loggers
TDF logger to log to.
Definition kv_types.h:99
Arguments for 'Shot Triggered' algorithm.
Definition kv_types.h:129
uint32_t moving_for
How long moving state is refreshed for when movement detected.
Definition kv_types.h:131
uint32_t initial_threshold_ug
Magnitude this far away from 1G triggers the moving state.
Definition kv_types.h:133
uint32_t continue_threshold_ug
Magnitude this far away from 1G continues the moving state.
Definition kv_types.h:135
Arguments for 'Shot Triggered' algorithm.
Definition kv_types.h:121
uint32_t moving_for
How long moving state is refreshed for when movement detected.
Definition kv_types.h:123
uint32_t threshold_ug
Magnitude this far away from 1G triggers the moving state.
Definition kv_types.h:125
Arguments for 'Stationary Windowed' algorithm.
Definition kv_types.h:105
uint32_t window_seconds
Duration of the window in seconds.
Definition kv_types.h:107
uint32_t std_dev_threshold_ug
Standard deviation threshold in micro-g, above this value the device is moving.
Definition kv_types.h:109
Arguments for 'Tilt' algorithm.
Definition kv_types.h:113
float iir_filter_alpha
IIR filter alpha (see iir_filter_single_pole_f32)
Definition kv_types.h:115
uint8_t one_g_percent
Percentage within one G magnitude must be to use for tilt calculation.
Definition kv_types.h:117
Control STATE_APPLICATION_ACTIVE.
Definition kv_types.h:206
uint8_t active
Active for any non-zero value.
Definition kv_types.h:208
Bluetooth advertising address.
Definition kv_types.h:164
struct bt_addr_le address
Broadcasting address.
Definition kv_types.h:166
External Bluetooth controller version.
Definition kv_types.h:178
uint32_t application
Application ID.
Definition kv_types.h:180
struct kv_mcuboot_img_sem_ver version
Application version number.
Definition kv_types.h:182
Bluetooth peer device.
Definition kv_types.h:465
struct bt_addr_le address
Peer device Bluetooth address.
Definition kv_types.h:467
Request connected Bluetooth peers to limit throughput.
Definition kv_types.h:489
uint16_t limit_kbps
Requested throughput limit (kbps)
Definition kv_types.h:491
Value of CONFIG_BOARD_TARGET.
Definition kv_types.h:212
struct kv_string board_target
Value of CONFIG_BOARD_TARGET.
Definition kv_types.h:214
Device is fixed indoors and should broadcast the fact.
Definition kv_types.h:255
uint8_t indoors
Non-zero: Device is indoors.
Definition kv_types.h:257
Personalised name for the device.
Definition kv_types.h:186
struct kv_string name
Personalised device name.
Definition kv_types.h:188
Initialisation results for a single device.
Definition kv_types.h:139
uint8_t initialized
Indicates the device initialization function invoked.
Definition kv_types.h:143
uint8_t init_res
Device initialization return code (positive errno value)
Definition kv_types.h:141
ePacket UDP server port
Definition kv_types.h:366
uint32_t port
UDP server port.
Definition kv_types.h:368
ePacket UDP server hostname
Definition kv_types.h:352
struct kv_string server
UDP server hostname.
Definition kv_types.h:354
exFAT disk information
Definition kv_types.h:170
uint32_t block_size
Disk block size.
Definition kv_types.h:174
uint32_t block_count
Disk block count.
Definition kv_types.h:172
Fixed global location of the device.
Definition kv_types.h:249
struct gcs_location location
Location.
Definition kv_types.h:251
Forwarding configuration for Bluetooth advertising packets.
Definition kv_types.h:509
uint8_t flags
Forwarding flags (see epacket_filter_flags)
Definition kv_types.h:511
uint8_t percent
Percent of packets to forward that pass flags (255 = all, 128 = half, 0 = none)
Definition kv_types.h:513
Array of points defining a closed polygon.
Definition kv_types.h:537
uint8_t points_num
Number of points in the geofence.
Definition kv_types.h:539
struct gcs_location points[]
Points in geofence.
Definition kv_types.h:541
Reference gravity vector for tilt calculations.
Definition kv_types.h:527
int16_t y
Y axis component of gravity vector.
Definition kv_types.h:531
int16_t z
Z axis component of gravity vector.
Definition kv_types.h:533
int16_t x
X axis component of gravity vector.
Definition kv_types.h:529
CONFIG_INFUSE_APPLICATION_ID, store will be reset if the values don't match.
Definition kv_types.h:200
uint32_t application_id
Application ID the store was created with.
Definition kv_types.h:202
Disable LEDs between two UTC times daily.
Definition kv_types.h:495
struct kv_utc_hms disable_start
Disable LEDs at this time.
Definition kv_types.h:497
struct kv_utc_hms disable_end
Re-enable LEDs at this time.
Definition kv_types.h:499
State of algorithms on the LittleFS filesystem.
Definition kv_types.h:273
uint8_t count
Number of algorithms on filesystem.
Definition kv_types.h:275
uint32_t crc_xor
XOR of all file data CRCs.
Definition kv_types.h:277
State of LittleFS filesystem.
Definition kv_types.h:261
uint32_t block_size
Size of filesystem blocks in bytes.
Definition kv_types.h:265
uint32_t block_count
Total number of blocks in the filesystem.
Definition kv_types.h:267
uint32_t disk_version
On-disk filesystem version.
Definition kv_types.h:263
uint32_t blocks_used
Blocks currently in use by the filesystem.
Definition kv_types.h:269
LoRa modem configuration.
Definition kv_types.h:471
uint8_t bandwidth
Signal bandwidth (see enum lora_signal_bandwidth)
Definition kv_types.h:475
uint16_t preamble_len
Preamble length.
Definition kv_types.h:481
uint32_t frequency
Frequency (Hz)
Definition kv_types.h:473
int8_t tx_power
Transmit power (dBm)
Definition kv_types.h:483
uint8_t sync_word
Custom sync word.
Definition kv_types.h:485
uint8_t spreading_factor
Spreading factor (see enum lora_datarate)
Definition kv_types.h:477
uint8_t coding_rate
Coding rate (see enum lora_coding_rate)
Definition kv_types.h:479
'Electronic Serial Number' as returned by AT+CGSN=0
Definition kv_types.h:400
struct kv_string esn
ESN or IMEI if not available.
Definition kv_types.h:402
Modem firmware revision as returned by AT+CGMR.
Definition kv_types.h:386
struct kv_string revision
Firmware revision.
Definition kv_types.h:388
'International Modem Equipment Identifier' as returned by AT+CGSN=1
Definition kv_types.h:414
uint64_t imei
15 digit IMEI
Definition kv_types.h:416
Modem model as returned by AT+CGMM.
Definition kv_types.h:372
struct kv_string model
Modem model.
Definition kv_types.h:374
Enabled LTE networking modes and preferences.
Definition kv_types.h:451
uint8_t modes
Enabled modes as per enum lte_lc_system_mode
Definition kv_types.h:453
uint8_t prefer
Preference as per enum lte_lc_system_mode_preference
Definition kv_types.h:455
Packet Data Protocol (PDP) default context configuration.
Definition kv_types.h:434
struct kv_string apn
Access Point Name.
Definition kv_types.h:438
uint8_t family
Protocol family (0 = IPv4, 1 = IPv6, 2 = IPv4v6, 3 = Non-IP)
Definition kv_types.h:436
'International Modem Subscriber Identity' as returned by AT+CIMI
Definition kv_types.h:459
uint64_t imsi
15 digit IMSI
Definition kv_types.h:461
SIM Universal Identifier (https://www.itu.int/en/ITU-T/inr/forms/Pages/iin.aspx)
Definition kv_types.h:420
struct kv_string uicc
Variable length UICC string.
Definition kv_types.h:422
MCUboot semantic versioning struct.
Definition kv_types.h:67
uint32_t build_num
Build number.
Definition kv_types.h:75
uint8_t major
Major version.
Definition kv_types.h:69
uint8_t minor
Minor version.
Definition kv_types.h:71
uint16_t revision
Revision.
Definition kv_types.h:73
Disable Memfault reporting at runtime.
Definition kv_types.h:503
uint8_t disable
Disable for any non-zero value.
Definition kv_types.h:505
Identifier of the primary network.
Definition kv_types.h:281
uint32_t id
Network identifier.
Definition kv_types.h:283
Identifier of the secondary network.
Definition kv_types.h:287
uint32_t id
Network identifier.
Definition kv_types.h:289
Version of the nRF Edge AI runtime.
Definition kv_types.h:517
uint8_t minor
Minor version.
Definition kv_types.h:521
uint8_t major
Major version.
Definition kv_types.h:519
uint16_t patch
Patch version.
Definition kv_types.h:523
URL of the NTP server to use for time synchronisation.
Definition kv_types.h:338
struct kv_string url
NTP server URL.
Definition kv_types.h:340
Generic range structure.
Definition kv_types.h:79
uint8_t lower
Lower bound.
Definition kv_types.h:81
uint8_t upper
Upper bound.
Definition kv_types.h:83
Number of times device has rebooted.
Definition kv_types.h:158
uint32_t count
Number of reboots.
Definition kv_types.h:160
Storage of secondary remote public key (update through security_key_update)
Definition kv_types.h:226
uint8_t public_key[32]
Remote public key.
Definition kv_types.h:228
Keys reserved for secure storage (do not enable)
Definition kv_types.h:627
uint8_t data_num
Opaque data.
Definition kv_types.h:629
uint8_t data[]
Opaque data.
Definition kv_types.h:631
String type.
Definition kv_types.h:50
char value[]
NULL terminated C string.
Definition kv_types.h:54
uint8_t value_num
Length of value (including NULL)
Definition kv_types.h:52
Unique identifier for default schedule set.
Definition kv_types.h:586
uint32_t set_id
If this value changes, existing schedules are overwritten.
Definition kv_types.h:588
Task runner task schedule definition (task_schedule)
Definition kv_types.h:592
struct kv_range_u8 battery_terminate
Battery charge thresholds to terminate the task.
Definition kv_types.h:606
struct kv_range_u8 battery_start
Battery charge thresholds to start the task.
Definition kv_types.h:604
uint8_t validity
TASK_VALID_* value.
Definition kv_types.h:596
uint8_t task_id
Task ID referenced by schedule.
Definition kv_types.h:594
uint8_t boot_lockout_minutes
Task will not start for the first N minutes after boot.
Definition kv_types.h:600
uint8_t periodicity_type
TASK_PERIODICITY_* value.
Definition kv_types.h:598
uint32_t timeout_s
Duration after which task is requested to terminate.
Definition kv_types.h:602
UTC Hour-Minute-Second.
Definition kv_types.h:87
uint8_t minute
Minute (UTC)
Definition kv_types.h:91
uint8_t hour
Hour (UTC)
Definition kv_types.h:89
uint8_t second
Second (UTC)
Definition kv_types.h:93
WiFi band and channel configuration.
Definition kv_types.h:321
uint8_t band
WiFi frequency band (0 = 2.4Ghz, 1 = 5GHz, 2 = 6Ghz, other = Unknown)
Definition kv_types.h:323
uint8_t channels[]
WiFi channels network uses.
Definition kv_types.h:325
WiFi network password.
Definition kv_types.h:307
struct kv_string psk
WiFi pre-shared-key.
Definition kv_types.h:309
WiFi network name.
Definition kv_types.h:293
struct kv_string ssid
WiFi network name.
Definition kv_types.h:295
State of the z_devstate section after boot.
Definition kv_types.h:232
struct kv_device_state first
struct device_state for first device in array
Definition kv_types.h:234
struct kv_device_state remainder[]
struct device_state for remaining devices
Definition kv_types.h:236