device library

Badger Meter ModMAG M2000 mag flow meter

Register map(s) for this device, with a note of how far each has been checked. Addresses are 0-based, as on the wire. Scale and byte order are confirmed only at the hardware-verified rung.

coherence-checked

Round-trips through a real Modbus stack with no overlapping addresses and a word-order-sensitive codec — the map is internally coherent and wire-decodable. Does NOT prove byte-order or scaling match a real device: the emulator is seeded from the map's own types, so a uniformly wrong byte-order still round-trips. Only hardware-verified confirms byte-order/scale on the wire.

pointaddress (0-based)typescaleunit
Product Code0U161
Product Name1U161
Firmware Name9U161
Application Version25U161
Compile Date35U161MM:DD:YYYY
Compile Time51U161HH:MM:SS
PCB Serial Number67U161
OTP Boot Checksum72U161
Flash OS Checksum75U161
Boot Version78U161
OS Version83U161
Daughterboard Product Type87U161
Daughterboard Major Version88U161
Daughterboard Minor Version89U161
Power On Splash Line 190U161
Detector Diameter111U161
Detector Diameter Other112U161mm
Detector Factor113F32BE1
[FACTORY] Detector Factor115F32BE1
Detector Offset117F32BE1m/s
[FACTORY] Detector Offset119F32BE1
Amplifier Factor121F32BE1
[FACTORY] Amplifier Factor123F32BE1
Detector Current125F32BE1mA
[FACTORY] Detector Current127F32BE1mA
Power Line Frequency129U161Hz
Excitation Frequency130U161Hz
Flow Unit131U161
Volume Unit132U161
Unit Multiplier133U161
Full Scale Velocity134F32BE1m/s
[FACTORY] : Analog Output Calibration Point A136F32BE1A
Fixed Current Mode138F32BE1
[FACTORY] : Analog Output Calibration Point B140F32BE1A
Low Flow Cutoff142F32BE1%
Full Scale Flow144F32BE1User Units
Flow Direction146U161
Damping Factor147U161s
Digital Input: Input Operation148U161
Analog Output Range149U161
Analog Output Offset150F32BE1
Output #1: Pulses Per Unit152F32BE1m3
Output #1: Pulses Per Unit156F32BE1user units
Output #1: Pulse Width160U161ms
Output #1: Flow Alarm Minimum161U161%
Output #1: Flow Alarm Maximum162U161%
Output #1: Output Mode163U161
Output #1: Output Operation164U161
Output #2: Pulses Per Unit165F32BE1m3
Output #2: Pulses Per Unit169F32BE1user units
Output #2: Pulse Width173U161ms
Output #2: Flow Alarm Minimum174U161%
Output #2: Flow Alarm Maximum175U161%
Output #2: Output Mode176U161
Output #2: Output Operation177U161
Output #3: Full Scale Frequency178U161Hz
Output #3: Flow Alarm Minimum179U161%
Output #3: Flow Alarm Maximum180U161%
Output #3: Output Mode181U161
Output #3: Hardware Select182U161
Output #3: Output Operation183U161
Output #4: Flow Alarm Minimum184U161%
Output #4: Flow Alarm Maximum185U161%
Output #4: Output Mode186U161
Output #4: Hardware Select187U161
Output #4: Output Operation188U161
Port A: Packets Processed189U161
Port A: Broadcast Packets190U161
Port A: CRC Errors191U161
Port A: Packets Received192U161
Port A: Packets Sent193U161
Port A: Parity Errors194U161
Port A: Framing Errors195U161
Port A: Overrun Errors196U161
Port A: Break Detects197U161
Port B: Packets Processed198U161
Port B: Broadcast Packets199U161
Port B: CRC Errors200U161
Port B: Packets Received201U161
Port B: Packets Sent202U161
Port B: Parity Errors203U161
Port B: Framing Errors204U161
Port B: Overrun Errors205U161
Port B: Break Detects206U161
T1 / T+207F32BE1m3
T1 / T+211F32BE1User Units
T2 / T-215F32BE1m3
T2 / T–219F32BE1User Units
T3 / TN223F32BE1m3
T3 / TN227F32BE1User Units
T1 / T+ Rollover Counter231U161
T2 / T– Rollover Counter232U161
Flow Velocity233F32BE1m/s
Preset Batch Totalizer235F32BE1m3
Flow Rate237F32BE1m3/s
Preset Batch Totalizer239F32BE1User Units
Flow Rate241F32BE1User Units
Relative Flow Rate243F32BE1%
Power Up Counter245U161
Detector Error Counter246U161
Empty Pipe Counter247U161
Full Scale Counter248U161
Totalizer Overflow Counter249U161
Reserved250U161
Reserved251U161
Pulse Sync Counter252U161
ADC Interrupt Counter253U161
ADC Range Counter254U161
WDT Resets Counter255U161
WDT Location256U161
System Error #257U161
Token Error Counter258U161
Reserved259U161
Reserved260U161
Reserved261U161
Meter Status262U161
Power Loss Totalizer263U32BE1seconds
Action Request Overflows265U161
Measurement Overflows266U161
Scale Factor267F32BE1%
Zero Scale Flow269F32BE1User Units
Display Backlight Mode271U161
Preset Batch Amount272F32BE1m3
Menu Reset Allowed274U161
Menu Language Setting276U161
Analog Input Measure Value277F32BE1
File System – Number of Records to Read279U161
Port B Extended Address280U161
Analog Input Measure Counter281U161
Empty Pipe Actual Resistance282F32BE1Ohms
Security Status284U161
Configuration Status285U161
Empty Pipe Calibration286F32BE1Volts
Empty Pipe Measure Value288F32BE1Volts
Full Pipe Calibration290F32BE1Volts
Empty Pipe Mode292U161
Command Action Request293U161
Analog Output Calibration Point A294F32BE1A
Analog Output Calibration Point B296F32BE1A
Flow Simulation298I161
Random Value299U32BE1
Flow Direction301U161
Alarm Mode302U161
Remote Login303U32BE1
Analog Output Slope305F32BE1
Analog Customer Offset 4 mA307F32BE1A
Analog Customer Offset 20 mA309F32BE1A
T1 / T+ Display String311U161
T2 / T– Display String319U161
T3 / TN Display String327U161
Analog Output Current334F32BE1A
Analog Output Current String336U161mA
Remote Resets340U161
Digital Input: Status341U161
Power On Splash Line 2342U161
Meter Tag Name353U161

link settings as documented (unverified): RTU; FC 03,04,06,16; Port A (pins 5,6,7) supports MODBUS RTU using RS232. RS485 is supported as an accessory daughterboard (p/n 67079-003).

bench facts as documented (unverified)
terminalsPort A (pins 5,6,7) for RS232
wiring notesRS485 supported via accessory daughterboard p/n 67079-003
protocol notesWrite function codes are not accepted while menu navigation is in process. Writes update volatile memory; must write 0x01 to Command Action Request Register (0x0125) to save to non-volatile memory.
model register0x0001
serial register0x0043
firmware register0x0009
identification notesProduct Code at 0x0000, Product Name at 0x0001, Firmware Name at 0x0009, PCB Serial Number at 0x0043
doc revisionIAB-189-01-EN (August 2012)
field reports — community-sourced, unverified (checked 2026-06-11)
  • confirmed: Port A (pins 5,6,7) supports MODBUS RTU using RS232. RS485 is supported as an accessory daughterboard (p/n 67079-003). — confirmed by Badger Meter M2000 Modbus Memory Map Application Brief
  • confirmed: Write function codes are not accepted while menu navigation is in process. Writes update volatile memory; must write 0x01 to Command Action Request Register (0x0125) to save to non-volatile memory. — confirmed by Badger Meter M2000 Modbus Memory Map Application Brief
  • confirmed: Product Code at 0x0000, Product Name at 0x0001, Firmware Name at 0x0009, PCB Serial Number at 0x0043 — confirmed by Badger Meter M2000 Modbus Memory Map Application Brief

The trust ladder

Each rung states what it proved and what it did not. Gray until proven; green is earned by hardware only.

Device not here? Upload its manual and get a checked map back. It's free.

Want it confirmed against your own device? Order hardware verification. If it doesn't check out, you don't pay.

Building on a lot of devices? License the library — machine-readable maps, the firmware matrix, and API access.