Skip to content

Protocol

bemasher edited this page May 20, 2018 · 5 revisions

Standard Consumption Message (SCM)

A 12 byte message containing only an ID, commodity type, tamper flags and the current consumption value.

Field Length (bits) Description
Preamble 21 0x1F2A60
Meter ID MSB 2 Two most significant bits of the ID.
Reserved 1
Physical Tamper Flags 2
Commodity Type 4 Indicates the commodity type of the meter. See list of meters: meters.md
Encoder Tamper Flags 2
Consumption 24 The current consumption value.
Meter ID LSB 24 24 least significant bits of the ID.
Checksum 16 A BCH code with generator polynomial: BCH Polynomial

Interval Data Message (IDM)

A 92 byte message containing differential consumption intervals.

Field Length (bytes) Value Description
Preamble 2 0x5555
Sync Word 2 0x16A3
Packet Type 1 0x1C
Packet Length 1 0x5C
Hamming Code 1 0xC6 Hamming code of first byte.
Application Version 1
Commodity Type 1 Least significant nibble is equivalent to SCM's commodity type field.
Meter ID 4 Equivalent to SCM's Meter ID field.
Consumption Interval Count 1
Module Programming State 1
Tamper Count 6
Async Count 2
Power Outage Flags 6
Last Consumption 4 Equivalent to SCM's consumption field.
Differential Consumption 53 47 intervals of 9-bit integers.
Transmit Time Offset 2 1/16ths of a second since the first transmission for this interval.
Meter ID Checksum 2 CRC-16-CCITT of Meter ID.
Packet Checksum 2 CRC-16-CCITT of packet starting at Packet Type.

R900 Consumption Message

A 116 bit message containing ID, consumption, backflow and leak details.

Field Length (Bits) Value Description
Preamble 32 0x0000E564
ID 32
Unkn1 8
NoUse 6 Day bins of no use. See issue #29 for more details.
BackFlow 6 Backflow in past 35 days, high/low.
Consumption 24
Unkn3 2
Leak 4 Day bins of leak. See issue #29 for more details.
LeakNow 2 Leak in past 24 hours, high/low.
Clone this wiki locally