Anyone have more insight into this? An overheating contactor doesn't sound like something that can be fixed with software (except to ignore it).
* limit max current (dumbest) * limit max current based on moving average of current over last N seconds * limit max current based on experimentally validated thermal model of contactors (cleverest)
This might even be possible without a significant/noticeable performance hit, if the overheating is only experienced in extreme conditions.