Modbus Input register issue

Hello,
I am having a little trouble getting the T3-Nano to work correctly reading a meter connected to rs485.

I can read float holding registers OK, an example for register 40029 would be by using:
VAR2 = 230.1.MB_REG_FLOAT_ABCD28

However when I need to read Input Registers of say 30001 I cannot get a value, looking at documentation / forum for suggestions I am using:
VAR3 = 230.1.MB_INPUTREG_FLOAT_ABCD0

On checking the network points the VAR2 item shows but the VAR3 item is not present

There have been a few emails to Chris about this and we will implement the floating point features mentioned soon. Right now we’re in a mini crisis to swap out some expensive CPU’s from ST which were cheap before but due to the pandemic are suddenly not. Its a lot of work but the upside of this is that the new ESP32 cpu we’ll be using has a lot more resources. Like 10X more, so lots of good features coming soon.

1 Like

Many thanks for your help and honesty @maurice

I have attached a spreadsheet that contains the calculations for converting two 16b words to a 32b float which works for the data received using MB_INPUTREG0 (High) and INPUTREG1 (low).

If anyone know how to calculate this in the programming area I would be really grateful

Regards,
ieeefloats.xls (50 KB)

1 Like

That’s a pretty complex spreadsheet but we’ll dig into it shortly. Thanks for your work so far with the products Chris.