Thought I would do an FYI post for those trying to get things done and working early.
Over the weekend I spent an entire day trying to get some basic code running with a drivetrain of TalonFX controlled falcons and a couple of 775 driven by Talon SRX controllers.
The results of the weekend were that the Talon SRX motors wouldn’t spin at all, and the Talon FX controlled motors would sort of work.
I did some differential testing and figured out it had nothing to do with the Command framework, which was good news.
The Talon SRX problems were fixed with upgrading the robotpy-ctre version as recommended here yesterday.
The Talon FX and Phoenix 6 problems persisted though, until I realized something that was different from the simulator and the robot I was testing on. The code I deployed was written for our normal/future chassis which is a 4-motor drivetrain.
The robot I was testing on only has 1 motor on each gearbox side. So the two talonfx set for follower modes were not present on the CAN bus,. There were no errors, or anything output that would suggest a problem however those silent errors seem to be the source of the inconsistent motor actuation.
In Phoenix 5 and in years past, this type of configuration would still function without problems, it would just spew CAN frame too stale errors to the console. In this setup, there were no errors, but it definitely will not work. So, teams can just do a better job of conditionally wrapping motor instantiation and configuration, or just don’t do what I did which has non-existent motors set as followers.