Hello, I am from FTC team 11329 I.C.E Robotics, we are trying to develop RoadRunner in the off season and we are running into a problem with the Rev Through Bore encoders used to measure our dead wheels. We are using OpenOdometry and after finding significant error in our initial test on the field we switched to putting all of the encoders on one shaft to further explore the issue. Despite this change we still find that we have a lot of error. We have three different encoders and have started displaying the encoder ticks and rotations on the phone in order to better understand or find a pattern in the error.
Our team followed through the steps detailed in the learnroadrunner guide to RoadRunner and cant find anywhere that we have gone wrong. We have swapped the wires, expansion hub, tried and swapped out different control hubs, and tried all the different ports that we could. We only have 3 encoders to try but think that is irrelevant since they are all outputting different values. Has anyone else run into this issue before with REV encoders or when trying to figure out RoadRunnner? Linked below is also our code in GitHub for people to inspect if there is anything small that we could have missed.
Below we show an example of what the phone displays. We have setup a basic opMode that uses Road runners Encoder class and sends the value to telemetry.
Encoder 1: 829,557 Ticks ; 101.26 Rotations
Encoder 2: 833,591 Ticks ; 101.75 Rotations
Encoder 3: 822,829 Ticks ; 100.44 Rotations
The error can range all the way up to 1.5 percent at most after being run for a while. Sometimes speed appears to impact the percent error, but nothing is concrete. We can turn it extremely slowly with our hands and it can differ drastically, or spin it quickly and in between and the same thing happens. In addition to the displays above, we have also linked a short video to show what we are testing and the display values that show up so that its clear what we have been doing.
At this point we don’t really know how to proceed, or what could be wrong and any help would be great!
Here is the link to the code we are using to test: https://github.com/BHSSFTC/EncoderTest
Here is a link to a video showing our setup: https://youtube.com/shorts/aU9jHgK5y7c