Various types of cookies are used on our website (and on all other digital platforms including mobile applications). View our new THE INFORMATIVE TEXT ON LPPD AND PRIVACY here. Google Analytics Analytical cookies help us to improve our website by collecting and reporting information on its usage. Google AdWords ve Remarketing We use marketing cookies to help us improve the relevancy of advertising campaigns you receive.
I have read the above articles
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:
The standard models and the STG655 hold 128 meters: 128 Modbus rows and 128 AES keys. The STG154 Lite holds 20 meters.
| Area | Firmware 3.00.00 |
| Scope | Generation-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). |
| Capacity | 128 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). |
| Reliability | Every 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 / meters | Meters 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. |
| Modbus | Modbus 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. |
| Configuration | Identity 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. |
| Diagnostics | Boot 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. |
| Measured | Modbus 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.
STG Series WMBus Gateways are made with and without a Broadband Power Line (BPL) link.
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.








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 connection | Description |
| 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. |
| DC | Data 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.

The Ethernet ports are standard 10/100Base-T(X) ports with RJ-45 connectors.
| Cable | Type | Maximum length | Connector |
| 10BASE-T | Cat. 3, 4, 5, 100 ohm UTP | 100 m (328 ft) | RJ-45 |
| 100BASE-TX | Cat. 5, 100 ohm UTP | 100 m (328 ft) | RJ-45 |
With a 100BASE-TX / 10BASE-T cable, pins 1 and 2 transmit data and pins 3 and 6 receive data.
| Pin | Description |
| 1 | TD+ |
| 2 | TD- |
| 3 | RD+ |
| 4 | Not used |
| 5 | Not used |
| 6 | RD- |
| 7 | Not used |
| 8 | Not used |
The table compares a link over CAT5 cable with the BPL link of the STG655.
| CAT5 cable | BPL link | |
| Media | CAT5 cable | Power line |
| New wiring | Yes | No, the existing power line is used |
| Installation | New cable has to be laid | The 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.
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.

| Pin | Description |
| 1 | GND |
| 2 | Rx |
| 3 | Tx |

| Pin | Description |
| 1 | A |
| 2 | B |
| 3 | GND (recommended) |

NOTE:
The STG154 Lite has a 2 wire RS485 connection (A and B).
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).
| Scenario | Device Function | Data leaves the gateway by | Ethernet needed |
| 1 | WMBus - Modbus TCP Gateway (and MQTT Publisher) | Modbus TCP, MQTT in addition | Yes |
| 2 | WMBus - Modbus RTU Gateway (and MQTT Publisher) | Modbus RTU on RS232 / RS485, MQTT in addition | Only for MQTT and the web interface |
| 3 | WMBus Decoder/Parser and MQTT Publisher | MQTT | Yes |
| 4 | WMBus - TCP/IP Transparent Gateway | TCP, raw WMBus frames in both directions | Yes |
| 5 | WMBus - Serial Transparent Gateway | RS232 / RS485, raw WMBus frames in both directions | Only for the web interface |
| 6 | WMBus Repeater | Radio (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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.
| Rule | Behaviour |
| Delay | Each frame is sent again after a random delay of 5 to 25 seconds. |
| Hop bit | In 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 bit | Sent again unchanged. A frame that was already repeated is not repeated again within 60 seconds (the repeater remembers the last 8 such frames). |
| Waiting frames | Up to 16 frames wait for their delay at the same time; further frames are not repeated. |
| Installation frames | If 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 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.
| Function | Effect of a key in the list |
| WMBus - TCP/IP Transparent Gateway, WMBus - Serial Transparent Gateway | The 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 Repeater | The 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. |
The gateway is configured from its embedded web interface. The pages are described below in the order of the menu.
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.
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:
| Setting | Factory value |
| Use Static Address for Device | Off (address by DHCP) |
| DHCP Server Enabled | Off |
| Server IP Address | 192.168.1.1 |
| Server Net Mask | 255.255.255.0 |
| Server Gateway Address | 192.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.
| Situation | What to do |
| Network with a DHCP server | Connect 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).
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.

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".
The browser asks for a user name and a password before the first page is shown.
| Item | Value |
| User name | admin (fixed, cannot be changed) |
| Password (factory) | admin |

WARNING:
Change the password after the first login: page Management, card Change Password.
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.
| Model | Product name in the header |
| STG154 / STG254 | REDZ STG Series Wireless MBus Gateway |
| STG154 Lite | REDZ STG Series Wireless MBus Gateway - Lite Model |
| STG655 | REDZ 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 entry | Content | Shown |
| Operating Mode | Device name, device function, list of meters to be read | Always |
| Network Settings | Time server, MQTT, TCP server and IP address settings | Always |
| Serial Settings | RS232 / RS485 selection, baud rate, line control | Only with WMBus - Serial Transparent Gateway or WMBus - Modbus RTU Gateway (and MQTT Publisher) |
| Device Status | Counters, connections, Modbus communication status | Always |
| WMBus Settings | Radio settings, AES key list, detected meters | Always |
| WMBus Status | Latest received message, meters | Always |
| Security Settings | White list and black list | Always |
| Management | Time, firmware update, configuration file, password, log, restore and reboot | Always |
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 window | Meaning |
| 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.
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.
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.

| Field | Meaning |
| Device ID | Identification number of the built-in radio module, shown as a hexadecimal number. Read only. |
| Device Name | Name 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 Function | Operating 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. |
| Device Function | What the gateway does | Meter table | Serial Settings menu |
| WMBus - TCP/IP Transparent Gateway | Passes every received WMBus frame to the connected TCP clients and sends frames received from a TCP client to the air. | Hidden | Hidden |
| 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. | Shown | Hidden |
| WMBus Decoder/Parser and MQTT Publisher | Decodes the frames of the listed meters and publishes them to an MQTT broker. | Shown, without the Modbus Address column | Hidden |
| WMBus - Serial Transparent Gateway | Passes every received WMBus frame to the serial port and sends frames received on the serial port to the air. | Hidden | Shown |
| 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. | Shown | Shown |
| WMBus Repeater | Sends received WMBus frames to the air again to extend the radio range. | Hidden | Hidden |
The data flow of each function is described in chapter 9 "Usage Scenarios and Connection Diagrams".
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 Function | MQTT publisher | Other settings |
| WMBus - TCP/IP Transparent Gateway | Switched off | - |
| WMBus - Modbus TCP Gateway (and MQTT Publisher) | Left as it is | Maximum 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 Publisher | Switched on | A switched-off receiver is set to C / T - Mode ( combined reception of T and C Mode messages ). |
| WMBus - Serial Transparent Gateway | Switched off | RS485 is selected if neither RS232 nor RS485 was selected. |
| WMBus - Modbus RTU Gateway (and MQTT Publisher) | Left as it is | A 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 Repeater | Switched off | A switched-off receiver is set to C / T - Mode ( combined reception of T and C Mode messages ). |
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.

| Column | Meaning |
| Modbus Address | Modbus 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 Address | Identification 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). |
| Enable | The row is in use. A row that is not enabled is not decoded, not answered on Modbus and not published. Factory value: off. |
| Control | Meaning |
| Add Row | Shows 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 rows | Shows 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 counter | The text next to the box reads, for example, "3 of 128 rows in use" (STG154 Lite: "3 of 20 rows in use"). |
| Save Configuration | Stores the name, the function and the changed rows of the table. |
The page checks the entries before it sends them:
| Message | Cause |
| "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.

NOTE:
Until the restart the device keeps working in the previous function, while the pages already show the saved selection.
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.

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.
| Field | Meaning |
| NTP Server IP or URL | Time 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:

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".
The card is shown only when Device Function on the Operating Mode page is one of the three functions that decode meter data:
| Device Function | MQTT 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 Publisher | Shown 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 Repeater | Not 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).
| Field | Meaning |
| Enable MQTT Publisher for Parsed WMBus Packages | Switches 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 URL | IPv4 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 Port | TCP 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 ID | MQTT 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 Name | User name sent to the broker. 1 to 63 characters, must not be empty. Factory default: MQTT_STG_User. |
| Password | Password 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 Topic | Topic the meter data is published to. 1 to 31 characters. Factory default: MQTT_STG_Publish_topic. |
| Subscribe Topic | Topic 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 Format | Layout 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".

| Field | Meaning |
| Model with BPL only | |
| BPL Operating Mode | Role 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 Port | TCP port on which the device accepts client connections, 1 to 65535. Factory default: 502. |
| Maximum Number of Clients | Number of TCP clients that may be connected at the same time, 1 to 10. Factory default: 2. |
| Address mode (always shown) | |
| DHCP Server Enabled | The device hands out addresses to other devices on its network. Factory default: off. |
| Use Static Address for Device | The device uses the fixed address entered below. Factory default: off. |
| Address (shown while one of the two boxes above is ticked) | |
| Server IP Address | IPv4 address of the device. Factory default: 192.168.1.1. |
| Server Net Mask | Subnet mask. Factory default: 255.255.255.0. |
| Server Gateway Address | Default gateway the device uses in static address mode. Factory default: 192.168.1.1. |
| Primary DNS Address | First 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 Address | Second 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 Address | First 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.

The two check boxes select one of three modes:
| Check boxes | Mode |
| 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 ticked | Static 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 unticked | DHCP 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.
With DHCP Server Enabled the device serves the network it is connected to:

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.
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.
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.

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.

| Field | Meaning |
| Card Serial Port Settings | |
| RS232 | The serial data runs over the RS232 port. Checking this box clears RS485. Not shown on the STG154 Lite. Factory value: off. |
| RS485 | The 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 rate | Speed of the serial line: 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400 or 460800. Factory value: 115200. |
| Line Control | Data 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 Configuration | Stores the settings. Active after a change. The new settings are in effect after a restart. |
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.

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.
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".
| Box | What 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. |
| Decryption | Shown 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 RTU | Only 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 clients | Only 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"). |
| MQTT | Only 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).
| Field | Meaning |
| IP Address | The IP address of the gateway on the network interface through which the page was requested. |
| App Status | The state of the gateway application. "SERVING_CONNECTIONS" is normal operation. The other texts are listed below. |
| App Status text | Meaning |
| Start-up | |
| INIT, WAIT_FOR_TCP_STACK_READY, WAIT_FOR_NET_READY | The 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_REPORT | The 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_RSP | The 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_RSP | The 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_TIME | The gateway sets or reads the clock of the radio module. |
| Operation | |
| SERVING_CONNECTIONS | Normal operation: frames are received and the configured function is served. |
| CLIENT_DEVICEINFO_RECEIVED | A TCP client has just connected; the gateway takes the connection over and returns to normal operation. |
| APP_STATE_MQTT_ERROR | The MQTT client could not be started; the gateway restarts. |
| Restart | |
| CLOSING_CONNECTIONS, SEND_LOGS_BEFORE_RESET, RESET_PROCESSOR | The 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 Status | Meaning 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. |
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.
| Field | Meaning |
| Log (shown when Log Level on the Management page is not NONE) | |
| Log Counter | Number of log lines given out to the log output (console or UDP server). |
| Log Status | State 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 Messages | Number of messages published to the MQTT broker. |
| MQTT Status | State 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 Errors | Receive errors reported by the serial port between the gateway and its radio module. |
| N. of Module Incorrect Chars Received | Bytes 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 Errors | Packets 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 Errors | Times the receive buffer of the radio module link was full. |
| Serial port RS232 / RS485 | |
| N. of Serial UART Input Overflow Errors | Times the receive buffer of the RS232 / RS485 port was full. Shown in all operating modes. |
| N. of Serial UART Errors | Receive 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 Errors | Modbus RTU requests received with a wrong CRC. Shown in mode WMBus - Modbus RTU Gateway (and MQTT Publisher). |
| TCP | |
| N. of TCP Input Back-Pressure Events | Times 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 Disconnections | Number 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 Errors | Times 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 Received | Bytes 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 Correctly | In 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 Correctly | In 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 Correctly | Radio 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 Correctly | Radio frames whose transmission the radio module confirmed. |

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 mode | Rows | Columns |
| WMBus - TCP/IP Transparent Gateway | One 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.
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.
| Column | Meaning |
| (first column) | Row number of the meter list. |
| Modbus Address | The Modbus address under which the host reads this meter. |
| WMBus Device ID | The device ID of the meter, 8 hexadecimal digits. |
| Meter | Manufacturer (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 Query | Date 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. |
| Data | Fresh - 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. |
| Row | Enabled 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".

| Button | What it does |
| Refresh Status | Reads the status data again (see 10.5.1 "Refreshing the page"). |
| Reset Logs | Sets 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.
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.
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.

| Field | Meaning |
| Rx Package Reception Mode | The 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 Mode | The 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 Level | Transmit 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).
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.
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.
| Field | Meaning |
| Recently Detected Size | Number of meters heard since the last restart that were not part of the configuration. |
| Total Detected Size | Number of meters heard at least once since the last restart, configured ones included. |
| Detection List Usage | Used 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:

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:
The two check boxes exclude each other: checking one unchecks the other.

| Column | Meaning |
| Manufacturer ID | Manufacturer 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 ID | Device ID (serial number) of the meter as a 4 byte hex value, for example 0x12345678. |
| Version | Version byte of the meter address, 1 byte hex. |
| Device Type | Device 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 Key | The AES-128 key of the meter, 32 hex digits. See 10.6.7 "Key format" below. |
| Last RSSI | Signal 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 Config | Checked: 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 List | Checked: with the next save the meter is moved to the black list and the row is cleared. |
| Status | State of the row and of the last telegram of the meter. See 10.6.6 "Status words" below. |
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."
| Control | Meaning |
| Add Row | The 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 box | Shows only the rows whose device ID, manufacturer ID or three letter manufacturer code contains the typed text. |
| Needs a key | Shows 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 rows | Shows all rows of the table, used or not: 128 rows, 20 rows on STG154 Lite. |
| Row counter | The 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.
| Status | Meaning |
| Recently Detected | The row was added by Refresh Auto Config List and is not saved yet. |
| Changed | The key in the row differs from the stored key. It is stored with Save Configuration. |
| Key from CSV | The key of this new row came from the CSV box (see 10.6.8 "Key tools"). |
| Key from rule 1 / Key from rule 2 | The key of this new row came from a key rule (see 10.6.8 "Key tools"). |
| No frame yet | The meter is in the meter list but no telegram has been received from it since the last restart. |
| Not encrypted | The last telegram of the meter was not encrypted. No key is needed. |
| Decrypted | The last telegram was decrypted with the key of the row. |
| Default key | Shown 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 key | The 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 reboot | The 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 supported | The telegram uses an encryption mode the gateway cannot decrypt. |
| Key might be wrong | Decryption 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. |
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.
| Tool | Meaning |
| Import keys from CSV | Paste 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 file | Choose 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 rows | Type 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. |
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:
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.":
Other messages of the save:
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.
| Item | Standard models and STG655 | STG154 Lite |
| Rows of the AES-128 Decryption List (meters and keys) | 128 | 20 |
| Meters in Device Query Settings | 128 | 20 |
| Detection list | 256 | 256 |
| Key rules | 2 | 2 |
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.
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.

| Field | Meaning |
| System Time | The 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. |
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.
| Field | Meaning |
| Message Date-Time | Time 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 Info | Radio 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 dBm | Received signal strength of the frame in dBm (a negative number; closer to zero is stronger). |
| Field | Meaning |
| C-Field | Control field of the frame, as 0x and two hexadecimal digits. |
| Manufacturer ID | Manufacturer code of the meter, 4 hexadecimal digits. |
| Device ID | Device ID of the meter, 8 hexadecimal digits - the value to enter in the meter list and in the AES list. |
| Version ID | Version of the meter, 2 hexadecimal digits. |
| Type | Device type code of the meter, 2 hexadecimal digits. |
| CI-Field | Control 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.
| Field | Meaning |
| Message Time | Gateway clock at the moment the frame was stored. |
| Payload | The bytes of the frame after the CI field, in hexadecimal, without the checksum. For a decrypted frame these are the decrypted bytes. |
| OMS Parsing | The 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".
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.
| Column | Meaning |
| # | 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 ID | Device ID, 8 hexadecimal digits. |
| Manufacturer | The three letters of the manufacturer and the code in brackets. |
| Device Type | Device type in words (Water, Heat, Gas, Electricity ...); an unknown code is shown as "Type 0x..". |
| RSSI | Signal 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 No | Access 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 Status | The 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. |
| Decryption | Not 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.

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.


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.
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.

| Field | Meaning |
| White List Enabled | Checked: 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 Enabled | Checked: 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.
| Table | Entries | Value |
| White List Manufacturer ID Table | 20 | Filter Manufacturer ID: manufacturer code, 0x0000 to 0xFFFF |
| White List Device ID Table | 64 | Filter Device ID: device ID, 0x00000000 to 0xFFFFFFFF, or a pattern |
| Black List Manufacturer ID Table | 20 | Filter Manufacturer ID: manufacturer code, 0x0000 to 0xFFFF |
| Black List Device ID Table | 64 | Filter Device ID: device ID, 0x00000000 to 0xFFFFFFFF, or a pattern |
The table sizes are the same on all models.
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.
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.
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.

| Field | Meaning |
| Time At Start | The 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 Time | Writes 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.

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.
| Field | Meaning |
| Select Firmware File | Opens the file dialog of the browser. |
| Firmware file to upload | Name of the chosen file. Empty until a file has been chosen. |
| Upload Firmware | Sends the file to the gateway. The button is enabled after a file has been chosen. |
| Alternative Firmware Date | Build date of the alternative firmware. Empty when there is no valid alternative firmware. |
| Alternative Firmware Version | Version of the alternative firmware. Empty when there is no valid alternative firmware. |
| Reboot Alternative Firmware | Restarts 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:
| Model | Image file |
| STG154 / STG254 | STG154-254_v3.00.00.binimg |
| STG154 Lite | STG154-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.
A complete update took 28 to 41 seconds in our measurements.


| Text in the window | Meaning |
| "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 wrong | The 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.
| Button | Meaning |
| Download Current Configuration | Saves 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 File | Opens 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 window | Meaning |
| Configuration Uploaded - device will restart | The 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 restart | A 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 restart | The 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 saved | The 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.

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.
| Control | Meaning |
| "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:
| Part | Content |
| Header line | Product 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.

| Field | Meaning |
| Current Password | The password in use now. Factory default: admin. |
| New Password | The new password, 1 to 15 characters. Use letters and digits; other characters are accepted but were not tested. |
| Confirm New Password | The new password once more. The frame of the field turns green when both entries are equal and red when they differ. |
| Change Password | Stores 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.
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.
| Field | Meaning |
| Log Level | NONE - 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 Output | CONSOLE - 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 Port | UDP port of the log server, 1 to 65535. Factory default 7001. Shown only for UDP SERVER. |
| UDP Server IP | IPv4 address of the log server. Factory default 192.168.1.10. Shown only for UDP SERVER. |
| Change Log Level and Reboot | Stores 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.

| Button | Meaning |
| Restore Factory Configuration | Sets 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 Device | Restarts 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.

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.
| Item | Rule | Notes |
| 1 | Every WMBus meter is a separate Modbus slave. | The slave address is set on the web page, Operating Mode -> Modbus settings table, column "Modbus address". |
| 2 | The 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. |
| 3 | Register 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. |
| 4 | A 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. |
| 5 | Only 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. |
| 6 | The 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). |
| 7 | A 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. |
| 8 | The 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. |
| 9 | To limit the meters the gateway listens to, use the white / black lists. | Web page, Security Settings. |
| 10 | To read encrypted meters, enter their AES-128 keys. | Web page, WMBus Settings, AES-128 decryption list. |
| 11 | The 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. |
| Register address | Register | Format | Words | Description | Example |
| Header (6 registers) | |||||
| 0 - 1 | WMBus device ID | UINT32, high word first | 2 | Device ID of the meter. | 0x2021 0x8613 = ID 20218613 |
| 2 | Manufacturer ID | UINT16 | 1 | Manufacturer code of the meter. | 0xB409 |
| 3 | Version | UINT16 | 1 | Version field of the meter. | 0x0001 |
| 4 | Device type | UINT16 | 1 | Device type (medium) of the meter. | 0x0007 = water |
| 5 | Record count (n) | UINT16 | 1 | Number of measurement blocks that follow. | 0x0004 |
| Measurement block k (k = 0 .. n - 1), 5 registers each | |||||
| 6 + 5k | Storage number | UINT16 | 1 | 0 = current value, 1 and above = stored / historical value. | 0x0000 |
| 7 + 5k | Function field | UINT16 | 1 | Instantaneous, maximum, minimum or error state - 11.4 "Function field". | 0x0001 |
| 8 + 5k | Data type | UINT16 | 1 | Code of the quantity and unit - 11.3 "Data types". | 0x0003 = volume in litres |
| 9 + 5k, 10 + 5k | Data value | FLOAT32 or raw 4 bytes | 2 | FLOAT32 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 + 5n | Access number | UINT16 | 1 | Access number of the last telegram; it changes with every new telegram. | 0x002A |
| 7 + 5n | Signal level (RSSI) | INT16 | 1 | Signal level of the last telegram, signed (dBm). | 0xFFB5 = -75 |
| 8 + 5n | Meter status byte | UINT16 | 1 | Status byte of the last telegram. | 0x0000 |
| 9 + 5n | Decryption status | UINT16 | 1 | 0 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.
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.
| Code | Name | Value in Modbus | Quantity | Unit / resolution range of the meter |
| 1 | ENERGY Wh | FLOAT32 | Energy | 0.001 Wh to 10000 Wh |
| 2 | ENERGY kJ | FLOAT32 | Energy | 0.001 kJ to 10000 kJ |
| 3 | VOLUME l | FLOAT32 | Volume | 0.001 l to 10000 l |
| 4 | MASS kg | FLOAT32 | Mass | 0.001 kg to 10000 kg |
| 5 | POWER W | FLOAT32 | Power | 0.001 W to 10000 W |
| 6 | POWER kJ/h | FLOAT32 | Power | 0.001 kJ/h to 10000 kJ/h |
| 7 | VOL. FLOW l/h | FLOAT32 | Volume flow | 0.001 l/h to 10000 l/h |
| 8 | VOL. FLOW l/min | FLOAT32 | Volume flow ext. | 0.0001 l/min to 1000 l/min |
| 9 | VOL. FLOW ml/s | FLOAT32 | Volume flow ext. | 0.001 ml/s to 10000 ml/s |
| 10 | MASS FLOW kg/h | FLOAT32 | Mass flow | 0.001 kg/h to 10000 kg/h |
| 11 | FLOW TEMP C | FLOAT32 | Flow temperature | 0.001 C to 1 C |
| 12 | RETURN TEMP C | FLOAT32 | Return temperature | 0.001 C to 1 C |
| 13 | TEMP DIFF mK | FLOAT32 | Temperature difference | 1 mK to 1000 mK |
| 14 | EXT. TEMP C | FLOAT32 | External temperature | 0.001 C to 1 C |
| 15 | PRESSURE mbar | FLOAT32 | Pressure | 1 mbar to 1000 mbar |
| 16 | ON TIME (sec) | FLOAT32 | On time | seconds |
| 17 | ON TIME (min) | FLOAT32 | On time | minutes |
| 18 | ON TIME (hr) | FLOAT32 | On time | hours |
| 19 | ON TIME (day) | FLOAT32 | On time | days |
| 20 | OPER. TIME (sec) | FLOAT32 | Operating time | seconds |
| 21 | OPER. TIME (min) | FLOAT32 | Operating time | minutes |
| 22 | OPER. TIME (hr) | FLOAT32 | Operating time | hours |
| 23 | OPER. TIME (day) | FLOAT32 | Operating time | days |
| 24 | AVR. DUR. (sec) | FLOAT32 | Averaging duration | seconds |
| 25 | AVR. DUR. (min) | FLOAT32 | Averaging duration | minutes |
| 26 | AVR. DUR. (hr) | FLOAT32 | Averaging duration | hours |
| 27 | AVR. DUR. (day) | FLOAT32 | Averaging duration | days |
| 28 | ACT. DUR. (sec) | FLOAT32 | Actuality duration | seconds |
| 29 | ACT. DUR. (min) | FLOAT32 | Actuality duration | minutes |
| 30 | ACT. DUR. (hr) | FLOAT32 | Actuality duration | hours |
| 31 | ACT. DUR. (day) | FLOAT32 | Actuality duration | days |
| 32 | DUR. OF LAST CUM. (hr) | FLOAT32 | Duration since last cumulation | hours |
| 33 | DUR. OF LAST CUM. (day) | FLOAT32 | Duration since last cumulation | days |
| 34 | DUR. OF LAST CUM. (mth) | FLOAT32 | Duration since last cumulation | months |
| 35 | DUR. OF LAST CUM. (yr) | FLOAT32 | Duration since last cumulation | years |
| 36 | BATTERY OPER. TIME (hr) | FLOAT32 | Battery operation time | hours |
| 37 | BATTERY OPER. TIME (day) | FLOAT32 | Battery operation time | days |
| 38 | BATTERY OPER. TIME (mth) | FLOAT32 | Battery operation time | months |
| 39 | BATTERY OPER. TIME (yr) | FLOAT32 | Battery operation time | years |
| 40 | FD74 (unit unknown) | FLOAT32 | VIF extension FD 74h - the unit is not defined, the value is published as a number | - |
| 41 | FD75 (unit unknown) | FLOAT32 | VIF extension FD 75h - the unit is not defined, the value is published as a number | - |
| 42 | FD76 (unit unknown) | FLOAT32 | VIF extension FD 76h - the unit is not defined, the value is published as a number | - |
| 43 | FD77 (unit unknown) | FLOAT32 | VIF extension FD 77h - the unit is not defined, the value is published as a number | - |
| 44 | MODEL/VERSION | FLOAT32 | Model / version | - |
| 45 | HUMIDITY % | FLOAT32 | Humidity | % |
| 46 | DATE | RAW 4 bytes | Date - M-Bus data type G, 2 bytes in the 4 byte value | as sent by the meter |
| 47 | DATE & TIME | RAW 4 bytes | Date and time - M-Bus data type F, 4 bytes | as sent by the meter |
| 48 | BAT. CHANGE DATE & TIME | RAW 4 bytes | Date and time of the battery change - M-Bus data type F | as sent by the meter |
| 49 | FABRICATION NO | RAW 4 bytes | Fabrication number | as sent by the meter |
| 50 | SPECIAL SUPPLIER INFO | RAW 4 bytes | Special supplier information | as sent by the meter |
| 51 | REVERSE FLOW VOL. l | FLOAT32 | Reverse flow volume | litres |
| 52 | ERROR FLAGS | RAW 4 bytes | Error flags | as sent by the meter |
| 53 | RELA. HUMIDITY % | FLOAT32 | Relative humidity | % |
| 54 | DIMENSIONLESS | RAW 4 bytes | Dimensionless value | as sent by the meter |
| 55 | VERSION | RAW 4 bytes | Version | as sent by the meter |
| 56 | UNCORRECTED VOL. l | FLOAT32 | Uncorrected volume | litres |
| 57 | ENERGY RES. GJ | FLOAT32 | Energy | GJ |
| 58 | REV. FLOW POWER W | FLOAT32 | Reverse flow power | W |
| 59 | REV. FLOW ENERGY Wh | FLOAT32 | Reverse flow energy | Wh |
| 60 | VOLTAGE PHASE L1 V | FLOAT32 | Voltage, phase L1 | V |
| 61 | VOLTAGE PHASE L2 V | FLOAT32 | Voltage, phase L2 | V |
| 62 | VOLTAGE PHASE L3 V | FLOAT32 | Voltage, phase L3 | V |
| 63 | VOLTAGE V | FLOAT32 | Voltage | V |
| 64 | FORWARD FLOW VOL. l | FLOAT32 | Forward flow volume | litres |
| 65 | UNITS FOR H.C.A. | FLOAT32 | Units 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.
| Value | Function field | Notes |
| 1 | INSTANTANEOUS | The value is an instantaneous value. |
| 2 | MAXIMUM | The value is a maximum value. |
| 3 | MINIMUM | The value is a minimum value. |
| 4 | ERROR STATE | The value was taken during an error state. |
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".


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.


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.
| Register | Content |
| 0 - 1 | WMBus device ID, 32 bit, high word first |
| 2 | Manufacturer ID |
| 3 | Version |
| 4 | Device type |
| 5 | Number of data records n (0 to 14) |
| 6 + 5k ... 10 + 5k | Record k (k = 0 ... n - 1): storage number, function, data type code, value in two registers |
| 6 + 5n | Access number of the last telegram |
| 7 + 5n | RSSI of the last telegram in dBm, signed |
| 8 + 5n | Status byte of the meter |
| 9 + 5n | Decryption 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:
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.

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.
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.
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 Function | What saving the Operating Mode page does | MQTT publishing |
| WMBus - TCP/IP Transparent Gateway | Switches 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 Publisher | Switches MQTT on. | Yes, always. |
| WMBus - Serial Transparent Gateway | Switches 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 Repeater | Switches 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.


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.
| Property | Value |
| Protocol | MQTT 3.1.1 over TCP, not encrypted. |
| Encryption | Encrypted 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 service | QoS 0 for publishing and for the subscription. The broker does not confirm a message. |
| Retain | Not set. |
| Session | Clean session. No last-will message. |
| Keep-alive | 120 seconds. |
| Login | User name and password, always sent. |
| Subscription | One topic, the Subscribe Topic. |
Each decoded telegram marks its meter as waiting. The device sends one message per waiting meter, built from the latest telegram of that meter.

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.
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>", ... }}
| Key | Content |
| STGid | Identifier 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. |
| STGNme | Device Name of the gateway. Characters that are not allowed in a JSON string are escaped. |
| Time | Time 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). |
| RxTm | Time 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. |
| Data | Object with the meter data. |
| DevId | Identification number of the meter, hexadecimal. |
| ManId | Manufacturer code of the meter, hexadecimal. |
| Ver | Version of the meter, hexadecimal. |
| Typ | Device type (medium) of the meter, hexadecimal. |
| RSSI | Signal strength of the telegram in dBm, decimal with sign. |
| AcNu | Access 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.
{"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"}}
{"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>"}]}}
| Key | Content |
| DtCnt | Number of data records in this message, decimal (the records the gateway can express as one of its data types; at most 14). |
| Trnc | Only 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. |
| Blcks | Array with one object per data record. |
| S | Storage number of the record, decimal. |
| F | Function of the record, decimal: 1 = instantaneous value, 2 = maximum, 3 = minimum, 4 = value during error state. |
| T | Data 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". |
| V | Value 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"}]}}
{"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:
| Registers | Content |
| 6 | Header: meter identification number (2 registers), manufacturer code, version, device type, number of data records. |
| 5 per data record | Storage number, function, data type, value (2 registers). |
| 4 | Access 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"}}
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.
A broker or router that drops idle connections therefore does not cut the data silently.

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 line | Meaning |
| 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 renew | 5th count. |
| MQTTWD: stage 2 - DHCP disable/enable (rediscover) | 8th count. |
| MQTTWD: stage 3 - reboot requested | 11th 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. |
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>"
| Element | Content |
| <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. |
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": "" }}
| Key | Content |
| result | OK when the part was accepted, error when it was refused. |
| position, length | The numbers of the part this reply belongs to, as JSON numbers. |
| response | Empty for a part in the middle of the file. For the last part and for a refusal: the result text. |
| response_1 | On 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 response | Meaning |
| Configuration Uploaded - reboot required to apply | The whole file was accepted and stored. Restart the device now so that all settings apply. |
| Configuration Uploaded (legacy config - no _meta) - reboot required to apply | As 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 apply | As above; the file was written by another firmware version. |
| Rejected: chunk out of sequence (pos <n>, expected <n>) - resend from position 0 | A part is missing or came twice. Nothing was stored; start again with the first part. |
| Rejected: device is rebooting | The file arrived while the device was restarting. Send it again afterwards. |
| Rejected: flash verify failed - NOT saved; restart restores factory settings | The 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 error | The 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.
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.
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".
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.

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.
| Model | Image file | Product name on the web page |
| STG154, STG254 | STG154-254_v3.00.00.binimg | REDZ STG Series Wireless MBus Gateway |
| STG655 | STG655_BPL_v3.00.00.binimg | REDZ STG Series Wireless MBus Gateway with BPL |
| STG154-Lite | STG154-Lite_LITE_v3.00.00.binimg | REDZ 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.
| # | Step | Detail | Why it matters |
| Before the upgrade | |||
| 1 | Record every setting | Download 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. |
| 2 | Pick the image by model | STG154 / 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. |
| 3 | Plan the access after the upgrade | After 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 | |||
| 4 | Upload the image | Web 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. |
| 5 | Read 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 | |||
| 6 | Enter the settings again | Operating mode, network, serial line, meters and keys, filters, MQTT. | Every save answers "OK REQ=... RBT=..." - RBT=1 asks for a restart. |
| 7 | Restart after entering AES keys | New keys reach the radio module at the next start; until then those meters show "No key". | The page offers the restart after the save. |
| 8 | MQTT only with a reachable broker | If 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 | |||
| 9 | Meters are heard | Live 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. |
| 10 | Modbus | Read 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. |
| 11 | Diagnosis channel | Open 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 | |||
| 12 | Update log parsers | New 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. |
| 13 | Read restarts from the status data | Use 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 | |||
| 14 | Going back to 2.x | The 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. |
| 15 | What to send to support | Version and build date, model, MAC address, operating mode, time of the event and the text of assets/ajax/dev_status_json.htm. | - |
The table lists what you notice on the web interface and in your system after the upgrade, and what to do.
| Topic | In firmware 3.00.00 | What to do |
| Settings | An 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. |
| Capacity | 128 meters, Modbus rows and AES keys (2.x: 64). The STG154 Lite keeps 20. | - |
| Configuration file | A 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 files | The 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. |
| Restarts | A 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 client | When 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 reachable | While 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 RTU | Choosing 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 functions | MQTT 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 port | The TLS ports (8883, 443 and others) are refused as broker port. | Use the plain MQTT port (1883). |
| DHCP server | The 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 speed | Answers 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 map | Answered with zeros (2.x: no answer). | A master may read a fixed block. |
| Meters with unencrypted data after the encrypted part | All 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 read | The 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 functions | The live telegram list also shows the telegrams the gateway sends, marked as sent. | - |
| Saving the time and the log settings | Set Device Time applies at once without a restart; log settings restart the gateway only when they changed. | - |
| Device clock | With 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.
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.
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.
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).

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.
On the Single Device Update tab:
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.
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.
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.
| Line / reply | When | Meaning 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 / -REC | First 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=N | Second 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. |
| Line / reply | When | Meaning 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 renew | 5 failures. | The lease is refreshed. |
| NETWD: stage 2 - DHCP disable/enable (rediscover) | 8 failures. | Full rediscovery. |
| NETWD: stage 3 - reboot requested | 11 failures. | Restart request; it passes the gate below. |
| NETWD: gateway OK (recovered after stage <n>) | The gateway answers again. | Counters cleared, no restart. |
| Line / reply | When | Meaning 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=3 | Third network restart request in a row. | The device parks. |
| NETGATE parked: web/TCP alive - user reboot to retry | Directly 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 reboot | Once, 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 reboot | First window without a TCP client. | Listening sockets reopened. |
| CLIENTLESS stage-2: full window again - reboot requested | Second 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. |
| Line / reply | When | Meaning 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 requested | Count 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. |
| Line / reply | When | Meaning 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 restarts | A 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 sync | No 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 saved | Every value of the request was invalid. | - |
| Rejected: flash verify failed - NOT saved; restart restores factory settings | The 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 restart | A 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. |
| Line / reply | When | Meaning 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 verified | A file without "_meta" was accepted. | Check the settings on the page. |
| Line / reply | When | Meaning 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. |
| Line / reply | When | Meaning 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. |
| Line / reply | When | Meaning 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 KEY | An encrypted telegram without a key. | Enter the AES key of this meter. |
| NO PARSE MI:0x<man> - DI:0x<id> - KEY WRONG | The 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. |
| Line / reply | When | Meaning 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". |
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.
A direct upgrade from firmware 1.x to 3.x is not supported. The only supported upgrade path is from firmware 2.x.
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.
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.
| Model | Description |
| STG154 | 868 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) |
| STG254 | 868 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-AC | 868 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-AC | 868 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-DC | 868 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 Lite | 868 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) |
| Feature | STG154 | STG254 | STG655 | STG154 Lite |
| Meters with AES-128 decryption and Modbus mapping | Up to 128 | Up to 128 | Up to 128 | Up 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 image | STG154-254_ | STG154-254_ | STG655_ | STG154-Lite_ |

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".
THIS SITE USES COOKIES
Various types of cookies are used on our website (and on all other
digital platforms including mobile applications).
View our new THE INFORMATIVE TEXT ON LPPD AND PRIVACY here.
Google Analytics
Analytical cookies help us to improve our website by collecting and
reporting information on its usage.
Google AdWords and Remarketing
We use marketing cookies to help us improve the relevancy of advertising
campaigns you receive.
I have read the above articles