Finding out unknown Modbus mapping?

For some time know I have wanted to interact with a Modbus enabled controller, but the exact map of what data is stored in what coils and registers is not published.

I have no experience with the modbus protocol and am trying to figure out how to start.

I know the parameters the controller can report/accept but have no idea on any addressing info.

I also am assuming that all the "text" status messages are saved in Hexadecimal, So "Over Voltage" will be saved as "4f 76 65 72 20 56 6f 6c 74 61 67 65"?

I have a list of all the status messages and can match them up if I can get a list of coils and registers.

The device in question is Generac Nexus/Evolution controllers.

02660: For some time know I have wanted to interact with a Modbus enabled controller, but the exact map of what data is stored in what coils and registers is not published.

I have no experience with the modbus protocol and am trying to figure out how to start.

I know the parameters the controller can report/accept but have no idea on any addressing info.

I also am assuming that all the "text" status messages are saved in Hexadecimal, So "Over Voltage" will be saved as "4f 76 65 72 20 56 6f 6c 74 61 67 65"?

I have a list of all the status messages and can match them up if I can get a list of coils and registers.

The device in question is Generac Nexus/Evolution controllers.

Simply Modbus .

mrsummitville: Simply Modbus .

Yes, but how do I find out what data is stored in what place?

This project looks like what you are interested in. It is a python program that monitors Evolution and Nexus controllers over the serial modbus connection.

https://github.com/jgyates/genmon