I worked on a machine that implemented a message system precisely for this. If the function was disabled and the button was pushed to activate it, one prioritised reason for the disablement would show up in a message banner (different than alarm banner).
Of course, most operators wouldn't look at said banner, so it was useful for maintenance people to look it up from their terminals and tell the operator to do X or Y.