Pretty much the title. I’m working in java, but I haven’t seen any way to remove/set the 4% deadband over CAN in the other languages either. I’ve looked the software reference manual and only found a few mentions of deadband, but nothing that would let me change it.
*Why do you want to change it?
I’m not a programmer, but is there any reason you couldn’t simply scale your output to the Talon to work around the deadzone with a simple transfer function?
e.g. Take an input value of 1% forward to output 5% forward to the talon. Wouldn’t this effectively eliminate any deadzone?
Why do you want to eliminate the deadzone? If one of your joysticks is slightly off center, you do not want the robot to move without user input. Also, at such low voltages, the motor would be unable to overcome the friction on its gearbox and stall, unnecessarily damaging it.
If the voltage is so low that the motor can’t overcome the friction of the gearbox, there won’t be enough current to damage the motor.
I’m not exprenced in java but in LabVIEW there is an input when initailizing the motor called “Eliminate Deadband”.
We used this once in 2012 when we had a turret. The turret needed a certain amount of voltage to move, which was less than the deadband of the motor controller. Giving the motor the voltage of the deadband, would move the turret quickly and it was hard to aim. We did not want to reduce the gearing because that would make it hard to aim before the match.
If your objective is to overcome “sticktion”, it should be possible to command the motor controller to apply a high power for a short time, then drop the power down to the intended level. The software in the industrial motor controllers I work on in my day job (and our competitors) have a built-in function that does this for loads with high starting inertia.
Sorry about that. Thanks for letting me know.
For future reference and because I have a bag motor on a 1/1 gearbox (just versaplanetary to a hex shaft) that I want to apply a velocity control loop to at a fairly low speed (2-3 rotations per second). I’m not certain, but I believe deadband is screwing with my closed loop and I want to reduce (probably not entirely eliminate it) the dead band to make sure. But also, like I said, mostly so I know how to and am able to if the need arises. I am aware of the reason the deadband exists, I just want a bit more fine control of the motor.