How to Format Correct MODBUS Address


Thread Starter


Temperature controller from delta company included the MODBUS address as follows: 1000H for the process value.

all the communication structure is right and tested before. the one and only problem is on the format of the address. please guide me how to enter the address. also i used modscan32 to know the right address but unsuccessful.

model number: DT48 - PID Temperature controller
In Modscan32, you can select whether the register/addresses display in decimal or hexadecimal under Setup > Display Options > Hex addresses.

I always use decimal addressing, but I have a vague recollection that hex addressing starts at 0001h in Modscan, so you might have to add one to the hex value shown in the Delta register table in order to address the correct register in the Delta.

For instance, Delta's 1000h might be 1001h in Modscan, not 1000h

Use the data display (Setup > Display options > show data) unless you like the torrent of hexadecimal traffic flooding the screen.

The Delta's serial comm settings have to match the comm settings in Modscan. I think Modscan defaults to RTU, but ASCII can be selected (connection > connect > advanced?)
1000Hex = 4096 decimal

See the following link: for a converter of Hex to Decimal or vice versa.

You can set the data format in Modscan32. Please see the Modscan32 manual.

Also you you may have to take into account that there may be an address offset of 1 in some implementations of Modbus, e.g. Master sent address of 4096 may be register 4097 in the slave?

William (Bill) L. Mostia, Jr. PE
ISA Fellow, SIS-TECH Fellow,
FS Eng. (TUV Rheinland)
SIS-TECH Solutions, LP

Any information is provided on Caveat Emptor basis.