When commissioning a WattNode Modbus meter, a simple test to confirm that your Modbus software is configured correctly is to read the line frequency. We know that the frequency should be very near 50 or 60 Hz, depending on your electric service.

How do I read power line frequency?

The line frequency measurement can be read as either an integer or floating point number (integer is a bit easier because it only requires a single register). When the command is sent, the COM LED should flash green, indicating that a properly formatted packet was received. If yellow or red flashing is seen, refer to the Modbus Communications Diagnostics section in the manual.

  • Integer: Use the integer Freq register 1221. If your software requires a leading ‘3’ or ‘4’ on register numbers use either 31221 or 41221. The integer frequency is in units of 0.1 Hz, so 60 Hz would result in a reading of 600 (possibly 599 or 601).
  • Floating Point: Use the floating point Freq register pair 1033, 1034. If your software requires a leading ‘3’ or ‘4’ on register numbers use either 31033, 31034 or 41033, 41034. The floating point frequency is in units of 1 Hz, so 60 Hz would result in a reading of 60.0 (possibly a bit higher or lower).

What could cause incorrect readings?

Possible causes of incorrect readings are:

  • Reading the wrong registers: Modbus register 1221 is actually requested by sending a binary packet with the number 1220 to the meter. Most Modbus software uses one-based addressing for the GUI (Graphical User Interface), but the actual address sent out in the command message is zero-based.

If your software doesn’t automatically subtract one from the register number that you entered, the 1221 zero-based packet that gets sends out tries to read the one-based address 1222, which is a non-existent WattNode register. The meter responds with a Modbus Exception Error 02 – Illegal Data Address instead of the line frequency. Not all Modbus software will alert you when an exception like this happens.

To test for this situation, try specifying an address of 1220 (zero-based address) instead of 1221 (one-based) address.

  • Reversed register order: The Modbus standard does not specify the order when two 16 bit registers are combined to create a 32 bit floating point number. If the registers are combined in the reverse order, you will get nonsense numbers. Most software tools have an option to swap the register ordering for floating point numbers. (see Invalid or Incorrect Floating Point Values on the Modbus WattNode).
  • Measurement Problems: In rare cases, the meter cannot measure the line frequency correctly, either due to electromagnetic interference or because the meter is malfunctioning. Generally these situations will results in all three phase LEDs lighting yellow or red to indicate an error condition. In these cases, you might read a value of 0 or some nonsense value.