-
hi @alisitsyn I read all your posts concerning the above subject, i tried all patches and fixes and i am still getting the same issue. my application includes 3 modbus sensors, one is on parity of even and can not be changed , the other two are on parity none. in my code i am switching between parities on different sensors. everything works fine until one of the sensors times out or is off for some reason. i read the post Modbus in Master Mode crashes (IDFGH-3047) #5072 in details. i simulated my application when i siimulate a timeout error > timeout to wait for receive from slave. i get the above error. can you please assist . i am using the following: Environment Code
ESP_LOGI(SystemTag,"Modbus Task Fired!"); modbus_initialize(); ESP_LOGI(SystemTag,"Modbus Initialized");
//
while(true) for(int i = 0; i < 3/MASTER_MAX_RETRY/ ; i++)
// change parity
|
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 3 replies
-
Hi @jbsaibes, Thank you for the question. The scenario in which you are using ESP-Modbus I would say is very specific and is not supported.
I will try to check this tomorrow and will give you my recommendations on how to repair from fail as soon as I have them. |
Beta Was this translation helpful? Give feedback.
-
Thank you for shared results.
Unfortunately the Modbus serial does not have any good opportunity to reliably recover from errors when responses after timeout are received. The specification treat this situation as unusual. I am working on new release of ESP_Modbus that should be more reliable in some unexpected conditions. Good luck! Let me know if you need help or some results in your project. I will try to give you support as soon as I can. |
Beta Was this translation helpful? Give feedback.
@jbsaibes,
This answer is too late but just in case please update the component to the latest version. I guess the issues are fixed long time ago.