Stumped...

(Notice: We believe this is a programming error, due to the fact we have rewired several times)

I am the lead programmer for my team, we are having trouble with the TalonSRX’s (possibly the CAN) we have tried other talons to see if the one we were going to use was broken, we switched out the PDP, we removed excess components. We cannot get the Talon to do anything. It just flashes Orange status lights and the RIO is saying its a sticky fault. I’ve tried clearing it but to no luck. I even made a new robot project and only put the following lines in:

Declared the TalonSRX in the private section of the class

TalonSRX *leftMotor1;

Initalized it in RobotInit()

leftMotor1 = new TalonSRX(1);

Set the motors value to 1 on telop enabled (Just for testing this issue)

leftMotor1->Set(1);

For reference, we use C++ on our RoboRIO’s.

Any help would be greatly appreciated…

Have you set the ID of the talon through the web interface?

Yes multiple times in fact, that’s what we though the problem was at first. But on running the Self-Test it outputs: “TALON IS NOT ENABLED; TRY SETTING THE ID” But we have done that. I think it might be a problem with the library or something of the sort.

It’s probably not a problem with the library since hundreds of teams used the talons with C++ this past season.

Have you checked to ensure the talons firmware is up to date? That’s usually the issue for us. They ship with outdated firmware and we forget to update it before trying to use it.

IIRC the TalonSRX class is for the SRX over PWM. CANTalon is for CAN. Unsure if of this is the case for C++.

That is correct. To use the Talon SRX in C++ over CAN you must declare it as a CANTalon. TalonSRX is for PWM, as you said.

Thank you, this seems to have fixed the problem!