i bought a meter with a modbus-tcp interface. I can access all registers except those which contain the energy value. According to the datasheet of the meter this is a 64bit numeric value. Unfortunately, this is not available as datatype in the binding. For int and uint 64 types are already existing…
There are about eight different ways to assemble the raw registers and bytes into a 64-bit word.
I would recommend first finding out the byte pattern for your source device.
You may be able to read the 4 registers as 64-bit uint, or you might need to read as 16-bit uints and assemble parts into your 64-bit word in the required order…
Then find a java IEE (presumably?) decode for the float data.