Allow to ignore SCA transaction errors
Description
More details in the commit message:
This development was first started in order to allow the SCA ADC
conversion to timeout and ignore the resulting error. Indeed the
ADC value is properly stored in the reply register.
This opens the door to hard to debug issues. However, there is no known
way at the moment to understand whether the SCA transaction failed or
not.
Major cleanup of the SCA functions had to be carried on to implement the
feature as cleanly as possible.
The following SCA ADC-related features are now fully working:
* The temperature monitoring through the SCA is still functional
* The conversion factor for the low-voltage monitoring through the SCA
have been fixed
* The VTRx RSSI values can be read through the SCA (on OH for which the
hardware allows for it)
Related Issue
How Has This Been Tested?
Starting a run is still possible. All monitoring variables are retrieved and displayed in the web interface (OH2 doesn't have the correct RSSI circuit).
Types of changes
-
Bug fix (non-breaking change which fixes an issue) -
New feature (non-breaking change which adds functionality) -
Breaking change (fix or feature that would cause existing functionality to change)
Checklist:
-
My code follows the code style of this project. -
My change requires a change to the documentation. -
I have updated the documentation accordingly. -
I have read the CONTRIBUTING document. -
I have added tests to cover my changes. -
All new and existing tests passed.