CANTalon.setStatusFrameRateMs is what you’re looking for.
If you have CANTalon mLeftMotor, all you’d have to do to set it to a 50Hz update rate is
mLeftMotor.setStatusFrameRateMs(CANTalon.StatusFrameRate.Feedback, 20);
How easy is it to use up the CAN bus bandwidth? I was having some issues with finding the position of the robot, and I think it may be partially due to having a low update rate on the encoders compared to the update rate on the roboRIO.
Considering that we have 4 Talons, the PCM, and the PDP connected to the CAN bus, what is the highest refresh rate we can safely use?
And since I don’t seem to have the ability to edit posts, I forgot to add that 2 of the Talons are connected to encoders, and 2 are set to follower mode.
CAN bandwidth is ~1 Mbps, IIRC. You should be fine in terms of bandwidth, but you don’t want to run 8 SRXs at 100Hz each. Your setup sounds like it would work fine.
In Section 15.1 of the Software Manual, it says the default update frequency is actually 100 Hz (every 10 ms), as opposed to 10 Hz like you posted earlier.