blob: 13f73c5498e86925c272154d4192330c0ec4acfb [file] [log] [blame]
# Copyright (c) 2017 Linaro Limited
# SPDX-License-Identifier: Apache-2.0
menuconfig LWM2M
bool "OMA LWM2M protocol stack"
select COAP
select HTTP_PARSER_URL
select NET_SOCKETS
select NET_SOCKETS_POSIX_NAMES
help
This option adds logic for managing OMA LWM2M data
if LWM2M
module = LWM2M
module-dep = LOG
module-str = Log level for LWM2M library
source "subsys/net/Kconfig.template.log_config.net"
config LWM2M_DTLS_SUPPORT
bool "Enable DTLS support in the LwM2M client"
select TLS_CREDENTIALS
select NET_SOCKETS_SOCKOPT_TLS
select NET_SOCKETS_ENABLE_DTLS
config LWM2M_DNS_SUPPORT
bool "Enable DNS support in the LWM2M client"
default y if DNS_RESOLVER
config LWM2M_ENGINE_STACK_SIZE
int "LWM2M engine stack size"
default 2560 if NET_LOG
default 2048
help
Set the stack size for the LWM2M library engine (used for handling
OBSERVE and NOTIFY events)
config LWM2M_ENGINE_MAX_MESSAGES
int "LWM2M engine max. message object"
default 10
help
Set the maximum message objects for the LWM2M library client
config LWM2M_COAP_BLOCK_SIZE
int "LWM2M CoAP block-wise transfer size"
default 256
range 64 1024
help
CoAP block size used by LWM2M when performing block-wise
transfers. Possible values: 16, 32, 64, 128, 256, 512 and 1024.
config LWM2M_ENGINE_MESSAGE_HEADER_SIZE
int "Room for CoAP header data"
default 48
range 24 128
help
Extra room allocated to handle CoAP header data
config LWM2M_ENGINE_MAX_PENDING
int "LWM2M engine max. pending objects"
default 5
help
Set the maximum pending objects for the LWM2M library client
config LWM2M_ENGINE_MAX_REPLIES
int "LWM2M engine max. reply objects"
default 5
help
Set the maximum reply objects for the LWM2M library client
config LWM2M_ENGINE_MAX_OBSERVER
int "Maximum # of observable LWM2M resources"
default 10
range 5 200
help
This value sets the maximum number of resources which can be
added to the observe notification list.
config LWM2M_ENGINE_DEFAULT_LIFETIME
int "LWM2M engine default server connection lifetime"
default 30
range 15 65535
help
Set the default lifetime (in seconds) for the LWM2M library engine
config LWM2M_RD_CLIENT_SUPPORT
bool "support for LWM2M client bootstrap/registration state machine"
default y
help
Client will use registration state machine to locate and connect to
LWM2M servers (including bootstrap server support)
config LWM2M_RD_CLIENT_SUPPORT_BOOTSTRAP
bool "Enable bootstrap support"
help
Enabling this setting allows the RD client to support bootstrap mode.
config LWM2M_PEER_PORT
int "LWM2M server port"
depends on LWM2M_RD_CLIENT_SUPPORT
default 5683
help
This is the default server port to connect to for LWM2M communication
config LWM2M_SECURITY_INSTANCE_COUNT
int "Maximum # of LWM2M Security object instances"
default 2 if LWM2M_RD_CLIENT_SUPPORT_BOOTSTRAP
default 1
range 1 10
help
This setting establishes the total count of LWM2M Security instances
available to the client.
config LWM2M_SECURITY_KEY_SIZE
int "Buffer size of the security key resources"
default 16
range 16 256
help
This setting establishes the size of the key (pre-shared / public)
resources in the security object instances.
config LWM2M_SERVER_DEFAULT_PMIN
int "Default server record PMIN"
default 10
help
Default minimum amount of time in seconds the client must wait
between notifications. If a resource has to be notified during this
minimum time period, the notification must be sent after the time
period expires.
config LWM2M_SERVER_DEFAULT_PMAX
int "Default server record PMAX"
default 60
help
Default maximum amount of time in seconds the client may wait
between notifications. When this time period expires a notification
must be sent.
config LWM2M_SERVER_INSTANCE_COUNT
int "Maximum # of LWM2M Server object instances"
default 2 if LWM2M_RD_CLIENT_SUPPORT_BOOTSTRAP
default 1
range 1 10
help
This setting establishes the total count of LWM2M Server instances
available to the client (including: bootstrap and regular servers).
config LWM2M_CONN_MON_OBJ_SUPPORT
bool "Connectivity Monitoring object support"
help
Include support for LWM2M Connectivity Monitoring Object (ID 4)
config LWM2M_CONN_MON_BEARER_MAX
int "Maximum # of available network bearer resource instances"
depends on LWM2M_CONN_MON_OBJ_SUPPORT
default 1
help
This value sets the maximum number of available network bearer
resource instances. These are displayed via the
"Connection Monitoring" object /4/0/1.
config LWM2M_CONN_MON_APN_MAX
int "Maximum # of APN resource instances"
depends on LWM2M_CONN_MON_OBJ_SUPPORT
default 1
help
This value sets the maximum number of APN resource instances.
These are displayed via the "Connection Monitoring" object /4/0/7.
config LWM2M_FIRMWARE_UPDATE_OBJ_SUPPORT
bool "Firmware Update object support"
default y
help
Include support for LWM2M Firmware Update Object (ID 5)
config LWM2M_FIRMWARE_UPDATE_PULL_SUPPORT
bool "Firmware Update object pull support"
default y
depends on LWM2M_FIRMWARE_UPDATE_OBJ_SUPPORT
depends on (HTTP_PARSER || HTTP_PARSER_URL)
help
Include support for pulling a file from a remote server via
block transfer and "FIRMWARE PACKAGE URI" resource. This option
adds another UDP context and packet handling.
config LWM2M_NUM_BLOCK1_CONTEXT
int "Maximum # of LWM2M block1 contexts"
default 3
help
This value sets up the maximum number of block1 contexts for
CoAP block-wise transfer we can handle at the same time.
config LWM2M_FIRMWARE_UPDATE_PULL_COAP_PROXY_SUPPORT
bool "Firmware Update object pull via CoAP-CoAP/HTTP proxy support"
depends on LWM2M_FIRMWARE_UPDATE_PULL_SUPPORT
help
Include support for pulling firmware file via a CoAP-CoAP/HTTP proxy.
if LWM2M_FIRMWARE_UPDATE_PULL_COAP_PROXY_SUPPORT
config LWM2M_FIRMWARE_UPDATE_PULL_COAP_PROXY_ADDR
string "CoAP proxy network address"
help
Network address of the CoAP proxy server.
endif # LWM2M_FIRMWARE_UPDATE_PULL_COAP_PROXY_SUPPORT
config LWM2M_RW_JSON_SUPPORT
bool "support for JSON writer"
default y
help
Include support for writing JSON data
config LWM2M_DEVICE_PWRSRC_MAX
int "Maximum # of device power source records"
default 5
range 1 20
help
This value sets the maximum number of power source data that a device
can store. These are displayed via the "Device" object /3/0/6,
/3/0/7 and /3/0/8 resources.
config LWM2M_DEVICE_ERROR_CODE_MAX
int "Maximum # of device obj error codes to store"
default 10
range 1 20
help
This value sets the maximum number of error codes that the device
object will store before ignoring new values.
config LWM2M_NUM_ATTR
int "Maximum # of LWM2M attributes"
default 20
help
This value sets up the maximum number of LwM2M attributes that
we can handle at the same time.
config LWM2M_LOCATION_OBJ_SUPPORT
bool "Location object support"
help
Include support for LWM2M Location Object (ID 6)
menu "IPSO Alliance Smart Object Support"
source "subsys/net/lib/lwm2m/Kconfig.ipso"
endmenu
endif # LWM2M