We use cookies to optimize site functionality and provide the best possible experience.
View our new Privacy and Protection of Personal Data here.
Accept Settings
INDEX

STG Series WMBus (Wireless MBus) – Modbus TCP/RTU Gateway with 2 x 10/100Base-T(x) Ports, 1 x RS232 and 1 x RS485 Serial Ports and/or BPL (Broadband Power Line Link) User Manual

1. About STG Series WMBus Gateways

STG Series WMBus Gateways receive Wireless M-Bus (WMBus) telegrams of meters over the air, decrypt and parse them, and make the meter values available as Modbus registers and as MQTT messages. This manual describes the Gen3 devices (firmware v3.00.00 and later): the STG154 and STG254 (standard models), the STG154 Lite and the STG655 (model with Broadband Power Line link).

One device has six functions. The function is chosen on the Operating Mode page with Device Function:

  • WMBus - TCP/IP Transparent Gateway - received telegrams are passed to TCP/IP clients; clients can send telegrams to the air. This is the factory setting.
  • WMBus - Modbus TCP Gateway (and MQTT Publisher) - meter values are read as Modbus TCP registers.
  • WMBus Decoder/Parser and MQTT Publisher - meter values are published to an MQTT broker.
  • WMBus - Serial Transparent Gateway - as the first function, over the serial port.
  • WMBus - Modbus RTU Gateway (and MQTT Publisher) - meter values are read as Modbus RTU registers.
  • WMBus Repeater - received telegrams are sent to the air again.

The standard models and the STG655 hold 128 meters: 128 Modbus rows and 128 AES keys. The STG154 Lite holds 20 meters.

1.1 What is new in firmware 3.00.00

AreaFirmware 3.00.00
ScopeGeneration-3 firmware for the STG gateways: the application was re-hardened on top of the 2.x field releases (network, radio module, configuration storage, web interface, Modbus, MQTT, diagnostics).
Capacity128 meters / Modbus rows / AES keys (2.x: 64; Lite model: 20, unchanged). Discovery list 256 meters. Data type codes 1 - 65 (2.x: 1 - 64; existing codes did not move).
ReliabilityEvery network-caused restart request passes one gate: it is suppressed while the cause is outside the device and it parks after 3 rounds instead of looping. Network watchdog, MQTT delivery watchdog, two-stage client-less watchdog, stall detector and hardware watchdog.
Radio / metersMeters that send plain bytes after their encrypted blocks are decrypted by the gateway itself, without any setting. The key list in the radio module is verified after every upload.
ModbusModbus RTU at full load: one request every 25.2 ms (39.7 per second), the slowest answer 103.9 ms. Modbus TCP with 10 clients at full load: about 448 requests per second, answers in 22 ms on average.
ConfigurationIdentity header in configuration.json, one writer at a time on the configuration flash, every write verified; a failed write is reported instead of answered with OK.
DiagnosticsBoot diagnosis lines on every boot and a self-describing tail in the status data (assets/ajax/dev_status_json.htm) - readable with one request even when logging is off.
MeasuredModbus RTU at full load for 23 hours: 3,290,526 answers, 0 timeouts, no restart. Modbus TCP with 10 clients at full load for about 24 hours: 38.4 million answers, no wrong answer, 39 timeouts (0.0001 %), no restart. Telegram reception 99.8 %.

NOTE:

Upgrading a device from firmware 2.x resets its settings to the factory values. Read chapter 15 "Firmware Update and Upgrading from 2.x" before you upgrade.

2. Hardware Features

STG Series WMBus Gateways are made with and without a Broadband Power Line (BPL) link.

2.1 Features

  • 2 x 10/100Base-T(X) Ethernet ports
  • 1 x RS232 and 1 x RS485 serial connection, up to 460800 baud
  • Embedded web interface
  • 868 MHz Wireless M-Bus (WMBus) radio
  • Supported CI values (radio module): 53h, 5Bh, 60h, 6Ch, 6Dh, 6Eh, 6Fh, 72h, 74h, 75h, 78h, 7Ah, 7Ch, 7Dh, 80h, 8Ah, 8Bh, 8Ch, 8Dh, 8Eh, 8Fh, C3h, C4h, C5h
  • One device with six functions: WMBus to Modbus TCP or Modbus RTU gateway with MQTT publisher, WMBus to TCP/IP or serial transparent gateway, WMBus decoder with MQTT publisher, WMBus repeater
  • Up to 10 TCP clients at the same time, for example several Modbus TCP masters
  • MQTT publisher with three data formats: raw decrypted telegram, parsed data as objects, parsed data as Modbus frame
  • Configurable WMBus reception mode: S mode, T mode, or C and T mode together
  • AES-128 decryption and Modbus mapping for up to 128 meters (20 on the STG154 Lite)
  • Auto configuration from the telegrams heard on the air
  • Configurable radio output power, -1 dBm to 13 dBm, used when the gateway sends telegrams (transparent gateway and repeater functions)
  • Received telegrams, parsed meter data and the device status are shown on the web interface
  • DHCP server
  • White list and black list filters for WMBus telegrams
  • Firmware update from the web interface; two firmware images are stored in the device, one of them active
  • DC or AC power input depending on the model
  • Operating temperature: -25 to 70 C for the AC powered versions, -40 to 85 C for the DC powered versions
  • Metal IP 40 housing, DIN rail mounting
  • No battery for the clock: after a power cut set the time again, from an NTP server or with Set Device Time

2.2 Extra features of the model with BPL (STG655)

  • 2 x 10/100Base-T(X) Ethernet ports and 1 x BPL link
  • Three-phase AC input (110 - 240 V, 50 - 60 Hz) or 9 - 36 V DC input, depending on the version
  • Up to 30 Mbps PHY rate on the BPL link, up to 10 hops and 1000 nodes
  • Up to 432 sub-carriers from 2 to 28 MHz analog bandwidth, LDPC-C FEC with 128-bit AES
  • BPL role (master or node) is selected on the web interface

2.3 STG154 Lite differences

  • 1 x 10/100 Ethernet port
  • 1 x RS485 port, no RS232
  • 9 - 36 V DC power input (40 V maximum)
  • No console port; the log is available over UDP
  • AES-128 decryption and Modbus mapping for up to 20 meters

3. Installation

Each device has a DIN rail kit on its rear panel. Tilt the device, hook the metal spring onto the DIN rail and push the device towards the rail until it clicks into place.

4. Front Panel Description

4.1 STG154 and STG254

  1. SMA female antenna connector, 50 ohm
  2. Console port for the log, 115200 baud - micro USB on earlier hardware, USB Type-C on current hardware. The USB serial chip is made by FTDI; the driver is on the Driver page under Support on redz-sc.com (https://redz-sc.com/en/support/driver). The Tx and Rx LEDs of the console blink during transmission
  3. WMBus LEDs - ALIVE blinks during normal operation; Tx and Rx blink when telegrams are sent and received
  4. Device LEDs - STATUS: in the device functions with a TCP server it blinks while no client is connected and stays on while a client is connected; in the serial device functions it stays on. Tx and Rx blink when data is sent and received. SERVER: on in the two device functions with a TCP server (WMBus - TCP/IP Transparent Gateway and WMBus - Modbus TCP Gateway (and MQTT Publisher)), off in the others
  5. Ethernet activity LEDs for port 1, port 2 and the device itself
  6. 5 pin terminal block - RS232: Tx, Rx and GND; RS485: A, B and GND. The serial port is selected and set on the web interface
  7. 2 x 10/100Base-T(X) Ethernet ports

4.2 STG655

  1. SMA female antenna connector, 50 ohm
  2. Console port for the log, 115200 baud - micro USB on earlier hardware, USB Type-C on current hardware. The USB serial chip is made by FTDI; the driver is on the Driver page under Support on redz-sc.com (https://redz-sc.com/en/support/driver). The Tx and Rx LEDs of the console blink during transmission
  3. WMBus LEDs - ALIVE blinks during normal operation; Tx and Rx blink when telegrams are sent and received
  4. Device LEDs - STATUS: in the device functions with a TCP server it blinks while no client is connected and stays on while a client is connected; in the serial device functions it stays on. Tx and Rx blink when data is sent and received. SERVER: on in the two device functions with a TCP server (WMBus - TCP/IP Transparent Gateway and WMBus - Modbus TCP Gateway (and MQTT Publisher)), off in the others
  5. Ethernet activity LEDs for port 1, port 2 and the device itself
  6. 5 pin terminal block for the serial line - RS232: Tx, Rx and GND; RS485: A, B and GND
  7. BPL LEDs - ACTIVITY blinks during BPL traffic; LINK is on when a BPL link is established; MASTER is on when the device is set as BPL master
  8. 2 x 10/100Base-T(X) Ethernet ports

4.3 STG154 Lite

  • SMA female antenna connector, 50 ohm
  • WMBus LEDs - ALIVE blinks during normal operation; Tx and Rx blink when telegrams are sent and received
  • Device LEDs - STATUS: in the device functions with a TCP server it blinks while no client is connected and stays on while a client is connected; in the serial device functions it stays on. Tx and Rx blink when data is sent and received. SERVER: on in the two device functions with a TCP server (WMBus - TCP/IP Transparent Gateway and WMBus - Modbus TCP Gateway (and MQTT Publisher)), off in the others
  • Ethernet activity LED
  • Terminal block for RS485: A and B
  • 1 x 10/100Base-T(X) Ethernet port

5. Top Panel Description

5.1 STG154

  1. DC power input, 5 - 48 V DC (60 V maximum), protected against reverse polarity
  2. Power LED, on while the device is powered
  3. Reset buttons, marked RESET TO SERVER and RESET TO CLIENT. With firmware 3.00.00 both do the same: held for more than 5 seconds, either one restores the factory settings and restarts the device

5.2 STG254

  1. AC power input, 100 - 240 V AC, 50 Hz to 60 Hz (120 - 370 V DC)
  2. Power LED, on while the device is powered
  3. Reset buttons, marked RESET TO SERVER and RESET TO CLIENT. With firmware 3.00.00 both do the same: held for more than 5 seconds, either one restores the factory settings and restarts the device

5.3 STG655

  1. Power and BPL terminal block
  2. Power LED, on while the device is powered
  3. Reset buttons, marked RESET TO SERVER and RESET TO CLIENT. With firmware 3.00.00 both do the same: held for more than 5 seconds, either one restores the factory settings and restarts the device

The STG655 is powered over terminal pins 1 and 2 only. On the AC version the terminals are marked L3, L2, L1 and N: power is connected to L1 and N (pins 1 and 2), the other two terminals (L2 and L3, pins 3 and 4) are data terminals. The STG655 is made in an AC powered version (110 - 240 V, 50 - 60 Hz) and in a DC powered version (9 - 36 V DC). The BPL data connection depends on the version:

Data connectionDescription
Phase to phase (PP)Data is carried over terminal pins 3 and 4. Connect two phases to these pins (L1-L2, L2-L3 or L1-L3). Where two phases are not available, a phase and neutral can be connected to pins 3 and 4.
Phase to neutral (PN)The device is powered from phase and neutral on pins 1 and 2 and also carries data over these pins. Pins 3 and 4 are optional.
DCData is carried over a DC power line, for example 24 V and GND, on terminal pins 3 and 4.

The AC powered version is made with the PP or the PN data connection, the DC powered version with the PP data connection.

5.4 STG154 Lite

  • DC power input, 9 - 36 V DC (40 V maximum), protected against reverse polarity
  • Reset button, marked RESET TO SERVER: held for more than 5 seconds, it restores the factory settings and restarts the device

6. Ethernet Cables

The Ethernet ports are standard 10/100Base-T(X) ports with RJ-45 connectors.

6.1 Cable type and specifications

CableTypeMaximum lengthConnector
10BASE-TCat. 3, 4, 5, 100 ohm UTP100 m (328 ft)RJ-45
100BASE-TXCat. 5, 100 ohm UTP100 m (328 ft)RJ-45

6.2 Pin assignments

With a 100BASE-TX / 10BASE-T cable, pins 1 and 2 transmit data and pins 3 and 6 receive data.

PinDescription
1TD+
2TD-
3RD+
4Not used
5Not used
6RD-
7Not used
8Not used

7. System Comparison Between CAT5 and BPL Links

The table compares a link over CAT5 cable with the BPL link of the STG655.

CAT5 cableBPL link
MediaCAT5 cablePower line
New wiringYesNo, the existing power line is used
InstallationNew cable has to be laidThe device is connected to the power line

WARNING:

Connect an STG655 to a network over one path only: over the power line or over an Ethernet cable. If it reaches the same network over both, the network has a loop; packets are lost and firmware uploads are cut.

8. Serial Cables

The standard models and the STG655 have one RS232 and one RS485 port on the terminal block; the STG154 Lite has RS485 only. The port in use, the baud rate and the line control are set on the Serial Settings page.

8.1 RS232

PinDescription
1GND
2Rx
3Tx

8.2 RS485

PinDescription
1A
2B
3GND (recommended)

NOTE:

The STG154 Lite has a 2 wire RS485 connection (A and B).

9. Usage Scenarios and Connection Diagrams

9.1 Overview

The Device Function on the page Operating Mode selects one of six ways of working. The scenarios below describe the data flow of each function. Functions that read meters handle up to 128 meters (STG154 Lite: 20).

ScenarioDevice FunctionData leaves the gateway byEthernet needed
1WMBus - Modbus TCP Gateway (and MQTT Publisher)Modbus TCP, MQTT in additionYes
2WMBus - Modbus RTU Gateway (and MQTT Publisher)Modbus RTU on RS232 / RS485, MQTT in additionOnly for MQTT and the web interface
3WMBus Decoder/Parser and MQTT PublisherMQTTYes
4WMBus - TCP/IP Transparent GatewayTCP, raw WMBus frames in both directionsYes
5WMBus - Serial Transparent GatewayRS232 / RS485, raw WMBus frames in both directionsOnly for the web interface
6WMBus RepeaterRadio (frames are sent again)Only for the web interface

NOTE:

The serial functions and the repeater start working without an Ethernet connection. After power-up without a DHCP server these functions start up to one minute later. The functions that work over TCP or MQTT need the network and do not deliver data without it.

9.2 Scenario 1 - WMBus to Modbus TCP (and MQTT)

The gateway receives the frames of the meters listed in Device Query Settings, decrypts and decodes them and keeps the latest values of every meter as Modbus registers. It works as a Modbus TCP server: Modbus TCP clients (SCADA, PLC, data logger) connect to the Server Listening Port (factory value 502) and read a meter under the Modbus Address of its row. Up to Maximum Number of Clients clients can be connected at the same time (1 to 10, factory value 2; saving this function on the page Operating Mode raises a setting of 1 to 2).

If Enable MQTT Publisher for Parsed WMBus Packages is switched on on the page Network Settings, the same meters are published to the MQTT broker in parallel. Saving this function does not change the MQTT setting.

  • Frames are not sent to the air in this function.
  • A client above the configured number is refused.
  • With MQTT switched off the gateway expects a Modbus TCP client: after 30 minutes without any client it reopens its listening port, after a further 30 minutes it restarts.

WARNING:

Switch MQTT on only when a broker can be reached. While MQTT is switched on and the broker cannot be reached, the gateway restarts about every 13 minutes to recover the connection; Modbus TCP connections are dropped by each restart.

9.3 Scenario 2 - WMBus to Modbus RTU (and MQTT)

The gateway receives, decrypts and decodes the frames of the listed meters as in scenario 1, but works as a Modbus RTU slave on its serial port. One Modbus RTU master is connected to the RS485 or RS232 port selected on the page Serial Settings and reads each meter under the Modbus Address of its row. Baud rate and line control of both sides must match.

MQTT publishing runs in parallel if it is switched on on the page Network Settings; this needs the Ethernet connection. Saving this function does not change the MQTT setting.

  • Frames are not sent to the air in this function.
  • Modbus RTU works without an Ethernet connection.

WARNING:

Switch MQTT on only when a broker can be reached. While the broker cannot be reached the gateway restarts about every 13 minutes to recover the connection.

9.4 Scenario 3 - WMBus to MQTT

The gateway receives, decrypts and decodes the frames of the listed meters and publishes them to an MQTT broker. Saving this function switches the MQTT publisher on; broker, topics, Data Format and Minimum Send Interval for a Parsed Data (in seconds) are set on the page Network Settings. The table Device Query Settings lists the meters without Modbus addresses.

  • There is no Modbus access and no serial data in this function.
  • Frames are not sent to the air in this function.

WARNING:

This function needs a broker that can be reached. While MQTT is switched on and the broker cannot be reached, the gateway restarts about every 13 minutes to recover the connection.

9.5 Scenario 4 - WMBus to TCP/IP, transparent

The gateway is a TCP server on the Server Listening Port (factory value 502). Up to Maximum Number of Clients clients (1 to 10, factory value 2) can be connected. Every WMBus frame that is received and passes the white list / black list is sent to all connected clients, starting with the length field of the frame. The content is not changed, with one exception: frames of meters whose AES key is entered are decrypted first (see 9.8 "Decryption in the transparent functions and in the repeater"). The number of meters is not limited; nothing is decoded and no meter list is needed.

In the other direction a client can send WMBus frames to the air. The gateway transmits them with the Tx Package Transmission Mode and Tx Power Level of the page WMBus Settings.

  • A frame sent by a client must be a complete WMBus frame that starts with its length field (L); the gateway takes exactly L + 1 bytes as one frame.
  • The bytes of a frame must follow each other without a pause: an incomplete frame is discarded when no further byte arrives for 1 second.
  • The same frame sent again within 2 seconds is not transmitted a second time.
  • The white list / black list is applied to frames from the client as well.
  • A client that has not yet taken the previous frame does not get the next one.
  • MQTT and Modbus are not available in this function.

WARNING:

The gateway expects a TCP client in this function. After 5 minutes without any client it reopens its listening port, after a further 5 minutes it restarts. Keep one client connected.

9.6 Scenario 5 - WMBus to serial, transparent

The same as scenario 4, with the serial port in place of the TCP connection. Every WMBus frame that is received and passes the white list / black list is written to the RS485 or RS232 port selected on the page Serial Settings, starting with the length field of the frame. A WMBus frame received on the serial port is sent to the air under the same rules as in scenario 4.

  • One serial device is served. The number of meters is not limited.
  • A frame that is received while the previous one is still being written to the serial port is not passed on. Choose a baud rate that is high enough for the number of frames.
  • The function works without an Ethernet connection.
  • MQTT and Modbus are not available in this function.

9.7 Scenario 6 - WMBus repeater

The gateway sends received WMBus frames to the air again, so that a receiver outside the range of the meters can still read them. The frames are transmitted with the Tx Package Transmission Mode and Tx Power Level of the page WMBus Settings. No meter list is needed and the number of meters is not limited; only the white list / black list decides which meters are repeated.

RuleBehaviour
DelayEach frame is sent again after a random delay of 5 to 25 seconds.
Hop bitIn a frame that carries a hop bit the repeater sets this bit before it sends the frame; nothing else in the frame is changed. A frame whose hop bit or repeated-access bit is already set is not sent again, so two repeaters do not feed each other.
Frames without a hop bitSent again unchanged. A frame that was already repeated is not repeated again within 60 seconds (the repeater remembers the last 8 such frames).
Waiting framesUp to 16 frames wait for their delay at the same time; further frames are not repeated.
Installation framesIf a repeater address is entered (Repeater Manufacturer ID (hex), Repeater Device ID (hex; both IDs 0 = SND-NKE off), Repeater Version (hex); manufacturer and device id both 0 = off), the repeater sends its own SND-NKE message 2 to 5 seconds after it has repeated an installation frame of a meter.
  • The repeater works without an Ethernet connection; the network is needed for the web interface only.
  • MQTT and Modbus are not available in this function.

9.8 Decryption in the transparent functions and in the repeater

The AES-128 Decryption List of the page WMBus Settings is used in every function, with or without Add to Config. A frame of a meter whose AES key is in this list (up to 128 meters, STG154 Lite 20) is decrypted before it is passed on; frames of all other meters are passed on as they were received.

FunctionEffect of a key in the list
WMBus - TCP/IP Transparent Gateway, WMBus - Serial Transparent GatewayThe TCP client or the serial device receives the data of this meter decrypted; the frame header is not adapted and the frame can be shorter than the frame on the air. Leave the key out if the receiving system decrypts the frames itself.
WMBus RepeaterThe frame of this meter is sent to the air again decrypted, and the receiving gateway cannot read it. Do not enter meter keys on a repeater. The page shows a warning while a key is present in this function.

10. Configuration via Web Interface

The gateway is configured from its embedded web interface. The pages are described below in the order of the menu.

10.1 Connecting to the Web Interface

The gateway is configured with a web browser over its Ethernet port. Every page of the interface is protected by a user name and a password.

10.1.1 Factory network state

A factory device asks for its address by DHCP: Use Static Address for Device and DHCP Server Enabled are both off. The address fields are stored nevertheless and serve as the fall-back address:

SettingFactory value
Use Static Address for DeviceOff (address by DHCP)
DHCP Server EnabledOff
Server IP Address192.168.1.1
Server Net Mask255.255.255.0
Server Gateway Address192.168.1.1

If no DHCP server answers, the device keeps the fall-back address 192.168.1.1 / 255.255.255.0. It waits up to one minute for a DHCP answer before it starts its data services with that address.

NOTE:

A device that started with the fall-back address and receives a DHCP address later restarts once and continues with the new address.

SituationWhat to do
Network with a DHCP serverConnect the device, then find its address with the abcZ Network Tool. The device is identified by its MAC address.
No DHCP server (for example a direct cable to a PC)Give the PC a fixed address in the network 192.168.1.x (not 192.168.1.1) and open 192.168.1.1. If the page does not open at once, wait a moment and try again; the data port (Modbus TCP / transparent TCP) is opened up to one minute after power-up.

Type the address of the device into the address line of the browser (http, port 80).

10.1.2 Find the address with the abcZ Network Tool

The abcZ Network Tool lists the REDZ devices of a network with their address, MAC address, product and firmware version, so the gateway can be found without knowing its address.

  1. Connect the PC to the same network as the gateway. Start the abcZ Network Tool and open the Discovery tab.
  2. Type the network in IP range, for example 192.168.0.0/24 for the addresses 192.168.0.1 to 192.168.0.254. Leave User and Password at the factory values (admin / admin) unless the password of the gateway was changed.
  3. Click Scan (HTTP). Each gateway that answers appears as a row, with its address in IP and its MAC, Product and Version.
  4. Find your gateway by its MAC address and double-click the row: the web interface of the gateway opens in the browser. The same MAC address is shown in the header of every page of the web interface.

A gateway with another password is listed with "auth required (password?)" - type its password and scan again. Discover (UDP) is a faster alternative inside the same subnet. The tool is described in full in chapter 16 "Software - abcZ Network Tool".

10.1.3 Login

The browser asks for a user name and a password before the first page is shown.

ItemValue
User nameadmin (fixed, cannot be changed)
Password (factory)admin

WARNING:

Change the password after the first login: page Management, card Change Password.

10.1.4 Page header and menu

The header of every page shows the product name, the firmware version, the build date of the firmware and the MAC address of the device.

ModelProduct name in the header
STG154 / STG254REDZ STG Series Wireless MBus Gateway
STG154 LiteREDZ STG Series Wireless MBus Gateway - Lite Model
STG655REDZ STG Series Wireless MBus Gateway with BPL

The menu on the left has eight entries. Seven are always present; Serial Settings appears only when the selected Device Function uses the serial port.

Menu entryContentShown
Operating ModeDevice name, device function, list of meters to be readAlways
Network SettingsTime server, MQTT, TCP server and IP address settingsAlways
Serial SettingsRS232 / RS485 selection, baud rate, line controlOnly with WMBus - Serial Transparent Gateway or WMBus - Modbus RTU Gateway (and MQTT Publisher)
Device StatusCounters, connections, Modbus communication statusAlways
WMBus SettingsRadio settings, AES key list, detected metersAlways
WMBus StatusLatest received message, metersAlways
Security SettingsWhite list and black listAlways
ManagementTime, firmware update, configuration file, password, log, restore and rebootAlways

10.1.5 Saving and the answer of the device

The Save Configuration button of a page is disabled until a value on that page has been changed. After a click a waiting window is shown while the device stores the settings, then a message window with an OK button reports the result.

Message windowMeaning
Success text of the page, for example "Operating Mode Saved."The device stored the settings and they are in effect.
Success text followed by "REBOOT REQUIRED: this setting is applied only at boot - the device keeps running with the previous value until you reboot it."The settings are stored. The device keeps working with the previous values until it is restarted (page Management, button Reboot Device).
Success text followed by "The device is restarting now - please wait."The settings are stored and the device restarts by itself.
Failure text of the page followed by a reason in brackets, for example "(Rejected: reboot in progress - please retry after the device restarts)"Nothing was stored. The text in brackets is the answer of the device.
"Request timed out."No answer within 15 seconds. Check the connection and save again.
"The Device is not ready, please retry later."A previous request is still running.

WARNING:

If the reason reads "Rejected: flash verify failed - NOT saved; restart restores factory settings" or "Rejected: config flash invalid - restart the device (factory settings)", the device could not verify the stored settings. It keeps working with the running settings; after the next restart it starts with factory settings and must be configured again.

10.1.6 Reset button

Holding the reset button of the device for more than 5 seconds restores the factory settings and restarts the device. This works at any time while the device is running. After the restart the device is in the factory network state described above and the password is the factory password.

10.2 Operating Mode

The page Operating Mode names the device, selects what the gateway does with the received WMBus frames and, in the modes that read meters, lists the meters.

FieldMeaning
Device IDIdentification number of the built-in radio module, shown as a hexadecimal number. Read only.
Device NameName of the device, 1 to 21 characters (the field does not take more; an empty name is refused with a message). It is used in the file name of a downloaded configuration and, after the next restart, as the host name in the DHCP request. Factory value: STG_WMBUS_GATEWAY.
Card Device Functionality Settings
Device FunctionOperating mode of the gateway, one of the six functions below. Factory value: WMBus - TCP/IP Transparent Gateway. A new function is in effect after a restart; until then the device keeps running in the previous function.

10.2.1 The six device functions

Device FunctionWhat the gateway doesMeter tableSerial Settings menu
WMBus - TCP/IP Transparent GatewayPasses every received WMBus frame to the connected TCP clients and sends frames received from a TCP client to the air.HiddenHidden
WMBus - Modbus TCP Gateway (and MQTT Publisher)Decodes the frames of the listed meters and offers the values as Modbus registers to Modbus TCP clients. MQTT publishing can be switched on in addition.ShownHidden
WMBus Decoder/Parser and MQTT PublisherDecodes the frames of the listed meters and publishes them to an MQTT broker.Shown, without the Modbus Address columnHidden
WMBus - Serial Transparent GatewayPasses every received WMBus frame to the serial port and sends frames received on the serial port to the air.HiddenShown
WMBus - Modbus RTU Gateway (and MQTT Publisher)Decodes the frames of the listed meters and answers Modbus RTU requests on the serial port. MQTT publishing can be switched on in addition.ShownShown
WMBus RepeaterSends received WMBus frames to the air again to extend the radio range.HiddenHidden

The data flow of each function is described in chapter 9 "Usage Scenarios and Connection Diagrams".

10.2.2 Settings that change together with the device function

Saving the page Operating Mode also sets a few settings of other pages to match the selected function. This happens with every save of this page, also when the function itself was not changed.

Saved Device FunctionMQTT publisherOther settings
WMBus - TCP/IP Transparent GatewaySwitched off-
WMBus - Modbus TCP Gateway (and MQTT Publisher)Left as it isMaximum Number of Clients is raised to 2 if it was 1. A switched-off receiver (Rx Package Reception Mode = OFF) is set to C / T - Mode ( combined reception of T and C Mode messages ).
WMBus Decoder/Parser and MQTT PublisherSwitched onA switched-off receiver is set to C / T - Mode ( combined reception of T and C Mode messages ).
WMBus - Serial Transparent GatewaySwitched offRS485 is selected if neither RS232 nor RS485 was selected.
WMBus - Modbus RTU Gateway (and MQTT Publisher)Left as it isA switched-off receiver is set to C / T - Mode ( combined reception of T and C Mode messages ). RS485 is selected if neither RS232 nor RS485 was selected.
WMBus RepeaterSwitched offA switched-off receiver is set to C / T - Mode ( combined reception of T and C Mode messages ).

10.2.3 Device Query Settings

The card Device Query Settings is shown for the functions WMBus - Modbus TCP Gateway (and MQTT Publisher), WMBus Decoder/Parser and MQTT Publisher and WMBus - Modbus RTU Gateway (and MQTT Publisher). Each row assigns one meter to the gateway: only the frames of meters that have an enabled row are decoded into Modbus registers and published to MQTT. The table has 128 rows (STG154 Lite: 20 rows). The rows are shown in two columns side by side, each with its row number.

ColumnMeaning
Modbus AddressModbus slave address under which the registers of this meter are read, 1 to 247. Factory value: the row number. The column is hidden in the function WMBus Decoder/Parser and MQTT Publisher.
WMBus Device AddressIdentification number of the meter: the 8-digit number as it is shown in the meter lists of the gateway. It is entered as up to 8 hexadecimal digits, with or without 0x in front; the page rewrites the entry as 0x followed by 8 digits (12345678 becomes 0x12345678, 1A2B becomes 0x00001A2B). An entry of 9 or more digits without 0x is refused. Factory value: 0x00000000 (row not used).
EnableThe row is in use. A row that is not enabled is not decoded, not answered on Modbus and not published. Factory value: off.
ControlMeaning
Add RowShows one more line of two rows per click. The table normally shows the lines up to the last row in use (at least the first line); a row counts as in use when it is enabled or has a meter number other than zero. Show all rows shows the whole table at once.
Show all rowsShows all rows of the table (128; STG154 Lite: 20). Add Row is disabled while this box is checked and when all rows are shown already.
Row counterThe text next to the box reads, for example, "3 of 128 rows in use" (STG154 Lite: "3 of 20 rows in use").
Save ConfigurationStores the name, the function and the changed rows of the table.

The page checks the entries before it sends them:

MessageCause
"Modbus address should be a number between 1 and 247"The Modbus address is not a number from 1 to 247. The previous value is restored.
"Device ID should be >= 0x0 and <= 0xFFFFFFFF"The meter number is not a hexadecimal number of up to 8 digits, for example an entry of 9 or more digits without 0x. The previous value is restored.
"At least one of the line must be enabled!"The last enabled row was switched off. The box is checked again.
"All Enabled Modbuss Addresses must be unique!"Two enabled rows have the same Modbus address. Rows that are not enabled are not checked. Nothing is saved.
"All Enabled WMBus Device Addresses must be unique!"Two enabled rows have the same meter number. This also happens when two rows are enabled before their meter numbers were entered: unused rows all hold 0x00000000. Nothing is saved.
"The Device Name should have 1 to 21 characters"The name is empty. The previous name is restored.

NOTE:

The table and the AES-128 Decryption List of the page WMBus Settings are kept in step: enabling a row here checks Add to Config of the meter with the same number there, disabling it clears the box. In the other direction, a meter that is saved with Add to Config on the page WMBus Settings gets a row in this table. Meters can therefore be taken over from the list of detected meters instead of being typed in.

10.2.4 Saving the page

  1. Change the name, the function or the table. Save Configuration becomes active.
  2. Click Save Configuration. The window "Saving Operating Mode..." is shown while the device stores the settings.
  3. The window "Operating Mode Saved." follows, together with the note that a reboot is required. If the window reads "Operating Mode Change Failed!", nothing was stored; the reason of the device stands in brackets.
  4. Check the pages Network Settings, WMBus Settings and, if shown, Serial Settings for the new function and save them where needed.
  5. Restart the device: page Management, button Reboot Device. The new function, the new name and the new table are in effect after the restart.

NOTE:

Until the restart the device keeps working in the previous function, while the pages already show the saved selection.

10.3 Network Settings

The Network Settings page holds three cards: NTP Settings, MQTT Settings and Device Network Settings. One Save Configuration button at the bottom of the page saves all three cards together. The button becomes active as soon as a field differs from the stored value.

10.3.1 Saving and restart

A save on this page stores the settings but does not restart the device. The confirmation window reads "Network Settings Changed. REBOOT REQUIRED: this setting is applied only at boot - the device keeps running with the previous value until you reboot it." Restart the device with Reboot Device in the Restore / Reboot card of the Management page. The address mode, the addresses, the DHCP server, the listening port, the number of clients, the NTP server and the MQTT connection are all set up once, at start.

Four MQTT settings are used at once, without a restart: the Enable MQTT Publisher for Parsed WMBus Packages box when it is un-ticked, Publish Topic, Minimum Send Interval for a Parsed Data (in seconds) and Data Format. Restart the device after every save on this page so that all settings apply together.

NOTE:

A value the device does not accept (empty text, a number outside the range) is not stored: the field keeps its previous value. Open the page again after the restart and check the values.

WARNING:

If you change the address mode or the address, the web interface answers on the new address after the restart. Note the new address before you restart.

10.3.2 NTP Settings

FieldMeaning
NTP Server IP or URLTime server the device asks for the time (UTC). Enter an IPv4 address or a host name, for example a server of your own network. The field takes up to 63 characters and must not be empty; use a name of 30 characters or less. Factory default: pool.ntp.org. A host name needs a reachable DNS server and, for a server outside the local network, a default gateway. Shown in every operating mode. Takes effect after a restart.

How the clock is kept:

  • After every start the device asks the time server. As soon as it has an answer and the device is in normal operation, the device clock is compared with the NTP time. The comparison is then repeated once an hour.
  • If the device clock differs from the NTP time by 5 seconds or more, it is set to the NTP time. A smaller difference is left alone. The correction does not restart the device.
  • If the time server does not answer, nothing is changed: a time that was set by hand on the Management page stays as it is.
  • The device clock runs in UTC: the NTP time is UTC, and Set Device Time on the Management page also writes UTC. There is no time zone setting.

NOTE:

The time stamps in MQTT messages come directly from the NTP time. They are sent only while the device has a current time from the time server (the last answer is not older than 11 minutes); otherwise the messages are sent without time stamps - see chapter 13 "Sending WMBus Data to an MQTT Server".

10.3.3 MQTT Settings

The card is shown only when Device Function on the Operating Mode page is one of the three functions that decode meter data:

Device FunctionMQTT Settings card
WMBus - Modbus TCP Gateway (and MQTT Publisher)Shown, with the check box Enable MQTT Publisher for Parsed WMBus Packages.
WMBus Decoder/Parser and MQTT PublisherShown without the check box: the publisher is always on in this function.
WMBus - Modbus RTU Gateway (and MQTT Publisher)Shown, with the check box.
WMBus - TCP/IP Transparent Gateway, WMBus - Serial Transparent Gateway, WMBus RepeaterNot shown. These functions do not publish to MQTT.

The fields below the check box are shown only while the check box is ticked (or, in the function WMBus Decoder/Parser and MQTT Publisher, always).

FieldMeaning
Enable MQTT Publisher for Parsed WMBus PackagesSwitches the MQTT publisher on. Factory default: off. In some device functions saving the Operating Mode page sets this box by itself - see 13.1 "Which device functions publish" in the MQTT chapter.
MQTT Broker IP or URLIPv4 address or host name of the MQTT broker. 1 to 64 characters. From the factory the field holds the address of a public MQTT service on the Internet, as a placeholder. Enter the address of your own broker before you enable the publisher - with the placeholder the device would send meter data to that public service.
MQTT Broker PortTCP port of the broker, 1 to 65535. Factory default: 1883. The connection is not encrypted; the TLS ports listed under 13.3 "Connection properties" are refused.
Client IDMQTT client identifier of this device. 1 to 31 characters. Factory default: MQTT_STG_Client. Give every device on the same broker its own identifier.
User NameUser name sent to the broker. 1 to 63 characters, must not be empty. Factory default: MQTT_STG_User.
PasswordPassword sent to the broker. 1 to 47 characters, must not be empty. The password is shown in plain text on the page. The factory value is a row of 36 asterisks and has to be replaced.
Publish TopicTopic the meter data is published to. 1 to 31 characters. Factory default: MQTT_STG_Publish_topic.
Subscribe TopicTopic the device listens on for a configuration file. 1 to 31 characters. Factory default: MQTT_STG_Conf_topic. Give every device its own topic.
Minimum Send Interval for a Parsed Data (in seconds)Shortest time between two messages of the same meter, in seconds. 1 to 65535. Factory default: 60.
Data FormatLayout of the published message: RAW WMBUS DECRYPTED DATA (factory default), PARSED DATA AS OBJECTS or PARSED DATA AS MODBUS FRAME.

The use of these fields, the message layouts and the behaviour of the connection are described in chapter 13 "Sending WMBus Data to an MQTT Server".

10.3.4 Device Network Settings

FieldMeaning
Model with BPL only
BPL Operating ModeRole of the built-in broadband power line modem: NODE or MASTER. Factory default: NODE. Shown only on the STG655. Takes effect after a restart.
TCP server (shown for the TCP/IP transparent gateway and the Modbus TCP gateway)
Server Listening PortTCP port on which the device accepts client connections, 1 to 65535. Factory default: 502.
Maximum Number of ClientsNumber of TCP clients that may be connected at the same time, 1 to 10. Factory default: 2.
Address mode (always shown)
DHCP Server EnabledThe device hands out addresses to other devices on its network. Factory default: off.
Use Static Address for DeviceThe device uses the fixed address entered below. Factory default: off.
Address (shown while one of the two boxes above is ticked)
Server IP AddressIPv4 address of the device. Factory default: 192.168.1.1.
Server Net MaskSubnet mask. Factory default: 255.255.255.0.
Server Gateway AddressDefault gateway the device uses in static address mode. Factory default: 192.168.1.1.
Primary DNS AddressFirst DNS server the device uses with a static address or as DHCP server. As DHCP server the device also hands it to the clients as their DNS server. Factory default: 192.168.1.1.
Secondary DNS AddressSecond DNS server the device uses with a static address or as DHCP server. It is not sent to the DHCP clients. Factory default: 192.168.1.1.
DHCP server (shown while DHCP Server Enabled is ticked)
DHCP Server Range Start AddressFirst address the DHCP server hands out. Factory default: 192.168.1.100.

Each address is entered in four boxes, each a number from 0 to 255.

10.3.5 Address modes

The two check boxes select one of three modes:

Check boxesMode
Both unticked (factory default)DHCP client. The device asks a DHCP server on the network for its address, mask, gateway and DNS server.
Use Static Address for Device tickedStatic address. The device uses Server IP Address, Server Net Mask and Server Gateway Address. It asks no DHCP server and runs no DHCP server.
DHCP Server Enabled ticked, Use Static Address for Device untickedDHCP server. The device uses Server IP Address and Server Net Mask as its own fixed address and hands out addresses to others. It hands Server Gateway Address to the clients as their gateway but does not use it itself: the device reaches only its own network, so the time server and the MQTT broker must be in that network.

WARNING:

To run the DHCP server leave Use Static Address for Device unticked. With both boxes ticked the device works with the static address only and the DHCP server is not started.

DHCP client: until a DHCP server has answered, the device keeps the address stored in Server IP Address (192.168.1.1 from the factory). This is the address under which a new device is reached when it is connected directly to a computer. While the DHCP server does not answer, the device waits and does not restart. When it later receives an address that differs from the one it was working with, it writes the change to the log (IP changed: old -> new) and restarts once to work on the new address; TCP clients have to connect again.

NOTE:

Static address and host names: with a static address the device resolves host names (NTP server, MQTT broker) through Primary DNS Address and Secondary DNS Address. Enter the DNS server of your network there, or enter the time server and the broker as IP addresses.

10.3.6 DHCP server

With DHCP Server Enabled the device serves the network it is connected to:

  • Addresses are handed out upwards from DHCP Server Range Start Address. The start address must lie in the network given by Server IP Address and Server Net Mask and must be higher than Server IP Address (for example device 192.168.1.1, start 192.168.1.100).
  • Up to 15 clients are served. A lease lasts 20 minutes and is renewed by the client.
  • The clients receive Server Net Mask as their mask and Server Gateway Address as their gateway. With 0.0.0.0 in this field no gateway is handed out. The device itself does not forward traffic: enter the address of a router of this network, or 0.0.0.0 for an isolated network, for example a computer connected directly to the device. From the factory the field holds 192.168.1.1, the factory address of the device.
  • The clients receive Primary DNS Address as their DNS server. With 0.0.0.0 in this field no DNS server is handed out. The device does not answer DNS queries itself. Secondary DNS Address is not sent.
  • From the factory Primary DNS Address holds 192.168.1.1, the factory address of the device, which does not answer DNS: enter the DNS server of your network or 0.0.0.0.

WARNING:

Run only one DHCP server on a network. Do not enable the DHCP server when the device is connected to a network that already has one, for example behind a router.

10.3.7 Server Listening Port and Maximum Number of Clients

Both fields are shown when Device Function is WMBus - TCP/IP Transparent Gateway or WMBus - Modbus TCP Gateway (and MQTT Publisher). Clients connect to the address of the device and the Server Listening Port.

Maximum Number of Clients limits how many clients are served at the same time; the highest value is 10. When every place is taken, a further client waits at most a quarter of a second: if a place becomes free in that time the client takes it, otherwise the connection is refused at once and the refusal is written to the log (the first three refusals, then every hundredth). Saving the Operating Mode page with the Modbus TCP gateway function raises a value of 1 to 2.

10.3.8 BPL Operating Mode

The field exists only on the STG655. MASTER makes the built-in power line modem the master of its power line network, NODE makes it a node of that network. The device switches the modem to the selected role at every start and checks that the modem has taken it. The Ethernet side of the device and all other settings of this page are the same in both roles.

10.4 Serial Settings

The menu entry Serial Settings opens the page Modbus Serial Settings. The entry is shown only when the Device Function is WMBus - Serial Transparent Gateway or WMBus - Modbus RTU Gateway (and MQTT Publisher); in the other functions the serial port is switched off. The same settings are used by both functions.

FieldMeaning
Card Serial Port Settings
RS232The serial data runs over the RS232 port. Checking this box clears RS485. Not shown on the STG154 Lite. Factory value: off.
RS485The serial data runs over the RS485 port. Checking this box clears RS232; one of the two is always selected. Not shown on the STG154 Lite, which always uses RS485. Factory value: off; RS485 is selected automatically when a serial function is saved on the page Operating Mode.
Baud rateSpeed of the serial line: 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400 or 460800. Factory value: 115200.
Line ControlData bits, parity and stop bits of the serial line: 8_NONE_1, 9_NONE_1, 8_EVEN_1, 8_EVEN_2, 8_ODD_1, 8_ODD_2, 8_NONE_2 or 9_NONE_2. Factory value: 8_NONE_1.
Save ConfigurationStores the settings. Active after a change. The new settings are in effect after a restart.
  1. Select the port, the baud rate and the line control. They must match the device connected to the serial port.
  2. Click Save Configuration. The window "Saving Serial Settings..." is followed by "Serial Settings Changed." and the note that a reboot is required. "Cannot change Serial Settings." means that nothing was stored; the reason of the device stands in brackets.
  3. Restart the device: page Management, button Reboot Device.

10.5 Device Status

The Device Status page shows the health of the gateway at a glance: a summary strip, the address and the application state, the communication counters and, depending on the operating mode, the connections and the Modbus communication state of every meter. Nothing on this page changes the configuration.

10.5.1 Refreshing the page

The status data is read once when the web interface is opened, again every time the Device Status menu entry is clicked, and when Refresh Status is pressed. The page does not refresh by itself. Only the data is reloaded, not the page. The line "Last update: <time>" under the page title gives the time of the last successful read (clock of the computer).

Refresh Status is disabled while the request is running. If the gateway does not answer within 15 seconds the message "Status request timed out." is shown and the button is enabled again. "Cannot refresh the status page." means that the gateway answered with an error, and "The Device is not ready, please retry later." means that another request of the web interface is still running.

10.5.2 Summary strip

The strip at the top of the page condenses the chain radio - decryption - clients - MQTT into a few boxes. Each box has a coloured dot (green = good, amber = attention, red = problem, grey = nothing to report yet), a headline and a detail line. Under the detail line most boxes add one or two small lines that name what the box is about: which meter, which client, which broker. A small line in amber is a warning. Ages are written as "just now", "N min ago" or "N h ago".

BoxWhat it shows
Radio"Not serving" (red) with the application state while the gateway is not in normal operation. In the operating modes with a meter list (see below) the box looks at the enabled meters of the list: the headline is "Last frame <age>" (newest frame of a listed meter) or "No frame since boot" (no listed meter was heard yet, even if other devices are received), and the detail line gives how many of the enabled meters were heard and the number of all frames received: green when that newest frame is at most 5 minutes old, amber up to 60 minutes, red when older, grey when no listed meter was heard. The small line names the listed meter with the newest frame: device ID, manufacturer and signal strength (for example "0x19142190 BMT - -87 dBm"). When more than half of the heard meters of the list are weaker than -95 dBm, an amber line "weak signal: N of M meters below -95 dBm" follows. In the other operating modes the box compares the frame counters of two refreshes: "Receiving" (green) when the received frames grew, "No new frame since last refresh" (amber) when they did not, "Frames received" after the first read, "No frame since boot" (grey); the detail line gives the frames since start and "N rejected by the module at start-up": the reject counter the radio module reported when the gateway started. This number does not change during operation. In the two transparent gateway modes the frames the gateway sends to the air count as well: the headline reads Sending or Receiving and sending (green) when the sent frames grew, and the detail line gives "N received - M sent" instead of the frames since start. The small line names the newest received frame: device ID, manufacturer, signal strength and CI field (for example "0x00003874 AMX - -29 dBm - CI 7A"); "weak signal: N of M last frames below -95 dBm" follows when more than half of the last (up to 8) received frames are weaker than -95 dBm.
DecryptionShown when the page has the per-meter data. "N meters with a wrong key" (red), "N meters without a key" (amber), "N meters with an unsupported mode" (amber), "No key problem" (green) or "No encrypted meter" (grey). The detail line gives the number of encrypted meters and the same "N rejected by the module at start-up". When a meter has a problem, the small line names it with the problem, the worst first (wrong key, then no key, then unsupported mode), for example "0x000DCBFB APT - Mode not supported"; "+N more" is added when more meters have a problem.
Modbus TCP / Modbus RTUOnly in the two Modbus gateway modes. "Last query <age>" - green up to 1 minute, amber up to 10 minutes, red when older - or "Not queried yet" (grey). The detail line gives the number of requests and responses. The small line describes the newest query: who asked (Modbus TCP: the address of the client with the listening port of the gateway, followed by ":" and the port of the client; Modbus RTU: the port and the baud rate), the slave address of the newest answer and how many registers the answer carried, for example "RS485 115200 - slave 1 - 9 registers" ("exception N" when the answer was a Modbus exception). In Modbus TCP a second line "clients: ..." lists the connected clients in the same form (two, then "+N more").
TCP clientsOnly in mode WMBus - TCP/IP Transparent Gateway. "N connected" (green when at least one client is connected) and "of N allowed" (the Maximum Number of Clients setting). The small line lists the connected clients as address:port (two, then "+N more").
MQTTOnly in the modes that publish: WMBus - Modbus TCP Gateway (and MQTT Publisher), WMBus Decoder/Parser and MQTT Publisher and WMBus - Modbus RTU Gateway (and MQTT Publisher). "Connected" (green) when the MQTT status is subscribed or publishing, "Connecting" (amber) otherwise, with the number of published messages; the small line gives the broker as address:port and the Client ID set on the Network Settings page. "Off" / "Publisher disabled" (grey) when the MQTT publisher is not enabled.

NOTE:

The operating modes with a meter list are WMBus - Modbus TCP Gateway (and MQTT Publisher), WMBus Decoder/Parser and MQTT Publisher and WMBus - Modbus RTU Gateway (and MQTT Publisher).

10.5.3 IP Address and App Status

FieldMeaning
IP AddressThe IP address of the gateway on the network interface through which the page was requested.
App StatusThe state of the gateway application. "SERVING_CONNECTIONS" is normal operation. The other texts are listed below.
App Status textMeaning
Start-up
INIT, WAIT_FOR_TCP_STACK_READY, WAIT_FOR_NET_READYThe gateway is starting and waits for the network interface.
WMBUS_DEVICE_INFO_REQUEST_SENT, WMBUS_WAITING_FOR_DEVICE_INFO, WMBUS_FIRMWARE_INFO_REQUEST_SENT, WMBUS_WAITING_FOR_FIRMWARE_INFO, WMBUS_STATUS_REPORT_SENT, WMBUS_WAITING_FOR_STATUS_REPORTThe gateway reads the identity and the status of the radio module.
WMBUS_RESET_DEVICE_MSG_SENT, WMBUS_WAITING_FOR_RESET_DEVICE_RSP, WMBUS_SET_DEVICE_CONFIGURATION_SENT, WMBUS_WAITING_FOR_SET_DEVICE_CONFIG_RSPThe gateway writes the radio settings to the radio module.
WMBUS_LOAD_DEVICE_LIST_SENT, WMBUS_WAITING_FOR_LOAD_DEVICE_LIST_RSP, WMBUS_CLEAR_DEVICE_LIST_MSG_SENT, WMBUS_WAITING_FOR_CLEAR_DEVICE_LIST_RSP, WMBUS_MODULE_SET_DECRYPT_KEY_SENT, WMBUS_WAITING_FOR_SET_DECRYPT_KEY, WMBUS_SAVE_DEVICE_LIST_SENT, WMBUS_WAITING_FOR_SAVE_DEVICE_LIST_RSPThe gateway loads the decryption key list into the radio module.
WMBUS_MODULE_SET_TIME_REQUEST, WMBUS_MODULE_SET_TIME_REQUEST_SENT, WMBUS_WAITING_FOR_SET_MODULE_TIME, WMBUS_MODULE_READ_TIME_REQUEST_SENT, WMBUS_WAITING_FOR_READ_MODULE_TIMEThe gateway sets or reads the clock of the radio module.
Operation
SERVING_CONNECTIONSNormal operation: frames are received and the configured function is served.
CLIENT_DEVICEINFO_RECEIVEDA TCP client has just connected; the gateway takes the connection over and returns to normal operation.
APP_STATE_MQTT_ERRORThe MQTT client could not be started; the gateway restarts.
Restart
CLOSING_CONNECTIONS, SEND_LOGS_BEFORE_RESET, RESET_PROCESSORThe gateway is about to restart: it closes the connections, sends the remaining log lines and resets.

When one of the protections of the gateway has stopped restarting the device for a repeating cause ("parked"), a text in brackets is added after the application state. While the text is shown the gateway does not restart for this cause, so the web interface stays reachable for diagnosis. The text of the radio module and of the serial line disappears by itself when the cause is gone. A gateway parked for the network still restarts by itself when it can no longer reach its default gateway, when no client has been connected for 10 minutes (function WMBus - TCP/IP Transparent Gateway) or 60 minutes (function WMBus - Modbus TCP Gateway (and MQTT Publisher) with MQTT switched off), or when its network processing has stopped.

Text added to App StatusMeaning and what to do
(NET PARKED - web reboot to retry)The network protection has parked. Remove the cause and restart the gateway from the web interface (Reboot Device on the Management page).
(WMBUS DEAD - web reboot to retry)The radio module does not answer and its protection has parked. The text disappears when the module answers again. Otherwise restart the gateway from the web interface; contact support if the text returns after the restart.
(SERIAL NOISE PARKED - check line/baud)Repeated errors on the serial line. Check the wiring and the baud rate; the text disappears with the first valid Modbus request.

10.5.4 Communication Counters

All counters count from the last start of the gateway or from the last Reset Logs, whichever is later. Which counters are shown depends on the operating mode; the tables below say so for every row.

FieldMeaning
Log (shown when Log Level on the Management page is not NONE)
Log CounterNumber of log lines given out to the log output (console or UDP server).
Log StatusState of the log output: LOG_STATE_INIT, LOG_STATE_TRYWRITELOG, LOG_STATE_TRYWRITELOG_REQUEST_SENT, LOG_STATE_WAITING_FOR_TRYWRITELOG_COMPLETE, LOG_STATE_DEINITIALIZE_DRIVER, LOG_STATE_REINITIATE_DRIVER or LOG_STATE_IDLE. In normal operation the field shows LOG_STATE_TRYWRITELOG, and for a moment one of the other TRYWRITELOG states while a line is sent. LOG_STATE_INIT that stays means that the log output cannot start (UDP output without a target address, or the network is not ready). LOG_STATE_DEINITIALIZE_DRIVER and LOG_STATE_REINITIATE_DRIVER appear while the console port recovers from an error. LOG_STATE_IDLE is shown only just before a restart.
MQTT (shown when the MQTT publisher is enabled: always in mode WMBus Decoder/Parser and MQTT Publisher, in the two Modbus gateway modes when Enable MQTT Publisher for Parsed WMBus Packages is checked; never in the other modes)
MQTT Sent MessagesNumber of messages published to the MQTT broker.
MQTT StatusState of the MQTT client, a text that starts with APP_MQTT_STATE_. ..._SUBSCRIBED means that the gateway is connected to the broker; for a moment during each message it shows ..._START_PUBLISH or ..._PUBLISH. While a connection is set up the text runs through ..._BEGIN, ..._NET_INIT, ..._INIT, ..._NET_CONNECT, ..._CLIENT_CONNECT and ..._SUBSCRIBE; a text that stays at ..._NET_CONNECT, ..._CLIENT_CONNECT or ..._SUBSCRIBE means that the broker is not reached, does not answer, or refuses the login or the subscription. ..._NET_DISCONNECT and ..._DONE appear for a moment when a connection is closed or fails. ..._IDLE means that the client is not running: MQTT is off, the network is not ready, or the gateway waits up to 5 seconds before the next attempt. The other names in the list are not used by this gateway.
Radio module serial link (all operating modes)
N. of Module UART ErrorsReceive errors reported by the serial port between the gateway and its radio module.
N. of Module Incorrect Chars ReceivedBytes of an incomplete packet from the radio module that were dropped because the rest of the packet did not arrive within 5 seconds. When the counter exceeds 100 the gateway asks for a restart. Not cleared by Reset Logs.
N. of Module UART CRC ErrorsPackets from the radio module with a wrong checksum. Ten such packets in a row make the gateway ask for a restart; one correct packet ends the series.
N. of Module UART Input Overflow ErrorsTimes the receive buffer of the radio module link was full.
Serial port RS232 / RS485
N. of Serial UART Input Overflow ErrorsTimes the receive buffer of the RS232 / RS485 port was full. Shown in all operating modes.
N. of Serial UART ErrorsReceive errors reported by the RS232 / RS485 port. Shown in the modes WMBus - Serial Transparent Gateway and WMBus - Modbus RTU Gateway (and MQTT Publisher).
N. of Serial Side Modbus CRC ErrorsModbus RTU requests received with a wrong CRC. Shown in mode WMBus - Modbus RTU Gateway (and MQTT Publisher).
TCP
N. of TCP Input Back-Pressure EventsTimes data of a TCP client had to wait because the input buffer of the gateway was full. The data is taken in the next round; nothing is lost. Shown in all operating modes.
N. of TCP DisconnectionsNumber of client connections that were closed or lost; a lost network link and a network that did not come up in time are counted as well. Shown in the modes WMBus - TCP/IP Transparent Gateway and WMBus - Modbus TCP Gateway (and MQTT Publisher).
N. of TCP Output Full ErrorsTimes data could not be handed to the TCP connection of a client because its send buffer was full. After three attempts in a row without success the gateway closes that client connection. Shown in the same two modes.
Gateway side (the side of the host system: TCP clients or the serial port)
N. of Gateway Side Incorrect Chars ReceivedBytes of requests the gateway did not accept: on Modbus TCP a wrong protocol identifier, a length field out of range, a function code other than 03 or a request for an address or register range that does not exist; on Modbus RTU bytes that are not a function 03 request, one count per CRC error, and refused requests. On the serial port more than 500 such bytes without a valid request in between make the gateway ask for a restart. Not cleared by Reset Logs. Shown in the two Modbus gateway modes.
N. of Gateway Side Messages Received CorrectlyIn the Modbus gateway modes: well-formed Modbus requests received. In the transparent gateway modes: frames received from the host that passed the address filter and were not a repetition of the previous frame. Shown in the two transparent and the two Modbus gateway modes.
N. of Gateway Side Messages Sent CorrectlyIn the Modbus gateway modes: Modbus responses sent. In the transparent gateway modes: WMBus frames passed on to the TCP client or the serial port. Shown in the same four modes.
WMBus radio (all operating modes)
N. of WMBus Messages Received CorrectlyRadio frames delivered by the radio module with a correct checksum. Frames that the white list or black list rejects afterwards are included.
N. of WMBus Messages Sent CorrectlyRadio frames whose transmission the radio module confirmed.

10.5.5 Connections

The Connections table is shown in the modes WMBus - TCP/IP Transparent Gateway, WMBus - Modbus TCP Gateway (and MQTT Publisher) and WMBus - Modbus RTU Gateway (and MQTT Publisher). The columns depend on the operating mode:

Operating modeRowsColumns
WMBus - TCP/IP Transparent GatewayOne row per allowed client (Maximum Number of Clients, up to 10); connected clients fill the rows from the top.Ip Address (address of the client) and TCP Port (port of the client). The four Modbus columns are hidden.
WMBus - Modbus TCP Gateway (and MQTT Publisher)One row per allowed client (Maximum Number of Clients, up to 10).Ip Address (address of the client, followed by "(TCP) @" and the local port of the gateway), TCP Port (port of the client), Modbus Slave (Modbus address of the last request of this client), Last Query Time, Last Request and Last Response.
WMBus - Modbus RTU Gateway (and MQTT Publisher)One row: the serial port.The first two columns are named Port (RS485 or RS232) and Baud Rate; then Modbus Slave (Modbus address of the last response), Last Query Time, Last Request and Last Response.

Last Query Time is the time of the gateway clock at the last request (Modbus RTU: at the last response sent); "-" means that no request was received yet or that the clock is not set. Last Request and Last Response show the bytes of the last Modbus request and of the response that was sent, in hexadecimal. A frame longer than 12 bytes is cut to one line; the link with the byte count ("N B - show") opens the full frame and closes it again.

10.5.6 Modbus Communication Status

Shown in the two Modbus gateway modes. The table has one line for every row of the meter list of the Operating Mode page and tells whether the host reads the meter and whether the meter delivers data.

ColumnMeaning
(first column)Row number of the meter list.
Modbus AddressThe Modbus address under which the host reads this meter.
WMBus Device IDThe device ID of the meter, 8 hexadecimal digits.
MeterManufacturer (three letters) and device type (for example Water, Heat, Electricity, Gas) taken from the last frame of the meter; "-" while no frame was received.
Last QueryDate and time of the last Modbus query for this row and its age ("N min ago"); "never" when the row was not queried since the start.
DataFresh - the last frame is at most 60 minutes old. Stale - the last frame is older than 60 minutes. No frame yet - the row is enabled but no frame of this meter was received since the start. Time unknown - a frame was received before the gateway clock was set. No key, Mode not supported, Key might be wrong - the meter is heard but its frame could not be decrypted, so there is no data.
RowEnabled or Disabled, as set in the meter list.

Disabled rows are hidden until Show disabled rows is checked. The search box ("Search address, ID, meter") filters the lines by Modbus address, device ID, manufacturer or device type. The counter next to it reads, for example, "12 enabled - 10 with data, 116 disabled hidden".

10.5.7 Buttons

ButtonWhat it does
Refresh StatusReads the status data again (see 10.5.1 "Refreshing the page").
Reset LogsSets the counters of this page to zero: Log Counter, MQTT Sent Messages, the UART error and input overflow counters of the radio module link and of the serial port, N. of Module UART CRC Errors, N. of TCP Disconnections, N. of TCP Output Full Errors, N. of TCP Input Back-Pressure Events, N. of Serial Side Modbus CRC Errors and the four message counters (gateway side and WMBus, received and sent). The gateway does not restart and no setting is changed. The message "Logs have been reset." confirms it and the page is read again.

NOTE:

Reset Logs does not clear N. of Module Incorrect Chars Received and N. of Gateway Side Incorrect Chars Received. These two start from zero at a restart (the gateway side counter also when a park of the serial line ends). The button does not delete log lines and does not touch the tables of the page.

10.5.8 Status data for support

For a support case, open http://<address of the gateway>/assets/ajax/dev_status_json.htm in the browser; it asks for the login of the web interface. Support asks for the text that is shown.

10.6 WMBus Settings

The WMBus Settings page holds the radio settings of the gateway and the list of meters with their AES keys. It has three cards: Radio Settings, AES Decryption and AES-128 Decryption List. Changes are stored with the Save Configuration button at the bottom of the page; the button is enabled as soon as something on the page differs from the stored values.

10.6.1 Radio Settings

FieldMeaning
Rx Package Reception ModeThe link mode the gateway listens in: S - Mode, T - Mode or C / T - Mode ( combined reception of T and C Mode messages ). Choose the mode your meters transmit in. Factory default: T - Mode. The option OFF (receiver off) is offered only when Device Function is WMBus - TCP/IP Transparent Gateway or WMBus - Serial Transparent Gateway. If the receiver is off and another function is chosen on the Operating Mode page, the gateway sets the reception mode to C / T - Mode ( combined reception of T and C Mode messages ) by itself.
Tx Package Transmission ModeThe link mode and frame format used when the gateway transmits: S - Mode, Packet Format A, T - Mode, Packet Format A, C - Mode, 50.000 bps, Format A, C - Mode, 100.000 bps, Format A, C - Mode, 50.000 bps, Format B or C - Mode, 100.000 bps, Format B. Factory default: T - Mode, Packet Format A. Shown only for the functions that transmit: WMBus - TCP/IP Transparent Gateway, WMBus - Serial Transparent Gateway and WMBus Repeater.
Tx Power LevelTransmit power, -1 dBm to 13 dBm in steps of 1 dBm. Factory default: 3 dBm. Shown together with Tx Package Transmission Mode, for the same three functions.
Repeater Manufacturer ID (hex)Shown only when Device Function is WMBus Repeater. Manufacturer part of the repeater's own WMBus address, up to 4 hex digits. Factory default: 0.
Repeater Device ID (hex; both IDs 0 = SND-NKE off)Shown only for WMBus Repeater. Device ID part of the repeater's own address, up to 8 hex digits. Factory default: 0.
Repeater Version (hex)Shown only for WMBus Repeater. Version part of the repeater's own address, up to 2 hex digits. Factory default: 0.

The three repeater fields give the repeater an address of its own. When the repeater has repeated an installation telegram of a meter (C field 46h), it sends an SND-NKE telegram 2 to 5 seconds later. That telegram carries the repeater address from these fields (device type 32h, unidirectional repeater) and the address of the meter. While manufacturer ID and device ID are both 0 no SND-NKE telegram is sent; the repeater then only repeats. If only one of the two is 0, the telegram is sent.

NOTE:

Restart the gateway after changing Radio Settings: the reception mode is loaded into the radio module when the gateway starts. The page offers the restart after the save (see 10.6.9 "Saving the WMBus settings" below).

10.6.2 Supported encryption

The gateway reads unencrypted telegrams and decrypts telegrams encrypted with AES-128 in security mode 5 (AES-128 CBC), mode 7 (AES-128 CBC with dynamic key) and mode 128 (ELL AES-128 counter mode). The WMBus Status page names the encryption mode of the last telegram. A telegram in a mode the gateway cannot decrypt is reported as Mode not supported and its data is not available.

Some meters send further, unencrypted records after the encrypted part of a mode 5 telegram. The gateway recognises such a meter by itself and delivers the complete telegram. There is no setting for this.

NOTE:

If the key of such a meter was already in the gateway before the meter was heard for the first time, its telegrams are delivered without the trailing unencrypted records until the next restart; from then on they are complete.

10.6.3 AES Decryption - the detection list

While it runs, the gateway keeps a detection list of the meters it has heard on the air. The list has room for 256 meters. It is kept in memory only and starts again at every restart with the meters that have Add to Config checked and, while the black list is active, the device IDs of the black list. Every other meter is entered the first time one of its telegrams is received. Telegrams that the white or black list drops, telegrams with device ID 0 and telegrams sent by another reader towards a meter are not entered. When all 256 places are used, new meters are no longer entered until the next restart.

FieldMeaning
Recently Detected SizeNumber of meters heard since the last restart that were not part of the configuration.
Total Detected SizeNumber of meters heard at least once since the last restart, configured ones included.
Detection List UsageUsed places of the detection list, shown as used/256. The field shows "-" until Refresh Auto Config List has been pressed.

When the page is opened it compares the detection list with the table and, if there are meters that are not in the table yet, shows a line next to the button, for example "3 new devices detected - press Refresh Auto Config List to add". Nothing is added by itself.

Refresh Auto Config List reads the detection list and brings it into the AES-128 Decryption List:

  • A meter that is already a row of the table (same manufacturer ID, device ID, version and device type) only gets its Last RSSI refreshed.
  • A meter that is not in the table is written into the first free row: its four identity fields are filled in, the key is set to all zeros, Add to Config is checked and the row is marked "Recently Detected" in the Status column.
  • A line next to the button tells the result, for example "2 new devices added".
  • If the table has no free row left, a pop-up says how many meters could not be listed: "... detected device(s) could not be listed: the AES-128 Decryption List has no free row. Free a row or add unwanted devices to the Black List, then press Refresh again." Those meters are offered again at the next refresh.

NOTE:

Refresh Auto Config List only fills the table on the screen. Nothing is stored in the gateway until Save Configuration is pressed.

For every row that the refresh added, decide what the meter is:

  • Add to Config - the meter is to be read. With the save the gateway also enters the meter in the Device Query Settings table of the Operating Mode page and enables that row. Type the AES key of the meter if it is encrypted.
  • Add to Black List - the meter is not wanted. With the save its device ID is written to the Black List Device ID Table of the Security Settings page, the black list is switched on if it was off, and the row is cleared so that it is free for another meter.

The two check boxes exclude each other: checking one unchecks the other.

10.6.4 AES-128 Decryption List

ColumnMeaning
Manufacturer IDManufacturer code of the meter as a 2 byte hex value, for example 0x2C2D. Holding the mouse pointer over the field shows the three letter code.
Device IDDevice ID (serial number) of the meter as a 4 byte hex value, for example 0x12345678.
VersionVersion byte of the meter address, 1 byte hex.
Device TypeDevice type byte of the meter address, 1 byte hex. Holding the mouse pointer over the field shows the name of the type (for example Water, Heat).
AES-128 bit Decryption KeyThe AES-128 key of the meter, 32 hex digits. See 10.6.7 "Key format" below.
Last RSSISignal strength of the last telegram of this meter. A dash means no value yet. The value is refreshed by Refresh Auto Config List and, in the Modbus and MQTT functions, when the table is loaded.
Add to ConfigChecked: the meter is in the meter list of the Operating Mode page and is read. Unchecking it and saving disables the row of this meter in Device Query Settings.
Add to Black ListChecked: with the next save the meter is moved to the black list and the row is cleared.
StatusState of the row and of the last telegram of the meter. See 10.6.6 "Status words" below.
  • All four identity fields are read as hex, with or without the prefix 0x. Type the values as the meter label or the WMBus Status page shows them: 12345678 and 0x12345678 both give 0x12345678 in Device ID, 2C2D and 0x2C2D both give 0x2C2D in Manufacturer ID. The page rewrites the entry with 0x and leading zeros when the field is left.
  • An entry without 0x that has more digits than the field holds is refused with a pop-up and the previous value comes back: more than 8 digits in Device ID, more than 4 in Manufacturer ID, more than 2 in Version and Device Type.

Enter all four identity fields exactly as the meter sends them: manufacturer ID, device ID, version and device type. Let Refresh Auto Config List fill them whenever possible; when you type a row by hand, take the values from the WMBus Status page.

The line above the table reminds of one rule: "Add to Config adds the meter to the Modbus / MQTT query list. The AES key of a row is always used for decryption, checked or not."

10.6.5 Tools above the table

ControlMeaning
Add RowThe table shows the rows up to the last one in use. Add Row shows one more empty row for typing a meter by hand. The button is disabled when the last row of the table is shown.
Search boxShows only the rows whose device ID, manufacturer ID or three letter manufacturer code contains the typed text.
Needs a keyShows only the rows whose last telegram could not be decrypted: No key (unless a key for the row is already waiting for the restart) or Key might be wrong.
Show all rowsShows all rows of the table, used or not: 128 rows, 20 rows on STG154 Lite.
Row counterThe number of rows in use, for example "12 of 128 rows in use" (on STG154 Lite "12 of 20 rows in use"), followed by the number of rows that need a key. The second number is shown when the gateway runs with a meter list (Modbus TCP, Modbus RTU or MQTT function).

The filters only show and hide rows. The order of the rows does not change.

10.6.6 Status words

StatusMeaning
Recently DetectedThe row was added by Refresh Auto Config List and is not saved yet.
ChangedThe key in the row differs from the stored key. It is stored with Save Configuration.
Key from CSVThe key of this new row came from the CSV box (see 10.6.8 "Key tools").
Key from rule 1 / Key from rule 2The key of this new row came from a key rule (see 10.6.8 "Key tools").
No frame yetThe meter is in the meter list but no telegram has been received from it since the last restart.
Not encryptedThe last telegram of the meter was not encrypted. No key is needed.
DecryptedThe last telegram was decrypted with the key of the row.
Default keyShown next to Decrypted when the key of the row is all zeros: the meter is encrypted with the all-zero key and needs no other key.
No keyThe last telegram was encrypted and the gateway had no key entry for this meter. This is the normal state of a row added since the last restart. Enter the key, save and restart.
Key loads at rebootThe last telegram still says No key, but a key for the row has been typed or saved and becomes active with the next restart.
Mode not supportedThe telegram uses an encryption mode the gateway cannot decrypt.
Key might be wrongDecryption was tried with the key of the row and the result was not valid. The key is wrong or was left at zeros. Check the key.

10.6.7 Key format

  • A key is 16 bytes, written as 32 hex digits, for example 000102030405060708090A0B0C0D0E0F.
  • The prefix 0x is optional. Dashes and colons between the digits are allowed. The page shows the key as 16 byte pairs separated by dashes.
  • If fewer than 32 digits are typed, the key is filled with leading zeros to 32 digits. Type all 32 digits.
  • Anything else is refused with the message "AES-128 Bit Decryption Key should be a 16 Byte value (0xAABBCCDDEEFF1122AABBCCDDEEFF1122)" and the field returns to its previous value.
  • A new row starts with a key of all zeros. Leave it for meters that are not encrypted. For an encrypted meter enter the real key: with the zero key such a meter shows Key might be wrong after the restart. A meter that really uses the all-zero key is decrypted with it and is marked Default key.

10.6.8 Key tools

Below the table the page offers four tools for entering many keys. None of them sends anything to the gateway; the keys they write into the table are stored with Save Configuration, like a typed key.

ToolMeaning
Import keys from CSVPaste text, or choose a .csv or .txt file, with one meter per line: device ID (the 8 digits of the serial number, read as hex, with or without 0x), then a semicolon, comma or tab, then the key (32 hex digits; dashes or spaces allowed). A first line without digits is taken as a column header. A chosen file is applied at once; pasted text is applied with "Apply to list". Each key is written into the rows with that device ID. Keys for device IDs that are not in the table yet are kept while the page stays open and are used when Refresh Auto Config List adds that meter. The result line tells how many keys were written, kept or skipped.
Import keys from a Kamstrup KEM fileChoose the file downloaded from Kamstrup (.kem, .kem2, or the .zip that holds it; it can also be dropped on the box), type the file password and press "Read file". The browser opens the file and shows a preview: serial number, whether the meter is in the list, and the start of the key. "Apply to list" writes the keys into the table, "Put into the box only" copies them to the CSV box, "Cancel" discards them. The file and the password are not sent to the gateway.
Apply one key to several rowsType one key and choose where it goes: "Rows that need a key", "Rows with the default key (00..00)", all rows of one manufacturer, or "All rows in use". "Apply" writes the key and tells how many rows were changed.
Key rules (kept by the gateway)Two rules of the form "a new meter of this manufacturer, and optionally of this device type, starts with this key". Each rule has an "On" check box, a manufacturer (three letters or 4 hex digits), a device type ("Any type" or one type) and a key. When Refresh Auto Config List adds a meter that has no key from the CSV box, the first rule that matches gives the row its key. Rows that are already in the table are never changed by a rule. The rules are stored with Save Configuration and are part of the downloaded configuration file.

10.6.9 Saving the WMBus settings

Save Configuration sends the radio settings and the changed rows of the table to the gateway ("Saving WMBus Settings..."). With the save the gateway also updates its other lists:

  • For every row with Add to Config: if the meter is already a row of Device Query Settings, that row is enabled. Otherwise the meter is written into the first free row of Device Query Settings and enabled; it gets the Modbus address that this row already had. A row is not used if its Modbus address is in use by another enabled row.
  • For every row with Add to Config whose device ID is in the saved black list: the ID is removed from the black list.
  • For every row with Add to Black List: the device ID is added to the Black List Device ID Table, the black list is switched on if it was off, the row of the meter in Device Query Settings is cleared and the row in this table returns to its unused state.
  • For every row without Add to Config: an enabled row of the same meter in Device Query Settings is disabled.

After a successful save the page asks, in a pop-up with the buttons Confirm and Cancel:

"WMBus Settings Changed. Meter rows added to the query list are active now; new AES keys are loaded into the radio module after a reboot - until then those meters may show "No key" (meters the gateway decrypts itself are read at once). Reboot the device now?"

Confirm restarts the gateway. Cancel leaves it running: meters added to the meter list are read from now on, but new or changed keys and a changed reception mode are loaded into the radio module with the next restart. Restart the gateway before you judge the result of a key entry.

More sentences can appear in the pop-up after "WMBus Settings Changed.":

  • "... device(s) NOT added to the Black List: the White List is active (Security Settings)." - a meter cannot be moved to the black list while the white list is enabled.
  • "... device(s) NOT added to the Black List: the Black List is full (Security Settings)." - all 64 entries of the Black List Device ID Table are in use; see 10.8.5 "Black list entries made from the WMBus Settings page" below.
  • "... device(s) NOT added to the Operating Mode query list: no free row without a Modbus address conflict." - free a row in Device Query Settings or resolve the address conflict there, then save again.

Other messages of the save:

  • If the white list is enabled and a row has Add to Black List checked, nothing is sent and the page says: "The White List is active: devices cannot be added to the Black List. Uncheck "Add to Black List" or disable the White List on the Security Settings page first."
  • If a key rule is switched on but incomplete, nothing is sent and the page says, for rule 1: "Key rule 1: type a manufacturer (3 letters or 4 hex digits) and a key of 32 hex digits, or switch the rule off."
  • If only the key rules were changed, no restart is offered: "WMBus Settings Changed. The key rules are stored in the gateway and apply to rows added from now on - no reboot needed."
  • If the save fails the page says "Cannot change WMBus Settings." followed by the reason given by the gateway.

10.6.10 Repeater

When the gateway runs as WMBus Repeater and a row of the table holds a key that is not all zeros, the line above the table shows the mark Repeater mode and this warning:

WARNING:

"A meter whose AES key is in this list is repeated DECRYPTED and the receiving gateway cannot read it. Remove the meter keys on a repeater."

On a repeater keep all keys at zero. The keys belong in the gateway that reads the meters.

10.6.11 Limits

ItemStandard models and STG655STG154 Lite
Rows of the AES-128 Decryption List (meters and keys)12820
Meters in Device Query Settings12820
Detection list256256
Key rules22

On STG154 Lite the page works with 20 rows: Add Row and Show all rows stop at row 20, and Refresh Auto Config List places new meters in rows 1 to 20 only. When these 20 rows are in use, the refresh reports the remaining meters in the pop-up described above.

10.7 WMBus Status

The WMBus Status page shows the last WMBus frame the gateway handled - radio data, link layer header, payload and decoded records - and, in the Meters card, every meter of the meter list with its signal and decryption state. It is the page to use on site to check that a meter is heard and decrypted.

The data is read when the web interface is opened, every time the WMBus Status menu entry is clicked and when Refresh WMBus Status is pressed; the Meters card is filled on a menu click or a button press. Only the data is reloaded, not the page. "Last update: <time>" under the page title gives the time of the last read. The button is disabled during the request; after 15 seconds without an answer "Status request timed out." is shown and the button is enabled again.

FieldMeaning
System TimeThe clock of the gateway at the moment of the read, as DD-MM-YY HH:MM:SS. The clock is UTC: an NTP server sets it to UTC, and Set Device Time on the Management page writes the UTC time of the computer. All times of this page are times of this clock.

10.7.1 Latest Message - Module protocol fields

The three "Latest Message" cards describe one frame: the last radio frame that passed the white list / black list. A frame rejected by the address filter does not appear here. It is still listed in the Meters card; in the operating modes with a meter list it is marked Filtered there. In the transparent gateway modes the cards show the last frame the gateway transmitted for the host when that is the newest one; such a frame has no radio data: Decryption Status and Packet Info read "UNKNOWN", Encryption Mode "UNKNOWN: 99", Packet RSSI in dBm 0 and Message Date-Time 01-01-70 00:00:00. Until the first frame the fields are empty; Message Time then shows 01-01-70 00:00:00.

FieldMeaning
Message Date-TimeTime stamp the radio module attached to the frame. The gateway takes its own clock from the radio module during operation, so for a received frame this time and Message Time normally agree.
Decryption Status"Not Encrypted" - the frame was not encrypted. "Decryption Successful" - the frame was decrypted with the key of the AES list. "No Key Found for WM-Bus Address" - the frame is encrypted and the AES list has no key for this meter. "Decryption Mode Not Supported" - the encryption mode of the meter cannot be decrypted. "Decryption Error, Key Might Be Wrong" - a key is present but the result is not valid. "UNKNOWN" - no status available.
Encryption Mode"None", "Mode 5: AES-128 CBC", "Mode 7: AES-128 CBC, Dyn. Key", "Mode 128: ELL AES-128 Counter Mode", "Mode 129: Custom Encryption Mode", or "UNKNOWN: " followed by the mode number.
Packet InfoRadio mode and frame format of the frame: "S-Mode", "T-Mode", "C-Mode, 50.000 bps, Format A", "C-Mode, 100.000 bps, Format A", "C-Mode, 50.000 bps, Format B", "C-Mode, 100.000 bps, Format B" or "UNKNOWN".
Packet RSSI in dBmReceived signal strength of the frame in dBm (a negative number; closer to zero is stronger).

10.7.2 Latest Message - WMBUS Link Layer fields

FieldMeaning
C-FieldControl field of the frame, as 0x and two hexadecimal digits.
Manufacturer IDManufacturer code of the meter, 4 hexadecimal digits.
Device IDDevice ID of the meter, 8 hexadecimal digits - the value to enter in the meter list and in the AES list.
Version IDVersion of the meter, 2 hexadecimal digits.
TypeDevice type code of the meter, 2 hexadecimal digits.
CI-FieldControl information field of the frame, 2 hexadecimal digits.

NOTE:

Manufacturer ID, Device ID, Version ID and Type read "N.A." when the frame is too short to carry the link layer header.

10.7.3 Latest Message - Payload

FieldMeaning
Message TimeGateway clock at the moment the frame was stored.
PayloadThe bytes of the frame after the CI field, in hexadecimal, without the checksum. For a decrypted frame these are the decrypted bytes.
OMS ParsingThe records decoded from the payload, as a table with the columns "Data Type", "Value", "Function" and "Storage No": the kind of value with its unit, the value, the function of the record (INSTANTANEOUS, MAXIMUM, MINIMUM, ERROR STATE or SPECIAL FUNC.) and the storage number. The line "RECORD LIMIT REACHED - FURTHER RECORDS DROPPED" under the table means that the frame carries more records than the gateway keeps. The table is empty when the frame could not be decoded, for example because it was not decrypted.

NOTE:

The records shown here are the ones the gateway serves over Modbus and MQTT; their order and coding are described in chapter 11 "Modbus Register Map and Data Types".

10.7.4 Meters

The Meters card joins two sources: the meter list of the Operating Mode page with the last frame of every meter, and the last 16 frames the gateway keeps in memory (they are lost at a restart). These are the received radio frames and, in the two transparent gateway modes and in the repeater, also the frames the gateway sends to the air. In the operating modes with a meter list the table has one line for every enabled row of the list and one line for every other device heard in the last 16 frames; in the default order these other devices come first. In the other operating modes the table lists only the devices of the last 16 frames; frames the gateway sent are listed on a line of their own, apart from received frames of the same device ID.

ColumnMeaning
#Row number of the meter list; Filtered next to it means that the newest frame of this meter was rejected by the white list or black list. A device that is heard but is not an enabled row of the list shows Not in list instead of a number, or Filtered when its newest frame was rejected. In the operating modes without a meter list the cell is a running number; the line of a frame the gateway sent itself is marked with an up arrow and "Sent" next to it.
Device IDDevice ID, 8 hexadecimal digits.
ManufacturerThe three letters of the manufacturer and the code in brackets.
Device TypeDevice type in words (Water, Heat, Gas, Electricity ...); an unknown code is shown as "Type 0x..".
RSSISignal strength of the last frame in dBm with a bar: green from -70 dBm, amber from -85 dBm, red below. "-" for a frame the gateway sent.
Access NoAccess number of the last decoded frame of the meter. For a device that is not a row of the meter list, and in the operating modes without a meter list, the access number is read from the frame itself when the frame has a CI field of 7A or 72; for other frames the cell shows "-".
Meter StatusThe status byte of the meter in words: OK, Busy, Application error, Status 11b (both low bits of the status byte set), Power low, Permanent error, Temporary error; manufacturer specific bits are shown as "Mfr bits 0x..". "-" until a frame of the meter was decoded. Like Access No, it is read from the frame itself for the other devices when the CI field is 7A or 72.
DecryptionNot encrypted, Decrypted, No key (encrypted, no key in the AES list), Mode not supported or Key might be wrong. Default key next to Decrypted means that the meter is decrypted with the all-zero key. Sent by this gateway for a frame the gateway sent.
Last Frame (UTC)Time of the last frame (gateway clock, UTC - see System Time) and its age; Stale when it is older than 60 minutes, Time unknown when the frame arrived before the gateway clock was set.

A meter of the list that was not heard since the start shows "no frame yet" across the line. Lines of meters without a frame or with a stale frame are greyed; lines with a green background are meters that have a frame among the last 16.

10.7.5 Tools of the Meters table

  • Click a column heading to sort by that column; a second click reverses the order.
  • The search box ("Search ID, manufacturer, type") filters the lines.
  • "Needs attention only" (modes with a meter list) keeps the lines with a problem: no frame yet, last frame older than 60 minutes, meter status not OK, or not decrypted.
  • "Auto refresh (3 s)" reads the last 16 frames again every 3 seconds while the page is shown. Signal, decryption state and time of a line follow the newer frame; for a meter of the list Access No and Meter Status are updated by the next Refresh WMBus Status.
  • The counter on the right reads, for example, "12 meters - 10 with data - 2 need attention - avg RSSI -71 dBm"; in the modes without a meter list it reads "N devices in the last 16 frames".
  • Click a line to open the bytes of its newest frame among the last 16: the length in decimal and hexadecimal (for example "L 78 (0x4E)"), the C and CI fields, the frame in hexadecimal and a "Copy" button. When the gateway no longer keeps a frame of that meter the line says so. A second click closes it.

10.7.6 Installer view

In the operating modes with a meter list the button Installer view replaces the table by a short list made for a phone; Table view switches back. On a narrow screen the page starts in this view. The list contains the enabled meters of the meter list: the meters that were not heard come first, then the heard meters from the weakest signal to the strongest.

  • Every entry shows the device ID and the Modbus address - for a meter that was heard also the manufacturer and the device type - and on the right the signal strength with the age of the last frame ("time unknown" for a frame received before the clock was set) or Not heard.
  • No key, Mode not supported or Key might be wrong is shown next to the device ID when the meter is heard but not decrypted.
  • The three buttons above the list filter it: "All (n)", "Not heard (n)" and "Weak signal (n)"; a weak signal is -85 dBm or lower.

10.7.7 Checking that a meter is heard and decrypted

  1. Enter the meter in the meter list of the Operating Mode page (and its key in the AES list of the WMBus Settings page if it is encrypted) and save.
  2. Open WMBus Status. On a phone the Meters card opens in the installer view; on a computer use the table.
  3. Wait for the meter to transmit and press Refresh WMBus Status, or check "Auto refresh (3 s)" in the table view. A meter that was not heard shows Not heard ("no frame yet" in the table).
  4. When the meter is heard, read the signal strength. -85 dBm or lower is weak (the installer view lists the meter under "Weak signal"; the bar is red below -85 dBm): improve the antenna position or the distance before leaving the site.
  5. Read the decryption state. Decrypted or Not encrypted is the goal. No key - enter the key of the meter. Key might be wrong - check the key. Mode not supported - a key does not help; the encryption mode of this meter cannot be decrypted.
  6. For a decrypted meter the decoded records are shown under OMS Parsing in the "Latest Message" cards while its frame is the last one received; press Refresh WMBus Status right after the meter has transmitted. Clicking the line of the meter shows the raw bytes of its frame.
  7. In the operating modes with a meter list, a meter marked Not in list is heard but is not an enabled row of the meter list; a meter marked Filtered is rejected by the white list or black list of the Security Settings page.

NOTE:

The gateway keeps only the last 16 frames for the green lines and the frame bytes, and it loses them at a restart; in the transparent gateway modes and in the repeater the frames it sends take places among them. On a site with many meters a frame of one meter is pushed out quickly; the signal, decryption state and time of a meter of the meter list stay in its line all the same.

10.8 Security Settings

The Security Settings page filters the received telegrams by the address of the meter. A white list lets only the listed meters pass; a black list drops the listed meters and lets every other meter pass. Without a list every telegram is accepted.

10.8.1 Address Filtering

FieldMeaning
White List EnabledChecked: only telegrams of the meters in the two white list tables are accepted. The page then shows the White List Manufacturer ID Table and the White List Device ID Table. Factory default: not checked.
Black List EnabledChecked: telegrams of the meters in the two black list tables are dropped. The page then shows the Black List Manufacturer ID Table and the Black List Device ID Table. Factory default: not checked.

Only one list can be active. Checking one box unchecks the other. The tables of the list that is not active stay stored in the gateway and are shown again when that list is enabled.

10.8.2 The four tables

TableEntriesValue
White List Manufacturer ID Table20Filter Manufacturer ID: manufacturer code, 0x0000 to 0xFFFF
White List Device ID Table64Filter Device ID: device ID, 0x00000000 to 0xFFFFFFFF, or a pattern
Black List Manufacturer ID Table20Filter Manufacturer ID: manufacturer code, 0x0000 to 0xFFFF
Black List Device ID Table64Filter Device ID: device ID, 0x00000000 to 0xFFFFFFFF, or a pattern

The table sizes are the same on all models.

  • Values are hex. The page rewrites a typed value as 0x followed by 4 digits (manufacturer) or 8 digits (device ID) when the field is left.
  • A value can be typed as it is printed on the meter, with or without the prefix 0x: 12345678 and 0x12345678 both give 0x12345678, 2C2D and 0x2C2D both give 0x2C2D. An entry without 0x that has more digits than the field holds (more than 8 for a device ID, more than 4 for a manufacturer ID) is refused and the previous value comes back.
  • An entry of 0 is an empty entry and matches no meter. To remove an entry, set it to 0.
  • In a device ID an asterisk stands for any digit. The page shows this hint above the device ID tables: "Use * for any digit: 0x2900**12 matches every device ID that differs only in the starred digits." A pattern needs exactly 8 characters (hex digits and asterisks, at least one hex digit).
  • The manufacturer ID is the 2 byte hex code, not the three letters. The WMBus Status page and the AES-128 Decryption List show the hex code of every meter heard.

10.8.3 How a telegram is checked

  • White list: a telegram passes if its device ID matches an entry of the White List Device ID Table or its manufacturer matches an entry of the White List Manufacturer ID Table. One of the two is enough, so a listed manufacturer lets all meters of that manufacturer pass. Every other telegram is dropped, also a telegram whose address cannot be read.
  • Black list: a telegram is dropped if its device ID matches an entry of the Black List Device ID Table or its manufacturer matches an entry of the Black List Manufacturer ID Table. Every other telegram passes.

The filter works on the received telegram after decryption and before everything else. A dropped telegram is not entered in the detection list of the WMBus Settings page, is not converted to Modbus registers or MQTT messages, is not passed to the TCP/IP or serial client of the transparent functions and is not repeated by a repeater. In the transparent functions the same check is applied to the telegrams a client hands to the gateway for transmission.

A dropped telegram stays visible for diagnosis while it is among the last 16 telegrams the gateway keeps: the Meters table of the WMBus Status page marks its row Filtered.

10.8.4 Saving the security settings

Save Security Settings stores the two check boxes and the four tables ("Saving Security Settings..."). The filter works with the new lists as soon as the save is confirmed; a restart is not needed. The page confirms with:

"Security Settings Changed. The white / black lists are in effect now - no reboot needed."

If the save fails the page says "Cannot Change Security Settings." followed by the reason given by the gateway.

10.8.5 Black list entries made from the WMBus Settings page

  • A row saved with Add to Black List on the WMBus Settings page puts the device ID of that meter into the first empty entry of the Black List Device ID Table and switches Black List Enabled on if it was off. Entries that were already stored in the black list tables are kept and take effect together with the new one.
  • If all 64 entries of the Black List Device ID Table are in use, the meter is not black-listed. Its row stays in the table and is stored without the Add to Black List mark, and the pop-up after the save says how many meters were not added. The other rows of the save are handled as usual. Free an entry on the Security Settings page, then check the box again and save.
  • This is refused while White List Enabled is checked.
  • A meter on the active black list is no longer offered by Refresh Auto Config List.
  • To read such a meter again, set its entry in the Black List Device ID Table to 0 and press Save Security Settings; the meter is then offered again by Refresh Auto Config List. Saving a row of that meter with Add to Config on the WMBus Settings page also removes its ID from the black list. Pattern entries are never removed this way.

10.9 Management

The Management page holds the service functions of the gateway: device clock, firmware update, configuration file, commissioning report, password, log and restart. Each function has its own card.

10.9.1 Set Device Time

FieldMeaning
Time At StartThe clock of the gateway at the moment the web page was loaded, as day-month-year hour:minute:second with a two-digit year. It does not count on; reload the page to read the clock again.
Current Local Time - UTC (the button writes UTC)The running clock of your computer: the local date and time, then " - UTC " and the UTC date and time, each as dd-mm-yyyy hh:mm:ss.
Set Device TimeWrites the UTC date and time of your computer at the moment you press the button to the gateway.

The time is applied at once and the gateway does not restart. The page answers Device time has been set.

If the time cannot be set the page shows Set Device Time Failed! followed by the reason given by the gateway, for example "Rejected: reboot in progress - time NOT set" when the gateway is just closing down for a restart. The UTC date of the computer must lie in the years 2000 to 2099.

NOTE:

The gateway has no time zone setting; its clock is kept in UTC. The button takes the clock of your computer at the moment you press it and sends it as UTC, so the time zone of the computer makes no difference to the result - but the clock and the time zone of the computer must be set correctly. The value that is written is the UTC value shown in the field above the button.

Relation to NTP: while the gateway receives the time from the NTP server set in NTP Server IP or URL it compares its clock with that time once an hour and corrects the clock when it is 5 seconds or more off. The NTP time is UTC, the same time that the button writes. Without an answer from the NTP server the gateway does not touch a time that was set by hand.

The device clock is the time printed at the start of every log line and used for the time of the last frame of a meter in the commissioning report. The report and its CSV file mark these times as UTC.

10.9.2 Live Firmware Update

The gateway holds two firmware images: the one that is running and an alternative one. An upload is always written to the alternative place; the running firmware is not touched by the upload. The new firmware starts only when you switch to it with Reboot Alternative Firmware.

FieldMeaning
Select Firmware FileOpens the file dialog of the browser.
Firmware file to uploadName of the chosen file. Empty until a file has been chosen.
Upload FirmwareSends the file to the gateway. The button is enabled after a file has been chosen.
Alternative Firmware DateBuild date of the alternative firmware. Empty when there is no valid alternative firmware.
Alternative Firmware VersionVersion of the alternative firmware. Empty when there is no valid alternative firmware.
Reboot Alternative FirmwareRestarts the gateway with the alternative firmware. The button is disabled while there is no valid alternative firmware.

Use the image file that belongs to your model and do not rename it:

ModelImage file
STG154 / STG254STG154-254_v3.00.00.binimg
STG154 LiteSTG154-Lite_LITE_v3.00.00.binimg
STG655 (with BPL)STG655_BPL_v3.00.00.binimg

NOTE:

A Lite device accepts only the Lite image, and the Lite image is accepted only by a Lite device: the gateway refuses the wrong image and the running firmware stays unchanged. For the standard models and the STG655, choose the image by your model in the table above and check the file name before you upload.

NOTE:

When the gateway starts to write an uploaded file it first removes the alternative firmware that was stored before. After an upload that was cut or refused there is no firmware to switch to until a good image has been uploaded.

WARNING:

An upgrade from firmware 2.x to 3.00.00 resets ALL settings to factory values, including the network settings: the gateway then asks for its address by DHCP and no longer answers on a static address that was set before. Record every setting before the upgrade and find the gateway afterwards by its MAC address with the abcZ Network Tool.

WARNING:

A direct upgrade from firmware 1.x to 3.x is not supported. The only supported upgrade path is from firmware 2.x.

  1. Record the present settings: press Download Current Configuration and keep the file.
  2. Press Select Firmware File and choose the image file of your model. Its name appears in Firmware file to upload.
  3. Press Upload Firmware. A window with the title Upload firmware file and the line Uploading... opens; the bar counts the sent part in percent. When the whole file has been sent the bar shows Checking... while the gateway verifies what it has written. Do not switch the gateway off and do not close the page.
  4. Wait for the result "Firmware Uploaded" in the bar and press Close. Alternative Firmware Date and Alternative Firmware Version now show the uploaded firmware and Reboot Alternative Firmware is enabled.
  5. Press Reboot Alternative Firmware. The page asks Reboot into the ALTERNATIVE firmware? The device will switch firmware banks. - press Confirm. The window shows Reboot Alternative Firmware Command has been sent. and Rebooting...; the page reloads by itself when the gateway answers again.
  6. Check the version and the build date in the header of the page.

A complete update took 28 to 41 seconds in our measurements.

Text in the windowMeaning
"Firmware Uploaded" (with a check mark)The image was written and verified. You can switch to it.
Error: Cannot Upload Firmware.The gateway refused the file or the upload failed. Typical cause: a Lite image on a gateway that is not Lite (or the reverse), or a file that is not a firmware image. The running firmware is not changed, but the alternative firmware stored before is no longer available. Choose the right file and upload again.
Error: Firmware Does not Match With Device.The upload ended but the gateway does not report a valid alternative firmware. Reboot Alternative Firmware stays disabled.
Connection error!The connection to the gateway was lost during the upload.
Update Failed! Firmware file could be wrongThe connection was lost after a failed upload; check that the file is the image of your model.
The Device is not ready, please retry later.Another request of the page is still running. Wait a moment and press the button again.

If the upload is cut (cable pulled, browser closed, power of the computer lost) the running firmware is not affected and the gateway keeps working. The alternative firmware is marked as not valid before the first byte is written and stays so after every failure, so a half-written image can never be started: Reboot Alternative Firmware stays disabled, and a switch that is requested nevertheless is refused (Alternate Firmware Boot Failed! with the reason). Simply upload the file again.

Settings after the switch: the settings are carried over to the new firmware only when both versions have the same first two numbers (for example 3.00.00 to 3.00.01). When the first or the second number differs the settings are not carried over; after an upgrade from 2.x the gateway starts with factory settings.

Going back: after the switch the previous firmware is the alternative one. As long as Alternative Firmware Version shows it and the button is enabled, Reboot Alternative Firmware starts it again. The same rule for the settings applies in this direction. A 2.x firmware does not accept a configuration file made by 3.00.00, so plan to enter the settings again when you go back to 2.x.

NOTE:

The files of the web interface carry the firmware version in their address, so the browser loads the new pages by itself after an update. Refreshing the browser cache with Ctrl+F5 is not needed.

10.9.3 Download / Upload Configuration

ButtonMeaning
Download Current ConfigurationSaves the stored settings of the gateway as one file on your computer. The browser names it ZTG_<device name>_v<version>.zcfg; the content is the text file configuration.json of the gateway.
Upload Configuration FileOpens the file dialog. The upload starts as soon as a file has been chosen - there is no further question.

The file is plain JSON text. It starts with an identity header named "_meta": product name, variant (FULL for the standard models, LITE for the Lite model, FULL,UNE for the model with BPL), firmware version, build date, a check number of the settings format and device name. The settings follow in groups: password, log, device and network settings, security lists, MQTT, NTP and WMBus settings with the meter rows.

WARNING:

The file contains secrets in readable form: the password of the web interface, the MQTT user name and password and the AES keys of all meters. Store and send it like a password list.

On upload the gateway checks the header before it takes anything over:

Reply in the windowMeaning
Configuration Uploaded - device will restartThe file was accepted and stored. The gateway restarts by itself and works with the new settings. The page does not reload by itself: press Close and reload the page after the restart.
Configuration Uploaded (legacy config - no _meta) - device will restartA file without "_meta" header - a file made by firmware 2.x - was accepted. Its origin could not be checked: check every setting on the pages after the restart.
Configuration Uploaded (warning: file from fw <version>, device runs <version>) - device will restartThe file was made by another firmware version with the same settings layout. It was accepted.
Rejected: layout mismatch: file <n>, device <n>The file belongs to another settings layout. Nothing was changed.
Rejected: product mismatch - file: '<name>', device: '<name>'The file was made by another product. Nothing was changed.
Rejected: build variant mismatch - file: 'FULL', device: 'LITE'The file was made by another variant (here: a file of a standard model on a Lite model). Files of the standard models, the Lite model and the model with BPL cannot be exchanged. Nothing was changed.
Node ID Not Found at line <n>, pos. <n>.The file contains a name the gateway does not know. Nothing was changed.
Unexpected End Of File found at line <n>, pos. <n>The file is cut or not complete. Nothing was changed.
Rejected: reboot in progress - configuration NOT savedThe gateway was just closing down for a restart. Upload the file again after the restart.
Error: Cannot Upload Configuration.The gateway did not answer the upload with a result. Try again.
Request timed out.No answer within 15 seconds. Check the connection and upload the file again.
Connection error!The connection to the gateway was lost during the upload.

Only a reply that starts with "Configuration Uploaded" means that the file was taken over; every other reply is shown as an error and the settings of the gateway stay as they were.

WARNING:

An accepted file replaces all settings it contains, including the network settings and the password of the web interface, and the gateway restarts at once. If the file carries another IP address the gateway answers on that address after the restart.

Files of firmware 2.x: a configuration file saved with 2.x can be loaded into 3.00.00 as a legacy file (measured with a file of 2.09.03). The meter list and the key list of the file replace the lists of the gateway: a 2.x file has 64 rows, so the rows 65 to 128 are set to their factory values. The opposite direction does not work: firmware 2.x refuses a file made by 3.00.00.

10.9.4 Commissioning Report

The Commissioning Report card collects on one page what an installer hands over to the operator or to the SCADA team: the settings of the gateway, which meter answers at which Modbus address, signal and decryption state of every meter and the Modbus registers of every meter. The report is drawn inside the card; no new window is opened. AES keys are never printed - the report only says whether a key is set.

ControlMeaning
"Open Report"Reads the gateway and draws the report below the buttons. While it reads, the card shows Reading the device .... Press it again to refresh the report.
"Print"Opens the print dialog of the browser with the report only (use it to print or to save the report as PDF). Enabled after the report has been opened.
"Download Meter List (CSV)"Saves the meter list as a text file named STG_<address of the gateway>_meters.csv.
"Register map" (check box)Adds the general table "Modbus register map" to the report.
"Meters not heard yet" (check box)Shows also the meters of the list from which no frame has been received since the last start.

The CSV button, the two check boxes and the meter tables exist only in the device functions that have a meter list: WMBus - Modbus TCP Gateway (and MQTT Publisher), WMBus Decoder/Parser and MQTT Publisher and WMBus - Modbus RTU Gateway (and MQTT Publisher). In the other device functions the report consists of the gateway block and the line This device function has no meter list. In WMBus Decoder/Parser and MQTT Publisher the report has the meter table but no register tables.

The report has these parts:

PartContent
Header lineProduct name, firmware version and build date, and the clock of the gateway at the moment of the report.
"Gateway"Device name, the IP address the gateway is working with, marked "(static)" when a static address or the DHCP server is set, "(DHCP)" otherwise, device function, MAC address, WMBus receive mode, MQTT broker with port and client name (or "disabled"), MQTT publish topic when MQTT is enabled (both follow the stored setting; in the device functions without MQTT the gateway does not connect to that broker), NTP server. Serial port type and baud rate are added in the serial device functions, the TCP port in the TCP device functions.
"Meters"A summary line (meters in the list, heard since the last start, not heard yet) and one row per enabled meter: Modbus address, WMBus device ID, manufacturer, type, AES key ("set", "default (00..00)" or "-" when the meter has no entry in the key list), decryption state ("Not encrypted", "Decrypted", "No key", "Mode not supported" or "Key might be wrong"; the last three are printed bold), RSSI in dBm and time of the last frame. A meter without a frame is marked "not heard".
"Registers per meter"One row per meter that has been heard: Modbus address, WMBus device ID, number of data records, the value registers of every record with the name of the measured quantity (for example "9-10 VOLUME l (instantaneous, storage 0)") and the tail registers. Read with function 03, unit = Modbus address; a value is a 32-bit float with the high word first unless the record is marked raw; the tail holds access number, RSSI, meter status and decryption status.
"Modbus register map"The general layout of the registers of a meter (registers 0 to 5, the five registers of every record, the four tail registers). The last tail register is the decryption status: 0 not encrypted, 1 decrypted, 2 no key, 3 mode not supported, 4 key might be wrong. Shown when "Register map" is ticked.

NOTE:

The report shows the settings that are stored in the gateway. A change that you typed into a form but did not save is not in the report. The registers of a meter are known only after the gateway has received a frame of that meter.

The CSV file is separated by semicolons and has one line per enabled meter with the columns modbus_address, device_id, manufacturer, type, aes_key, decryption, rssi_dbm, last_frame_utc, records and tail_register. It contains all enabled meters, whatever the check boxes say.

If the card shows The device did not answer - try again. the gateway was busy; press the button again.

10.9.5 Change Password

FieldMeaning
Current PasswordThe password in use now. Factory default: admin.
New PasswordThe new password, 1 to 15 characters. Use letters and digits; other characters are accepted but were not tested.
Confirm New PasswordThe new password once more. The frame of the field turns green when both entries are equal and red when they differ.
Change PasswordStores the new password. The button is enabled when the current password is filled in and both entries of the new password are equal and not empty.

The user name of the web interface is always admin and cannot be changed; only the password can.

After a successful change the page shows Password Changed, Next time you login, please use new password. The gateway does not restart. The new password is valid at once: the browser asks for it again and the old password is no longer accepted.

If the change is refused the page shows Error! Cannot change password. with the reason: "Rejected: current password is incorrect - password NOT changed", "Rejected: new password is empty - password NOT changed" or "Rejected: new password and confirmation do not match - password NOT changed".

NOTE:

A forgotten password is set back to admin by a factory restore; without the password use the reset button of the device (hold it for more than 5 seconds), which does the same as Restore Factory Configuration. The password is also part of the configuration file: uploading a configuration file sets the password stored in that file.

10.9.6 LOG

The gateway can report what it does as text lines, either on its console port or to a UDP server on the network. Logging is switched off at the factory.

FieldMeaning
Log LevelNONE - no log lines (factory default). ERROR - errors and important events such as the cause of a restart. INFO - also general information. DEBUG - every detail, for example every received telegram. Each level includes the levels before it.
Log OutputCONSOLE - the lines are sent on the console port of the gateway (factory default). UDP SERVER - the lines are sent as UDP packets to the address below. Shown only when Log Level is not NONE. On the Lite model only UDP SERVER is offered.
UDP Server PortUDP port of the log server, 1 to 65535. Factory default 7001. Shown only for UDP SERVER.
UDP Server IPIPv4 address of the log server. Factory default 192.168.1.10. Shown only for UDP SERVER.
Change Log Level and RebootStores the four settings and restarts the gateway. The button is enabled only after one of the settings has been changed.

The new log settings take effect with the restart that follows the save: the page shows Change Log Level and Reboot Command has been sent. and Rebooting... and reloads by itself.

The page checks the entries: a wrong address is answered with You have entered an invalid IP address! and a wrong port with UDP Port should be a number between 1 and 65535; the field then returns to its previous value.

Console output: 115200 baud, 8 data bits, no parity, 1 stop bit. Any terminal program can show the lines.

UDP output: every log line is one UDP packet to UDP Server IP : UDP Server Port. Run a UDP listener on that computer and allow the port in its firewall. Lines are sent only while the network is up. With the address 0.0.0.0 nothing is sent.

NOTE:

The Lite model has no console port for the log. Use UDP SERVER on a Lite device.

Every line starts with the device time and the kind of the line: ERR-, INF- or DBG-. A line longer than the line buffer is cut and ends with the character ~.

WARNING:

DEBUG produces many lines. The log output delivers about 17 lines per second; when more lines are produced the surplus is dropped and the gateway reports it with the line "LOG ring overflow - line(s) dropped (oldest kept): <n>". Only log lines are lost - meter data, Modbus and MQTT are not affected. Use DEBUG for a short diagnosis only and do not conclude from a missing line that something did not happen.

10.9.7 Restore / Reboot

ButtonMeaning
Restore Factory ConfigurationSets every setting back to its factory value and restarts the gateway. The page asks Reset device to FACTORY configuration? All settings will be erased and the device will reboot. - press Confirm to go on or Cancel to leave everything as it is. The page then shows Reset to Factory Configuration Command has been sent. and Rebooting....
Reboot DeviceRestarts the gateway; the settings are kept. The page asks Reboot the device now? and, after Confirm, shows Reboot Device Command has been sent. and Rebooting...; it reloads by itself.

WARNING:

The factory restore erases ALL settings: operating mode, meter list and AES keys, Modbus rows, filter lists, MQTT, log settings, the network settings and the password (back to admin). After the restart the gateway asks for its address by DHCP; a static address that was set before is gone. Download the configuration first if you may need it again, and find the gateway afterwards by its MAC address with the abcZ Network Tool.

The factory restore does not change the firmware: the running firmware and the alternative firmware stay as they are.

If the gateway is just closing down for a restart the command is refused and the page shows "Restore to Factory Failed! (Rejected: reboot in progress - factory restore NOT applied)". Repeat it after the restart.

After a restart command the bar runs for 5 seconds. The window then shows "Device is restarting..." while the gateway still answers and "Waiting for the device to come back..." while it does not, and the page reloads by itself as soon as the gateway answers again. If the gateway does not come back within 2 minutes the page reloads anyway and the browser may show an error; reload the page by hand a little later.

NOTE:

After Restore Factory Configuration the gateway usually comes back on another address, because it asks for its address by DHCP again. The window then waits the full 2 minutes; close it and find the gateway with the abcZ Network Tool by its MAC address.

NOTE:

The gateway restarts by itself after 24 hours of operation, counted from its last start. This planned daily restart is part of the design; the log line of it, at Log Level INFO or DEBUG, is "RESTART_SYSTEM_TIMEOUT: (S)<seconds>". Connections of Modbus TCP and other TCP clients are closed by the restart and must be opened again by the client.

11. Modbus Register Map and Data Types

In the Modbus TCP and Modbus RTU functions every meter is a separate Modbus slave. The registers of a meter are read with function 03 (Read Holding Registers), starting at address 0.

11.1 Basic rules

ItemRuleNotes
1Every WMBus meter is a separate Modbus slave.The slave address is set on the web page, Operating Mode -> Modbus settings table, column "Modbus address".
2The registers of a meter are: a 6 register header, one 5 register block per measurement and 4 tail registers.See 11.2 "Register map". Read with function 03 (Read Holding Registers), starting at address 0.
3Register 5 (record count n) tells how many measurement blocks follow.A full read is 10 + 5 x n registers. A telegram carries at most 14 measurements, so the longest map is 80 registers.
4A read that goes past the end of the map is answered; the registers past the end are 0.A fixed-length poll (for example always 80 registers) is therefore safe for every meter.
5Only the data types of 11.3 "Data types" take a place in the map.A record whose type the gateway does not publish is skipped: it does not use registers and is not counted in n.
6The value of a record is a FLOAT32 already scaled to the unit of its data type, or the raw 4 bytes of the meter.Which of the two is given per data type in 11.3 "Data types". FLOAT32: high word first (22.0 = 0x41B0 0x0000).
7A value field the meter marks as invalid is published as NaN (0x7FC0 0x0000).The record keeps its place in the map; the other records of the telegram are not affected.
8The tail registers describe the last telegram: access number, signal level, meter status byte, decryption status.Decryption status: 0 not encrypted, 1 decrypted, 2 no key, 3 mode not supported, 4 key might be wrong.
9To limit the meters the gateway listens to, use the white / black lists.Web page, Security Settings.
10To read encrypted meters, enter their AES-128 keys.Web page, WMBus Settings, AES-128 decryption list.
11The gateway itself lists the registers of every meter it has heard.The report of the web interface has a "Registers per meter" table: records, value registers and tail registers.

11.2 Register map

Register addressRegisterFormatWordsDescriptionExample
Header (6 registers)
0 - 1WMBus device IDUINT32, high word first2Device ID of the meter.0x2021 0x8613 = ID 20218613
2Manufacturer IDUINT161Manufacturer code of the meter.0xB409
3VersionUINT161Version field of the meter.0x0001
4Device typeUINT161Device type (medium) of the meter.0x0007 = water
5Record count (n)UINT161Number of measurement blocks that follow.0x0004
Measurement block k (k = 0 .. n - 1), 5 registers each
6 + 5kStorage numberUINT1610 = current value, 1 and above = stored / historical value.0x0000
7 + 5kFunction fieldUINT161Instantaneous, maximum, minimum or error state - 11.4 "Function field".0x0001
8 + 5kData typeUINT161Code of the quantity and unit - 11.3 "Data types".0x0003 = volume in litres
9 + 5k, 10 + 5kData valueFLOAT32 or raw 4 bytes2FLOAT32 scaled to the unit of the data type (high word first), or the 4 bytes of the meter for the raw types.0x41B0 0x0000 = 22.0
Tail (4 registers, after the last measurement block)
6 + 5nAccess numberUINT161Access number of the last telegram; it changes with every new telegram.0x002A
7 + 5nSignal level (RSSI)INT161Signal level of the last telegram, signed (dBm).0xFFB5 = -75
8 + 5nMeter status byteUINT161Status byte of the last telegram.0x0000
9 + 5nDecryption statusUINT1610 not encrypted, 1 decrypted, 2 no key, 3 mode not supported, 4 key might be wrong.0x0001

NOTE:

Example: a meter with 4 measurements (n = 4) has 30 registers: header 0 - 5, blocks 6 - 25, tail 26 - 29. The first block is 6 - 10, the second 11 - 15, the third 16 - 20, the fourth 21 - 25.

11.3 Data types

The "Data type" register of a measurement block holds one of the codes below. The name is the one shown on the web interface and in MQTT messages.

CodeNameValue in ModbusQuantityUnit / resolution range of the meter
1ENERGY WhFLOAT32Energy0.001 Wh to 10000 Wh
2ENERGY kJFLOAT32Energy0.001 kJ to 10000 kJ
3VOLUME lFLOAT32Volume0.001 l to 10000 l
4MASS kgFLOAT32Mass0.001 kg to 10000 kg
5POWER WFLOAT32Power0.001 W to 10000 W
6POWER kJ/hFLOAT32Power0.001 kJ/h to 10000 kJ/h
7VOL. FLOW l/hFLOAT32Volume flow0.001 l/h to 10000 l/h
8VOL. FLOW l/minFLOAT32Volume flow ext.0.0001 l/min to 1000 l/min
9VOL. FLOW ml/sFLOAT32Volume flow ext.0.001 ml/s to 10000 ml/s
10MASS FLOW kg/hFLOAT32Mass flow0.001 kg/h to 10000 kg/h
11FLOW TEMP CFLOAT32Flow temperature0.001 C to 1 C
12RETURN TEMP CFLOAT32Return temperature0.001 C to 1 C
13TEMP DIFF mKFLOAT32Temperature difference1 mK to 1000 mK
14EXT. TEMP CFLOAT32External temperature0.001 C to 1 C
15PRESSURE mbarFLOAT32Pressure1 mbar to 1000 mbar
16ON TIME (sec)FLOAT32On timeseconds
17ON TIME (min)FLOAT32On timeminutes
18ON TIME (hr)FLOAT32On timehours
19ON TIME (day)FLOAT32On timedays
20OPER. TIME (sec)FLOAT32Operating timeseconds
21OPER. TIME (min)FLOAT32Operating timeminutes
22OPER. TIME (hr)FLOAT32Operating timehours
23OPER. TIME (day)FLOAT32Operating timedays
24AVR. DUR. (sec)FLOAT32Averaging durationseconds
25AVR. DUR. (min)FLOAT32Averaging durationminutes
26AVR. DUR. (hr)FLOAT32Averaging durationhours
27AVR. DUR. (day)FLOAT32Averaging durationdays
28ACT. DUR. (sec)FLOAT32Actuality durationseconds
29ACT. DUR. (min)FLOAT32Actuality durationminutes
30ACT. DUR. (hr)FLOAT32Actuality durationhours
31ACT. DUR. (day)FLOAT32Actuality durationdays
32DUR. OF LAST CUM. (hr)FLOAT32Duration since last cumulationhours
33DUR. OF LAST CUM. (day)FLOAT32Duration since last cumulationdays
34DUR. OF LAST CUM. (mth)FLOAT32Duration since last cumulationmonths
35DUR. OF LAST CUM. (yr)FLOAT32Duration since last cumulationyears
36BATTERY OPER. TIME (hr)FLOAT32Battery operation timehours
37BATTERY OPER. TIME (day)FLOAT32Battery operation timedays
38BATTERY OPER. TIME (mth)FLOAT32Battery operation timemonths
39BATTERY OPER. TIME (yr)FLOAT32Battery operation timeyears
40FD74 (unit unknown)FLOAT32VIF extension FD 74h - the unit is not defined, the value is published as a number-
41FD75 (unit unknown)FLOAT32VIF extension FD 75h - the unit is not defined, the value is published as a number-
42FD76 (unit unknown)FLOAT32VIF extension FD 76h - the unit is not defined, the value is published as a number-
43FD77 (unit unknown)FLOAT32VIF extension FD 77h - the unit is not defined, the value is published as a number-
44MODEL/VERSIONFLOAT32Model / version-
45HUMIDITY %FLOAT32Humidity%
46DATERAW 4 bytesDate - M-Bus data type G, 2 bytes in the 4 byte valueas sent by the meter
47DATE & TIMERAW 4 bytesDate and time - M-Bus data type F, 4 bytesas sent by the meter
48BAT. CHANGE DATE & TIMERAW 4 bytesDate and time of the battery change - M-Bus data type Fas sent by the meter
49FABRICATION NORAW 4 bytesFabrication numberas sent by the meter
50SPECIAL SUPPLIER INFORAW 4 bytesSpecial supplier informationas sent by the meter
51REVERSE FLOW VOL. lFLOAT32Reverse flow volumelitres
52ERROR FLAGSRAW 4 bytesError flagsas sent by the meter
53RELA. HUMIDITY %FLOAT32Relative humidity%
54DIMENSIONLESSRAW 4 bytesDimensionless valueas sent by the meter
55VERSIONRAW 4 bytesVersionas sent by the meter
56UNCORRECTED VOL. lFLOAT32Uncorrected volumelitres
57ENERGY RES. GJFLOAT32EnergyGJ
58REV. FLOW POWER WFLOAT32Reverse flow powerW
59REV. FLOW ENERGY WhFLOAT32Reverse flow energyWh
60VOLTAGE PHASE L1 VFLOAT32Voltage, phase L1V
61VOLTAGE PHASE L2 VFLOAT32Voltage, phase L2V
62VOLTAGE PHASE L3 VFLOAT32Voltage, phase L3V
63VOLTAGE VFLOAT32VoltageV
64FORWARD FLOW VOL. lFLOAT32Forward flow volumelitres
65UNITS FOR H.C.A.FLOAT32Units for heat cost allocation (VIF 6Eh)count, no unit

NOTE:

FLOAT32: the gateway applies the scale of the meter, the value is in the unit named in the third column. RAW 4 bytes: the data bytes of the meter, first byte in the high byte of the first register. Codes are fixed: a new type is always added at the end of the published list.

11.4 Function field

ValueFunction fieldNotes
1INSTANTANEOUSThe value is an instantaneous value.
2MAXIMUMThe value is a maximum value.
3MINIMUMThe value is a minimum value.
4ERROR STATEThe value was taken during an error state.

12. WMBus to Modbus Conversion Example

This chapter goes through a complete commissioning: the gateway hears a meter, the meter and its key are added, the meter gets a Modbus address, and a Modbus master reads its values. The layout of the registers is described in the chapter 11 "Modbus Register Map and Data Types".

12.1 Step 1 - Choose the function

  1. Open the Operating Mode page. In the card Device Functionality Settings set Device Function to WMBus - Modbus TCP Gateway (and MQTT Publisher) or to WMBus - Modbus RTU Gateway (and MQTT Publisher).
  2. Press Save Configuration. The page answers "Operating Mode Saved. REBOOT REQUIRED: this setting is applied only at boot - the device keeps running with the previous value until you reboot it."
  3. Open the Management page and press Reboot Device in the card Restore / Reboot; confirm the question "Reboot the device now?".
  4. Modbus TCP: the master connects to the IP address of the gateway and to the port set in Server Listening Port on the Network Settings page (factory default 502).
  5. Modbus RTU: set the serial port on the Serial Settings page: RS232 or RS485, Baud rate and Line Control as the master uses them.

12.2 Step 2 - Let the gateway hear the meters

  1. Open the WMBus Settings page and check Rx Package Reception Mode: it must be the mode the meters transmit in (factory default T - Mode). If you change it, press Save Configuration and confirm the restart.
  2. Wait until the meters have transmitted at least once. Meters transmit on their own schedule; the gateway collects every meter it hears in its detection list.
  3. Open the WMBus Settings page again. If new meters were heard, a line next to Refresh Auto Config List says, for example, "1 new device detected - press Refresh Auto Config List to add".

12.3 Step 3 - Add the meter and its key

  1. Press Refresh Auto Config List. Every new meter appears as a row of the AES-128 Decryption List with its Manufacturer ID, Device ID, Version, Device Type and Last RSSI, marked "Recently Detected", with Add to Config checked.
  2. For a meter you want to read: type its key into AES-128 bit Decryption Key (32 hex digits). Leave the key at zeros if the meter is not encrypted.
  3. For a meter you hear but do not want to read over Modbus or MQTT: clear its Add to Config. It is then not added to the query list; its key, if it has one, is still used for decryption.
  4. For a meter you do not want: check Add to Black List. It will be dropped from now on and its row is freed.
  5. Press Save Configuration. In the pop-up that follows press Confirm to restart the gateway; the keys become active with this restart.

12.4 Step 4 - Give the meter a Modbus address

  1. Open the Operating Mode page. The card Device Query Settings now holds a row for the meter: its device ID in WMBus Device Address, Enable checked, and a Modbus Address. The save in step 3 used the first free row, so the address is the one that row had (in a factory configuration row 1 has address 1, row 2 has address 2 and so on).
  2. Change Modbus Address if your plant needs another one, from 1 to 247. Every enabled row needs its own address, otherwise the page says "All Enabled Modbuss Addresses must be unique!".
  3. If you changed something, press Save Configuration, then restart the gateway with Reboot Device on the Management page as in step 1.

NOTE:

Each meter is a Modbus device of its own: the Modbus address of the row is the unit ID (slave address) the master uses for that meter. The gateway itself has no Modbus address.

12.5 Step 5 - Check on the status pages

  1. Open the WMBus Status page and press Refresh WMBus Status. In the Meters table the row of the meter must show, in the Decryption column, Decrypted (or Not encrypted for a meter without encryption). The last column shows the time of the telegram. If the clock of the gateway has not been set, the last column shows Time unknown instead; the data is valid all the same.
  2. If the Decryption column says No key, the gateway was not restarted after the row was saved: restart it. If it says Key might be wrong, the key of the row is wrong or was left at zeros: enter the key on the WMBus Settings page, save and restart.
  3. Open the Device Status page. In Modbus Communication Status the row of the meter shows its Modbus Address, its WMBus Device ID, Enabled in the column Row and, once a telegram has been received, Fresh in the column Data. No frame yet means the meter has not been heard since the restart; Stale means its last telegram is older than 60 minutes. If the clock of the gateway has not been set, the column shows Time unknown instead of Fresh or Stale; if the telegram could not be decrypted it shows the same word as the Decryption column of the Meters table.

12.6 Step 6 - Read the registers

Use any Modbus master. Read holding registers with function 03; the unit ID is the Modbus address of the meter; the map of every meter starts at register address 0.

RegisterContent
0 - 1WMBus device ID, 32 bit, high word first
2Manufacturer ID
3Version
4Device type
5Number of data records n (0 to 14)
6 + 5k ... 10 + 5kRecord k (k = 0 ... n - 1): storage number, function, data type code, value in two registers
6 + 5nAccess number of the last telegram
7 + 5nRSSI of the last telegram in dBm, signed
8 + 5nStatus byte of the meter
9 + 5nDecryption status: 0 not encrypted, 1 decrypted, 2 no key, 3 mode not supported, 4 key might be wrong

A meter with n data records therefore fills 10 + 5 x n registers: 6 header registers, 5 registers per record and 4 registers at the end. Two ways of reading are common:

  • Exact read: read 6 registers from address 0, take n from register 5, then read 10 + 5 x n registers from address 0. For a meter with 2 records this is 10 + 5 x 2 = 20 registers; its records are in registers 6 - 10 and 11 - 15, the access number is in register 16, the RSSI in 17, the meter status in 18 and the decryption status in 19.
  • Fixed block: always read 80 registers from address 0. 80 is the largest map (14 records: 10 + 5 x 14). Registers behind the end of the map of the meter read 0. The four end registers still follow the last record, so their position depends on n.

Example for Modbus TCP, meter at Modbus address 5, fixed block of 80 registers. Request (hex): 00 01 00 00 00 06 05 03 00 00 00 50 - transaction 0001, protocol 0000, length 6, unit 05, function 03, start address 0000, quantity 0050. The answer has 169 bytes: 7 header bytes, the function code, the byte count A0 (160) and 80 registers of 2 bytes each. With Modbus RTU the same read is 05 03 00 00 00 50 followed by the CRC, and the answer has 165 bytes.

  • Only function 03 is answered.
  • A request to a unit ID that is not the Modbus address of an enabled row is not answered.
  • A quantity above 126 registers (Modbus TCP) or above 127 registers (Modbus RTU) is answered with exception code 03. One meter never needs more than 80.
  • Until the first telegram of a meter has been received after a restart, all registers of that meter read 0, the device ID in registers 0 - 1 included. A decryption status of 0 does not mean "not encrypted" then: treat device ID 0 as "no telegram yet".

WARNING:

Check the decryption status register before using the values. With status 2, 3 or 4 the last telegram could not be read. The number of records and the record registers then still hold the values of the last telegram that was read (no records if none was read since the restart), while access number, RSSI, meter status and decryption status belong to the telegram received last. A master that reads only the records takes old values for current ones.

NOTE:

The Connections table of the Device Status page shows the last request and the last response of each master, which helps when a master does not get the answer it expects.

13. Sending WMBus Data to an MQTT Server

The gateway can publish the data of every configured meter to an MQTT broker. A meter is published when it has an enabled row in the Device Query Settings table of the Operating Mode page and its telegram could be decrypted and decoded. Telegrams of meters that are not in the table, and telegrams that cannot be decrypted, are not published. Standard models and the STG655 publish up to 128 meters, the STG154 Lite up to 20.

Publishing runs next to the Modbus service: in the Modbus TCP and Modbus RTU gateway functions the same meter data can be read over Modbus and is sent to the broker at the same time.

13.1 Which device functions publish

The publisher is switched with Enable MQTT Publisher for Parsed WMBus Packages on the Network Settings page. In four of the six device functions a save of the Operating Mode page also sets this box:

Device FunctionWhat saving the Operating Mode page doesMQTT publishing
WMBus - TCP/IP Transparent GatewaySwitches MQTT off.No.
WMBus - Modbus TCP Gateway (and MQTT Publisher)Leaves MQTT as it is set.Yes, if the box on the Network Settings page is ticked.
WMBus Decoder/Parser and MQTT PublisherSwitches MQTT on.Yes, always.
WMBus - Serial Transparent GatewaySwitches MQTT off.No.
WMBus - Modbus RTU Gateway (and MQTT Publisher)Leaves MQTT as it is set.Yes, if the box on the Network Settings page is ticked.
WMBus RepeaterSwitches MQTT off.No.

NOTE:

MQTT runs only in the three device functions that publish. In WMBus - TCP/IP Transparent Gateway, WMBus - Serial Transparent Gateway and WMBus Repeater the gateway does not connect to a broker, even when a configuration file brings the publisher in switched on: nothing is published, the MQTT rows and the MQTT box of the Device Status page are not shown, the delivery watchdog does not run and a configuration cannot be sent over MQTT. In these functions use the web page or a configuration file upload.

13.2 Setting up the connection

  1. On the broker create an account for the gateway and note its address, port, user name and password. The broker must accept an unencrypted MQTT connection with user name and password.
  2. On the Operating Mode page select the Device Function, enter the meters in Device Query Settings, tick Enable for each of them and save. Enter the AES keys of encrypted meters on the WMBus settings page.
  3. Open Network Settings. In the Modbus gateway functions tick Enable MQTT Publisher for Parsed WMBus Packages.
  4. Enter MQTT Broker IP or URL and MQTT Broker Port.
  5. Enter a Client ID that is unique on the broker, then User Name and Password.
  6. Enter the Publish Topic and a Subscribe Topic that belongs to this device only.
  7. Set Minimum Send Interval for a Parsed Data (in seconds) and choose the Data Format.
  8. If the broker or the time server is entered by name, make sure the device has a DNS server and a gateway (see the Network Settings page description). Enter the NTP Server IP or URL if the messages should carry time stamps.
  9. Click Save Configuration and restart the device with Reboot Device on the Management page.
  10. Open Device Status. MQTT Status shows APP_MQTT_STATE_SUBSCRIBED when the device is connected to the broker and has subscribed (for a moment during each publish it shows APP_MQTT_STATE_PUBLISH instead; a state that stays at IDLE, NET_CONNECT or CLIENT_CONNECT means the broker is not reached or refuses the login). MQTT Sent Messages counts the published messages since the start.

NOTE:

User Name and Password are always sent and cannot be left empty. For a broker that needs no login enter any text the broker accepts.

NOTE:

MQTT Sent Messages and MQTT Status are shown on the Device Status page only while the publisher is enabled in one of the three functions that publish.

13.3 Connection properties

PropertyValue
ProtocolMQTT 3.1.1 over TCP, not encrypted.
EncryptionEncrypted MQTT (TLS) is not supported. The TLS ports 443, 465, 563, 587, 636, 989, 990, 992, 993 and 8883 are refused as MQTT Broker Port; use the unencrypted port of the broker (usually 1883).
Quality of serviceQoS 0 for publishing and for the subscription. The broker does not confirm a message.
RetainNot set.
SessionClean session. No last-will message.
Keep-alive120 seconds.
LoginUser name and password, always sent.
SubscriptionOne topic, the Subscribe Topic.

13.4 When a message is sent

Each decoded telegram marks its meter as waiting. The device sends one message per waiting meter, built from the latest telegram of that meter.

  • Minimum Send Interval for a Parsed Data (in seconds) is the shortest time between two messages of the same meter. A meter that transmits every 15 seconds is published once a minute with the factory value of 60; a meter that transmits once an hour is published once an hour.
  • If several telegrams of a meter arrive within the interval, only the latest one is published when the interval has passed. The Modbus values are not affected.
  • The interval also runs from the start of the device: the first message of each meter is sent no earlier than this many seconds after a restart.
  • Messages are sent only while the device is connected and subscribed. A telegram received while the broker is away stays waiting and is published after the connection is back - one message per meter, with the latest data.
  • A message that was being sent when the connection broke is sent again after the reconnect.

NOTE:

Capacity: the device publishes about 3 messages per second. If telegrams arrive faster than that for a longer time, part of them does not reach MQTT (a newer telegram of the same meter replaces the waiting one). The Modbus values stay complete. Take this into account for large populations of fast-sending meters and choose the send interval accordingly.

13.5 Common part of every message

A message is one JSON object without spaces or line breaks. Every value is a JSON string (in double quotes), also the numbers. All three formats start with the same fields:

{"STGid":"<gateway id>","STGNme":"<device name>","Time":"<send time>","RxTm":"<receive time>","Data":{"DevId":"<meter id>","ManId":"<manufacturer>","Ver":"<version>","Typ":"<type>","RSSI":"<rssi>","AcNu":"<access number>", ... }}
KeyContent
STGidIdentifier of the gateway, hexadecimal. It is the number shown as Device ID on the Operating Mode page, without the leading 0x and without leading zeros.
STGNmeDevice Name of the gateway. Characters that are not allowed in a JSON string are escaped.
TimeTime at which the message was built, in seconds since 1 January 1970 UTC. Only present while the device has a current time from the time server (the last answer is not older than 11 minutes).
RxTmTime at which the telegram was received, same unit. Only present when the device had a current time from the time server at that moment. With a long send interval RxTm is earlier than Time.
DataObject with the meter data.
DevIdIdentification number of the meter, hexadecimal.
ManIdManufacturer code of the meter, hexadecimal.
VerVersion of the meter, hexadecimal.
TypDevice type (medium) of the meter, hexadecimal.
RSSISignal strength of the telegram in dBm, decimal with sign.
AcNuAccess number of the telegram, decimal.

WARNING:

The hexadecimal values are printed without leading zeros and with capital letters. A meter with the number 00144739 appears as "DevId":"144739", version 05 as "Ver":"5". Compare these values as numbers or after removing leading zeros, never as text of fixed length.

NOTE:

Time stamps need NTP. If the time server stops answering, "Time" and "RxTm" disappear from the messages about 11 minutes later and come back with the next answer; all other fields are sent as usual. The receiver must not expect the keys to be present.

13.6 Format RAW WMBUS DECRYPTED DATA

{"STGid":"<gateway id>","STGNme":"<device name>","Time":"<send time>","RxTm":"<receive time>","Data":{"DevId":"<meter id>","ManId":"<manufacturer>","Ver":"<version>","Typ":"<type>","RSSI":"<rssi>","AcNu":"<access number>","RawDt":"<telegram bytes as hex>"}}

RawDt is the telegram as text: two capital hexadecimal digits per byte, no separators. It starts with the length byte of the telegram and ends before the checksum. The receiver decodes the data records itself. Also in this format a message is sent only for a telegram the gateway could decrypt and decode.

Example, received from a gateway with firmware 3.00.00 (meter 19142190, the first byte 4E = 78 bytes follow):

{"STGid":"5A9A","STGNme":"STG_21ea_LAB","Time":"1792046738","RxTm":"1792046738","Data":{"DevId":"19142190","ManId":"9B4","Ver":"13","Typ":"7","RSSI":"-60","AcNu":"52","RawDt":"4E44B4099021141913077A341840052F2F0C1330120000046D37294F3A0F173E202723030000007B00007B00007B00007B00007B00007B00007B00007B00007B00007B00007B00007B0000002F2F2F"}}

13.7 Format PARSED DATA AS OBJECTS

{"STGid":"<gateway id>","STGNme":"<device name>","Time":"<send time>","RxTm":"<receive time>","Data":{"DevId":"<meter id>","ManId":"<manufacturer>","Ver":"<version>","Typ":"<type>","RSSI":"<rssi>","AcNu":"<access number>","DtCnt":"<count>","Trnc":"1","Blcks":[{"S":"<storage>","F":"<function>","T":"<data type>","V":"<value>"},{"S":"<storage>","F":"<function>","T":"<data type>","V":"<value>"}]}}
KeyContent
DtCntNumber of data records in this message, decimal (the records the gateway can express as one of its data types; at most 14).
TrncOnly present, with the value 1, when the telegram held more records than the gateway keeps. The gateway keeps the first 14 records of a telegram.
BlcksArray with one object per data record.
SStorage number of the record, decimal.
FFunction of the record, decimal: 1 = instantaneous value, 2 = maximum, 3 = minimum, 4 = value during error state.
TData type code of the gateway, decimal, 1 to 65. The codes are the same as in the Modbus register map - see 11.3 "Data types".
VValue of the record as text.

Records the gateway cannot express as one of its data types are left out of the array and are not counted in DtCnt.

Example, the same meter in this format (2 records: data type 3 and data type 47):

{"STGid":"5A9A","STGNme":"STG_21ea_LAB","Time":"1792047106","RxTm":"1792047106","Data":{"DevId":"19142190","ManId":"9B4","Ver":"13","Typ":"7","RSSI":"-64","AcNu":"58","DtCnt":"2","Blcks":[{"S":"0","F":"1","T":"3","V":"1230"},{"S":"0","F":"1","T":"47","V":"15-10-2026 10:01:00 DST:0"}]}}

13.8 Format PARSED DATA AS MODBUS FRAME

{"STGid":"<gateway id>","STGNme":"<device name>","Time":"<send time>","RxTm":"<receive time>","Data":{"DevId":"<meter id>","ManId":"<manufacturer>","Ver":"<version>","Typ":"<type>","RSSI":"<rssi>","AcNu":"<access number>","ModFr":"<length byte and registers as hex>"}}

ModFr is text with two capital hexadecimal digits per byte. The first byte is the number of bytes that follow. The following bytes are the Modbus registers of this meter, two bytes per register, high byte first, exactly as a Modbus master reads them from address 0:

RegistersContent
6Header: meter identification number (2 registers), manufacturer code, version, device type, number of data records.
5 per data recordStorage number, function, data type, value (2 registers).
4Access number, RSSI, status byte of the meter, decryption status.

A meter with 3 data records gives 6 + 15 + 4 = 25 registers, 50 bytes; the length byte is then 32 (hexadecimal) and ModFr is 102 characters long. The register contents are described in the Modbus chapter.

Example, the same meter in this format: 2 data records give 6 + 10 + 4 = 20 registers, 40 bytes, so ModFr starts with 28 (hexadecimal):

{"STGid":"5A9A","STGNme":"STG_21ea_LAB","Time":"1792047230","RxTm":"1792047230","Data":{"DevId":"19142190","ManId":"9B4","Ver":"13","Typ":"7","RSSI":"-56","AcNu":"60","ModFr":"281914219009B40013000700020000000100034499C00000000001002F032A4F3A003CFFC800180001"}}

13.9 Largest message

A published message is at most 1152 bytes long. The raw format and the Modbus frame format always fit, and so does the object format with ordinary numeric values. Only a meter whose 14 records carry long text values can reach the limit in the object format. The records that no longer fit are then left out: DtCnt still gives the full number of records, the array holds fewer, and the text may end with a comma before the closing bracket, which a strict JSON reader refuses. If you see this for a meter, use a short Device Name or one of the other two formats.

13.10 Keep-alive, ping and reconnect

  • The keep-alive time announced to the broker is 120 seconds.
  • When nothing was published for 60 seconds the device sends a PING to the broker.
  • If the PING is not answered within 10 seconds the device closes the connection and connects again.
  • After any loss of the connection the device tries again by itself, at most once every 5 seconds, and subscribes again after it has connected. Nothing has to be done on the device.

A broker or router that drops idle connections therefore does not cut the data silently.

13.11 Delivery watchdog

WARNING:

While the MQTT publisher is enabled and the broker cannot be reached, the device restarts itself after about 13 minutes, and once more after the same time. Every restart also drops the Modbus TCP connections. Enable MQTT only when the broker is reachable; if the broker is not ready yet, switch the publisher off.

The watchdog works as follows. Every published message and every answered PING counts as a delivery. If there was no delivery for 3 minutes although the local network is fine, the device counts once a minute and reacts in steps: at the 5th count it renews its DHCP lease, at the 8th it asks for a new lease, at the 11th it restarts. The DHCP steps apply to a device that gets its address from a DHCP server. When deliveries work again the count is cleared. A broker that is reachable but receives no meter data does not trigger the watchdog, because the PING is answered.

The watchdog works when the device has a static address or an address from a DHCP server, and only while the cable is connected and the default gateway answers. It does not run while DHCP Server Enabled is ticked, and not in the device functions without MQTT.

After two such restarts in a row the device does not restart a third time: it stays up and waits. The web interface and the TCP service stay available; restart the device from the web page (or switch the power off and on) once the cause is removed.

Log lines of the watchdog, visible when logging is enabled:

Log lineMeaning
MQTTWD: no delivery x<n> (gateway ARP OK - L3/broker suspect)Once a minute while nothing was delivered. The local network is fine; the broker or the route to it is not.
MQTTWD: stage 1 - DHCP renew5th count.
MQTTWD: stage 2 - DHCP disable/enable (rediscover)8th count.
MQTTWD: stage 3 - reboot requested11th count, the device restarts.
MQTTWD: delivery recovered (was x<n>)Deliveries work again.
MQTT ping unanswered - reconnecting, ms: <n>A PING was not answered within 10 seconds.

13.12 Subscribe Topic: configuration over MQTT

The device subscribes to the Subscribe Topic and accepts one kind of message on it: a configuration file, sent in parts. It is the same file that Download Current Configuration on the Management page produces and Upload Configuration File accepts. There are no other commands: a restart, a time setting or a single setting cannot be sent over MQTT. This works only while the publisher is enabled in one of the three functions that publish.

Each part is one MQTT message with this payload:

<total>, <position>, <length>"<characters of the file>"

ElementContent
<total>Length of the whole file in bytes, decimal.
<position>Offset of this part in the file, decimal. The first part has position 0.
<length>Number of file bytes in this part, decimal.
"A double quote directly after the three numbers. The file bytes follow it unchanged; they are not escaped.
  • Send the parts in order and without gaps: the position of a part must be the position of the previous part plus its length. The part whose position plus length reaches the total ends the file.
  • Keep the parts small. The device receives a message of up to 1024 bytes in one piece; a longer message is not read correctly. Parts of 800 file bytes are the size used in the tests.
  • Wait for the reply to a part before you send the next one.
  • If the next part does not arrive within 60 seconds the transfer is abandoned and the running settings are restored. A configuration upload from the web page also abandons an unfinished MQTT transfer.

The device answers every part with one message on the topic MQTT_STG_Conf_Ack_topic. This reply topic is fixed and cannot be changed:

{ "variable": "conf_upd_ack","value": "started","metadata": {"mqtt_topic": "MQTT_STG_Conf_Ack_topic", "result": "OK", "position": <position>, "length": <length>, "response": "<text>", "response_1": "" }}
KeyContent
resultOK when the part was accepted, error when it was refused.
position, lengthThe numbers of the part this reply belongs to, as JSON numbers.
responseEmpty for a part in the middle of the file. For the last part and for a refusal: the result text.
response_1On a syntax error: up to 48 characters of the file that precede the error (response then ends with "near:"). Otherwise empty.

In response and response_1 double quotes, backslashes, line ends and other non-printable characters are shown as $.

Text in responseMeaning
Configuration Uploaded - reboot required to applyThe whole file was accepted and stored. Restart the device now so that all settings apply.
Configuration Uploaded (legacy config - no _meta) - reboot required to applyAs above; the file has no identification block (a file from an older firmware). Check every setting afterwards.
Configuration Uploaded (warning: file from fw <version>, device runs <version>) - reboot required to applyAs above; the file was written by another firmware version.
Rejected: chunk out of sequence (pos <n>, expected <n>) - resend from position 0A part is missing or came twice. Nothing was stored; start again with the first part.
Rejected: device is rebootingThe file arrived while the device was restarting. Send it again afterwards.
Rejected: flash verify failed - NOT saved; restart restores factory settingsThe settings could not be written to the device memory. Nothing is stored; after the next restart the device comes up with factory settings and has to be configured again.
Rejected: config flash invalid - restart the device (factory settings)An earlier write has failed (see the row above). The device accepts no settings until it is restarted.
A text describing a syntax or value error, with result errorThe file was refused; nothing was stored and the running settings are restored.

WARNING:

A configuration file received over MQTT replaces all settings of the device - operating mode, network address, meters and keys, filters, MQTT settings and the password of the web interface are all part of the file. The device does not restart by itself. Part of the new settings is used at once, the rest only after a restart; until then the device works with a mixture of old and new settings. Restart it right after the last reply, from the web page or by switching the power off and on.

WARNING:

A configuration file holds the password of the web interface, the MQTT password and the AES keys of the meters in readable form, not encrypted. Everyone who can read the Subscribe Topic on the broker can read them, so allow only authorised clients to subscribe and to publish to this topic.

WARNING:

Every device that is subscribed to the topic takes the file. Two gateways with the same Subscribe Topic on the same broker are both overwritten, including their network address. Give each gateway its own Subscribe Topic before you use this function, and protect the topic on the broker so that only authorised senders may publish to it.

NOTE:

A payload that does not start with the three numbers changes nothing. The device still answers it: the reply has position 0 and length 0 and says result OK, and its response text may be left over from an earlier transfer - do not take such a reply as a confirmation. Publish nothing but configuration parts to this topic.

NOTE:

The reply topic is the same for all gateways and the reply does not name the gateway. Send a configuration to one gateway at a time and wait for its last reply.

14. Video Examples

Recordings of the web interface of a gateway with firmware 3.00.00. The videos have no sound; each step is described in the chapter named above the video.

14.1 Firmware update

The Management page of a standard gateway: the image file is chosen, sent with Upload Firmware and checked by the gateway; afterwards the alternative firmware shows the uploaded version. The switch to the new firmware with Reboot Alternative Firmware is not part of the recording. Steps, limits and the upgrade from 2.x: 10.9.2 "Live Firmware Update" and chapter 15 "Firmware Update and Upgrading from 2.x".

14.2 WMBus to Modbus conversion

The example of chapter 12 "WMBus to Modbus Conversion Example" on a standard gateway that starts from the factory settings: the Modbus TCP function, the meters heard on the air, the key of one meter, its Modbus address and the status pages while a Modbus master reads the meter.

15. Firmware Update and Upgrading from 2.x

WARNING:

CRITICAL MIGRATION NOTE: upgrading 2.x -> 3.x RESETS all device settings to FACTORY defaults (the layout of the stored configuration changed from 64 to 128 rows). Record every setting BEFORE the upgrade and enter it again afterwards. After the upgrade the network settings are factory too: the device asks for its address by DHCP (static address off). Supported upgrade path: 2.x -> 3.x. A direct upgrade from 1.x to 3.x is not supported.

15.1 Firmware images

ModelImage fileProduct name on the web page
STG154, STG254STG154-254_v3.00.00.binimgREDZ STG Series Wireless MBus Gateway
STG655STG655_BPL_v3.00.00.binimgREDZ STG Series Wireless MBus Gateway with BPL
STG154-LiteSTG154-Lite_LITE_v3.00.00.binimgREDZ STG Series Wireless MBus Gateway - Lite Model

NOTE:

Notes: next to every image there is <image>_ICSP.hex (programmer file: bootloader + application) and the manifest RELEASE_v3.00.00.json / .md with the SHA-256 values. Do not rename the image files - the update tool reads the variant from the name. The Lite device accepts only the Lite image. There is no Lite + BPL product.

15.2 Upgrade checklist

#StepDetailWhy it matters
Before the upgrade
1Record every settingDownload configuration.json and also note the settings by hand or with screenshots: operating mode, network, serial line, Modbus rows, meter list with AES keys, filters, MQTT, log.2.x -> 3.x RESETS the settings to factory; a 2.x file can be loaded afterwards as a legacy file - check every setting on the page.
2Pick the image by modelSTG154 / STG254: STG154-254_...; STG154 Lite: STG154-Lite_LITE_...; STG655 (BPL): STG655_BPL_... Check the SHA-256 against RELEASE_v3.00.00.md.The Lite device refuses any other image; do not rename the files.
3Plan the access after the upgradeAfter the upgrade the network settings are factory: static address off, the device asks for an address by DHCP. Find it by its MAC address (abcZ Network Tool).A device that was reached on a static address will not answer there after the upgrade.
Upgrade
4Upload the imageWeb page -> firmware update, or the abcZ Network Tool. Do not switch off during the upload. Measured: 28 - 41 s.A cut upload leaves the running firmware untouched; repeat it.
5Read the first start"rbt=FRESHBOOT" and "CONFIG: factory defaults - reconfigure device!" are NORMAL on this first start.Do not take them for an error and upload again.
Configuration
6Enter the settings againOperating mode, network, serial line, meters and keys, filters, MQTT.Every save answers "OK REQ=... RBT=..." - RBT=1 asks for a restart.
7Restart after entering AES keysNew keys reach the radio module at the next start; until then those meters show "No key".The page offers the restart after the save.
8MQTT only with a reachable brokerIf MQTT is enabled and the broker cannot be reached the device restarts about every 13 minutes. Saving operating mode 2 switches MQTT on by itself; mode 4 leaves it as it is set.Switch MQTT off until the broker is ready.
Verification
9Meters are heardLive telegrams / status page: every configured meter is heard; encrypted meters show "Decrypted"."No key" means the key is missing or the device was not restarted after the keys were entered.
10ModbusRead each meter with function 03 from address 0. Register 5 gives the number of records; meters with plain bytes after their encrypted part now deliver more records than in 2.x.Check fixed register lists in SCADA.
11Diagnosis channelOpen assets/ajax/dev_status_json.htm: the last fields carry rbt= and nrs=.This is the first thing support will ask for.
Monitoring systems / scripts
12Update log parsersNew lines (NETWD, NETGATE, MQTTWD, CLIENTLESS, BOOT ...) are information, not alarms; the Modbus request line is thinned.Old parsers may raise false alarms or miss requests.
13Read restarts from the status dataUse rbt= / nrs= of the status data and the application state text; a parked device is silent in the log.The log alone is not enough.
If something goes wrong
14Going back to 2.xThe 2.x image can be loaded over 3.x (measured with 2.09.03). Plan to enter the settings again: a 2.x device does not accept a 3.x configuration file.Contact REDZ support before going back.
15What to send to supportVersion and build date, model, MAC address, operating mode, time of the event and the text of assets/ajax/dev_status_json.htm.-

15.3 What behaves differently from 2.x

The table lists what you notice on the web interface and in your system after the upgrade, and what to do.

TopicIn firmware 3.00.00What to do
SettingsAn upgrade from 2.x starts the gateway with the factory settings: device function, meter list and keys, Modbus rows and network settings.Write down or save the settings before the upgrade and enter them again afterwards.
Capacity128 meters, Modbus rows and AES keys (2.x: 64). The STG154 Lite keeps 20.-
Configuration fileA configuration file saved with 2.x can be uploaded; meters 65 to 128 then get factory values. A file saved with 3.00.00 cannot be loaded into a 2.x gateway.Check every page after uploading a 2.x file.
Firmware filesThe image files are named after the model, for example STG154-254_v3.00.00.binimg.Do not rename the files: the abcZ Network Tool reads the model from the name.
RestartsA network problem outside the gateway no longer makes it restart again and again. After three rounds it stops restarting and stays reachable.Remove the cause, then restart the gateway on the Management page if it does not do so itself.
No TCP clientWhen no client connects, the gateway first reopens its port and restarts only after a second full period: about 10 minutes in the TCP/IP transparent function, about 60 minutes in the others.Keep a client connected during long tests.
MQTT broker not reachableWhile MQTT is enabled and the broker cannot be reached, the gateway restarts about every 13 minutes; Modbus TCP connections drop at each restart.Enable MQTT only with a reachable broker.
MQTT with Modbus RTUChoosing the Modbus RTU function no longer switches MQTT on.Tick the MQTT check box on the Network Settings page if you want both.
MQTT in the other functionsMQTT runs only in the Modbus TCP, Modbus RTU and Decoder/Parser functions; in the transparent functions and in the repeater the MQTT fields of the status page are hidden.-
MQTT broker portThe TLS ports (8883, 443 and others) are refused as broker port.Use the plain MQTT port (1883).
DHCP serverThe gateway hands out the Server Gateway Address and the Primary DNS Address of the Network Settings page to its clients (2.x: its own address).Enter a real router and DNS server, or 0.0.0.0 to leave them out.
Modbus RTU speedAnswers follow the request at once (2.x waited at least 250 ms between answers).Faster polling is possible. Check a very old master that relied on the pause.
Reading past the register mapAnswered with zeros (2.x: no answer).A master may read a fixed block.
Meters with unencrypted data after the encrypted partAll data records are decoded (2.x: 2 records without value), so such a meter has more registers.Check fixed register lists in your SCADA.
Telegram that cannot be readThe values keep those of the last readable telegram; the status register of the meter shows that the newest one failed.Check the status register before you use the values.
Transparent functionsThe live telegram list also shows the telegrams the gateway sends, marked as sent.-
Saving the time and the log settingsSet Device Time applies at once without a restart; log settings restart the gateway only when they changed.-
Device clockWith NTP the clock is checked every hour and corrected when it is 5 seconds or more off.Configure NTP where time stamps matter.

The factory values did not change: device function WMBus - TCP/IP Transparent Gateway, address 192.168.1.1 / 255.255.255.0, server port 502, at most 2 clients, serial port 115200 8N1, MQTT and log off.

16. Software - abcZ Network Tool

16.1 What the tool does

The abcZ Network Tool is our Windows program for REDZ devices on an Ethernet network. With STG gateways it finds them and shows their address, product, firmware version and MAC address, reads the identity of one gateway, gives a gateway a static address, and updates the firmware of one gateway or of many gateways at once. This chapter describes version 1.1.0 and only what you need with an STG gateway. Download the tool and its own user guide from the Support page of redz-sc.com (https://redz-sc.com/en/support).

The tool talks to the gateway the way a web browser does. Type the user name and password of the gateway's web interface in User and Password on each tab. A gateway with another password is listed with "auth required (password?)" in the Product column.

16.2 Find the gateway

Open the Discovery tab. In IP range type the addresses to search: a network such as 192.168.0.0/24, a range of the last number such as 192.168.0.1-254, a range such as 192.168.0.10-192.168.1.50, or one address. Click Scan (HTTP): the tool reads the start page of every address in the range, so it also finds gateways behind a router. Each gateway found appears as a row with IP, MAC, Series, Product, Device (the device name), Version and Build date.

Discover (UDP) is faster: it asks with a broadcast on UDP port 30303, which the gateway answers. A broadcast does not cross routers, so it finds only gateways in the same subnet as the PC. The gateways that answer are then read in the same way as with Scan.

Double-click a row to open the gateway's web interface in your browser. Series filter and Find narrow the list. Export CSV saves the selected rows (or all rows shown) as a list for Fleet Update.

A gateway that is not found may still be at its factory address 192.168.1.1 in a network without a DHCP server; see 10.1 "Connecting to the Web Interface". Assign Address at Factory IP... on the Discovery tab gives such a device a new address from a PC in another network; its steps are in the tool's own user guide.

16.3 Read the identity of one gateway

On the Single Device Update tab, type the gateway's address in Device IP and click Read Identity (safe). The panel Device identity (last read) shows the product name, firmware version, build date, MAC address and device name. Nothing is changed on the gateway. If Expected product is empty, the tool fills it with the product name it read; this name protects the firmware update (below).

16.4 Give the gateway a static address

On the Discovery tab, right-click the gateway's row and choose Set IP / Subnet / Gateway (one device).... The tool first reads the gateway's network settings; the window "Set network - <address>" then shows IP address, Subnet mask and Gateway as they are stored for the static address (Server IP Address, Server Net Mask and Server Gateway Address on the Network Settings page). A gateway that has its address from a DHCP server shows these stored values, not the address it uses now.

Type the new values, click Apply and type SET to confirm. The tool turns on Use Static Address for Device, saves the three values (the other network settings are kept), restarts the gateway and looks for it by its MAC address in the new subnet. When it finds the gateway there, the log says "now reachable at" with the new address. When it does not, the log warns that the gateway was not found by its MAC address, and the Status column shows "IP set? not found at" with the address you typed. While a scan or an update is running, the tool refuses this command; wait until the task ends.

NOTE:

If the gateway is not found after the change, check the new address with Scan (HTTP) or in your browser. A wrong subnet mask or gateway can make the gateway unreachable.

16.5 Update the firmware

On the Single Device Update tab:

  1. Type the gateway's address in Device IP and click Read Identity (safe), so that Expected product holds the product name of this gateway.
  2. Click Browse... and choose the firmware image (.binimg) of your model from the firmware package (see chapter 15 "Firmware Update and Upgrading from 2.x"). Keep the package's RELEASE_v3.00.00.json file next to the image: the tool then checks the image against it.
  3. Click Update and confirm.

Before it writes, the tool stops when the product name read from the gateway is not the expected one (this cannot be overridden), skips a gateway that already runs the version in the file name (tick Force (flash even if version matches) to write it anyway) and asks before it writes an image for another model, for example an image with BPL for a gateway without BPL or a Lite image for a gateway that is not a Lite model: answer No in the window Image / device mismatch and the gateway is not touched. The image is written into the gateway's alternative firmware bank; the tool then sends the command to start it once, waits for the restart and compares the version and build date the gateway reports. The log ends with "RESULT:" and SUCCESS when the gateway runs the new firmware.

NOTE:

Factory reset after update deletes every setting of the gateway after the update, and its address may change. Leave it off unless you want the factory settings. When the factory reset was sent and accepted, the result line reads "SUCCESS (factory reset)". When the gateway was updated but the factory reset was refused, answered with an error or not sent, the result is UPDATED, FACTORY RESET FAILED; as the pilot of a fleet update this result stops the fleet.

16.6 Update many gateways

The Fleet Update tab updates a list of gateways from a CSV file with the columns ip, expected_product and image_path (the image path is relative to the CSV file). Export CSV on the Discovery tab writes such a list with the image column empty. Validate CSV (dry-run) checks the list without writing. With a Pilot IP (opt.) the tool updates that gateway first and leaves all the others untouched if it fails; the rest are then updated Parallelism (jobs) at a time.

17. Logs and Troubleshooting

The gateway writes log lines to the console port or to a UDP log server, and answers every save on the web interface with a text. The tables below list the lines and replies you are most likely to see, when they appear and what to do.

17.1 Boot (every start, at every log level)

Line / replyWhenMeaning and what to do
BOOT rcon=<hex> <cause> rbt=f<file>:<line>First line of a start.Reset cause (POR power-on, BOR brown-out, WDTO watchdog ...) and the place that asked for the last restart: file 1 = application, 2 = web interface.
BOOT rcon=<hex> <cause> rbt=FRESHBOOT-POR / -NEW / -LAY / -RECFirst line when there is no record of a requested restart.Normal after power-on and on the first start of a new image. Not an error.
BOOT pos=.. stall=N mod=N park=N supp=N wdt=NSecond line of a start.Counters of stall restarts, radio module errors, parked and suppressed restarts; wdt=BLK<n> means the watchdog could not be enabled.
EXCP k=<n> code=<hex> addr=<hex>At start, only when the last run ended in a recorded fault.Send this line to support.
CONFIG: factory defaults - reconfigure device!At start.The device runs with factory settings - EXPECTED after the 2.x -> 3.x upgrade.
STALL streak >=3 -> LOG-ONLY MODE (reset SUPPRESSED)At start.Three stall restarts in a row; the device no longer restarts on a stall. Contact support.
BOOT: LOG channel - undelivered lines: <n>At start.Log lines that could not be delivered in the previous run.

17.2 Network watchdog

Line / replyWhenMeaning and what to do
NETWD: gateway unreachable x<n>Each failed probe of the default gateway (every 60 s).Count of failures in a row.
NETWD: stage 1 - DHCP renew5 failures.The lease is refreshed.
NETWD: stage 2 - DHCP disable/enable (rediscover)8 failures.Full rediscovery.
NETWD: stage 3 - reboot requested11 failures.Restart request; it passes the gate below.
NETWD: gateway OK (recovered after stage <n>)The gateway answers again.Counters cleared, no restart.

17.3 Restart gate / parking

Line / replyWhenMeaning and what to do
NETGATE: link down - reboot suppressed (cause external)A restart was asked for while the cable is out.Not restarted: the cause is outside the device. Printed once per outage.
NETGATE: gateway lost - reboot suppressed (cause external)A restart was asked for while the gateway is lost.As above.
NETGATE PARK dom=<n> site=<name> streak=3Third network restart request in a row.The device parks.
NETGATE parked: web/TCP alive - user reboot to retryDirectly after the PARK line.The device keeps running; restart it from the web page once the cause is removed.
NET RESTORED(<what>): suppressed x<n> last=<site> (total <n>)When the network is back and something was suppressed.One summary line of the outage.
(NET PARKED - web reboot to retry)Added to the application state on the web page.Network protection parked.
(WMBUS DEAD - web reboot to retry)As above.Radio module protection parked.
(SERIAL NOISE PARKED - check line/baud)As above.Serial line protection parked - check the wiring and the baud rate.
NETDIAG: DHCP not bound - waiting, no rebootOnce, while there is no lease.The device waits instead of restarting.
IP changed: <old> -> <new>The address changed.-
CLIENTLESS stage-1: <n> listener(s) recycled, no rebootFirst window without a TCP client.Listening sockets reopened.
CLIENTLESS stage-2: full window again - reboot requestedSecond full window without a client.Restart request through the gate.
TCP client refused - all client slots in use, n: <n>A client connects while every slot is busy (first 3 and every 100th).Raise "Max Client" or close unused connections.

17.4 MQTT

Line / replyWhenMeaning and what to do
MQTTWD: no delivery x<n> (gateway ARP OK - L3/broker suspect)Every minute while nothing was delivered for 3 minutes.The local network is fine; the broker or the route to it is not.
MQTTWD: stage 1 - DHCP renew / stage 2 - DHCP disable/enable (rediscover) / stage 3 - reboot requestedCount 5 / 8 / 11.The ladder; stage 3 restarts the device (about every 13 minutes).
MQTTWD: delivery recovered (was x<n>)Delivery works again.Counter cleared.
MQTT ping unanswered - reconnecting, ms: <n>A PING was not answered within 10 s.The session is closed and opened again.

17.5 Web replies (text of the reply to a save or upload)

Line / replyWhenMeaning and what to do
OK REQ=<name> RBT=<0|1>Every accepted save.RBT=1: restart needed. Possible additions: SELF=1 (the device restarts by itself), REJ=k/n (k of n values were refused).
Rejected: reboot in progress - please retry after the device restartsA save inside the restart window.Nothing was saved; repeat it after the restart.
Rejected: no recognized field in request - web image and firmware may be out of syncNo known field in the request.Usually an old page in the browser: reload the page.
Rejected: malformed POST - field name or value could not be read (see log)A field could not be read.-
Rejected: all <n> value(s) out of range - nothing savedEvery value of the request was invalid.-
Rejected: flash verify failed - NOT saved; restart restores factory settingsThe flash write of this save did not verify.Restart the device; it starts with factory settings; load the settings again.
Rejected: config flash invalid - restart the device (factory settings)A save after an earlier verify failure.Writes are refused until the restart.
Configuration Uploaded - device will restartA configuration file was accepted.May carry a note: "(legacy config - no _meta)" or a warning that the file comes from another firmware version.
Rejected: layout mismatch: file <n>, device <n>Configuration upload.The file belongs to another configuration layout.
Rejected: product mismatch - file: '<name>', device: '<name>'Configuration upload.The file was made by another product.
Rejected: build variant mismatch - file: '<v>', device: '<v>'Configuration upload.Standard / Lite / BPL do not match.
Node ID Not Found at line <n>, pos. <n>.Configuration upload.Unknown key in the file. This is what a 2.x device answers to a 3.x file (line 2).
Rejected: alternate firmware image is not valid"Reboot Alt Firmware".The other bank holds no valid image; nothing is switched.

17.6 Configuration (log lines)

Line / replyWhenMeaning and what to do
FLASH: config VERIFY FAILED - configOK NOT stamped, word index: <n>A configuration write did not verify.See the two "Rejected:" replies above.
Config flash: waited for the other writer, ms: <n>A save had to wait for another one.Normal - two writers took turns.
Config upload: legacy file (no _meta), identity NOT verifiedA file without "_meta" was accepted.Check the settings on the page.

17.7 Firmware update

Line / replyWhenMeaning and what to do
FW upload start - alt pre-erased; no more log = cut. bytes: <n>An upload starts.If no further FW line follows, the upload was cut; the other bank is invalid and the running firmware is untouched.
FW upload REJECTED at INIT - image larger than alt bank (flash untouched), bytes: <n>The file is too large.Nothing was erased - wrong file.
FW upload FAILED: verify mismatch, alt erased @<addr>The written image did not verify (other forms: write overrun, no valid stamp, size mismatch).The other bank is left invalid; repeat the upload.
RESTART_SYSTEM_TIMEOUT: (S)<n>After 24 hours of uptime.The planned daily restart.

17.8 Modbus / serial

Line / replyWhenMeaning and what to do
MODBUS addr beyond data: start=<n> readable-end=<n> (zero-filled reply)A read starts past the registers of the meter.The answer is zero-filled.
Modbus RTU: answer waited too long - dropped, ms: <n>An RTU answer could not be sent within 300 ms.The master has already given up; the answer is not sent.
MODBUS RTU req. received (every 100th logged), n: <n>RTU request (DEBUG; first 3 and every 100th).-
Message from Client Index: <n>Modbus TCP request (DEBUG; first 3 and every 100th).In 2.x this line was printed for every request.
Serial: UART write DROPPED (driver queue full) - size: <n>A serial frame could not be queued.The frame was not sent.
SERIAL NOISE: parked after <n> cycles (<site>)Repeated serial line errors.Check the wiring and the baud rate.

17.9 WMBus / radio module

Line / replyWhenMeaning and what to do
Mes. rec. over air.Length: <n>Every telegram from the radio module (DEBUG).Same line as in 2.x.
NO PARSE MI:0x<man> - DI:0x<id> - NO KEYAn encrypted telegram without a key.Enter the AES key of this meter.
NO PARSE MI:0x<man> - DI:0x<id> - KEY WRONGThe decrypted content is not valid.Check the key.
NO PARSE MI:0x<man> - DI:0x<id> - DEC. NOT SUP.Encryption mode not supported.-
WMBus: module cut a telegram - gateway takes row: <n>First telegram of a meter with plain bytes after its encrypted part.From now on the gateway decrypts this meter.
WMBus: gateway-decrypt rows saved, n: <n>The above was stored.-
WMBus list verified. Items: <n>After the key list was sent to the radio module.Number of items in the module.
WMBus list verify MISMATCH exp=<n> got=<n>The count differs.The upload is repeated; 3 failures park the radio module protection.
WMBUS DEAD: parked after <n> cycles (<site>)The radio module does not answer.The web page stays reachable; contact support if it returns after a restart.

17.10 Log channel / memory

Line / replyWhenMeaning and what to do
LOG ring overflow - line(s) dropped (oldest kept): <n>More lines were produced than could be delivered.Under load missing lines prove nothing - use the counters.
TCPIP heap LOW, free <n> / TCPIP heap CRITICAL, free <n> / TCPIP heap recovered, free <n>The level of the network memory pool changed.A lasting shortage ends in "TCPIP heap starved - restarting".

17.11 Known behaviours and limits

The following behaviours of firmware 3.00.00 are known and intended or accepted. They are listed here so that they are not taken for a fault.

17.11.1 Factory settings after the upgrade from 2.x

  • Symptom: after the upgrade from firmware 2.x the gateway has lost operating mode, meter list, AES keys, Modbus rows and network settings; it does not answer on its former static address.
  • Cause: firmware 3.00.00 stores 128 meter rows instead of 64. The layout of the stored settings is different, so the settings of 2.x cannot be taken over.
  • What to do: record all settings before the upgrade. After the upgrade find the gateway by its MAC address with the abcZ Network Tool (it asks for an address by DHCP) and enter the settings again, or upload the configuration file saved with 2.x and check every setting on the pages. A gateway that runs 2.x does not accept a configuration file made by 3.00.00.

17.11.2 No direct upgrade from 1.x

A direct upgrade from firmware 1.x to 3.x is not supported. The only supported upgrade path is from firmware 2.x.

17.11.3 Restarts while the MQTT broker is unreachable

  • Symptom: the gateway restarts about every 13 minutes; Modbus TCP connections drop at every restart.
  • Cause: MQTT is enabled in one of the three device functions that publish, but the broker cannot be reached. The gateway watches the delivery to the broker, first renews its network address and, if that does not help, restarts. After two such restarts in a row it does not restart a third time for this reason; it stays up and waits.
  • What to do: make sure that the broker address, the port and the route to the broker are right, or switch MQTT off until the broker is ready. Saving the device function WMBus Decoder/Parser and MQTT Publisher switches MQTT on by itself.

17.11.4 MQTT: about 3 messages per second

  • Symptom: with many meters that send often, not every telegram appears at the MQTT broker.
  • Cause: the gateway publishes about 3 messages per second. Telegrams that arrive faster overwrite each other for MQTT.
  • What to do: take this into account for large populations of fast-sending meters. The Modbus values stay complete - every meter row holds the values of its last telegram.

17.11.5 Planned restart every 24 hours

  • Symptom: once a day the gateway restarts; TCP connections are closed.
  • Cause: by design the gateway restarts after 24 hours of operation, counted from its last start. The log line, at Log Level INFO or DEBUG, is "RESTART_SYSTEM_TIMEOUT: (S)<seconds>".
  • What to do: nothing. A Modbus TCP master or another TCP client must be able to connect again by itself.

17.11.6 Not every Modbus request is logged

  • Symptom: the log shows only a few lines for Modbus requests although the master polls all the time.
  • Cause: the request lines are written at level DEBUG only, and only for the first 3 requests and then for every 100th request.
  • What to do: read the request and response counters on the status page instead of counting log lines.

17.11.7 "flash verify failed" or "config flash invalid"

  • Symptom: a save or a configuration upload is answered with "Rejected: flash verify failed - NOT saved; restart restores factory settings"; every further save is answered with "Rejected: config flash invalid - restart the device (factory settings)". Reboot Alternative Firmware is refused with the same reason (Alternate Firmware Boot Failed!).
  • Cause: the gateway reads back every write of its settings. This write did not verify, so the stored settings are not valid. Until the restart the gateway keeps working with the settings it had before.
  • What to do: restart the gateway. It starts with factory settings (network by DHCP, password admin); upload your configuration file or enter the settings again. Switch the firmware only after this restart. Contact REDZ support if it happens again.

17.11.8 Delayed answers on packet loss

  • Symptom: single Modbus TCP answers arrive 1 second late (3 seconds in a longer interruption); a web page reply can take about 1.6 seconds.
  • Cause: a packet was lost on the network; the gateway repeats a lost Modbus TCP answer after 1.0 second and, if the interruption lasts longer than 1 second, again in the 3rd second.
  • What to do: set the response timeout of the Modbus TCP master longer than these times. A shorter timeout closes and reopens the connection on every lost packet.

17.11.9 "LOG ring overflow" at log level DEBUG

  • Symptom: at Log Level DEBUG and with much traffic the log shows "LOG ring overflow - line(s) dropped (oldest kept): <n>" and lines are missing.
  • Cause: the log output delivers about 17 lines per second; lines produced faster are dropped and counted.
  • What to do: nothing is wrong with the data - only log lines are lost, Modbus and MQTT are not affected. Use the counters of the status page for measurements and a lower log level for long observations.

17.11.10 A file with fewer rows replaces the meter list

  • Symptom: after a configuration file of firmware 2.x (64 rows) was uploaded into a gateway that already had meters in the rows 65 to 128, those rows are empty.
  • Cause: the meter list and the key list of a file replace the lists stored in the gateway. Rows that the file does not contain are set to their factory values; they do not keep their former content. This is the same for an upload on the web page and over MQTT.
  • What to do: nothing if the file is the complete configuration. If the rows 65 to 128 are still needed, download the configuration of the gateway first and enter those rows again after the upload.

17.11.11 Configuration over MQTT needs a restart

  • Symptom: a configuration file sent over MQTT is answered with "Configuration Uploaded - reboot required to apply", but the gateway goes on working with its former settings.
  • Cause: over MQTT the file is stored but the gateway does not restart by itself; the settings take full effect only after a restart. If the transfer stops and no further part arrives for 60 seconds, the gateway gives the transfer up and returns to the settings it had before (log line "MQTT config upload abandoned - running settings restored"); the same happens when a configuration file is uploaded on the web page meanwhile.
  • What to do: restart the gateway after the last part was acknowledged. Send the complete file again after an interrupted transfer. Every gateway that is subscribed to the topic takes the file - use a separate topic for each gateway.

17.11.12 BPL model: one path only

Connect an STG655 to a network either over the power line or over Ethernet, never over both at the same time: both paths together close a loop in the network, packets are lost and uploads are cut.

17.11.13 Modbus values after a telegram that cannot be read

  • Symptom: a meter whose last telegram could not be decrypted still shows meter values on Modbus.
  • Cause: the gateway keeps the values of the last telegram it could read. Only the decryption status register (value 2, 3 or 4) tells that the newest telegram could not be read.
  • What to do: let the SCADA system read the decryption status register first and not use the values while it reads 2, 3 or 4.

17.11.14 Standard and BPL images are not told apart

A standard gateway also accepts the image of the STG655, and the reverse. Choose the image by your model and check the file name before you upload. If the wrong image was loaded, upload the right image and switch to it.

18. Ordering Information

ModelDescription
STG154868 MHz WMBus to Modbus TCP / RTU gateway with MQTT publisher, 2 x 10/100Base-T(X) Ethernet ports, 1 x RS232 and 1 x RS485, 5 - 48 V DC power input (60 V maximum)
STG254868 MHz WMBus to Modbus TCP / RTU gateway with MQTT publisher, 2 x 10/100Base-T(X) Ethernet ports, 1 x RS232 and 1 x RS485, 100 - 240 V AC, 50 Hz to 60 Hz (120 - 370 V DC) power input
STG655-PN-AC868 MHz WMBus to Modbus TCP / RTU gateway with MQTT publisher, 2 x 10/100Base-T(X) Ethernet ports and 1 x BPL link, 1 x RS232 and 1 x RS485, three-phase AC power input, 110 - 240 V, 50 - 60 Hz, phase to neutral (PN) data connection
STG655-PP-AC868 MHz WMBus to Modbus TCP / RTU gateway with MQTT publisher, 2 x 10/100Base-T(X) Ethernet ports and 1 x BPL link, 1 x RS232 and 1 x RS485, three-phase AC power input, 110 - 240 V, 50 - 60 Hz, phase to phase (PP) data connection
STG655-PP-DC868 MHz WMBus to Modbus TCP / RTU gateway with MQTT publisher, 2 x 10/100Base-T(X) Ethernet ports and 1 x BPL link, 1 x RS232 and 1 x RS485, 9 - 36 V DC power input, phase to phase (PP) data connection
STG154 Lite868 MHz WMBus to Modbus TCP / RTU gateway with MQTT publisher, 1 x 10/100Base-T(X) Ethernet port, 1 x RS485, 9 - 36 V DC power input (40 V maximum)

19. Product Selection

FeatureSTG154STG254STG655STG154 Lite
Meters with AES-128 decryption and Modbus mappingUp to 128Up to 128Up to 128Up to 20
Six device functions and the MQTT publisher●●●●
Decryption in security modes 5, 7 and 128●●●●
2 x 10/100Base-T(X) Ethernet ports●●●
1 x 10/100Base-T(X) Ethernet port●
1 x RS232●●●
1 x RS485●●●●
BPL (Broadband Power Line) link●
5 - 48 V DC power input (60 V maximum)●
100 - 240 V AC, 50 - 60 Hz (120 - 370 V DC) power input●
Three-phase AC power input, 110 - 240 V, 50 - 60 Hz● *
9 - 36 V DC power input● *●
Firmware imageSTG154-254_v3.00.00.binimgSTG154-254_v3.00.00.binimgSTG655_BPL_v3.00.00.binimgSTG154-Lite_LITE_v3.00.00.binimg

NOTE:

* The STG655 is made in three versions: STG655-PN-AC and STG655-PP-AC with three-phase AC power input (phase to neutral or phase to phase BPL data connection), and STG655-PP-DC with 9 - 36 V DC power input (phase to phase). See chapter 18 "Ordering Information".

LKM Series Electricity Meter Protocol to Modbus Protocol Gateways with MQTT (and LoRaWAN)
LKM Series Electricity Meter Protocol to Modbus Protocol Gateways with MQTT (and LoRaWAN)
STG Series WMBus (Wireless MBus) - Modbus Protocol Gateway with MQTT
STG Series WMBus (Wireless MBus) - Modbus Protocol Gateway with MQTT
TLM Series LoRa Modems and LoRaWAN EndNode Modems
TLM Series LoRa Modems and LoRaWAN EndNode Modems
CKL Series Modbus TCP and RTU Gateways and Serial to Ethernet Gateways
CKL Series Modbus TCP and RTU Gateways and Serial to Ethernet Gateways
BSB Series Industrial Unmanaged Ethernet Switch (with Broadband Power Line)
BSB Series Industrial Unmanaged Ethernet Switch (with Broadband Power Line)
KMK Series Optical Probes for Energy Meters
HUR Series Modbus TCP and RTU Remote I/O Devices with MQTT (and LoRaWAN)
BKV Series Industrial Converters and USB Tools
BKV Series Industrial Converters and USB Tools
BKV Series Industrial Converters and USB Tools
MBC Series IEC62056-21 Protocol Auto Baud Changer
KMK Series Optical Probes for Energy Meters
REDZ Software Solutions
LoRaWAN
LoRaWAN
In today's rapidly digitizing world, IoT (Internet of Things) devices and applications are becoming increasingly prevalent. In this context, long-range wireless communication technologies play a significant role. One such technology that stands out is LoRa, which offers an innovative solution for low-power, long-range wireless communication.
MQTT
MQTT
As the Internet of Things (IoT) continues to grow, the demand for efficient, lightweight, and reliable communication protocols becomes essential. One of the most popular protocols meeting these demands is MQTT (Message Queuing Telemetry Transport).
Broadband Power Line (BPL)
Broadband Power Line (BPL)
Broadband Powerline Technology (BPL), also known as Powerline Communication (PLC), represents a revolutionary approach to data transmission, leveraging the existing electrical power infrastructure to deliver broadband internet connectivity.
Wireless MBus (WMBus)
Wireless MBus (WMBus)
In an era defined by connectivity and data-driven decision-making, the need for efficient and reliable metering solutions has never been greater. Enter Wireless M-Bus (Meter-Bus) technology, a versatile and robust platform designed to revolutionize remote meter reading and data communication in utility management systems.
IEC62056-21 (for Electricity Meters)
IEC62056-21 (for Electricity Meters)
IEC 62056-21 is an international standard for communication with electricity meters. Developed by the International Electrotechnical Commission (IEC), this protocol standardizes the way data is exchanged between meters and various devices or systems, ensuring interoperability and efficient data management.
DLMS/COSEM (for Electricity Meters)
DLMS/COSEM (for Electricity Meters)
DLMS/COSEM (Device Language Message Specification / Companion Specification for Energy Metering) is the global standard for smart energy metering. It provides a highly secure, interoperable framework for reading and managing energy data across diverse utility networks.
P1 Companion Standard (for Electricity Meters)
P1 Companion Standard (for Electricity Meters)
Smart energy meters have become essential in monitoring and controlling energy usage. To facilitate better integration, communication, and functionality of these smart meters, standards are crucial. One such standard, particularly relevant in Europe, is the P1 Companion Standard.
Modbus RTU
Modbus RTU
Modbus RTU is a widely recognized and utilized communication protocol in the field of industrial automation. Developed by Modicon (now Schneider Electric) in 1979, it was designed to facilitate communication between various electronic devices, primarily programmable logic controllers (PLCs).
Modbus TCP
Modbus TCP
Modbus TCP, also known as Modbus TCP/IP, is a widely adopted communication protocol in the industrial automation sector. It was developed to enable Modbus communication over Ethernet networks, combining the reliability and simplicity of the Modbus protocol with the versatility of Ethernet.
LoRa RF Communication
LoRa RF Communication
LoRa stands for Long Range and is a proprietary wireless modulation technique developed by Semtech. Essentially, LoRa is the physical layer, or the hardware, that allows long-range communication between devices.
MBus
MBus
M-Bus (Meter-Bus) is a robust European standard specifically designed for the remote reading of utility meters, such as electricity, gas, water, and heat. It utilizes a simple, polarity-independent two-wire system that transmits both data and power over long distances, making it highly cost-effective and immune to industrial noise.