Open-Agriculture / AgIsoStack-plus-plus

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

Question about AUX inputs 2 #490

Open Matthieu-Poulain opened 1 month ago

Matthieu-Poulain commented 1 month ago

Hi guys,

As a customer has requested support for ISOBUS in our system, we are currently investigating whether we can fulfill this request. We have tested several ISOBUS features using AgIsoStack (great work, by the way, many thanks for your effort), including soft buttons and auxiliary inputs.

Everything worked fine on a neighbor's tractor, but when we tried the same test on the client's tractor, we were unable to find the Aux Functions to bind to the tractor joystick—they simply weren't displayed. Initially, we thought it was a mismatch in the Aux Function type (e.g., boolean latching, non-latching, etc.), but none of the different types worked.

The Virtual Terminals (VTs) on both of his Fendt tractors failed to work. My question is, have you ever encountered this behavior where your projects work on some VTs but not on others?

Additionally, I simply declared the Aux Functions in IsoDesigner. Do I need to work with object pointers, or are they unrelated?

Many thanks for any help you can provide!

ad3154 commented 1 month ago

currently investigating whether we can fulfill this request

Are you using our CAN stack for this in your system? If it's not with our stack I am not sure how much help we can offer, but if it's AgIsoStack we can see what we can find out!

I am not a big expert on Aux-N to be honest, I have been relying on @GwnDaan for much of it 😅 but what would really help us to understand the issue you've been having is to share with us a CAN log showing your system connecting to the VT if possible, along with any logging output from the stack itself

Matthieu-Poulain commented 1 month ago

Thank you for your answer. I indeed used your stack with an esp32 to begin the project. Shame on me, i did not log the output when i was testing the system. I did try to set the output log in debug mode but it seems i couldn’t catch and kind of error between the flow of open/close session messages.

I was hoping to see first if any of you knew if the display of any Aux fonction/input was bound to the stack or if given a .iop file the VT was the only part required to parse, detect and submit it to user selection.

2nd and most recent fendt display seemed to group aux fonctions under a tab, which is not displayed in my case, so maybe i missed something here…

Matthieu-Poulain commented 3 weeks ago

Ok so after some digging in the standard, i found that the VT determines which workingsets provide auxiliary functions. I'd be gratefuI if someone could confirm that the stack is not involved in the process of displaying those, except for the fact it tells the working set it is active.

Using IsoDesigner i also found Auxiliary Object Pointers but i'm not sure how and why they are used, the version i have of the standard ISO 11783-6:2018(F) being translated in french is a bit ambiguous...