0
Under review

Modbus error handling new features

Jürgen Jürgenson 1 year ago in Devices / Modbus updated 3 weeks ago 6

Hey,


I had a small problem with modbus connection that seemed to be all fine(Was connected and no errors in debug), but actually it didn't update values, but i had the error handling setting set to hide. 

Now here's my question if it's set to hide and there is some error does it drop the connection? Or will it still reconnect after the error just doesn't log the error?

I was looking at the diagnostics/debug and it didn't show me any timeouts but it looked like it only was asking 1 register for updates. after i disabled it and re-enabled it started to talk to me again(Started to poll/update all the registers). So right now i left the error handling to reconnect.(Only reason i left it in hide mode was so i could test registers that didn't respond for some reason, now i just turned off cyclical read on them) Modbus connection was "offline" for 2 days.

Also it would be awesome if we could disable/enable modbus driver from the visualization too,  I haven't found a way to do it. We can see the status of the driver that's it.

Regards,

Jürgen

Under review

Hello,

in some cases when there was no response from modbus, bOS would disconnect and connect the driver again. Using the Hide function in modbus, bos will ignore the no response and not disconnect the modbus (if modbus doesn't get a response from an address, it will of course not update  the status)

Best regards.

Well ok, it just seemed to me that it wouldn't want to poll other registers, so far its ok, i will keep my eye on it though. 

Hey,

It happened again(older beta 4.7.22), I had set error handling to reconnect, but it has not reconnected even in case there is some errors. Modbus was still connected - true, but it didnt ask for any updates
I've also seen that when its set as Write to log it sometimes hangs - so modbus side does not ask any updates - nor does it receive them. Only writes to log that there is no responses - Turning the driver off and on again restores the connection and the answers start to come in(without errors). 


I think the reconnect is not working as it should. I had made a message task too in case the driver reconnects it would send a alert - that didnt happen.

So in short  - if errors occurs  the modbus driver wont reconnect. Would be awesome if we could make a program that is able to turn off and on the modbus driver.

Im unable to pinpoint the exact problem... as after the reconnect or driver on/off there is no errors on the modbus side - all request get their answers.

Hello,

what is the connection type for the modbus? TCP or RTU? Do you have Reconnect option enabled for error handling?

Reconnect should reconnect the driver if there is an error..

You could also update to the latest BETA version, where some error handlings were worked on.

Best regards.

Hey,

It's RTU. I will do the update, and check then again. Yesterday i turned the error handling back to write to log. Before that it was on reconnect but it didnt reconnect, so ventilatsion did not work as bOS server didnt ask any questions on the modbus line anymore.

+1

I think it was either modbus dongles fault or it's drivers. Today i changed the dongle, but it wouldnt connect to the new dongle(Gave me please select correct com port errors, even if i changed the com port nr it wouldnt connect to it or any other dongle i had with me). So then i reinstalled the dongle drivers and everything worked again. - Old dongle didint have this com port error and it would always connect to it if i re-enabled it.

I will keep my eye on it but i think its working fine now - no errors in logs.