app-nrf91-origin
The Lobaro wireless M-Bus gateway firmware, called app-nrf91-origin
, is executable on the NRF-SX-GW4-61
board,
which is the base for the Wireless M-Bus Gateway V4 product and all other Gateways and Sensor Nodes of the V4-Series.
This general description applies for all product variants independently which product it actually runs on.
The base firmware runs the Wireless M-Bus Gateway V4. Modified versions of the firmware may introduce changes, such as adding or removing configuration parameters or implementing specific behaviors, which are detailed on dedicated documentation pages.
Firmware Introduction
- (1) Funcion Addon Slot
- (2) Power Addon Slot
The Lobaro wireless M-Bus gateway collects consumption data from up to 64,000 commercially available devices, such as water meters, heat meters, and heat cost allocators, using an 868 MHz wireless M-Bus radio interface, Sensus RF Bubble Up, or Müller Funk. It securely forwards this data via NB-IoT or LTE-M cellular networks, or alternatively through LoRaWAN networks, for further processing on the Internet.
The gateway hardware can also support up to two add-ons. The first is a sensor add-on board, which provides additional measurement values alongside the collected metering data. The availability of this add-on depends on the specific product running the firmware. The second is a power add-on, enabling the use of various power supply options, including 12 VDC, 230 VAC, PoE, or solar panels.
Connectivity
Collected data is transmitted via an Cellular Mobile connection (NB-IoT / LTE-M) or LoRaWAN. In case of LoRaWAN a LoRaWAN Network Server (LNS) is required to to connect with the gateway. In case of a mobile connection, supported protocolls are CoAp and MQTT, while CoAp connected to the Lobaro IoT Platform is the prefered solution.
Protocols | Connectivity | Supported Backends |
---|---|---|
CoAp / CoAPs | Cellular Mobile (NB-IoT & LTE-M) | Lobaro IoT Platform |
MQTT / MQTTS | Cellular Mobile (LTE-M) | Lobaro IoT Platform MQTT Broker plus custom gateway management |
LoRaWAN | LoRaWAN | Any LoRaWAN Network Server (LNS) |
The Lobaro IoT Platform integrates seamlessly with third-party MQTT brokers and any LoRaWAN Network Server (LNS), enabling efficient device management and data processing across the entire system.
For MQTT a reference implementation is available. Please contact us for further information.
Compatible Metering Protocols
Wireless M-BUS S1, C1 or T1
- Unidirectional 868 MHz modes following DIN EN 13757-4.
- Open metering specification (OMS, Annex O): PHY_A - 868 MHz (uplink only)
- Qundis AMR
Meters with S2, C2, or T2 modes can also be received as long as no active wireless M-Bus communication from the gateway is required.
Sensus RF Bubble UP
- Manufacturer specific radio protocol for 868 MHz (Xylem Inc.).
- Unidirectional bubble up mode is supported.
Decoding Sensus RF telegrams requires the Lobaro telegram parser. However, Lobaro cannot share implementation details.
| Sensus RF Brochure |
ME-Funk
ME-Funk also known as "Müller Funk" - Manufacturer specific radio protocol for 868 MHz (Müller-electronic GmbH).
Decoding ME-Funk telegrams requires the Lobaro telegram parser. However, Lobaro cannot share implementation details.
433 MHz Variants
433 MHz variants are available on products equipped with the additional 433 MHz hardware addon for the following specifications:
- Wireless M-Bus, Open metering specification (OMS, Annex O): PHY_B - 433 MHz (uplink only)
- Sensus RF Bubble UP 433 MHz - Manufacturer specific (Xylem Inc.) radio protocol
Working Principle
The firmware is designed for maximum power efficiency in all operational states. It utilizes a CRON-based scheduler to wake up and execute tasks at predefined intervals, remaining in power-saving mode the majority of the time when not active.
Work Cycle:
- Power Reset or Manual Reset
- Initial startup sequence:
- Initialize the device and peripherals. All LEDs are flashing once sequentially.
- Initial network connection, uploading device related information
- Perform initial collection of metering data in install mode (see below).
- CRON based task execution (see below)
- Daily Status Message (see below)
Wireless M-Bus Installation Mode
Some reset reasons like configuration changes do not trigger the installation mode
After the initial startup the firmware is collecting wireless M-Bus telegrams in a special installation mode that provides constant feedback about the collected telegrams.
- Telegrams are collected in all configures modes and durations
- At least every two minutes the newly collected telegrams are uploaded
- This repeats for a second cycle through all configured modes to compensate for decreased listening time due to the data upload
Wireless M-Bus Reading
The firmware uses the listenCron
configuration parameter to wake up at regular intervals to collect
metering telegrams. During each CRON trigger, the following sequence of operations is executed:
- Enter deep sleep low-power mode and wait for the
listenCron
trigger. - Sequentially collect metering data in all enabled wireless modes:
- Collect C1-Mode and T1-Mode telegrams (wMBUS) in parallel for
cmodeDurSec
seconds (if not set to 0). - Collect S1-Mode telegrams (wMBUS) for
smodeDurSec
seconds (if not set to 0). - Collect X-Mode telegrams (Sensus RF) for
xmodeDurSec
seconds (if not set to 0). - Collect U-Mode telegrams (Müller Funk) for
umodeDurSec
seconds (if not set to 0).
- Collect C1-Mode and T1-Mode telegrams (wMBUS) in parallel for
- Upload all stored data via NB-IoT, LTE-CatM1, or LoRaWAN (depending on the
WAN
configuration):- Transmit collected metering telegrams, status updates, and sensor data.
- If the upload fails, retry every 24 hours after the daily status update or when the next
listenCron
is triggered.
- Return to sleep mode until the next
listenCron
trigger or status message upload.
Learn more about CRON configuration parameters.
All meter telegrams are received "as is," whether encrypted or plain over the air. Only the plain telegram header information is parsed for internal filtering and deduplication. Parsing and decryption of the telegrams must be handled in the backend, such as the Lobaro head-end system or another connected system. Lobaro also provides a standalone Parser API to decode raw (wireless) M-Bus telegrams, which can be licensed independently.
Daily Status Message
The device sends a daily status message, ensuring it can be accessed for tasks like configuration updates at least once per day, regardless of the configured scan interval. This status message provides critical information about the gateway's vital parameters.
- Upload schedule:
- Normally, the status telegram is uploaded at midnight 0:00h (UTC+0).
- For solar-powered hardware variants, the upload occurs at noon 12:00h (UTC+0).
- Any remaining telegrams in memory are also uploaded if previous upload attempts failed.
- Afterward, the device returns to sleep mode until the next
listenCron
trigger or the following day's status message.