We are a rookie team and don’t know much about coding but we have set up 4 Talon SRX motor controllers on our robot and all are wired correctly using the CAN and daisy chaining them. I believe the error is in the code, we referred to the software manual to make this and we are getting various errors. Initially we have 2 motors on each side of our drive train so we are going to use the “slave method” for the second motor on each side. Once enabled we have two motor controllers LEDs light up solid orange and the other two alternate orange. In the manual it says there is damaged hardware but i think this is improbable. here is the code and the drive station error
First of all, You are opening your motor controllers in Teleop, which constantly designates the motor controller positions every 10 ms, instead of in begin, where it is only designated once. I would recommend moving the code where you opened the Talon SRX’s to begin, so that way you are designating the robot’s software location only once.
What’s currently happening is that your master motors are opening, but your slave motors do not know that they are slaved, and therefore aren’t opening. Solid orange states that the motors are being designated in teleop, while flashing states that they are undesignated in code. Once they are all solid orange, you have opened all motors in code.
So i moved the signatures to begin and it is the same reaction.
Have you addressed the Talon SRX’s in the NI MAX web address? If not, you need to open a web browser with microsoft silverlight and type in your Robo-Rio’s IP, and then select the Talons and set their locations.
Any particular reason that you aren’t starting with the default project?
It does everything you need except you have to change “Open 2 motors” to “Open 4 Motors” in Begin.vi
Do you mean make them have individual IDs because I have done that?
and the other two alternate orange. In the manual it says there is damaged hardware but i think this is improbable. here is the code and the drive station error
The Talon SRX User’s Guide says Orange blink means CAN bus detected, robot disabled. Please review Section 2.3 in the Talon SRX User’s Guide.
Section 16.3 in the Talon SRX Software Reference Manual has a suggestion for why your Talon is blinking orange instead of solid-orange.
Instructions for assigning device IDs and firmware-updating (must do both) are in Section 2 of the Talon SRX Software Reference Manual. Ids must be unique (Section 2.2).
Also there are FRC examples here…
yeah but we have a CAN network not PWM, how would you change that?
Did you also update the firmware? Also the wire overlap in the screenshot makes it difficult to confirm that the “Device ID” and “Master Device Number to follow” signals are not flipped around.
So in the roboRIO web-based config, there are a total of four Talons with IDS 1,2,3,4 then?
yes the talons all have individual IDs 1-4, and when enabled there are two mcs that light up solid orange and 2 that are alternate orange. The firmware is also fully updated
Works for me - I posted a quick example as a sanity check (I used slightly different IDs).
my code is identical and it still is reacting the same however i saw you had some java CAN script… Is that necessary?
The LabVIEW_CANTalonFollowerExample folder contains a complete LV project. The sibling folders contain other LV, Java, and C++ projects, they are not involved.
You should consider trying this proven example (after adjusting the IDs), if the issue goes away then better study the differences. if the issue is still present, then you’ve ruled out software.
I took the set up down to one master and one slave. now we have both at a solid orange and on the web interfavce it say it is working properly however we cant get any joystick/mootor response. the driver station is giving the error that a pwm channel is not allocated. but we dont have any pwm
It sounds there is something in your LV app that is referencing PWM. Maybe the default ArcadeDrive control is still referenced somewhere. Or some test code somewhere. This is why I suggested using the known-working-example first to determine the root-cause of the first issue you mentioned. It sounds like there are multiple problems.
If you post a screenshot, that might help determine what the PWM error is about.
The same way you did in your example.
Change the drop down selection under Open 4 motors to “CAN Talon SRX”
yeah but just to the left of default code is pwm port numbers…
Those become CAN IDs after you’ve selected “CAN Talon SRX”
You have to delete the old PWM constants, then Create->Constant to replace them with the new CAN IDs.