Configuration
This page outlines all common configuration parameters of the firmware. Default settings are preconfigured to ensure a seamless initial operation experience.
For larger orders, Lobaro can apply customer-specific configurations to all parameters prior to delivery.
Firmware Configuration Parameter
The configuration parameters described here are common to all products running this firmware. However, some products may include additional parameters or modify the parameters listed here, such as allowing additional values to be set. In all cases, the specific product's documentation takes precedence over this general description and should be reviewed carefully.
General Parameters
Description | Key | Type | Possible Values | Default |
---|---|---|---|---|
Uplink channel selection | WAN | String | lte or lorawan | lte |
Days without connectivity until device reset | LostReboot | Number | Any, e.g., 3 | 5 |
WAN
Parameter
LPWAN technology is used for connection and data communication with the backend server. This can be either cellular LTE (NB-IoT, LTE-M) or LoRaWAN.
lte
: Utilizes cellular technologies, either NB-IoT or LTE-M.lorawan
: Employs LoRaWAN with OTAA (Over-The-Air Activation).
- LoRaWAN uplinks and downlinks are limited to 52–222 bytes, depending on the DataRate (connection quality):
- Uplinks containing longer wMBUS telegrams are split across multiple LoRaWAN messages.
- Uplinks with numerous wMBUS telegrams may take significant time due to LoRaWAN's duty-cycle limitations.
- Downlinks with large configuration values (e.g., long whitelists) must be split into multiple messages, which can be challenging to implement.
- Limited metadata:
- Status telegrams include less information due to reduced uplink channel capacity.
- No remote firmware update capabilities.
Wireless M-Bus Meter Reading
Description | Key | Type | Possible Values | Default |
---|---|---|---|---|
WMBUS Listen Cron [UTC+0] | listenCron | String | Any CRON String | 0 0 12 * * * |
WMBUS C1/T1 Listen Duration [s] | cmodeDurSec | Number | Number of seconds0 = Do not collect C1/T1Max Value= 36000 | 300 |
WMBUS S1 Listen Duration [s] | smodeDurSec | Number | Number of seconds0 = Do not collect S1Max Value= 36000 | 0 |
Sensus RF Listen Duration [s] | xmodeDurSec | Number | Number of seconds0 = Do not collect X-ModeMax Value= 36000 | 0 |
Müller-Funk Listen Duration [s] | umodeDurSec | Number | Number of seconds0 = Do not collect U-ModeMax Value= 36000 | 0 |
WMBUS ID Filter List | devFilter | String | List, e.g.88009035,13456035 | [not set] |
WMBUS Type Filter List | typFilter | String | List, e.g.08,07 | [not set] |
WMBUS M-Field Filter List | mFilter | String | List, e.g.DME,ITW,SEN,QDS | [not set] |
WMBUS CI-Field Filter List | ciFilter | String | List, e.g.8a,72 | [not set] |
WMBUS Telegram Upload Limit | maxTelegrams | Number | Any number of max. Telegrams0 = no limit. | 0 |
listenCron
Parameter
The listen cron specifies when the device wakes up to receive data via enabled wireless M-Bus and other radio protocols. Each listening period is followed by data upload using the configured WAN technology. The ideal interval largely depends on the device's power supply (battery-powered vs. externally powered) and the application's need for new metering data. Typical intervals range from every 15 minutes to 14 days between consecutive readouts.
Learn more about CRON configuration parameters.
*modeDurSec
Parameters
Parameters: cmodeDurSec
smodeDurSec
xmodeDurSec
umodeDurSec
The duration, specified in seconds (e.g., 300
for 5 minutes), defines how long the device collects metering data for
each corresponding wireless protocol. Each listening period is executed sequentially based on the configured durations.
Once all listening periods are complete, the collected meter telegrams are transmitted using the configured WAN
technology.
*Filter
Parameters
Parameters: devFilter
ciFilter
mFilter
typFilter
Filters are applied to meters based on wireless M-Bus-related fields to determine which telegrams are collected and uploaded. These filters include:
mFilter
: Manufacturer filter – filters telegrams by the 3-letter manufacturer code included in every telegram ( e.g.,LOB
for Lobaro GmbH).typFilter
: Device Type filter – filters telegrams by the 2-hex-digit code that defines the type of sending device (e.g.,07
for water meters).devFilter
: Device filter – filters telegrams by the 8-digit ID that is mandatory for each sending device (e.g.,87654321
).ciFilter
: CI-Field filter – filters telegrams by the 2-hex-digit CI-Field included in every telegram. This field is a technical code that describes the purpose of the telegram (e.g.,8a
).
These filters help refine data collection to target specific devices or device types.
For a detailed explanation, read more about telegram filter parameterization.
Blacklist
Each filter parameter can be preceded with an exclamation mark (!
) to convert the whitelist into a blacklist.
This applies to the entire filter parameter, not to individual entries within the list. For example:
mFilter=LOB
will collect only telegrams from Lobaro GmbH (whitelist).mFilter=!LOB
will exclude telegrams from Lobaro GmbH (blacklist).
maxTelegrams
Parameter
Set a hard limit on the number of telegrams to be collected and uploaded. The firmware will stop collecting once this limit is reached, regardless of the elapsed time. This can help conserve battery life and data volume, especially if the device is located in an area with a high density of meters.
When filtering for a single telegram, the parameter can be set to 1
, causing the device to stop listening immediately
after the desired telegram is received.
LTE Connection
Description | Key | Type | Possible Values | Default |
---|---|---|---|---|
LTE Lobaro Platform Host | Host | IP / URL | List of various Endpoints | coaps://platform.lobaro.com |
LTE MCC+MNC Code | Operator | Number | e.g. 26201 (Dt. Telekom) | [not set] |
LTE Band | Band | Number | 3 or 8,20 or 3,8,20 | 3,8,20 |
LTE APN | APN | String | any APN | * |
LTE SIM Pin | PIN | Number | 4 digits pin, e.g. 1234 | [not set] |
LTE NB-IoT on/off | UseNbiot | Bool | true or false | true |
LTE M1 on/off | UseLtem | Bool | true or false | true |
LTE DNS Servers used | DNS | IP | List of DNS server IPs | 9.9.9.9,1.1.1.1 |
Plain UDP Host | UdpHost | IP | any, e.g 94.130.20.37 | [not set] |
Plain UDP Port | UdpPort | Number | any, e.g 3333 | [not set] |
Host
Parameter
- Lobaro Platform CoAP
- MQTT
Hostname or IP of the Lobaro Platform instance CoAP endpoint to which the gateway communicates using UDP.
- Using DTLS:
coaps://platform.lobaro.com
- No DTLS:
coap://platform.lobaro.com
- Plain IP:
94.130.20.37
(platform.lobaro.com)
It's also possible to configure a list of URLs to implement a fallback mechanism. This is particulary helpful for
combining DTLS and non DTLS connection attempts: coaps://platform.lobaro.com,coap://platform.lobaro.com
The device can communicate directly via MQTT.
MQTT Host
parameter format:
[format+]protocol://[user[:password]@]host[:port][/topic prefix/][?arguments]
Example MQTT Host
parameters:
-
Connect via MQTTS using client-certificate authentication to platform.lobaro.com and communicate using CBOR:
mqtts://platform.lobaro.com
-
Connect via MQTTS using username
foo
and passwordbar
to platform.lobaro.com and communicate using JSON.:json+mqtts://foo:bar@platform.lobaro.com?cert=0
-
Connect via MQTT using username
foo
and passwordbar
to example.com on port 1234 and communicate using JSON on path prefix/mydevice/
:json+mqtt://foo:bar@example.com:1234/mydevice/
Supported formats:
cbor
(default)json
Supported protocols:
mqtt
mqtts
Username and password are optional. Each of them has a maximum length of 64 characters.
Username and password need to be URL encoded!
The host may be either a DNS hostname or an IPv4 address. IPv6 is currently not supported.
TLS Server Name Identification (SNI) is only supported when a hostname is set!
The port is optional. Default ports:
mqtt
: Port 1883.mqtts
: Port 8883.
The topic prefix is optional.
Default prefix: LOB/
.
Make sure to include a trailing slash in your topic prefix!
The following arguments are currently supported and can be included as URL query string:
cert=0
: Disable client-certificate authentication when using MQTTS.
The device subscribes to the following MQTT topics:
[topic prefix]/[DevEUI]/down/#
The device publishes to the following MQTT topics:
[topic prefix]/[DevEUI]/up/*
[topic prefix]/[DevEUI]/req/*
The MQTT client ID is the DevEui and cannot be changed.
To configure MQTT broker fallbacks, include multiple broker URLs separated by commas. The device will then use the first broker to which it can successfully connect.
Example: json+mqtts://platform.lobaro.com,json+mqtt://foo:bar@platform.lobaro.com
.
LTE Parameters
Parameters: APN
Operator
Band
, PIN
Basic parameters are required to configure the NB-IoT or LTE-M connection. These settings must align with the SIM card
and network provider used. Typically, the default parameters work well, as they enable the modem to automatically select
and join the network using SIM card information. However, if the APN
(Access Point Name) is known, it is recommended
to configure it for optimal performance.
Read more about LTE network configuration parameters.
UseNbiot
UseLtem
The modem supports both NB-IoT and LTE-M technologies. By default, both are enabled, allowing the cellular modem to
automatically select the most suitable network type based on the location. However, you can force the modem to use a
specific technology by setting one parameter to false
, ensuring the other remains enabled (set to true
). At least
one technology must always be active.
UdpHost
UdpPort
This feature is deprecated and not recommended for production use. Lobaro provides limited support for errors caused by using raw UDP upload.
Instead of sending metering data to the Lobaro IoT Platform, the data can alternatively be sent to an external UDP socket. This option is useful if you prefer to keep metering data off external servers while still using the Lobaro Platform to control your gateways.
UdpHost
: IP address to upload plain telegrams via UDP.[not set]
: Defaults to uploading data to the Lobaro IoT Platform using the configured Host parameter.
UdpPort
: Port number to upload plain telegrams via UDP.- Only used if
UdpHost
is set.
- Only used if
Even when metering data is sent to an external server, the firmware typically still requires a connection to a Lobaro Platform instance to send status information, perform remote configurations, or handle firmware updates.
For solutions that allow all communication without the Lobaro Platform, such as direct MQTT to an external broker, contact Lobaro for potential options.
LoRaWAN Connection
Description | Key | Type | Possible Values | Default |
---|---|---|---|---|
LoRaWAN DevEUI | DevEUI | byte[8] | any | Device EUI64 |
LoRaWAN AppEUI / JoinEUI (1.1) | JoinEUI | byte[8] | any | random |
LoRaWAN AppKey | AppKey | byte[16] | any | random |
LoRaWAN NwkKey (1.1) | NwkKey | byte[16] | any | 00000000000000000000000000000000 |
LoRaWAN Days between Timesync | TimeSync | Number | any | 3 |
LoRaWAN Payload Format | PayloadFormat | Number | 0 , 1 , 2 | 0 |
LoRaWAN use OTAA | OTAA | Bool | true or false | true |
LoRaWAN Random TX Delay [s] | RndDelay | Number | any | 10 |
LoRaWAN 1.1 is experimental and not certified. For production environments, we recommend using LoRaWAN 1.0.2.
NwkKey
Parameter
The Network Key (NwkKey) is used for LoRaWAN 1.1. If set to zeros (00000000000000000000000000000000
) or to the same
value as the AppKey
,
the device will stick to LoRaWAN 1.0.2 which is the recommended mode of operation.
PayloadFormat
Parameter
Used encoding of the LoRaWAN uplink payload packets.
0
= Encoding in ports with static message length1
= prefix bytes and time2
= prefix bytes, time, and rssi
For a detailed specification of the payload formats, please refer to the LoRaWAN Communication page.
Special
Description | Key | Type | Possible Values | Default |
---|---|---|---|---|
Verbose UART Log | verbose | Bool | true or false | false |
Addon RAM configuration | extRam | String | Lobaro Internal | [not set] |