LwM2M Transport Configuration
Spring common parameters
Section titled “Spring common parameters”If you enabled process metrics you should also enable ‘web-environment’.
If you enabled process metrics you should set ‘web-application-type’ to ‘servlet’ value.
Server common parameters
Section titled “Server common parameters”Server bind address (has no effect if web-environment is disabled).
Server bind port (has no effect if web-environment is disabled).
ZooKeeper connection parameters
Section titled “ZooKeeper connection parameters”Enable/disable ZooKeeper discovery service.
ZooKeeper connect string
ZooKeeper retry interval in milliseconds
ZooKeeper connection timeout in milliseconds
ZooKeeper session timeout in milliseconds
Name of the directory in ZooKeeper ‘filesystem’
The recalculate_delay property is recommended in a microservices architecture setup for rule-engine services. This property provides a pause to ensure that when a rule-engine service is restarted, other nodes don’t immediately attempt to recalculate their partitions. The delay is recommended because the initialization of rule chain actors is time-consuming. Avoiding unnecessary recalculations during a restart can enhance system performance and stability.
Cache parameters
Section titled “Cache parameters”caffeine or redis
Entity limits cache TTL
0 means the cache is disabled
Redis/Valkey configuration parameters
Section titled “Redis/Valkey configuration parameters”standalone or cluster or sentinel
Redis connection host
Redis connection port
Use default Redis configuration file
this value may be used only if you used not default ClientConfig
this value may be used only if you used not default ClientConfig
this value may be used only if you used not default ClientConfig
this value may be used only if you used not default ClientConfig
Comma-separated list of “host:port” pairs to bootstrap from.
Maximum number of redirects to follow when executing commands across the cluster.
if set false will be used pool config build from values of the pool config section
name of master node
comma-separated list of “host:port” pairs of sentinels
password to authenticate with sentinel
if set false will be used pool config build from values of the pool config section
Redis logical database index to select after connecting.
Password for Redis authentication (leave empty if not required).
Redis username for ACL authentication (Redis 6.0+). Leave empty for legacy password-only auth
Enable/disable secure connection
Path redis server (CA) certificate
Path to user certificate file. This is optional for the client and can be used for two-way authentication for the client
Path to user private key file. This is optional for the client and only needed if ‘user_cert_file’ is configured.
Maximum number of connections that can be allocated by the connection pool
Maximum number of idle connections that can be maintained in the pool without being closed
Minumum number of idle connections that can be maintained in the pool without being closed
Enable/Disable PING command send when a connection is borrowed
The property is used to specify whether to test the connection before returning it to the connection pool.
The property is used in the context of connection pooling in Redis
Minimum amount of time that an idle connection should be idle before it can be evicted from the connection pool. Value set in milliseconds
Specifies the time interval in milliseconds between two consecutive eviction runs
Maximum time in milliseconds where a client is willing to wait for a connection from the pool when all connections are exhausted
Specifies the number of connections to test for eviction during each eviction run
Determines the behavior when a thread requests a connection from the pool but there are no available connections and the pool cannot create more due to the maxTotal configuration
LWM2M server parameters
Section titled “LWM2M server parameters”Session inactivity timeout is a global configuration parameter that defines how long the device transport session will be opened after the last message arrives from the device. The parameter value is in milliseconds. The last activity time of the device session is updated if the device sends any message, including keepalive messages If there is no activity, the session will be closed, and all subscriptions will be deleted. We recommend this parameter to be in sync with device inactivity timeout (“state.defaultInactivityTimeoutInSec” or DEFAULT_INACTIVITY_TIMEOUT) parameter which is responsible for detection of the device connectivity status in the core service of the platform. The value of the session inactivity timeout parameter should be greater or equal to the device inactivity timeout. Note that the session inactivity timeout is set in milliseconds while device inactivity timeout is in seconds.
Interval of periodic check for expired sessions and report of the changes to session last activity time
Cast String data types to Numeric if possible when processing Telemetry/Attributes JSON
Maximum allowed string value length when processing Telemetry/Attributes JSON (0 value disables string value length check)
Processing timeout interval of the RPC command on the CLIENT SIDE. Time in milliseconds
Enable/Disable log of transport messages to telemetry. For example, logging of LwM2M registration update
Maximum length of the log message. The content will be truncated to the specified value if needed
Enable/disable lvm2m transport protocol.
RFC7925_RETRANSMISSION_TIMEOUT_IN_MILLISECONDS = 9000
LWM2M DTLS connection ID length for LWM2M. RFC 9146, Connection Identifier for DTLS 1.2 Default: off.
Control usage of DTLS connection ID length (CID).
- ‘off’ to deactivate it.
- ‘on’ to activate Connection ID support (same as CID 0 or more 0).
- A positive value defines generated CID size in bytes.
- A value of 0 means we accept using CID but will not generate one for foreign peer (enables support but not for incoming traffic).
- A value between 0 and <= 4: SingleNodeConnectionIdGenerator is used
- A value that are > 4: MultiNodeConnectionIdGenerator is used
LwM2M Server ID
LwM2M server bind address. Bind to all interfaces by default
LwM2M server bind port
LwM2M server bind address for DTLS. Bind to all interfaces by default
LwM2M server bind port for DTLS
Whether to enable LWM2M server X509 Certificate/RPK support
Server credentials type (PEM - pem certificate file; KEYSTORE - java keystore)
Path to the server certificate file (holds server certificate or certificate chain, may include server private key)
Path to the server certificate private key file. Optional by default. Required if the private key is not present in server certificate file;
Server certificate private key password (optional)
Type of the key store (JKS or PKCS12)
Path to the key store that holds the SSL certificate
Password used to access the key store
Key alias
Password used to access the key
Only Certificate_x509:
Enable/disable Bootstrap Server
Default value in Lwm2mClient after start in mode Bootstrap for the object : name “LWM2M Security” field: “Short Server ID” (deviceProfile: Bootstrap.BOOTSTRAP SERVER.Short ID)
LwM2M bootstrap server bind address. Bind to all interfaces by default
LwM2M bootstrap server bind port
LwM2M bootstrap server bind address for DTLS. Bind to all interfaces by default
LwM2M bootstrap server bind address for DTLS. Bind to all interfaces by default
Whether to enable LWM2M bootstrap server X509 Certificate/RPK support
Server credentials type (PEM - pem certificate file; KEYSTORE - java keystore)
Path to the server certificate file (holds server certificate or certificate chain, may include server private key)
Path to the server certificate private key file. Optional by default. Required if the private key is not present in server certificate file;
Server certificate private key password (optional)
Type of the key store (JKS or PKCS12)
Path to the key store that holds the SSL certificate
Password used to access the key store
Key alias
Password used to access the key
Whether to load X509 trust certificates
Trust certificates store type (PEM - pem certificates file; KEYSTORE - java keystore)
Path to the certificates file (holds trust certificates)
Type of the key store (JKS or PKCS12)
Path to the key store that holds the X509 certificates
Password used to access the key store
Set usage of recommended cipher suites; true - allow only recommended cipher suites; false - allow not recommended cipher suites
Set usage of recommended supported groups (curves); true - allow only recommended supported groups, false - allow not recommended supported groups
Timeout of LwM2M operation
Thread pool size for processing of the LwM2M uplinks
Thread pool size for processing of the LwM2M downlinks
Thread pool size for processing of the OTA updates
Period of cleanup for the registrations in store
PSM Activity Timer if not specified in the device profile
Paging Transmission Window for eDRX support if not specified in the device profile
Enable/Disable the collection of transport statistics
Interval of transport statistics logging
Queue configuration properties
Section titled “Queue configuration properties”kafka (Apache Kafka)
Global queue prefix. If specified, prefix is added before default topic name: ‘prefix.default_topic_name’. Prefix is applied to all topics (and consumer groups for kafka).
Kafka Bootstrap Servers
Enable/Disable SSL Kafka communication
The location of the trust store file
The password of trust store file if specified
The location of the key store file. This is optional for the client and can be used for two-way authentication for the client
The store password for the key store file. This is optional for the client and only needed if ‘ssl.keystore.location’ is configured. Key store password is not supported for PEM format
The password of the private key in the key store file or the PEM key specified in ‘keystore.key’
The number of acknowledgments the producer requires the leader to have received before considering a request complete. This controls the durability of records that are sent. The following settings are allowed:0,1 and all
Number of retries. Resend any record whose send fails with a potentially transient error
none or gzip
Default batch size. This setting gives the upper bound of the batch size to be sent
This variable creates a small amount of artificial delay—that is, rather than immediately sending out a record
The maximum size of a request in bytes. This setting will limit the number of record batches the producer will send in a single request to avoid sending huge requests
The maximum number of unacknowledged requests the client will send on a single connection before blocking
The total bytes of memory the producer can use to buffer records waiting to be sent to the server
The multiple copies of data over the multiple brokers of Kafka
The maximum delay between invocations of poll() when using consumer group management. This places an upper bound on the amount of time that the consumer can be idle before fetching more records
The maximum number of records returned in a single call to poll()
The maximum amount of data per-partition the server will return. Records are fetched in batches by the consumer
The maximum amount of data the server will return. Records are fetched in batches by the consumer
(30 seconds)
(10 seconds)
earliest, latest or none
Enable/Disable using of Confluent Cloud
The endpoint identification algorithm used by clients to validate server hostname. The default value is https
The mechanism used to authenticate Schema Registry requests. SASL/PLAIN should only be used with TLS/SSL as a transport layer to ensure that clear passwords are not transmitted on the wire without encryption
Using JAAS Configuration for specifying multiple SASL mechanisms on a broker
Protocol used to communicate with brokers. Valid values are: PLAINTEXT, SSL, SASL_PLAINTEXT, SASL_SSL
If you override any default Kafka topic name using environment variables, you must also specify the related consumer properties for the new topic in consumer-properties-per-topic-inline. Otherwise, the topic will not inherit its expected configuration (e.g., max.poll.records, timeouts, etc). Format: “topic1:key1=value1,key2=value2;topic2:key=value” Example: “tb_core_modified.notifications:max.poll.records=10;tb_edge_modified:max.poll.records=10,enable.auto.commit=true”
In this section you can specify custom parameters (semicolon separated) for Kafka consumer/producer/admin
Kafka properties for Rule Engine
Kafka properties for Core topics
Kafka properties for Transport Api topics
Kafka properties for Notifications topics
Kafka properties for Housekeeper tasks topic
Topics cache TTL in milliseconds. 5 minutes by default
murmur3_32, murmur3_128 or sha256
Topic used to consume api requests from transport microservices
Topic used to produce api responses to transport microservices
Maximum pending api requests from transport microservices to be handled by server
Maximum timeout in milliseconds to handle api request from transport microservice by server
Amount of threads used to invoke callbacks
Interval in milliseconds to poll api requests from transport microservices
Interval in milliseconds to poll api response from transport microservices
Default topic name
For high-priority notifications that require minimum latency and processing time
Interval in milliseconds to poll messages by Core microservices
Amount of partitions used by Core microservices
Timeout for processing a message pack by Core microservices
Enable/disable statistics for Core microservices
Statistics printing interval for Core microservices
Topic name for Housekeeper tasks
JS Eval request topic
JS Eval responses topic prefix that is combined with node id
JS Eval max pending requests
JS Eval max request timeout
JS response poll interval
JS response auto commit interval
Deprecated. It will be removed in the nearest releases
For high-priority notifications that require minimum latency and processing time
Interval in milliseconds to poll messages by Rule Engine
Timeout for processing a message pack of Rule Engine
Enable/disable statistics for Rule Engine
Statistics printing interval for Rule Engine
For high priority notifications that require minimum latency and processing time
Interval in milliseconds to poll messages
Service common parameters
Section titled “Service common parameters”service type
Unique id for this service (autogenerated if empty)
Usage statistics parameters
Section titled “Usage statistics parameters”Enable/Disable the collection of statistics about API usage. Collected on a system and tenant level by default
Enable/Disable collection of statistics about API usage on a customer level
Interval of reporting the statistics. By default, the summarized statistics are sent every 10 seconds
Reporting interval for urgent keys (e.g. SMS, Email) that require quicker usage state updates
Amount of statistic messages in pack
Metrics parameters
Section titled “Metrics parameters”Enable/disable actuator metrics.
General management parameters
Section titled “General management parameters”Expose metrics endpoint (use value ‘prometheus’ to enable prometheus metrics).
Notification system parameters
Section titled “Notification system parameters”Semicolon-separated deduplication durations (in millis) for trigger types. Format: ‘NotificationRuleTriggerType1:123;NotificationRuleTriggerType2:456’