-
Notifications
You must be signed in to change notification settings - Fork 4
/
Kconfig.anjay_zephyr
405 lines (331 loc) · 13.6 KB
/
Kconfig.anjay_zephyr
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
# Copyright 2020-2024 AVSystem <[email protected]>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
menu "Anjay Zephyr client extensions"
config ANJAY_ZEPHYR_DEVICE_MANUFACTURER
string "Device manufacturer"
default "Unknown"
config ANJAY_ZEPHYR_MODEL_NUMBER
string "Model number"
default "Unknown"
config ANJAY_ZEPHYR_VERSION
string "Client Version"
default "3.8.1"
config ANJAY_ZEPHYR_AUTOGENERATE_ENDPOINT_NAME
bool "Autogenerate endpoint name"
default y
menu "Client default options"
visible if !ANJAY_ZEPHYR_FACTORY_PROVISIONING
config ANJAY_ZEPHYR_BOOTSTRAP_SERVER
bool "Default bootstrap server"
default n
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
config ANJAY_ZEPHYR_USE_PERSISTENCE
bool "Default use persistence"
default n
depends on ANJAY_ZEPHYR_PERSISTENCE
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
config ANJAY_ZEPHYR_ENDPOINT_NAME
string "Default endpoint name"
default "Anjay-zephyr-client"
depends on !ANJAY_ZEPHYR_AUTOGENERATE_ENDPOINT_NAME
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
config ANJAY_ZEPHYR_LIFETIME
int "Default client lifetime"
default 50
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
config ANJAY_ZEPHYR_SERVER_URI
string "Default server URI"
default "coaps://eu.iot.avsystem.cloud:5684"
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
choice ANJAY_ZEPHYR_SECURITY_MODE
prompt "Choose default security mode"
default ANJAY_ZEPHYR_SECURITY_MODE_PSK
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
config ANJAY_ZEPHYR_SECURITY_MODE_NOSEC
bool "Non-secure connection"
config ANJAY_ZEPHYR_SECURITY_MODE_PSK
bool "PSK"
config ANJAY_ZEPHYR_SECURITY_MODE_CERT
bool "Runtime certificates"
depends on ANJAY_ZEPHYR_RUNTIME_CERT_CONFIG
endchoice
config ANJAY_ZEPHYR_PSK_IDENTITY
string "Default PSK identity"
default "Anjay-zephyr-client"
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
config ANJAY_ZEPHYR_PSK_KEY
string "Default PSK key"
default "psk"
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
config ANJAY_ZEPHYR_GPS_NRF_PRIO_MODE_PERMITTED
bool "Default allow temporary activation of the GPS priority mode"
default n
depends on ANJAY_ZEPHYR_GPS_NRF
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
If set, Anjay Zephyr will temporarily activate the GPS priority over LTE
idle mode in case GPS fix cannot be produced. The mode will be
deactivated automatically after getting a GPS fix or after 40 seconds.
config ANJAY_ZEPHYR_GPS_NRF_PRIO_MODE_COOLDOWN
int "Default GPS priority mode cooldown time"
default 900
depends on ANJAY_ZEPHYR_GPS_NRF
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
Determines (in seconds) how much time must pass after a failed try to produce a GPS fix to
enable GPS priority mode again.
endmenu
menu "WiFi default configuration"
visible if WIFI
config ANJAY_ZEPHYR_WIFI_SSID
string "Default WiFi SSID"
default "ssid"
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
config ANJAY_ZEPHYR_WIFI_PASSWORD
string "Default WiFi Password"
default "mypassword"
help
This is a default value, it will be used if there are no saved settings from a previously
flashed Anjay-zephyr, or by executing the "anjay config default" command in the shell.
endmenu
menuconfig ANJAY_ZEPHYR_RUNTIME_CERT_CONFIG
bool "Enable runtime certificate configuration through shell"
depends on MBEDTLS_TLS_LIBRARY || MBEDTLS
default n
config ANJAY_ZEPHYR_MAX_PUBLIC_CERT_LEN
int "Max public certificate length"
default 2048
depends on ANJAY_ZEPHYR_RUNTIME_CERT_CONFIG
config ANJAY_ZEPHYR_MAX_PRIVATE_KEY_LEN
int "Max private key length"
default 1024
depends on ANJAY_ZEPHYR_RUNTIME_CERT_CONFIG
config ANJAY_ZEPHYR_THREAD_PRIORITY
int "Priority of the Anjay thread"
default 1
config ANJAY_ZEPHYR_THREAD_STACK_SIZE
int "Size of the Anjay thread stack"
default 8192
config ANJAY_ZEPHYR_NTP_SERVER
string "NTP Server"
default "time.nist.gov"
config ANJAY_ZEPHYR_LOCATION_OBJECT
def_bool ANJAY_ZEPHYR_GPS
config ANJAY_ZEPHYR_SHELL
bool "Enable Anjay shell commands"
default n
select SHELL
config ANJAY_ZEPHYR_GPS
bool "Enable GPS"
default n
depends on BOARD_THINGY91_NRF9160_NS || BOARD_NRF9160DK_NRF9160_NS || BOARD_TMO_DEV_EDGE
select AT_CMD if BOARD_THINGY91_NRF9160_NS || BOARD_NRF9160DK_NRF9160_NS
help
Enable GPS implementation.
On nRF9160-based platforms, please note that the system is not able to acquire
the cold GPS fix if the chip is interrupted by any LTE activity. The application
might temporarily enable GPS priority mode, which shuts down LTE completely and
attempts to acquire the fix. This behavior is controlled by
ANJAY_ZEPHYR_GPS_NRF_PRIO_MODE_PERMITTED and
ANJAY_ZEPHYR_GPS_NRF_PRIO_MODE_COOLDOWN config options.
config ANJAY_ZEPHYR_GPS_NRF
def_bool ANJAY_ZEPHYR_GPS && (BOARD_THINGY91_NRF9160_NS || BOARD_NRF9160DK_NRF9160_NS)
config ANJAY_ZEPHYR_GPS_CXD5605
def_bool ANJAY_ZEPHYR_GPS && BOARD_TMO_DEV_EDGE
config ANJAY_ZEPHYR_GPS_ALTITUDE
def_bool ANJAY_ZEPHYR_GPS_NRF || ANJAY_ZEPHYR_GPS_CXD5605
config ANJAY_ZEPHYR_GPS_RADIUS
def_bool ANJAY_ZEPHYR_GPS_NRF
config ANJAY_ZEPHYR_GPS_VELOCITY
def_bool n
config ANJAY_ZEPHYR_GPS_SPEED
def_bool ANJAY_ZEPHYR_GPS_NRF || ANJAY_ZEPHYR_GPS_CXD5605
config ANJAY_ZEPHYR_LOCATION_SERVICES
def_bool ANJAY_ZEPHYR_LOCATION_SERVICES_ASSISTANCE || ANJAY_ZEPHYR_LOCATION_SERVICES_GROUND_FIX_LOCATION
select ANJAY_WITH_LWM2M11
select ANJAY_WITH_SEND
select ANJAY_WITH_SENML_JSON
config ANJAY_ZEPHYR_LOCATION_SERVICES_ASSISTANCE
def_bool ANJAY_ZEPHYR_GPS_NRF_A_GPS || ANJAY_ZEPHYR_GPS_NRF_P_GPS
config ANJAY_ZEPHYR_LOCATION_SERVICES_SERVER_SSID
int "Location services server SSID"
default 1
depends on ANJAY_ZEPHYR_LOCATION_SERVICES
help
SSID of the server to which requests related to location services will be sent.
menu "GPS on nRF9160-based devices"
visible if ANJAY_ZEPHYR_GPS_NRF
config ANJAY_ZEPHYR_GPS_NRF_EXTERNAL_ANTENNA
bool "Use external GPS antenna"
depends on ANJAY_ZEPHYR_GPS_NRF
config ANJAY_ZEPHYR_GPS_NRF_A_GPS
bool "Enable A-GPS using Nordic Location Services over LwM2M"
depends on ANJAY_ZEPHYR_GPS_NRF && ANJAY_ZEPHYR_NRF_LC_INFO
select NRF_CLOUD_AGNSS
select NRF_CLOUD_AGPS
help
Attempt to retrieve A-GPS data using Nordic Location Services over LwM2M.
This is an experimental feature under active development, which is currently
available only on selected instances of AVSystem's Coiote IoT DM servers.
config ANJAY_ZEPHYR_GPS_NRF_A_GPS_SATELLITE_ELEVATION_MASK
int "A-GPS minimum elevation angle for visible satellites"
depends on ANJAY_ZEPHYR_GPS_NRF_A_GPS
range -1 90
default -1
help
Minimum elevation angle for visible satellites. Only used for A-GPS.
-1 indicates that angle is disabled and filtering shouldn't be used.
endmenu
config ANJAY_ZEPHYR_LOCATION_SERVICES_GROUND_FIX_LOCATION
bool "Enable ground fix location requests"
depends on ANJAY_ZEPHYR_NRF_LC_INFO
help
Enable "anjay nls_gf_location_request" command for retrieving cell-based location using
Nordic Location Services over LwM2M.
This is an experimental feature under active development, which is currently
available only on selected instances of AVSystem's Coiote IoT DM servers.
config ANJAY_ZEPHYR_NRF_LC_INFO
bool "Enable nRF9160 Link Control library state and Connectivity Monitor"
depends on LTE_LINK_CONTROL && (BOARD_THINGY91_NRF9160_NS || BOARD_NRF9160DK_NRF9160_NS)
default y
help
Enables handlers tracking nRF9160 Link Control library state and Connectivity
Monitor, ECID objects utilizing data from LC library.
config ANJAY_ZEPHYR_NRF_LC_INFO_CELL_POLL_RATE
int "Current and neighbouring cells stats polling rate [seconds]"
default 30
range 1 2147483647
depends on ANJAY_ZEPHYR_NRF_LC_INFO
config ANJAY_ZEPHYR_NETWORK_KEEPALIVE_RATE
int "Rate of checking whether the network connection is still alive [seconds]"
default 60
range 1 2147483647
depends on WIFI_ESWIFI || WIFI_RS9116W
choice ANJAY_ZEPHYR_OTA
prompt "Enable Firmware Update Over-the-Air"
default ANJAY_ZEPHYR_FOTA
optional
config ANJAY_ZEPHYR_FOTA
bool "MCUboot application FOTA"
depends on BOOTLOADER_MCUBOOT
select IMG_MANAGER
select ANJAY_WITH_MODULE_FW_UPDATE
imply STREAM_FLASH_ERASE
imply IMG_ERASE_PROGRESSIVELY
help
Enables MCUboot application FOTA using Firmware Update object (/5)
config ANJAY_ZEPHYR_ADVANCED_FOTA_NRF9160_APP_DELTA_MODEM
bool "Multi-target (MCUboot app, delta modem) FOTA for nRF9160"
depends on BOARD_THINGY91_NRF9160_NS || BOARD_NRF9160DK_NRF9160_NS
depends on !NRF_MODEM_LIB_SYS_INIT
select DFU_TARGET
select STREAM_FLASH_ERASE
select ANJAY_WITH_MODULE_ADVANCED_FW_UPDATE
help
Enables multi-target (MCUboot application, delta nRF9160 modem) FOTA
using experimental Advanced Firmware Update object (/33629)
config ANJAY_ZEPHYR_ADVANCED_FOTA_NRF9160_APP_DELTA_FULL_MODEM
bool "Multi-target (MCUboot app, delta/full modem) FOTA for nRF9160"
depends on BOARD_THINGY91_NRF9160_NS || BOARD_NRF9160DK_NRF9160_NS
depends on !NRF_MODEM_LIB_SYS_INIT
select STREAM_FLASH_ERASE
select ZCBOR
select DFU_TARGET
select DFU_TARGET_STREAM
select FMFU_FDEV
select DFU_TARGET_FULL_MODEM
select IMG_MANAGER
select ANJAY_WITH_MODULE_ADVANCED_FW_UPDATE
help
Enables multi-target (MCUboot application, delta/full nRF9160 modem)
FOTA using experimental Advanced Firmware Update object (/33629)
endchoice
config ANJAY_ZEPHYR_ADVANCED_FOTA_NRF9160
def_bool ANJAY_ZEPHYR_ADVANCED_FOTA_NRF9160_APP_DELTA_MODEM || ANJAY_ZEPHYR_ADVANCED_FOTA_NRF9160_APP_DELTA_FULL_MODEM
config ANJAY_ZEPHYR_OTA_MCUBOOT
def_bool ANJAY_ZEPHYR_FOTA || ANJAY_ZEPHYR_ADVANCED_FOTA_NRF9160
config ANJAY_ZEPHYR_PERSISTENCE
bool "Enable persistence"
help
Enables persistence of Access Control Object, Security Object
and Server Object.
config ANJAY_ZEPHYR_PERSISTENCE_ATTR_STORAGE
bool "Enable persistence of Attribute Storage"
depends on ANJAY_ZEPHYR_PERSISTENCE
select ANJAY_WITH_ATTR_STORAGE
default n
config ANJAY_ZEPHYR_FACTORY_PROVISIONING
bool "Use factory provisioning"
depends on ANJAY_ZEPHYR_PERSISTENCE
help
Use the Factory Provisioning process to configure the client instead of CLI.
This option causes the client to load the provisioned settings at boot and disables
the shell commands that would allow modifying them.
To provision the settings for use with this configuration, please flash a firmware
compiled with (TBD) enabled first.
config ANJAY_ZEPHYR_FACTORY_PROVISIONING_INITIAL_FLASH
bool "Build the app in initial flashing mode"
depends on ANJAY_ZEPHYR_FACTORY_PROVISIONING
select ANJAY_WITH_CBOR
select ANJAY_WITH_MODULE_FACTORY_PROVISIONING
select ANJAY_WITH_ACCESS_CONTROL
select ANJAY_WITH_MODULE_ACCESS_CONTROL
select FILE_SYSTEM
select MCUMGR
select MCUMGR_CMD_FS_MGMT
select MCUMGR_SMP_SHELL
select UART_CONSOLE_MCUMGR
select NET_BUF
select ZCBOR
select CRC
help
This option should be used with specially tailored version of the application that
will not perform any normal LwM2M client operation, but instead it will allow to
perform the initial flashing of the factory provisioning data.
config ANJAY_ZEPHYR_NRF_MODEM_PSK_QUERY
string "Security tag for the credential stored in the modem"
depends on NRF_MODEM_LIB && MODEM_KEY_MGMT
default "1"
config ANJAY_ZEPHYR_WORKQUEUE_ENABLE
bool "Enable Anjay Zephyr workqueue and use it for all works defined in this module"
default BOARD_THINGY91_NRF9160_NS || BOARD_NRF9160DK_NRF9160_NS
config ANJAY_ZEPHYR_WORKQUEUE_STACK_SIZE
int "Anjay Zephyr workqueue stack size"
default 2048
depends on ANJAY_ZEPHYR_WORKQUEUE_ENABLE
config ANJAY_ZEPHYR_WORKQUEUE_PRIORITY
int "Anjay Zephyr workqueue priority"
default 0
depends on ANJAY_ZEPHYR_WORKQUEUE_ENABLE
endmenu