I think the problem with using a 10K pullup resistor with one of the Explorer HAT ouputs is that it inverts your signal.
High, becomes Low ( Shorted to ground because the Darlington Array is turned on ) and Low becomes High ( Pulled up by the resistor ).
This can really ruin your day if you’re trying to drive servos because they rely on a signal with something like a 20ms period and a HIGH pulse of between 1ms and 2ms.
When you invert this, you get a 20ms period still, but you now get a high pulse between 18ms and 19ms. The servo wont know what on earth is going on!
Fortunately I think
servod has a fix for this, although I’ve not tried it myself. Try adding the
--invert option to your command line.