Configuration options
Table 214. All configuration options
|
Field name (Abbr.) |
Description |
Default value |
Locked device & correct PAK or open device |
Locked device & no PAK |
Downlink |
|---|---|---|---|---|---|
|
Metre ID |
Meter identification number of the meter. Not configurable. |
N/A |
Readable |
Readable |
N/A |
|
Power mode |
Used to activate/deactivate the module. |
Passive |
Readable / Writeable |
Readable |
N/A |
|
Message format |
The message format determines the structure and payload of the telegram sent from the module. |
0 (Compact) |
Readable / Writeable |
Readable |
N/A |
|
EcoMode |
When activated, 11+1 years of battery-life is guaranteed by adapting the transmit interval of the module to current signal conditions. |
On |
Readable / Writeable |
Readable |
Writeable |
|
Maximum daily transmissions |
Maximum number of transmissions allowed per day. |
Inactive |
Readable / Writeable |
Readable |
Writeable |
|
Date & Time |
Date and time set for the meter |
Current date/time |
Readable / Writeable |
Readable |
Writeable |
|
Set Time Relative |
Adjusts the time of the meter relative to the current time. |
N/A |
Writeable |
N/A |
Writeable |
|
Configuration Lock |
Locks the module to prevent unauthorized access. |
Open |
Readable / Writeable |
Readable |
Writeable |
|
LoRaWAN® settings |
|||||
|
Device EUI |
Unique module identification number. Not configurable. |
Device-unique 64-bit number |
Readable |
Readable |
N/A |
|
Activation type |
Sets the way the device joins the LoRaWAN® network. |
OTAA |
Readable / Writeable |
Readable |
N/A |
|
Network join |
Used to display whether the module has joined the LoRaWAN® network. |
N/A |
Readable |
Readable |
N/A |
|
Join EUI |
Application ID that determines where data ends up. |
0x 00 00 00 00 00 00 00 00 |
Readable / Writeable |
Readable |
N/A |
|
Application key |
Encryption key for payload data (only applicable in OTAA mode). |
Device-unique 128-bit number |
Writeable |
N/A |
N/A |
|
Application session key |
Encryption key for payload data (only applicable in ABP mode). |
Device-unique 128-bit number |
Writeable |
N/A |
N/A |
|
Device address |
Unique address used by the device to identify itself on the LoRaWAN® network (only applicable in ABP mode). |
Device-unique 32-bit number |
Writeable |
N/A |
N/A |
|
Network session key |
Encryption key for payload data (only applicable in ABP mode). |
Device-unique 128-bit number |
Writeable |
N/A |
N/A |
|
Current data rate |
The current data rate used for the module |
N/A |
Readable |
Readable |
N/A |
Table 215. Downlink commands
|
Field name |
TLV (Type Length Value) |
Number of bytes |
Configuration |
Example |
|---|---|---|---|---|
|
Configuration lock |
0x05 |
0x01 |
0x00 = Locked 0x01 = Open |
0x00050101 (Enables configuration lock) |
|
Transmit interval (only applier when EcoMode is inactive) |
0x06 |
0x02 |
0xNumber of minutes (lsByte -> msByte) |
0x0006021E00 (Sets the Tx interval to 30 minutes) |
|
Message format |
0x07 |
0x01 |
Message ID Example: 0x41 = Message format Compact tariff NB! For multi-telegram formats, only the first telegram can be selected (select 0x3F for Scheduled Extended+, and not 0x40). |
|
|
Date & Time |
0x11 |
0x02 |
0xHHMM |
|
|
Set Date |
0x12 |
0x03 |
0xYYMMDD |
|
|
Set Time Relative |
0x13 |
0x02 |
0xNumber of minutes Negative numbers supported. |
|
|
EcoMode |
0x0F |
0x01 |
0x00 = Disable EcoMode 0x01 = Enable EcoMode |
|
|
MaxDTx (Maximum daily transmissions) |
0x21 |
0x01 |
0xNumber of transmissions |
Tip
Example: To set the MaxDTx parameter to 24, the following command would be sent by downlink: 0x00 21 01 18
CMi4110 has several different message formats, listed in the table below. All data messages from the module will be transmitted on LoRa port 2.
Table 216. Message formats
|
Message format name |
Message ID |
Scheduled |
Introduced in FW |
|---|---|---|---|
|
Standard |
|
No |
1.0.3 |
|
Compact |
|
No |
1.0.3 |
|
JSON |
|
No |
1.0.3 |
|
Scheduled Daily Redundant |
|
Yes |
1.0.3 |
|
Scheduled Extended |
|
Yes |
1.0.4 |
|
Scheduled Extended+ |
|
Yes |
1.0.7 |
|
Compact Tariff |
|
No |
1.0.7 |
|
Maximum Flow |
|
No |
1.0.8 |
|
Scheduled Daily Redundant Tariff |
|
Yes |
1.0.8 |
|
Scheduled Monthly |
|
Yes |
1.0.8 |
|
Scheduled Daily |
|
Yes |
1.0.8 |
|
Scheduled Daily Extended |
|
Yes |
1.0.9 |
|
Scheduled Monthly Extended |
|
Yes |
1.0.9 |
Table 219. Payload, message format Standard [0x00]
|
DIB |
Field |
Size |
Data type |
Description |
|---|---|---|---|---|
|
1 |
Energy |
6-7 bytes (including DIF/VIF) |
BCD8 M-Bus Type A |
Energy consumption (MWh, kWh, MJ, GJ) Mapped to OBIS 6.8 0C06xxxxxxxx = kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals If first byte is set to “3C” instead of “0C”, this indicates value during error state |
|
2 |
Volume |
6 bytes (including DIF/VIF) |
BCD8 M-Bus Type A |
Volume (m3) Mapped to OBIS 6.26 0C14xxxxxxxx = m3, 2 decimals 0C15xxxxxxxx = m3, 1 decimal 0C16xxxxxxxx = m3, 0 decimals If first byte is set to “3C” instead of “0C”, this indicates value during error state |
|
3 |
Power |
5 bytes (including DIF/VIF) |
BCD6 M-Bus Type A |
Power (kW) Mapped to OBIS 6.4 0B2Bxxxxxx = kW, 3 decimals 0B2Cxxxxxx = kW, 2 decimals 0B2Dxxxxxx = kW, 1 decimal 0B2Exxxxxx = kW, 0 decimals If first byte is set to “3B” instead of “0B”, this indicates value during error state |
|
4 |
Flow |
5 bytes (including DIF/VIF) |
BCD6 M-Bus Type A |
Flow (m3/h) Mapped to OBIS 6.27 0B3Bxxxxxx = m3/h, 3 decimals 0B3Cxxxxxx = m3/h, 2 decimals 0B3Dxxxxxx = m3/h, 1 decimal 0B3Exxxxxx = m3/h, 0 decimals If first byte is set to “3B” instead of “0B”, this indicates value during error state |
|
5 |
Fw temp |
4 bytes (including DIF/VIF) |
BCD4 |
Forward temperature (°C) Mapped to OBIS 6.29 0A5Axxxx = °C, 1 decimal 0A5Bxxxx = °C, 0 decimals If first byte is set to “3A” instead of “0A”, this indicates value during error state |
|
6 |
Rt temp |
4 bytes (including DIF/VIF) |
BCD4 |
Return temperature (°C) Mapped to OBIS 6.28 0A5Exxxx = °C, 1 decimal 0A5Fxxxx = °C, 0 decimals If first byte is set to “3A” instead of “0A”, this indicates value during error state |
|
7 |
Meter ID |
6 bytes (including DIF/VIF) |
According to M-Bus EN13757-3 identification field |
Meter ID 0C78xxxxxxxx If first byte is set to “3C” instead of “0C”, this indicates value during error state |
|
8 |
Error flags |
5 bytes (including DIF/VIF) |
Uint16 M-Bus Type C |
Error and warning flags 02FD17xxxx If first byte is set to “32” instead of “02”, this indicates value during error state |
Table 220. Payload, message format Compact [0x01]
|
DIB |
Field |
Size |
Data type |
Description |
|---|---|---|---|---|
|
1 |
Energy |
6 bytes (including DIF/VIF) |
BCD8 M-Bus Type A |
Energy consumption (MWh, kWh, MJ, GJ) Mapped to OBIS 6.8 0C06xxxxxxxx = MWh, 3 decimals =kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C06xxxxxxxx = kWh 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals If first byte is set to “3C” instead of “0C”, this indicates value during error state |
|
2 |
Meter ID |
6 bytes (including DIF/VIF) |
According to M-Bus EN13757-3 identification field |
Meter ID 0C78xxxxxxxx If first byte is set to “3C” instead of “0C”, this indicates value during error state |
|
3 |
Error flags |
5 bytes (including DIF/VIF) |
Uint16 M-Bus Type C |
Error and warning flags 02FD17xxxx =Error and warning flags If first byte is set to “32” instead of “02”, this indicates value during error state |
Table 221. Payload, message format Compact Tariff [0x41]
|
Value |
Bytes |
Type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
0x41 |
Always set to 0x41 |
|
Energy |
6-7 |
BCD8 |
0C06xxxxxxxx = MWh, 3 decimals = kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals |
Heat energy prior to transmission |
|
Tariff 1 |
7-8 |
BCD8 |
0C06xxxxxxxx = MWh, 3 decimals = kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals |
|
|
Tariff 2 |
7-8 |
BCD8 |
0C06xxxxxxxx = MWh, 3 decimals = kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals |
|
|
Tariff 3 |
8 |
BCD8 |
0C06xxxxxxxx = MWh, 3 decimals = kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals |
|
|
Meter ID |
6 |
BCD8 |
0C78xxxxxxxx (serial number)or 0C79xxxxxxxx (customer number) |
Serial number or customer number depending on configuration |
|
Error flags |
5 |
INT16 |
02FD17xxxx |
Error flags prior to transmission |
For message format JSON, the data is presented in a plain text format.
Table 222. Fields, message format JSON [0x02]
|
Field |
Description |
|---|---|
|
Energy |
Energy consumption |
|
Unit |
Unit of energy consumption |
|
Meter ID |
Identification number of the meter in which the module is mounted. |
Below shows an example of a telegram sent using the JSON message format.
{"E":12345.678","U":"MWh","ID":87654321}
Table 223. Payload, message format Maximum flow [0x46]
|
Value |
Bytes |
Type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
0x46 |
Always set to 0x46 |
|
Heat energy |
6-7 |
BCD8 |
0C06xxxxxxxx = MWh, 3 decimals = kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals |
Heat energy prior to transmission |
|
Energy at due date |
7-8 |
BCD8 |
8C0106xxxxxxxx = MWh, 3 decimals = kWh |
Energy at end of previous month |
|
Max flow |
6 |
BCD6 |
9B013Bxxxxxx = m3 /h, 3 decimals |
Maximum flow last month Max value encoded with function field set to max (0b01) and then storage number 2 using using DIFE = 0x01 |
|
Timestamp of max flow |
6 |
INT 32 |
046Dxxxxxxxx |
Timestamp when maximum flow was registered. M-Bus Type F date |
|
Return temp |
4 |
BCD4 |
0A5Exxxx = °C, 1 decimal 0A5Fxxxx= °C, 0 decimals |
Return temperature read prior to transmission |
|
Meter ID |
6 |
BCD8 |
0C78xxxxxxxx (serial number) or 0C79xxxxxxxx (customer number) |
Serial number or customer number depending on configuration |
|
Error flags |
5 |
INT16 |
02FD17xxxx |
Error flags prior to transmission |
Table 224. Payload, message format Scheduled Daily [0x4A]
|
Value |
Bytes |
Type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
0x4A |
Always set to 0x4A |
|
Energy at 24:00 |
6-7 |
BCD8 |
4C06xxxxxxxx = MWh, 3 decimals = kWh 4C07xxxxxxxx = MWh, 2 decimals 4CFB00xxxxxxxx = MWh, 1 decimal 4CFB01xxxxxxxx = MWh, 0 decimals 4C0Exxxxxxxx = GJ, 3 decimals 4C0Fxxxxxxxx = GJ, 2 decimals 4CFB08xxxxxxxx = GJ, 1 decimal 4CFB09xxxxxxxx = GJ, 0 decimals |
Energy at midnight Storage nr 1 used |
|
Fwd temp |
4 |
BCD4 |
0A5Axxxx = °C, 1 decimal 0A5Bxxxx = °C, 0 decimals |
Value read just prior to transmission. |
|
Rtn temp |
4 |
BCD4 |
0A5Exxxx = °C, 1 decimal 0A5Fxxxx = °C, 0 decimals |
Value read just prior to transmission. |
|
Meter ID |
6 |
BCD8 |
0C78xxxxxxxx (serial number) or 0C79xxxxxxxx (customer number) |
Serial number or customer number depending on configuration |
|
Date & Time |
6 |
INT32 |
046Dxxxxxxxx |
Date and Time (Type F) |
|
Error flags |
5 |
INT16 |
02FD17xxxx |
Error flags prior to transmission |
The Scheduled Daily Extended message format is developed to comply with customer with high data privacy demands. Apart from several other message formats, current values are not sent. Instead, the meter log is utilized to get values from the last day or month. This e.g. means that the same daily value will be repeated throughout the day if sent multiple times (which in turn will increase the probability of receiving the message). Due to size limitations, this message format is divided into two telegrams.
Note
Values from daily log are taken from the value read out at midnight and then stored in RAM in the module to be used when sent. Before midnight values are stored (after boot-up) no values are sent on these data points.
Note
Primary Energy refers to Heat energy when module is installed in a Heat or Combined (Heat+Cooling) meter. Primary Energy is Cooling in a Cooling meter.
Secondary Energy is Cooling energy in a Combined meter. In pure Heat and Cooling meters it is the contents of the Tariff 1 register.
Table 225. Telegram 1 - Scheduled Daily Extended [0x57]
|
Field |
Size (bytes) |
Data type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
57 |
Always 0x57 |
|
Meter ID |
6 |
BCD8 |
0C7840459271 (Fabrication no 71924540) |
Meter serial number |
|
Date part of reporting date (daily log) |
4 |
INT16 |
Date (M-Bus Type G) Example: 426C1A36 (2024-06-26) |
Date of midnight value for the last midnight. This is the date at 00:00, so typically it is the date of “today” when the data is sent.Storage no 1 used for daily value Note: this date is not compensated to be sent in UTC since it is only a date. It is the date stored in the meter, which may be local time, not UTC. |
|
Primary energy at reporting date (daily log) |
6–7 |
BCD8 |
4C06xxxxxxxx = MWh, 3 decimals |
Storage no 1 is used for daily values |
|
Secondary energy or Tariff 1 at reporting date (daily log) |
7-8 |
BCD8 |
CC100678563412 = 12345678 kWh |
Storage nr 1 is used for daily values. Tariff 1 set for secondary energy. |
|
Volume at reporting date (daily log) |
6 |
BCD8 |
Volume (m³) 4C14xxxxxxxx = m³, 2 decimals 4C15xxxxxxxx = m³, 1 decimal 4C16xxxxxxxx = m³, 0 decimals |
Storage no 1 is used for daily values |
|
Power at reporting date (daily log) |
5 |
BCD6 |
Power (kW) 4B2Bxxxxxx = kW, 3 decimals 4B2Cxxxxxx = kW, 2 decimals 4B2Dxxxxxx = kW, 1 decimal 4B2Exxxxxx = kW, 0 decimals |
Storage no 1 is used for daily values |
|
Flow at reporting date (daily log) |
5 |
BCD6 |
Flow (m³/h) 4B3Bxxxxxx = m³/h, 3 decimals 4B3Cxxxxxx = m³/h, 2 decimals 4B3Dxxxxxx = m³/h, 1 decimal 4B3Exxxxxx = m³/h, 0 decimals |
Storage no 1 is used for daily values |
Table 226. Telegram 2 - Scheduled Daily Extended [0x58]
|
Field |
Size (bytes) |
Data type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
58 |
Always 0x58 |
|
Meter ID |
6 |
BCD8 |
0C7840459271 (Fabrication no 71924540) |
Meter serial number |
|
Date part of reporting date |
4 |
INT16 |
Date (M-Bus Type G) Example: 426C1A36 (2024-06-26) |
Storage no 1 used for daily value Note: this date is not compensated to be sent in UTC since it is only a date. It is the date stored in the meter, which may be local time, not UTC. |
|
Fw temp at reporting date (daily log) |
4 |
BCD4 |
Forward temperature (°C) 4A5Axxxx = °C, 1 decimal 4A5Bxxxx = °C, 0 decimals |
Storage no 1 is used for daily values |
|
Rt temp at reporting date (daily log) |
4 |
BCD4 |
Return temperature (°C) 4A5Exxxx = °C, 1 decimal 4A5Fxxxx = °C, 0 decimals |
Storage no 1 is used for daily values |
|
Date & Time |
6 |
INT32 |
046Dxxxxxxxx |
M-Bus Date and Time Type F |
|
Error flags |
5 |
INT16 |
02FD17xxxx |
Error flags prior to transmission |
Table 227. Payload, message format Scheduled - Daily Redundant [0x03]
|
Value |
Bytes |
Type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
0x03 |
Always set to 0x03 |
|
Energy |
6 |
BCD8 |
4C06xxxxxxxx = MWh, 3 decimals = kWh 4C07xxxxxxxx = MWh, 2 decimals 4CFB00xxxxxxxx = MWh, 1 decimal 4CFB01xxxxxxxx = MWh, 0 decimals 4C0Exxxxxxxx = GJ, 3 decimals 4C0Fxxxxxxxx = GJ, 2 decimals 4CFB08xxxxxxxx = GJ, 1 decimal 4CFB09xxxxxxxx = GJ, 0 decimals |
|
|
Meter ID |
6 |
BCD8 |
0C78xxxxxxxx (serial number) or 0C79xxxxxxxx (customer number) |
Serial number or customer number depending on configuration |
|
Date & Time |
6 |
INT32 |
046Dxxxxxxxx |
Date and Time (Type F) |
|
Accumulated energy at 24:00 |
6 |
BCD8 |
4C06xxxxxxxx = MWh, 3 decimals = kWh 4C07xxxxxxxx = MWh, 2 decimals 4CFB00xxxxxxxx = MWh, 1 decimal 4CFB01xxxxxxxx = MWh, 0 decimals 4C0Exxxxxxxx = GJ, 3 decimals 4C0Fxxxxxxxx = GJ, 2 decimals 4CFB08xxxxxxxx = GJ, 1 decimal 4CFB09xxxxxxxx = GJ, 0 decimals |
|
|
Error flags |
5 |
INT16 |
02FD17xxxx |
Error flags prior to transmission |
Message format Scheduled Daily Redundant Tariff is divided in two telegrams due two size restrictions. The telegrams are identified by Message IDs 0x47 and 0x48, and is encoded as M-Bus.
Table 228. Payload, message format Scheduled - Daily Redundant Tariff Telegram 1 [0x47]
|
Value |
Bytes |
Type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
0x47 |
Always set to 0x47 |
|
Energy at 24:00 |
6-7 |
BCD8 |
4C06xxxxxxxx = MWh, 3 decimals = kWh 4C07xxxxxxxx = MWh, 2 decimals 4CFB00xxxxxxxx = MWh, 1 decimal 4CFB01xxxxxxxx = MWh, 0 decimals 4C0Exxxxxxxx = GJ, 3 decimals 4C0Fxxxxxxxx = GJ, 2 decimals 4CFB08xxxxxxxx = GJ, 1 decimal 4CFB09xxxxxxxx = GJ, 0 decimals |
Energy at midnight Storage nr 1 used |
|
Tariff 1 Energyat 24:00 |
7-8 |
BCD8 |
CC1007xxxxxxxx (Storage No 1, Tariff 1) |
Fetched energy by module at 24:00. Coded with Storage 1 and tariff 1 in DIFE. |
|
Tariff 2 Energy at 24:00 |
7-8 |
BCD8 |
CC2007xxxxxxxx (Storage No 1, Tariff 2) |
Fetched energy by module at 24:00. Coded with Storage 1 and tariff 2 in DIFE. |
|
Meter ID |
6 |
BCD8 |
0C78xxxxxxxx (serial number) or 0C79xxxxxxxx (customer number) |
Serial number or customer number depending on configuration |
|
Date & Time |
6 |
INT32 |
046Dxxxxxxxx |
Date and Time (Type F) |
|
Error flags |
5 |
INT16 |
02FD17xxxx |
Error flags prior to transmission |
Table 229. Scheduled Daily Redundant Tariff Telegram 2 [0x48]
|
Value |
Bytes |
Type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
0x48 |
Always set to 0x48 |
|
Tariff 1 Energy |
7-8 |
BCD8 |
8C10xxxxxxxx Tariff 1 set in DIFE |
Instantaneous readout |
|
Tariff 2 Energy |
7-8 |
BCD8 |
8C20xxxxxxxx Tariff 2 set in DIFE |
Instantaneous readout |
|
Flow |
5 |
BCD6 |
B3Bxxxxxx = m3/h, 3 decimals 0B3Cxxxxxx = m3/h, 2 decimals 0B3Dxxxxxx = m3/h, 1 decimal 0B3Exxxxxx = m3/h, 0 decimals |
|
|
Fwd temp |
4 |
BCD4 |
0A5Axxxx = °C, 1 decimal 0A5Bxxxx = °C, 0 decimals |
|
|
Rtn temp |
4 |
BCD4 |
0A5Exxxx = °C, 1 decimal 0A5Fxxxx = °C, 0 decimals |
|
|
Meter ID |
6 |
BCD8 |
0C78xxxxxxxx (serial number) or 0C79xxxxxxxx (customer number) |
Serial number or customer number depending on configuration |
|
Date & Time |
6 |
INT32 |
046Dxxxxxxxx |
Date and Time (Type F) |
Table 230. Payload, message format Scheduled Extended [0x04]
|
Value |
Bytes |
Type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
0x04 |
Always set to 0x04 |
|
Energy |
6-7 |
BCD8 |
0C06xxxxxxx = MWh, 3 decimals = kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals |
Heat energy prior to transmission |
|
Volume |
6 |
BCD8 |
0C14xxxxxxxx = m3, 2 decimals 0C15xxxxxxxx = m3, 1 decimal 0C16xxxxxxxx = m3, 0 decimals |
|
|
Power |
5 |
BCD6 |
0B2Bxxxxxx = kW, 3 decimals 0B2Cxxxxxx = kW, 2 decimals 0B2Dxxxxxx = kW, 1 decimal 0B2Exxxxxx = kW, 0 decimals |
|
|
Flow |
5 |
BCD6 |
B3Bxxxxxx = m3/h, 3 decimals 0B3Cxxxxxx = m3/h, 2 decimals 0B3Dxxxxxx = m3/h, 1 decimal 0B3Exxxxxx = m3/h, 0 decimals |
|
|
Fwd temp |
4 |
BCD4 |
0A5Axxxx = °C, 1 decimal 0A5Bxxxx = °C, 0 decimals |
|
|
Rtn temp |
4 |
BCD4 |
0A5Exxxx = °C, 1 decimal 0A5Fxxxx = °C, 0 decimals |
|
|
Meter ID |
6 |
BCD8 |
0C78xxxxxxxx (serial number) or 0C79xxxxxxxx (customer number) |
Serial number or customer number depending on configuration |
|
Date & time |
6 |
INT32 |
046Dxxxxxxxx |
Date and Time (Type F) |
|
Error flags |
5 |
INT16 |
02FD17xxxx |
Error flags prior to transmission |
The data message of message format Scheduled mode-extended + contains three tariffs and all the meter data included in the Standard telegram. In addition to these, a timestamp from the meter (meter date/time) is included in each telegram. It also is divided into two telegrams for keeping each telegram below 45 bytes.
Table 231. Payload, message format Scheduled Extended+ Telegram 1 [0x3F]
|
Value |
Bytes |
Type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
0x3F |
Always set to 0x3F |
|
Energy |
6-7 |
BCD8 |
0C06xxxxxxxx = MWh, 3 decimals = kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals |
Heat energy prior to transmission |
|
Tariff 1 |
7-8 |
BCD8 |
0C06xxxxxxxx = MWh, 3 decimals = kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals |
|
|
Tariff 2 |
7-8 |
BCD8 |
0C06xxxxxxxx = MWh, 3 decimals = kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals |
|
|
Tariff 3 |
8 |
BCD8 |
0C06xxxxxxxx = MWh, 3 decimals = kWh 0C07xxxxxxxx = MWh, 2 decimals 0CFB00xxxxxxxx = MWh, 1 decimal 0CFB01xxxxxxxx = MWh, 0 decimals 0C0Exxxxxxxx = GJ, 3 decimals 0C0Fxxxxxxxx = GJ, 2 decimals 0CFB08xxxxxxxx = GJ, 1 decimal 0CFB09xxxxxxxx = GJ, 0 decimals |
|
|
Meter ID |
6 |
BCD8 |
0C78xxxxxxxx (serial number) or 0C79xxxxxxxx (customer number) |
Serial number or customer number depending on configuration |
|
Date & time |
6 |
INT32 |
046Dxxxxxxxx |
Date and Time (Type F) |
Table 232. Scheduled Extended+ Telegram 2 [0x40]
|
Value |
Bytes |
Type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
0x40 |
Always set to 0x40 |
|
Volume |
6 |
BCD8 |
0C14xxxxxxxx = m3, 2 decimals 0C15xxxxxxxx = m3, 1 decimal 0C16xxxxxxxx = m3, 0 decimals |
|
|
Power |
5 |
BCD6 |
0B2Bxxxxxx = kW, 3 decimals 0B2Cxxxxxx = kW, 2 decimals 0B2Dxxxxxx = kW, 1 decimal 0B2Exxxxxx = kW, 0 decimals |
|
|
Flow |
5 |
BCD6 |
B3Bxxxxxx = m3/h, 3 decimals 0B3Cxxxxxx = m3/h, 2 decimals 0B3Dxxxxxx = m3/h, 1 decimal 0B3Exxxxxx = m3/h, 0 decimals |
|
|
Fwd temp |
4 |
BCD4 |
0A5Axxxx = °C, 1 decimal 0A5Bxxxx = °C, 0 decimals |
|
|
Rtn temp |
4 |
BCD4 |
0A5Exxxx = °C, 1 decimal 0A5Fxxxx = °C, 0 decimals |
|
|
Meter ID |
6 |
BCD8 |
0C78xxxxxxxx (serial number) or 0C79xxxxxxxx (customer number) |
Serial number or customer number depending on configuration |
|
Date & time |
6 |
INT32 |
046Dxxxxxxxx |
Date and Time (Type F) |
|
Error flags |
5 |
INT16 |
02FD17xxxx |
Error flags prior to transmission |
Table 233. Payload, message format Scheduled Monthly [0x49]
|
Value |
Bytes |
Type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
0x49 |
Always set to 0x49 |
|
Energy at due date |
7-8 |
BCD8 |
8C0106xxxxxxxx = MWh, 3 decimals = kWh |
Energy at end of previous month |
|
Meter ID |
6 |
BCD8 |
0C78xxxxxxxx (serial number) or 0C79xxxxxxxx (customer number) |
Serial number or customer number depending on configuration |
|
Date & Time |
6 |
INT32 |
046Dxxxxxxxx |
Date and Time (Type F) |
|
Error flags |
5 |
INT16 |
02FD17xxxx |
Error flags prior to transmission |
The Scheduled Monthly Extended message format is developed to comply with customer with high data privacy demands. Apart from several other message formats, current values are not sent. Instead, the meter log is utilized to get values from the last day or month. This e.g. means that the same monthly value will be repeated throughout a month. Due to size limitations, this message format is divided into two telegrams.
Note
Monthly values are taken from the meter’s logger memory. If they are not present, the corresponding data points are marked as “value during error state”.
Values from daily log are taken from the value read out at midnight and then stored in RAM in the module to be used when sent. Before midnight values are stored (like after boot-up) no values are sent on these data points.
Note
Primary Energy refers to Heat energy when module is installed in a Heat or Combined (Heat+Cooling) meter. Primary Energy is Cooling in a Cooling meter.
Secondary Energy is Cooling energy in a Combined meter. In pure Heat and Cooling meters it is the contents of the Tariff 1 register.
Table 234. Telegram 1 - Payload message format Scheduled Monthly Extended [0x59]
|
Field |
Size (bytes) |
Data type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
59 |
Always 0x59 |
|
Meter ID |
6 |
BCD8 |
0C7840459271 (Fabrication nr 71924540) |
Meter serial number |
|
Date part of due date |
5 |
INT32 |
Date (M-Bus Type G), e.g. 82016C1A36 → 2024-06-26 |
Storage no 2 for monthly value. Note: This date is not compensated to be sent in UTC since it is only a date. It is the date stored in the meter, which may be local time, not UTC. |
|
Primary energy at due date |
7–8 |
BCD8 |
8C0106xxxxxxxx = MWh, 3 decimals = kWh |
Energy at end of previous month. Storage no 2 is used for monthly value. |
|
Secondary energy or Tariff 1 at due date |
7-8 |
BCD8 |
8C110678563412 = 12345678 kWh |
Secondary energy at end of previous month or Tariff 1 energy. Storage nr 2 for monthly value |
|
Volume at due date |
7 |
BCD8 |
8C0114xxxxxxxx = m3, 2 decimals |
Storage no 2 for monthly value. |
|
Power at due date |
6 |
BCD6 |
8B012Bxxxxxx = kW, 3 decimals |
Storage no 2 for monthly value. |
Table 235. Telegram 2 - Payload message format Scheduled Monthly Extended [0x5A]
|
Field |
Size (bytes) |
Data type |
Example |
Comment |
|---|---|---|---|---|
|
Message ID |
1 |
N/A |
5A |
Always 0x5A |
|
Meter ID |
6 |
BCD8 |
0C7840459271 (Fabrication no 71924540) |
Meter serial number |
|
Date part of due date |
4 |
INT16 |
Date (M-Bus Type G), e.g. 426C1A36 → 2024-06-26 |
Date of midnight value for the last midnight. This is the date at 00:00, so typically it is the date of “today” when the data is sent. Storage no 1 for daily value. Note: This date is not compensated to be sent in UTC since it is only a date. It is the date stored in the meter, which may be local time, not UTC. |
|
Flow at due date (yesterday) |
5 |
BCD6 |
4B3Bxxxxxx |
Flow from previous day, stored in module RAM at midnight (local time). Storage no 1 for daily values. |
|
Fw temp at due date (yesterday) |
4 |
BCD4 |
4A5Axxxx = °C, 1 decimal; 4A5Bxxxx = °C, 0 decimals |
Forward temperature from previous day, stored in module RAM at midnight (local time). Storage no 1 for daily values. |
|
Rt temp at due date (yesterday) |
4 |
BCD4 |
4A5Exxxx = °C, 1 decimal; 4A5Fxxxx = °C, 0 decimals |
Return temperature from previous day, stored in module RAM at midnight (local time). Storage no 1 for daily values. |
|
Max. flow rate in the last completed month |
6 |
BCD6 |
DB013Bxxxxxx |
Maximum flow last month. Storage no 3 is used for max value last month. DIF function field set to |
|
Date of max flow |
4 |
INT16 |
Date (M-Bus Type G), e.g. C2016C1A36 → 2024-06-26 |
Storage no 3 is used for max value last month. Note: this date is not compensated to be sent in UTC since it is only a date. It is the date stored in the meter, which may be local time, not UTC. |
|
Date & Time |
6 |
INT32 |
046D002B2735 → 2025-05-07 11:00:00 |
Date and Time (M-Bus Type F) |
|
Error flags |
5 |
INT16 |
02FD17xxxx |
Error flags prior to transmission |
Comments (0 comments)