0

change modbus setting through formula

Joost vB 8 months ago in Devices / Modbus updated by Andy Gill 8 months ago 5

Today my home has had a power outage. 

My solar inverters are connected to my Jigsaw through modbus. It appears the modbus connection isn't restored after the outage, possibly because the inverers restart shortly after the Jigsaw-modbus is activated.

The solution seems to be to deactivate and reactivate the modbus through bOS (settings > driver > enable > false/true).

I'm now trying to make a fomula which is triggered after a reboot of bOS. The formula should deactivate and reactivate the modbus driver.


Any tips on how to deactivate and reactivate the modbus?

Or are there any other ways to reactivate the modbus connection?


Thanks for your support! 

This not possible yet(through program), but hopefully it will be updated soon. Is the modbus error handling set to reconnect?

Yes, this is an ongoing issue that is yet to be resolved, reconnect setting does not help. 

Currently, the only way I can reconnect is to disable it and then enable it manually.

Hopefully, it will get some attention soon.

Cheers


Andy

Thank you both for your replies!

I wish there was a delay on the auto reconnect, that would solve the issue and would make a work around obsolete. The same would help out on other nodes too, like the  Denon Heos node which makes me delete and re-discover all speakers to get things going again.


For now I’ll manage, fingers crossed it will be addressed in future updates of bOS.

Just a brain fart - if the error handling is set to reconnect. And you force read values does it then try to reconnect again? On http it works kind of like that. If the driver is disconnected it still reconnects if I force read values. Maybe you can make a program to read on delay if the driver is disconnected. May not work as intended, I cant test it myself right now. But you can use driver connection status for program trigger.

Hi Jurgen,


Thanks for the idea I'll give it a try, but I would have thought that read cyclically=True was doing that anyway.