View Full Version : Talon SRX Motor Controller Problem
FRC Team CC
22-11-2016, 21:54
We have a problem connecting the motor controller to the PWM ports on the roboRIO. We believe to have correctly connected the motor controller to the roboRIO and the Power Distribution Module. When we connect the motor controller to the CAN port, the motor controller works. However, when we use the PWM ports, the motor controller doesn't work and just blinks red.
We took two photos of the system which are posted below.
Thanks for any help!
Bkeeneykid
22-11-2016, 22:03
We have a problem connecting the motor controller to the PWM ports on the roboRIO. We believe to have correctly connected the motor controller to the roboRIO and the Power Distribution Module. When we connect the motor controller to the CAN port, the motor controller works. However, when we use the PWM ports, the motor controller doesn't work and just blinks red.
We took two photos of the system which are posted below.
Thanks for any help!
To use PWM, you need to flash the SRX using a different firmware. See section 1.3.4.2. PWM – Updating firmware for PWM use in the SRX's User Manual.
That section explains that PWM CAL Mode and Limit Switches require the upgrade. General PWM drive does not require the update, however it is required to be FRC legal if the firmware is <0.28.
Your photo looks like the green wire is connected to the middle pin, which is not correct. Green should go to ground. See Section 1.3.3 of the Talon SRX User's Guide.
dirtbikerxz
23-11-2016, 09:30
Why are you attempting to run the SRXs from PWM anyway?
FRC Team CC
23-11-2016, 17:56
Neither of our wires are connected to the middle pin - the green is connected to ground. By our understanding, the problem with the CAN wires is that they employ series circuiting rather than parallel. So if one of the motor controllers goes out, then the others stop working. This is the reason we are trying to use PWM ports, but correct us if we wrong about this.
Thanks,
Charging Champions
Neither of our wires are connected to the middle pin - the green is connected to ground. By our understanding, the problem with the CAN wires is that they employ series circuiting rather than parallel. So if one of the motor controllers goes out, then the others stop working. This is the reason we are trying to use PWM ports, but correct us if we wrong about this.
Thanks,
Charging Champions
Supposedly, both pairs of Talon SRX wires are continuous with each other. You should also note that if you use PWM, you don't get any of the nice PID and active brake and coast switching features.
You should also note that if you use PWM, you don't get any of the nice PID and active brake and coast switching features.
+1
For most teams that use Talon SRX's, the main reason is the built-in PID and active breaking software, which is only available via CAN. Obviously you already have these Talon SRX's, but in the future if you know you will only be using PWM you can buy cheaper motor controllers that do effectively the same thing. You can get SPARK motor controllers from REV Robotics for $45 (half the price of a Talon SRX). If you really need the small package, you can get Victor SP's ($60 IIRC). Of course this isn't to say that the Talon SRX's won't work with PWM, just that in the future there are cheaper alternatives.
You can get SPARK motor controllers from REV Robotics for $45 (half the price of a Talon SRX). If you really need the small package, you can get Victor SP's ($60 IIRC). Of course this isn't to say that the Talon SRX's won't work with PWM, just that in the future there are cheaper alternatives.
+1 to that too
Also, you should put some form of connector on your wires. It's possible you were shorting +5v to ground with your current setup. If you don't have the proper connectors and crimper, you can solder the wires to a preexisting PWM cable. Using connectors will also give you something good to attach the cables with if you decide to use CAN at some point, since I doubt you'll want to cut, restrip, and solder the wires every season, especially since the wires are permanently stuck to the controller.
FRC Team CC
24-11-2016, 01:14
Thank you all for the replies. A couple of questions:
1. So if we used the CAN ports, which don't use parallel circuiting, would it be right to say that if one motor controller were to stop receiving power, then the rest of them would not receive any inputs through the CAN wires?
2. Should we use Anderson Powerpoles to link together CAN wires or a different mechanism? What is the cleanest way of linking CAN wires?
We are probably going to stick with the CAN ports.
Thanks for the help,
Charging Champions
dirtbikerxz
24-11-2016, 01:19
Thank you all for the replies. A couple of questions:
1. So if we used the CAN ports, which don't use parallel circuiting, would it be right to say that if one motor controller were to stop receiving power, then the rest of them would not receive any inputs through the CAN wires?
2. Should we use Anderson Powerpoles to link together CAN wires or a different mechanism? What is the cleanest way of linking CAN wires?
We are probably going to stick with the CAN ports.
Thanks for the help,
Charging Champions
1. I believe the input and output CAN wires on a talon are soldered to the same place. So even if one motor controller were to lose power, the rest should still work. ( Someone correct me if I'm wrong). Also, it is really rare that only one of your motor controllers should lose power, especially if the wiring was done correctly.
2. We always cut our CAN wires to the exact length and solder them together and cover in heatshrink. Makes really clean runs. If we need more length on one wire later on, we can always just solder on more wire, or if it comes to it, take apart the motor controller housing and compltley swap out the wire (it's not too hard).
Bkeeneykid
24-11-2016, 01:31
Thank you all for the replies. A couple of questions:
1. So if we used the CAN ports, which don't use parallel circuiting, would it be right to say that if one motor controller were to stop receiving power, then the rest of them would not receive any inputs through the CAN wires?
2. Should we use Anderson Powerpoles to link together CAN wires or a different mechanism? What is the cleanest way of linking CAN wires?
We are probably going to stick with the CAN ports.
Thanks for the help,
Charging Champions
We used CTR's CAN Connector Pack (http://www.ctr-electronics.com/adaptors/can-connector-5-pack.html) to connect our SRXs this year. They worked great, just put some electrical tape over the exposed solder points on the bottom (just in case). Makes it very simple to re wire the CAN network (as we had to do as we needed more motor controllers suddenly), and means you don't risk damaging the cables much with other connectors. It uses the same connectors as on the PDP, PCM and roboRIO. It may not be the cleanest way (our board was not very clean this year), but it certainly makes it easy to change later. Anderson connectors would be cleaner cut to the right length, but for the CAN wires, these connectors are overkill. Try .1" pitch PWM wires maybe instead?
And as Rohit said, most CAN devices just connect high-high and low-low and just take that signal elsewhere for processing. Also, you don't have much probability of one dying on you. Though more likely, if one died your code would crash as it couldn't initialize the CANTalon anymore. That's assuming the entire thing just died rather than the just the voltage controlling circuitry, which is more likely. The SRX is advanced enough to have current limiting and the such, and because of that I've never seen a dead one.
RufflesRidge
24-11-2016, 09:58
Also, you don't have much probability of one dying on you.
A breaker trip will cause a single controller to lose power.
As others have noted though, the controller losing power will not interrupt your CAN chain.
Though more likely, if one died your code would crash as it couldn't initialize the CANTalon anymore.
This should not crash WPILib code, it will just throw errors into the log.
For connecting CAN wires, I would recommend using the DuPont 3 pin connectors, since they can also then be used for PWM if you want. You can also use Wago lever nuts, since they can be reused very easily and don't require special tools.
FRC Team CC
24-11-2016, 12:59
Thank you all for your help. Currently we have a CAN wire running from the RoboRio to a central "hub". CAN wires from each motor controller are connected to this "hub" (see image below). They are currently secured with electrical tape - we are planning on using a more substantial connection (based on the suggestion you guys provided. Does this setup look right?
Also, how do we know if the Talon SRXs are connected to each and working? Do they alternate orange?
Thanks once again.
- Charging Champions
Bkeeneykid
24-11-2016, 14:42
Thank you all for your help. Currently we have a CAN wire running from the RoboRio to a central "hub". CAN wires from each motor controller are connected to this "hub" (see image below). They are currently secured with electrical tape - we are planning on using a more substantial connection (based on the suggestion you guys provided. Does this setup look right?
Also, how do we know if the Talon SRXs are connected to each and working? Do they alternate orange?
Thanks once again.
- Charging Champions
Electrical tape is a bad idea, but you already knew that. There are many solutions here, use one of them. Also, while I believe this setup may work, I'm not sure it's you best option. Your best option is to connect the green of one to the green of another, like you see in the SRX manual. And yes, if they are properly connected but not enabled, they will alternate orange. They will alternate red if they cannot connect. Once enabled (and initialized in code), they will stay solid orange and then flash the color of the direct they are going, like the other motor controllers.
FRC Team CC
24-11-2016, 15:18
Also, while I believe this setup may work, I'm not sure it's you best option. Your best option is to connect the green of one to the green of another, like you see in the SRX manual.
Why is daisy-chaining a better option than connecting the wires to a central "hub"? If one of the CAN cables in the daisy-chain stops functioning, don't the rest of speed controllers also stop receiving inputs?
Thanks for your help,
Charging Champions
Bkeeneykid
24-11-2016, 15:22
Why is daisy-chaining a better option than connecting the wires to a central "hub"? If one of the CAN cables in the daisy-chain stops functioning, don't the rest of speed controllers also stop receiving inputs?
Thanks for your help,
Charging Champions
Well for one, that's not FRC Legal. *Standard warning about 2016 rules may not apply to 2017* See rule R70:
Each Jaguar or Talon SRX must be controlled with signal inputs sourced from the roboRIO and passed via either a PWM (wired per R68) or CAN-bus (either directly or daisy-chained via another CAN-bus device) signal, but both shall not be wired simultaneously on the same device. If the CAN-bus configuration is used, the firmware on the device must be updated to at least the following versions:
You can only either directly connect to the roboRIO or daisy chain through another device.
dirtbikerxz
24-11-2016, 15:23
Why is daisy-chaining a better option than connecting the wires to a central "hub"? If one of the CAN cables in the daisy-chain stops functioning, don't the rest of speed controllers also stop receiving inputs?
Thanks for your help,
Charging Champions
As stated by many people above. The input and output CAN wires in a talon are soldered to the same point. So even if a motor controller were to die, the rest of the can devices would still receive a signal, because the actual can wire itself would still be connected. The only reason why a can chain might stop functioning, is if one of the can wires got physically cut somewhere along the chain. And there is no reason why that should happen, especially during a match.
EDIT: I didn't even realize this, but as Devin stated above, your setup would also be illegal.
Well for one, that's not FRC Legal. *Standard warning about 2016 rules may not apply to 2017* See rule R70:
You can only either directly connect to the roboRIO or daisy chain through another device.
I'm not sure about the legality, but I know for sure some teams ran with a star topology during this past season. However, I've heard that it's not a great method for connecting everything. Check out this post for more info on why it isn't recommended: https://www.chiefdelphi.com/forums/showpost.php?p=1615882&postcount=12.
dirtbikerxz
24-11-2016, 15:32
I'm not sure about the legality, but I know for sure some teams ran with a star topology during this past season. However, I've heard that it's not a great method for connecting everything. Check out this post for more info on why it isn't recommended: https://www.chiefdelphi.com/forums/showpost.php?p=1615882&postcount=12.
If I understand R70 correctly, star topology is technically illegal. I guess many people (including me) didn't realize that.
FRC Team CC
24-11-2016, 16:13
Well for one, that's not FRC Legal.
Ok, thanks for the clarification. Do you guys just solder the cables to each other if they run from one SRX to the next?
Also, do you have one cable on the last SRX in the daisy chain just sticking out and not connected to anything? Or does that connect back to the RoboRio/PDP?
Thanks,
Charging Champions
Well for one, that's not FRC Legal. *Standard warning about 2016 rules may not apply to 2017* See rule R70:
Each Jaguar or Talon SRX must be controlled with signal inputs sourced from the roboRIO and passed via either a PWM (wired per R68) or CAN-bus (either directly or daisy-chained via another CAN-bus device) signal, but both shall not be wired simultaneously on the same device. If the CAN-bus configuration is used, the firmware on the device must be updated to at least the following versions:
You can only either directly connect to the roboRIO or daisy chain through another device.
Not suggesting that a star topology is the better way to go, but the way I read R70 it would be legal. Each Talon is connected directly to the roboRIO, and no Talon has both PWM and CAN running simultaneously. The rule never says that the tree can't branch out, only that each "leaf" (Talon) must be connected to the "roots" (roboRIO) either directly or through a daisy-chain. Let me say it again: not better, but legal (according to me, who has absolutely no bearing in what is actually considered legal)
dirtbikerxz
24-11-2016, 16:16
Ok, thanks for the clarification. Do you guys just solder the cables to each other if they run from one SRX to the next?
Also, do you have one cable on the last SRX in the daisy chain just sticking out and not connected to anything? Or does that connect back to the RoboRio/PDP?
Thanks,
Charging Champions
My team solders the cables together, because we like clean runs. But do what suits your team best (snap connectors etc.). Also there should never be a can wire hanging out in the open. It should always be connected to something. The general rule is that the CAN chain STARTS at the RoboRIO and ENDS at the PDP. This is because the PDP has a "terminator" which basically terminates the CAN connection.
Ok, thanks for the clarification. Do you guys just solder the cables to each other if they run from one SRX to the next?
Also, do you have one cable on the last SRX in the daisy chain just sticking out and not connected to anything? Or does that connect back to the RoboRio/PDP?
Thanks,
Charging Champions
Hi FTC Team CC,
This is all explained in our documentation. Please read section 1.3.2 of the Talon SRX User's Guide. I think you will find answers much faster this way instead of posting a question and waiting for responses at each step.
We do not recommend star-topology, the CD forum is filled with many threads explaining why. But ultimately it can create failure-modes that are difficult to root-cause for the inexperienced. It's not clear to me that star-top is explicitly illegal from reading R70, but again we don't recommend it.
The alternative to daisy chaining would be to create a single bus harness that the CAN nodes "tap" into via short splices. This is how CAN buses are wired in cars. However in FRC its generally more convenient to daisy chain via connectors for high-serviceability during competition season.
Many teams have wired the Talon SRX on CAN bus in the fashion we've documented with great success.
There are no crash symptoms in WPILIB caused by unpowering a Talon, nor does it impact communication with sibling Talons on the CAN bus. This is explained in section 16.6 of the Talon SRX Software reference manual. In fact this is true for all of CTRE CAN products.
FRC Team CC
24-11-2016, 18:47
Thank you all so much for your help. We will probably just stick with CAN connections daisy-chained to each other.
Thanks,
Charging Champions
Combining a lot of what has already been said with a bit more, here's the CAN plan we use, and why:
CAN is designed as a bus, not a star topology. Doing a modestly deep dive, it appears that wiring in a star topology will work just fine until it fails, when it is most likely to do so with no useful diagnostic clues. Bottom line: star topology is bad juju for CAN.
From a practical standpoint, CAN devices come in two main flavors: incorporated wires, or wire clips. (male vs female). To the extent you can, alternate the male and female devices along the bus to minimize the number of connections. This is just a specific application of KISS.
Putting the PDP at the end of the bus is great because it has an internal terminator, but if your design has a device (e.g. the PCM on our 2016 robot) well away from the main control board, don't be afraid to use your own 120Ω resistor.
Don't put any permanent connectors, cuts, or solder on the CAN wires. This allows you to re-use them from year to year assuming the rules don't change drastically. We had considered the new molex 2-pin genderless connectors for CAN, but when we realized how often we really needed wire ends to go in connectors on female devices, we decided not to do this - ever.
If you have too many "male" devices compared to "female", use the VEX CAN connectors (http://www.vexrobotics.com/217-4429.html) to make the necessary links. They are specifically designed for CAN impedance, and are really inexpensive - use them.
If you have too many "female" devices compared to "male", use approx 20 AWG wire, preferably stranded, and most definitely twisted to at least "CAT 3" specs, that is a twist every 3 inches.
FRC Team CC
26-11-2016, 15:50
Thank you all for your help. We greatly appreciate it.
Thanks,
Charging Champions
FRC Team CC
03-12-2016, 02:22
One more quick question. Some of the replies on this thread have recommended using Wago Lever Nuts to connect the cables (https://www.amazon.com/Wago-222-415-LEVER-NUTS-Conductor-Connectors/dp/B0195V2LX8/ref=sr_1_2?ie=UTF8&qid=1480748942&sr=8-2-spons&keywords=wago+222-415&psc=1&smid=AO9N0B7PPXTIQ). Does this count as star topology (and is it therefore illegal)? Would you recommend this over the CAN connectors sold by CTR (http://www.ctr-electronics.com/adaptors/can-connector-5-pack.html)? Our concern is that daisy-chaining all of the motor controllers will be more prone to failure if even one of the motor controllers in the beginning of the daisy chain fails.
Thanks,
Charging Champions
One more quick question. Some of the replies on this thread have recommended using Wago Lever Nuts to connect the cables (https://www.amazon.com/Wago-222-415-LEVER-NUTS-Conductor-Connectors/dp/B0195V2LX8/ref=sr_1_2?ie=UTF8&qid=1480748942&sr=8-2-spons&keywords=wago+222-415&psc=1&smid=AO9N0B7PPXTIQ). Does this count as star topology (and is it therefore illegal)? Would you recommend this over the CAN connectors sold by CTR (http://www.ctr-electronics.com/adaptors/can-connector-5-pack.html)? Our concern is that daisy-chaining all of the motor controllers will be more prone to failure if even one of the motor controllers in the beginning of the daisy chain fails.
Thanks,
Charging Champions
I believe that bobbysq meant these wago lever nuts (https://www.amazon.com/Wago-222-412-LEVER-NUTS-Conductor-Connectors/dp/B00HIOP6SC/), just two connections. These will probably work OK, but the CAN connectors are more appropriately sized to CAN sized wire, making them easier to work with and less likely to reflect signals.
I understand that the motor controllers have a robust pass-through of the CAN lines; it would take a catastrophic motor controller failure to disrupt the daisy chain.
FRC Team CC
03-12-2016, 11:45
I believe that bobbysq meant these wago lever nuts (https://www.amazon.com/Wago-222-412-LEVER-NUTS-Conductor-Connectors/dp/B00HIOP6SC/), just two connections. These will probably work OK, but the CAN connectors are more appropriately sized to CAN sized wire, making them easier to work with and less likely to reflect signals.
I understand that the motor controllers have a robust pass-through of the CAN lines; it would take a catastrophic motor controller failure to disrupt the daisy chain.
Oh ok, that makes sense. Would you recommend using these at all: https://www.amazon.com/Wago-222-415-LEVER-NUTS-Conductor-Connectors/dp/B0195V2LX8/ref=sr_1_2?ie=UTF8&qid=1480748942&sr=8-2-spons&keywords=wago+222-415&psc=1&smid=AO9N0B7PPXTIQ? Or is it preferable to stick with the two connection options mentioned above?
Regarding the motor controllers, will the CAN connection work even if one of he motor controllers stops receiving power? Does transmission of the CAN signal rely on the motor controllers to be on? Or does the CAN signal get transmitted though the motor controllers even if it does not receive power?
Thanks once again so much.
- Charging Champions
Oh ok, that makes sense. Would you recommend using these at all: https://www.amazon.com/Wago-222-415-LEVER-NUTS-Conductor-Connectors/dp/B0195V2LX8/ref=sr_1_2?ie=UTF8&qid=1480748942&sr=8-2-spons&keywords=wago+222-415&psc=1&smid=AO9N0B7PPXTIQ? Or is it preferable to stick with the two connection options mentioned above?
Regarding the motor controllers, will the CAN connection work even if one of he motor controllers stops receiving power? Does transmission of the CAN signal rely on the motor controllers to be on? Or does the CAN signal get transmitted though the motor controllers even if it does not receive power?
Thanks once again so much.
- Charging Champions
You are better off not using the 5 connectors at all because their only use would be in a star topology which is not the way CAN was designed.
The CAN lines are passed directly through (i.e. input and outputs are soldered together). Unless the wire is cut or the speed controller catches fire and unsolders the wire, the signal will pass through even if the motor controller doesn't get power.
The CAN lines are passed directly through (i.e. input and outputs are soldered together).
Not necessarily disagreeing, but what is your source for this statement?
Not necessarily disagreeing, but what is your source for this statement?
According to page 6 of the Talon SRX User Manual (http://www.ctr-electronics.com/Talon%20SRX%20User's%20Guide.pdf), both CAN wires of the same color are "electrically identical." I would infer that to mean they are physically connected, not just connected by programming. Other people in this thread have also made this claim, but none have provided their source. I imagine someone from Vex or CTRE (or someone who has taken one apart) can give us a definite answer, but I am willing to stick with my inference from the User Manual until someone gives a more definite answer.
Not necessarily disagreeing, but what is your source for this statement?
Source: Took apart a Talon SRX, looked at the wires, yep they're soldered together. Don't tell inspectors if we ever use a Talon SRX on a robot
Dwight_2
03-12-2016, 14:37
We have a problem connecting the motor controller to the PWM ports on the roboRIO. We believe to have correctly connected the motor controller to the roboRIO and the Power Distribution Module. When we connect the motor controller to the CAN port, the motor controller works. However, when we use the PWM ports, the motor controller doesn't work and just blinks red.
We took two photos of the system which are posted below.
Thanks for any help!
My team had the exact opposite happen to our promotional robot (t-Shirt cannon), where the can connection blinked red and the PWM connection worked fine with a slight change in programing.
My team had the exact opposite happen to our promotional robot (t-Shirt cannon), where the can connection blinked red and the PWM connection worked fine with a slight change in programing.
These symptoms sound like simple wiring issues. Students will make mistakes whether you use PWM or CAN bus, (and hopefully will learn from them).
However with PWM you must [1] Wire the devices, [2] Power the devices, [3] Code the devices, and then begin your troubleshooting. With CTRE CAN devices, you can do [1] and [2] only and then begin diagnosing (web-based config, LEDs, Driver Station, etc.).
Additionally the feedback we've received is that CAN bus is far simpler to wire than PWM.
To better answer the questions posed in this thread, I just added some content to the Talon user's guide (pages 35-37).
http://www.ctr-electronics.com/talon-srx.html#product_tabs_technical_resources
Oh ok, that makes sense. Would you recommend using these at all: https://www.amazon.com/Wago-222-415-LEVER-NUTS-Conductor-Connectors/dp/B0195V2LX8/ref=sr_1_2?ie=UTF8&qid=1480748942&sr=8-2-spons&keywords=wago+222-415&psc=1&smid=AO9N0B7PPXTIQ? Or is it preferable to stick with the two connection options mentioned above?
Oh, yes we use the multiple-connector WAGO lever nuts for several power applications where we have multiple "custom circuit" loads on a single breaker, and I recommend these for that purpose -- but not for CAN bus.
FRC Team CC
03-12-2016, 21:40
Thank you all for the suggestions. We have ordered the CAN connectors sold by CTR electronics.
Thanks,
Charging Champions
Hitchhiker 42
03-12-2016, 21:57
Thank you all for the suggestions. We have ordered the CAN connectors sold by CTR electronics.
Thanks,
Charging Champions
Just as an input, for our CAN connections, we use screw terminals.
Thank you all for the suggestions. We have ordered the CAN connectors sold by CTR electronics.
Thanks,
Charging Champions
We used Marettes (wire nuts) as a temporary connector on our competition robot this past season. Then, we soldered the CAN bus. Although, we used Marettes on our practice bot and never had a problem, and Marettes are a bunch cheaper than those connectors.
Billfred
04-12-2016, 12:37
We used Marettes (wire nuts) as a temporary connector on our competition robot this past season. Then, we soldered the CAN bus. Although, we used Marettes on our practice bot and never had a problem, and Marettes are a bunch cheaper than those connectors.
Iron Kings soldered their CAN wires last year as well. I know the SRX is bet-your-season-on-it reliable, but that feels like tempting fate when you have tight match turnarounds. Did you have a plan to replace one in a disaster situation?
While we don't solder our CAN wires, when we have a consolidated control board, we usually wire in an extra motor controller to give us some quick options if one burns up.
vBulletin® v3.6.4, Copyright ©2000-2017, Jelsoft Enterprises Ltd.