Skip to content

Protocol

Douglas Hall edited this page May 22, 2018 · 5 revisions

Standard Consumption Message (SCM)

A 12 byte message containing total consumption information for a single meter.

Field Length (bits) Description
Frame Sync 21 0x1F2A60
Endpoint ID MSB 2 Two most significant bits of the ID.
Reserved 1
Physical Tamper Flags 2
Endpoint 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.
Endpoint ID LSB 24 24 least significant bits of the ID.
Checksum 16 A BCH code with generator polynomial: BCH Polynomial

Standard Consumption Message Plus (SCM+)

A 16 byte message containing total consumption information for a single meter.

Field Length Value Description
Frame Sync 2 0x16A3
ProtocolID 1 0x1E
Endpoint Type 1 Least significant nibble is equivalent to SCM's endpoint type field.
Endpoint ID 4
Consumption 4 Total power consumed.
Tamper 2
Packet Checksum 2 CRC-16-CCITT of packet starting at Protocol ID.

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
Endpoint Type 1 Least significant nibble is equivalent to SCM's endpoint type field.
Endpoint ID 4
Consumption Interval Count 1 Interval counter indicates when a received message is reporting a different interval from the last.
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 unsigned 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.

Interval Data Message (IDM) for Net Meters

A 92 byte message containing differential consumption intervals as well as total consumed and generated power.

Field Length Value Description
Preamble 2 0x5555
Sync Word 2 0x16A3
Protocol ID 1 0x1C
Packet Length 1 0x5C
Hamming Code 1 0xC6 Hamming code of first byte.
Application Version 1
Endpoint Type 1 Least significant nibble is equivalent to SCM's commodity type field.
Endpoint ID 4
Consumption Interval Count 1 Interval counter indicates when a received message is reporting a different interval from the last.
Programming State 1
Unknown 13
Last Generation Count 3 Total power generated.
Unknown 3
Last Consumption Count 4 Total power consumed.
Differential Consumption Intervals 48 27 intervals of 14-bit unsigned 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 total consumption and backflow/leak information for a single meter.

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.
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.