Configuration options
Table 217. All configuration options
Field name (Abbr.) |
Description |
Default value |
Locked device & correct PAK or open device |
Locked device & no PAK |
Downlink |
---|---|---|---|---|---|
Meter ID |
Meter identification number of the meter. Not configurable. |
N/A |
Readable |
Readable |
N/A |
Power mode |
Used to activate/deactivate the module. 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. |
0x0F (standard) |
Readable / Writeable |
Readable |
Writeable |
EcoMode |
When activated, 11 years of battery-life is assure by adapting the transmit interval of the module to current signal conditions. |
On |
Readable / Writeable |
Readable |
Writeable |
Transmit interval |
Sets the number of minutes between each transmission from the module. |
60 min |
Readable / Writeable |
Readable |
Writeable |
Date & Time |
Date and time set for the meter. |
N/A |
Readable |
Readable |
Writeable |
Set absolute time |
Sets the time of the meter. |
N/A |
Writeable |
N/A |
N/A |
Set time relative |
Adjusts the time of the meter relative to current time. |
N/A |
N/A |
N/A |
Writeable |
Set UTC offset |
Sets the UTC offset of the meter. |
N/A |
Readable / Writeable |
Readable |
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 |
Displays whether the module has joined the LoRaWAN® network or not. |
N/A |
Readable |
Readable |
N/A |
Join EUI |
Application ID that determines where data ends up. |
0x 94 19 3A 03 09 00 00 01 (internal antenna version) 0x 94 19 3A 03 0A 00 00 01 (external antenna version) |
Readable / Writeable |
Readable |
N/A |
Device address |
32-bit address used by the module to identify itself on the LoRaWAN® network. |
0x 00 00 00 000x 00 00 00 00 |
Readable / Writeable |
N/A |
N/A |
Current data rate |
The current data rate used for the module. |
N/A |
Readable |
Readable |
N/A |
Table 218. Downlink commands
Field name |
TLV |
Number of bytes in configuration |
Configuration |
Example |
---|---|---|---|---|
Configuration lock |
0x05 |
0x01 |
0x00 = Locked 0x01 = Open |
0x00050101 (Enables configuration lock) |
Transmit interval |
0x06 |
0x02 |
0xNumber of minutes between transmission (lsByte -> msByte) |
0x0006021E00 (Sets the Tx interval to 30 minutes) |
Message format |
0x07 |
0x01 |
0x0F = Message format Standard 0x10 = Message format Compact 0x11 = Message format JSON 0x12 = Message format Scheduled-daily redundant 0x13 = Message format Scheduled - Extended 0x14 = Message format Combined heat/cooling |
0x00070110 (Sets the message format to compact) |
EcoMode |
0x0F |
0x01 |
0x00 = Disable EcoMode 0x01 = Enable EcoMode |
0x000F0100 (Disables EcoMode) |
Set Time Relative |
0x13 |
0x04 |
0xNumber of seconds* (lsByte -> msByte) *Negative numbers supported. |
0x0013043C000000 (Adds 60 seconds to the current time) |
UTC offset |
0x17 |
0x02 |
0xNumber of minutes* (lsByte -> msByte) *Negative numbers supported. |
0x17023C00 (Sets the UTC offset to +60 minutes) 0x17023C80 (Sets the UTC offset to -60 minutes) |
Reboot |
0x22 |
0x02 |
0x759E is used to reboot device (note endianness, LSB first) |
0x0022029E75 (Reboots the device) |
CMi4130 has several message formats.
Table 219. CMi4130 message formats
Field |
Size |
Description |
---|---|---|
Message format identifier |
1 byte |
0x0F Standard 0x10 Compact 0x11 JSON 0x12 Scheduled - Daily redundant 0x13 Scheduled - Extended 0x14 Combined heat/cooling |
Table 220. Payload, message format Standard [0x0F]
DIB |
Field |
Size |
Data type |
Description |
---|---|---|---|---|
0 |
Message format identifier |
1 byte |
- |
0x0F (Standard) |
1 |
Energy |
6 bytes |
INT32 |
Energy consumption (Wh, J) 0400xxxxxxxx = xxxxxxxx,xxx Wh 0401xxxxxxxx = xxxxxxxx,xx Wh 0402xxxxxxxx = xxxxxxxx,x Wh 0403xxxxxxxx = xxxxxxxx Wh 0404xxxxxxxx = xxxxxxxx * 10 Wh 0405xxxxxxxx = xxxxxxxx * 100 Wh 0406xxxxxxxx = xxxxxxxx kWh 040Exxxxxxxx = xxxxxxxx MJ 040Fxxxxxxxx = xxxxxxxx * 10 MJ |
2 |
Volume |
6 bytes |
INT32 |
Volume (m3) 0411xxxxxxxx = xxxxxxxx * 0.00001 m³ 0412xxxxxxxx = xxxxxxxx * 0.0001 m³ 0413xxxxxxxx = xxxxxxxx * 0.001 m3 0414xxxxxxxx = xxxxxxxx * 0.01 m3 0415xxxxxxxx = xxxxxxxx * 0.1 m3 0416xxxxxxxx = xxxxxxxx m3 0417xxxxxxxx = xxxxxxxx * 10 m3 |
3 |
Power |
4 bytes |
INT16 |
Power (W) 022Axxxx = xxxx,x W 022Bxxxx = xxxx W 022Cxxxx = xxxx * 10 W 022Dxxxx = xxxx * 100 W 022Exxxx = xxxx kW 022Fxxxx = xxxx * 10 kW |
4 |
Flow |
4 bytes |
INT16 |
Flow (m3/h) 023Bxxxx = xxxx * 0.001 m3/h 023Cxxxx = xxxx * 0.01 m3/h 023Dxxxx = xxxx * 0.1 m3/h 023Exxxx = xxxx m3/h 023Fxxxx = xxxx * 10 m3/h |
5 |
Fw temp |
4 bytes |
INT16 |
Forward temperature (°C) 0258xxxx = xxxx * 0.001 °C 0259xxxx = xxxx * 0.01 °C 025Axxxx = xxxx * 0.1 °C 025Bxxxx = xxxx °C |
6 |
Rt temp |
4 bytes |
INT16 |
Return temperature (°C) 025Cxxxx = xxxx * 0.001 °C 025Dxxxx = xxxx * 0.01 °C 025Exxxx = xxxx * 0.1 °C 025Fxxxx = xxxx °C |
7 |
Meter ID |
6 bytes |
According to M-Bus EN13757-3 identification field |
Meter ID 0C78xxxxxxxx |
8 |
Alarm codes |
5 bytes |
INT16 |
Error and warning flags 02FD17xxxx For further information about Alarm codes please refer to the meter’s manual |
Table 221. Payload, message format Compact [0x10]
DIB |
Field |
Size |
Data type |
Description |
---|---|---|---|---|
0 |
Message format identifier |
1 byte |
- |
0x10 (= Compact) |
1 |
Energy |
6 bytes |
INT32 |
Energy consumption (Wh, J) 0400xxxxxxxx = xxxxxxxx,xxx Wh 0401xxxxxxxx = xxxxxxxx,xx Wh 0402xxxxxxxx = xxxxxxxx,x Wh 0403xxxxxxxx = xxxxxxxx Wh 0404xxxxxxxx = xxxxxxxx * 10 Wh 0405xxxxxxxx = xxxxxxxx * 100 Wh 0406xxxxxxxx = xxxxxxxx kWh 0407xxxxxxxx = xxxxxxxx * 10 kWh 040Exxxxxxxx = xxxxxxxx MJ 040Fxxxxxxxx = xxxxxxxx * 10 MJ |
2 |
Meter ID |
6 bytes |
According to M-Bus EN13757-3 identification field |
Meter ID 0C78xxxxxxxx |
3 |
Alarm codes |
5 bytes |
INT16 |
Alarm codes 02FD17xxxx For further information about Alarm codes please refer to the meter’s manual |
For message format JSON, the data is presented in a plain text format.
The following table contains a description of all field included in the telegram.
Table 222. Fields, message format JSON [0x11]
Field |
Description |
---|---|
Message format identifier |
0x11 (Message format JSON) |
Energy |
Energy consumption |
Unit |
Unit of energy consumption (Wh, kWh, MWh, GWh, J, kJ, MJ or GJ) |
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":12345678,"U":"kWh","ID":87654321}
For message scheduled formats, such as Scheduled Daily Redundant Pulse Extended, two types of messages will be transmitted from the module - a clock message and a data message. Scheduled message formats will read the meter on top of the hour, allowing a predictability of the received telegrams. The difference between a clock message and a data message is described in the following table.
Table 223. Clock message and data message
Message |
Time interval |
Description |
---|---|---|
Clock message |
Once per day |
The clock message presents the current time of the meter. It can be used to verify that the clock is correct and has not drifted more than accepted. |
Data message |
Determined by Transmit interval parameter |
The actual meter data collected from the meter. |
The following table contains a detailed description of the payload of the clock message.
Table 224. Payload, clock message
Field |
Size |
Data type |
Description |
---|---|---|---|
Message format identifier |
1 byte |
- |
0xFA (=Clock message) |
Data/Time |
6 bytes |
32 bit binary integer M-Bus type F |
046Dxxxxxx = Valid date/time message 346Dxxxxxx = Invalid date/time message |
The clock message will be transmitted once every day and the data message at least (regulated by transmit interval parameter or EcoMode) once every day. The transmit interval can only be set the values listed in Table 225, “Transmit interval options ”.
Although the meter readout will occur on top-of-the-hour, the data message will not necessarily be transmitted at that exact time. The LoRaWAN® transmission will occur after a random delay of 0-15 minutes to decrease the risk of collisions. The readout for the clock message occurs at a random hour (00:00- 23:00) at a random minute in the 35-45 interval and will be transmitted immediately after the readout.
Note
When using scheduled message formats, the transmit interval cannot not be set to higher than 1440 (24 hours).
Table 225. Transmit interval options
Parameter |
Values |
Unit |
---|---|---|
Transmit interval |
60, 120, 180, 240, 360, 480, 720, 1440 |
Minutes |
The data message of Scheduled mode-daily redundant contains an accumulated daily energy field, which is updated at 24:00 each day. In other words, depending on transmit interval settings and data rate, the field will be included in between 1-24 telegrams per day. This will increase the probability of the value being received. For example, if the transmit interval is set to “2”, the accumulated energy read at 24:00 will be transmitted 12 times during the 24 next coming hours (every 2nd hour).
Table 226. : Payload, message format Scheduled – Daily redundant [0x12]
DIB |
Field |
Size |
Data type |
Description |
---|---|---|---|---|
0 |
Message format identifier |
1 byte |
- |
0x12 (Scheduled – daily redundant) |
1 |
Energy |
6 bytes |
INT32 |
Energy consumption (Wh, J) 0400xxxxxxxx = xxxxxxxx,xxx Wh 0401xxxxxxxx = xxxxxxxx,xx Wh 0402xxxxxxxx = xxxxxxxx,x Wh 0403xxxxxxxx = xxxxxxxx Wh 0404xxxxxxxx = xxxxxxxx * 10 Wh 0405xxxxxxxx = xxxxxxxx * 100 Wh 0406xxxxxxxx = xxxxxxxx kWh 0407xxxxxxxx = xxxxxxxx * 10 kWh 040Exxxxxxxx = xxxxxxxx MJ 040Fxxxxxxxx = xxxxxxxx * 10 MJ |
2 |
Volume |
6 bytes |
INT32 |
Volume (m3) 0411xxxxxxxx = xxxxxxxx * 0.00001 m³ 0412xxxxxxxx = xxxxxxxx * 0.0001 m³ 0413xxxxxxxx = xxxxxxxx * 0.001 m3 0414xxxxxxxx = xxxxxxxx * 0.01 m3 0415xxxxxxxx = xxxxxxxx * 0.1 m3 0416xxxxxxxx = xxxxxxxx m3 0417xxxxxxxx = xxxxxxxx * 10 m3 |
3 |
Meter ID |
6 bytes |
According to M-Bus EN13757-3 identification field |
Meter ID 0C78xxxxxxxx |
4 |
Alarm codes |
5 bytes |
INT16 |
Error and warning flags 02FD17xxxx For further information about Alarm codes please refer to the meter’s manual |
5 |
Meter date/time |
6 bytes |
INT32 |
Meter date and time (YY-MM-DD HH:MM) 046Dxxxxxxxx Bit 31-28 = Year-high* Bit 27-24 = Month Bit 23-21 = Year-low* Bit 20-16 = Day Bit 15 = Summertime flag** Bit 14-13 = Century Bit 12-8 = Hour Bit 7 = Error flag Bit 6 = Reserved for future use*** Bit 5-0 = Minute *The year is read by combining the year-high and year-low field. For example, year-high = 0010 and year-low = 010 => year = 0010010 **0 = standard time, 1= daylight-saving time ***0 = timestamp is valid, 1 = timestamp is not valid |
6 |
Accumulated energy at 24:00 |
6 bytes |
INT32 |
Energy consumption (Wh, J) 0400xxxxxxxx = xxxxxxxx,xxx Wh 0401xxxxxxxx = xxxxxxxx,xx Wh 0402xxxxxxxx = xxxxxxxx,x Wh 0403xxxxxxxx = xxxxxxxx Wh 0404xxxxxxxx = xxxxxxxx * 10 Wh 0405xxxxxxxx = xxxxxxxx * 100 Wh 0406xxxxxxxx = xxxxxxxx kWh 0407xxxxxxxx = xxxxxxxx * 10 kWh 040Exxxxxxxx = xxxxxxxx MJ 040Fxxxxxxxx = xxxxxxxx * 10 MJ Note: Before a midnight reading has been performed the Function field of the DIF is set to “value during error state” to indicate that the value is not valid |
The data message of Scheduled mode-Extended contains all the data fields from message format Standard. In addition to these, it also includes the meter date/time to transmit messages on the full hour. As for all Scheduled message formats, the transmit interval can only be set to the values included in Table 198, “Transmit interval options ”.
Table 227. Payload, message format Scheduled-Extended [0x13]
DIB |
Field |
Size |
Data type |
Description |
---|---|---|---|---|
0 |
Message format |
1 byte |
- |
0x13 (Scheduled – Extended) |
1 |
Energy |
6 bytes |
INT32 |
Energy consumption (Wh, J) 0400xxxxxxxx = xxxxxxxx,xxx Wh 0401xxxxxxxx = xxxxxxxx,xx Wh 0402xxxxxxxx = xxxxxxxx,x Wh 0403xxxxxxxx = xxxxxxxx Wh 0404xxxxxxxx = xxxxxxxx * 10 Wh 0405xxxxxxxx = xxxxxxxx * 100 Wh 0406xxxxxxxx = xxxxxxxx kWh 0407xxxxxxxx = xxxxxxxx * 10 kWh 040Exxxxxxxx = xxxxxxxx MJ 040Fxxxxxxxx = xxxxxxxx * 10 MJ |
2 |
Volume |
6 bytes |
INT32 |
Volume (m3) 0411xxxxxxxx = xxxxxxxx * 0.00001 m³ 0412xxxxxxxx = xxxxxxxx * 0.0001 m³ 0413xxxxxxxx = xxxxxxxx * 0.001 m3 0414xxxxxxxx = xxxxxxxx * 0.01 m3 0415xxxxxxxx = xxxxxxxx * 0.1 m3 0416xxxxxxxx = xxxxxxxx M3 0417xxxxxxxx = xxxxxxxx * 10 m3 |
3 |
Power / Flow / Fw temp / Rt temp |
12 bytes |
INT64 |
Byte 0-2 = DIF/VIF codes, 0x07FFA0 Byte 3 = Scaling of Power/Flow - Bit 6..4 (n), 10n-3 W, n = 0..7 - Bit 2..0 (m), 10m-6 litres/h, m = 0..7 Byte 4-5 = Fw temp (lsByte -> msByte), °C, 2 decimals Byte 6-7 = Rt temp (lsByte -> msByte), °C, 2 decimals Byte 8-9 = Flow (lsByte -> msByte), 10m-3 m3 /h Byte 10-11 = Power (lsByte -> msByte), 10n-3 W |
4 |
Meter ID / Alarm codes |
9 bytes |
INT48 |
Byte 0-2 = DIF/VIF codes, 0x06FF21 Byte 3-4 = Alarm codes (lsByte -> msByte) Byte 5-8 = Meter ID (lsByte -> msByte) |
5 |
Meter date/time |
6 bytes |
INT32 |
Meter date and time (YY-MM-DD HH:MM) 046Dxxxxxxxx Bit 31-28 = Year-high* Bit 27-24 = Month Bit 23-21 = Year-low* Bit 20-16 = Day Bit 15 = Summertime flag** Bit 14-13 = Century Bit 12-8 = Hour Bit 7 = Error flag Bit 6 = Reserved for future use*** Bit 5-0 = Minute *The year is read by combining the year-high and year-low field. For example, year-high = 0010 and year-low = 010 => year = 0010010 **0 = standard time, 1= daylight-saving time ***0 = timestamp is valid, 1 = timestamp is not valid |
Table 228. Payload, message format Combined heat/cooling [0x14]
DIB |
Field |
Size |
Data type |
Description |
---|---|---|---|---|
0 |
Message format |
1 byte |
- |
0x14 (=Combined heat/cooling) |
1 |
Heat energy |
6 bytes |
INT32 |
Energy consumption (Wh, J) 0400xxxxxxxx = xxxxxxxx,xxx Wh 0401xxxxxxxx = xxxxxxxx,xx Wh 0402xxxxxxxx = xxxxxxxx,x Wh 0403xxxxxxxx = xxxxxxxx Wh 0404xxxxxxxx = xxxxxxxx * 10 Wh 0405xxxxxxxx = xxxxxxxx * 100 Wh 0406xxxxxxxx = xxxxxxxx kWh 0407xxxxxxxx = xxxxxxxx * 10 kWh 040Exxxxxxxx = xxxxxxxx MJ 040Fxxxxxxxx = xxxxxxxx * 10 MJ |
2 |
Cooling energy |
8 bytes |
INT32 |
Cooling energy consumption (Wh, J) 0483FF02xxxxxxxx = xxxxxxxx Wh 0484FF02xxxxxxxx = xxxxxxxx * 10 Wh 0485FF02xxxxxxxx = xxxxxxxx * 100 Wh 0486FF02xxxxxxxx = xxxxxxxx kWh 0487FF02xxxxxxxx = xxxxxxxx * 10 kWh 048EFF02xxxxxxxx = xxxxxxxx MJ 048FFF02xxxxxxxx = xxxxxxxx * 10 MJ |
3 |
Volume |
6 bytes |
INT16 |
Volume (m3) 0411xxxxxxxx = xxxxxxxx * 0.00001 m³ 0412xxxxxxxx = xxxxxxxx * 0.0001 m³ 0413xxxxxxxx = xxxxxxxx * 0.001 m3 0414xxxxxxxx = xxxxxxxx * 0.01 m3 0415xxxxxxxx = xxxxxxxx * 0.1 m3 0416xxxxxxxx = xxxxxxxx m3 0417xxxxxxxx = xxxxxxxx * 10 m3 |
4 |
Flow |
4 bytes |
INT16 |
Flow (m3/h) 023Bxxxx = xxxx * 0.001 m3/h 023Cxxxx = xxxx * 0.01 m3/h 023Dxxxx = xxxx * 0.1 m3/h 023Exxxx = xxxx m3/h 023Fxxxx = xxxx * 10 m3/h |
5 |
Fw temp |
4 bytes |
INT16 |
Forward temperature (°C) 0258xxxx = xxxx * 0.001 °C 0259xxxx = xxxx * 0.01 °C 025Axxxx = xxxx * 0.1 °C 025Bxxxx = xxxx °C |
6 |
Rt temp |
4 bytes |
INT16 |
Return temperature (°C) 025Cxxxx = xxxx * 0.001 °C 025Dxxxx = xxxx * 0.01 °C 025Exxxx = xxxx * 0.1 °C 025Fxxxx = xxxx °C |
7 |
Meter ID |
6 bytes |
According to M-Bus EN13757-3 identification field |
Meter ID 0C78xxxxxxxx |
8 |
Alarm codes |
5 bytes |
INT16 |
Error and warning flags 02FD17xxxx For further information about Alarm codes please refer to the meter’s manual |
Comments (0 comments)