4773
5226 HW Test; The Encoder Test was not testing both encoder directions.
Pathfinder

The Encoder test was only testing the B-->A and D-->C directions.

There were actually two bugs. The A-->B and C-->D direction test was actually tesing the opposite direction. The second bug caused only a single direction to be tested.

The bug was caused by the wrong operator being used to toggle the test.

A bool true value is equivelent to 1. Anything non-zero is also considered true. The correct operator to use on a bool to toggle its state is the not "!" operator. The code was using the "~" invert operator. The "!" operator toggle the state between true and false, 1 and 0. The invert operator toggles the state of the bits in the variable. Using it on a variable equal to true (1) results in the value being equal to 0xFE. Using it again toggles the bit and the value goes back to 1. Both of these values evaluate to true when doing a boolean comparison.

Both of these issues have been resolved.

Model Version Released
5226BB Hardware Test Rev F. 2.03 4/4/2023
5226BB Hardware Test Rev G. 2.03 4/4/2023