NEO cooling

We burned 2 NEO’s on our climber due to some programming/testing accidents in a similar way, accidentally stalling them for extended periods without anyone realizing. As a result, we ended up writing some anti-stall code specifically for those climber motors. Basically, we use the encoder in the NEO to ask “is the motor moving?”, along with “are we telling it to move with X power or more?” If we’re telling it to move and it isn’t moving, then after a couple of seconds we tell it to stop. Pretty simple, and we haven’t had an issue since!

Code posted here: Precautionary Measures Against Climber Plate Bending - #10 by wlogeais

Current-limiting the motor can also be useful, but can run into issues in a case like climbing, if you expect high-current while in use - it can be hard to differentiate (aka find the limit) between “normal climbing current” and “oops we’re stalled current”.