Falcon 500 Follow Voltage Issues

While testing with our Falcon 500s, we’ve noticed an interesting discrepancy in the voltage and power sent to our motors.
We’re running 4 Falcons, with one set as master, and the other set to slave, on each side.
The slave motors are running at about half of the voltage of the master motors.


We think that this is causing the motors to stall/squeak when we turn slowly, for example when using vision alignment.
Our drive code can be found here
Any help is appreciated

1 Like

Send a picture of your wiring setup. Also send a screenshot of your CAN devices on Phoenix tuner.

Unfortunately, our build meeting ended three hours ago, so can’t get those things right now. We will get pictures and screenshots tomorrow.

I can, however, say that I don’t believe it to be a wiring or CAN issue because the motors do spin. When driving normally, lights on both Falcons turn green/red signaling they are receiving commands to turn in some direction. The issue is when we’re turning very slowly, the slave Falcons don’t light up until the motor power exceeds a certain amount. When manually driving, we notice this when we barely touch the stick to one side – we can notice that one Falcon per side is idle (orange lights) while the other is solid green/red. Again, when driving/turning at any medium to high speed, the lights all turn on.

The log files show that what appears to be happening is the slave motors’ motor output percentage is set lower than it should be, at about half on both sides. In our drive code (and CTREMotorControllerFactory), you can see that we have one Talon set to follow the other, so we have no idea why this could be happening.

You are probably correct.

Probably your deadband of 0.04 set in CTREMotorControllerFactory.

That would explain your weird deadbanding behavior.

Digging in a little further right now to see why the percentage discrepancy seems to exist.

Hmmm, so, your configs for master vs slave seem to differ in CTREMotorControllerFactory, which may be part of the issue, though I’m not sure.

Master:

Slave:

I guess we didn’t push the code, but we changed those while testing to be the same (both to the lower master configs), and that’s what the logs were collected with.

The deadband was also set on the slave during our meeting, as we also identified that as a potential issue (not sure if that was pushed or not). This also didn’t fix the issue, oddly enough.

The code was modified on @jazonl’s computer, he may be able to push it somewhere soon.

1 Like

Did you log the current draw of the motors? If not, can you access the driver station logs? I expect things to be relatively normal, but it could help rule some options out.

1 Like

I see the problem. TalonFX has an improved dead-band over the older products. Once you leave the dead-band (say 4%), it starts at 0% and ramps to full-100%. This is useful since you don’t get a jump in output when you just-exceed the dead-band.

So what your data suggests is the follower is applying the dead-band logic again. So the 7% applied from the master is passing thru the logic a second time, resulting to 3%. I expect the discrepancy to disappear as you increase the output (which appears to be what your reporting).

I don’t expect the symptom to be harmful, but perhaps annoying to hear the master stall-whistle when you scrub-turn.

To eliminate the symptom, set the dead-band to 0 on the followers. I’ll write up a tracker so it gets looked at this week. If what I hypothesize is correct, it will be addressed in the next update.

Makes sense?

3 Likes

here’s some of our testing logs if it helps with the issue
test.csv (823.5 KB)

My hypothesis was right, I suggest marking my earlier post as the solution. Next update will have it addressed.

3 Likes

we’ll try this tomorrow, thanks for the help!