At our event this weekend, we struggled with low voltage during many of our matches and we have been looking at code as a possible culprit.
Our programming lead wrote our Teleop code and our autonomous code (which largely follows the path finding sample code with RamseteController and telemetry) as separate projects and then attempted to merge the two. As a result we realized that the four talons we use on our drivetrain were being constructed in memory in our autoinit and then constructed again in our teleopinit.
We are highly suspicious that having the talon constructed twice could result in the motor controllers being sent two different signals at all times in teleop. The speed controller object constructed in auto being told auto is over set your voltage to 0 and the one constructed in teleop being given commands from the controller.
Does anyone have any experience with this or have any insight as to what might happen as a result?