analogdevicesinc / Linduino

Code for the Linduino, An Arduino Uno-based board that is compatible with many Analog Devices evaluation boards
Other
101 stars 101 forks source link

Fix issue for all LTC681x where PEC error and results from selftests are never reported in some cases. #54

Open gudnimg opened 3 years ago

gudnimg commented 3 years ago

This issue addresses #55

Below is a detailed description of the issues that are fixed.

Function Chip Expected Behaviour Actual Behaviour
LTC6810_rdaux() LTC6810 Returns 0 if no errors detected. Returns -1 if a PEC mismatch is detected. Always returns 0. Which means Errors are not detected.
LTC6810_rdcomm() LTC6810 Returns 0 if no errors detected. Returns -1 if a PEC mismatch is detected. Always returns 0. Which means Errors are not detected.
LTC6810_run_adc_redundancy_st() LTC6810 Return the total number of errors detected. Always returns 0. Which means Errors are not detected.
LTC6811_rdaux() LTC6811 Returns 0 if no errors detected. Returns -1 if a PEC mismatch is detected. Always returns 0. Which means Errors are not detected.
LTC6811_rdcomm() LTC6811 Returns 0 if no errors detected. Returns -1 if a PEC mismatch is detected. Always returns 0. Which means Errors are not detected.
LTC6811_run_adc_redundancy_st() LTC6811 Return the total number of errors detected. Always returns 0. Which means Errors are not detected.
LTC6811_run_adc_overlap() LTC6811 Return the total number of errors detected. Always returns 0. Which means Errors are not detected.
LTC6812_rdsctrl() LTC6812 Returns 0 if no errors detected. Returns -1 if a PEC mismatch is detected. returns nothing. Undefined behaviour if return value is used.
LTC6812_rdaux() LTC6812 Returns 0 if no errors detected. Returns -1 if a PEC mismatch is detected. Always returns 0. Which means Errors are not detected.
LTC6812_rdcomm() LTC6812 Returns 0 if no errors detected. Returns -1 if a PEC mismatch is detected. Always returns 0. Which means Errors are not detected.
LTC6812_run_adc_redundancy_st() LTC6812 Return the total number of errors detected. Always returns 0. Which means Errors are not detected.
LTC6813_rdsctrl() LTC6813 Returns 0 if no errors detected. Returns -1 if a PEC mismatch is detected. returns nothing. Undefined behaviour if return value is used.
LTC6813_rdaux() LTC6813 Returns 0 if no errors detected. Returns -1 if a PEC mismatch is detected. Always returns 0. Which means Errors are not detected.
LTC6813_rdcomm() LTC6813 Returns 0 if no errors detected. Returns -1 if a PEC mismatch is detected. Always returns 0. Which means Errors are not detected.
LTC6813_run_adc_redundancy_st() LTC6813 Return the total number of errors detected. Always returns 0. Which means Errors are not detected.