Register map(s) for this device, each at the trust rung it earned. Addresses are 0-based as on the wire; word order and scaling are only confirmed at the hardware-verified rung.
Read + decoded cleanly over a real network vs an independent third-party Modbus test server (transport and framing; reads are remapped into the server's register window, so the map's own addresses are NOT exercised). Does NOT prove word order/scaling against the actual device.
| point | address (0-based) | type | scale | unit |
|---|---|---|---|---|
| flow_velocity | 30000 | F32BE | 1 | m/s |
| volume_flow | 30002 | F32BE | 1 | m³/s |
| mass_flow | 30004 | F32BE | 1 | kg/s |
| temperature | 30006 | F32BE | 1 | K |
| density | 30008 | F32BE | 1 | kg/m³ |
| concentration_1_value | 30010 | F32BE | 1 | Brix |
| concentration_2_value | 30012 | F32BE | 1 | |
| concentration_1_flow | 30014 | F32BE | 1 | m³/s |
| concentration_2_flow | 30016 | F32BE | 1 | |
| ne_107_status_flow_velocity | 30500 | U16 | 1 | |
| ne_107_status_volume_flow | 30501 | U16 | 1 | |
| ne_107_status_mass_flow | 30502 | U16 | 1 | |
| ne_107_status_temperature | 30503 | U16 | 1 | |
| ne_107_status_density | 30504 | U16 | 1 | |
| ne_107_status_conc_1_value | 30505 | U16 | 1 | |
| ne_107_status_conc_2_value | 30506 | U16 | 1 | |
| ne_107_status_conc_1_flow | 30507 | U16 | 1 | |
| ne_107_status_conc_2_flow | 30508 | U16 | 1 | |
| drive_level | 31000 | F32BE | 1 | % |
| sensor_a_level | 31002 | F32BE | 1 | % |
| sensor_b_level | 31004 | F32BE | 1 | % |
| strain_1 | 31006 | F32BE | 1 | Ohm |
| strain_2 | 31008 | F32BE | 1 | Ohm |
| tube_frequency | 31010 | F32BE | 1 | Hz |
| two_phase_signal | 31012 | F32BE | 1 | |
| se_pcb_temperature | 31014 | F32BE | 1 | K |
| totaliser_1_value | 32100 | F32BE | 1 | m³ |
| totaliser_2_value | 32102 | F32BE | 1 | m³ |
| totaliser_3_value | 32104 | F32BE | 1 | m³ |
| actual_operation_mode | 39000 | U32BE | 1 | |
| device_operation_time | 39002 | F32BE | 1 | s |
| ne_107_status_groups | 39004 | U32BE | 1 | |
| ne_107_device_status | 39100 | U16 | 1 |
⚠ Some registers are protected by a custody transfer lock. — Starkest reads only; we never write a control register.
| terminals | D- (Signal A (D0)), D (Signal B (D1)), C- (Common 0 V), C (Not connected) |
| A/B polarity | D- is Signal A (D0), D is Signal B (D1) |
| termination | 120 Ohm / 560 Ohm (if activated by factory) |
| connector | Terminals C and D |
| isolation | galvanically isolated |
| shield/ground | Screened twisted pair |
| wiring notes | Maximum 32 participants per line without repeater. Maximum distance 1.2 km / 3937 ft. |
| max registers/read | 125 |
| broadcast | supported |
| protocol notes | Writing to holding registers does not take effect immediately. Must perform 'Apply Changes' by writing to coil 1002. |
| identification notes | Device identification via Modbus Function Code 0x2B (Encapsulated Interface Transport) MEI type 0x0E. |
| FC 43 device ID | supported |
| power | V+ and V- terminals |
| doc revision | 05/2013 - 4002525102 - AD Modbus MFC 400 R02 en |
| firmware applicability | Electronic Revision: ER 1.0.3_, Modbus version 2.1.0_ |
Each rung states what it proved and what it did not. Gray until proven; green is earned by hardware only.
Have a device that isn't here? Upload its register map — generation is free, and the connector earns its rung by being proven, not claimed.
Need it proven on your own device? Hardware verification — if it doesn't verify, you don't pay.
Building a platform? License the verified library — machine-readable maps, firmware matrix, API access.