Why does the WattNode® Modbus® meter report ErrorStatus code 249 (duplicate slave address) or 242 (message collision) even though I know the devices on my RS-485 bus all have unique addresses?

Note: this issue was largely eliminated in firmware release 16 (November 2010).

This is caused by Modbus master software that doesn’t allow enough time for the WattNode meter to respond to a message, so the Modbus master sends a second command while the WattNode meter is still trying to respond to the first command.

Prior to firmware version 16, this was a concern, because the WattNode meter firmware could take up to 300 milliseconds to respond to Modbus messages. Some Modbus master software would time out faster than 300 milliseconds. If you are using a WattNode Modbus meter purchased before November 2010, we recommend setting the timeout to 500 milliseconds or longer.

Starting with firmware version 16, the WattNode Modbus meter’s firmware was optimized to reduce the response time to 25 milliseconds or less. You should not see this situation unless the Modbus master software has little or no timeout waiting for a response packet.

For maximum data throughput, the Modbus master should optimize its requests by combining the requests to read more than one register into a single, multi-register read command whenever possible instead of issuing a separate command to read one register at a time. The WattNode meter registers are organized into contiguous groups of registers in order to facilitate this. To further optimize throughput, see WattNode Modbus Custom Register Map.

See Also