Open-Agriculture / AgIsoStack-plus-plus

AgIsoStack++ is the completely free open-source C++ ISOBUS library for everyone
https://agisostack.com/
MIT License
168 stars 40 forks source link

Add safe state recognision for the VT client #408

Open GwnDaan opened 5 months ago

GwnDaan commented 5 months ago

Whenever an unexpected shutdown occurs on an established connection between a VT and a client (working set master). The standard requires us to enter a so called safe state, i.e. all functions dependant on the VT operator interface are put into a known state that will not put the operator or machine at risk.

Any ideas on how to implement this properly? I think we can implement this inside the VirtualTerminalClient class and obligate any application to implement this functionality by implementing a callback. That should be pretty robust and at least made the user aware of the necessity.

ad3154 commented 4 months ago

Something I am thinking of is that ISB (the ISOBUS shortcut button) and probably other eventual ISO11783-7 things also require recognition of a "safe state", so whatever we come up with, we might want to consider if it can be generic for the whole CAN channel or something, so that such a state can be "shared" or at least triggered by many of our interfaces. This sounds tricky, but just thinking out loud.