Hi @Anrriu,
ESCs normally have an arming signal that needs to be sent continuously for a period before they allow controlling the motor. For our ESCs that’s 1500µs, because they’re bidirectional. Did you try setting the “lights” output to 50% before trying to command it higher or lower to set the speed?
Which ArduSub firmware version are you using? If you’re on a version >= 4.5.5 the inc/dec joystick buttons correspond to remappable pins, using Actuator functions.
If you want to use port 9 you can set SERVO9_FUNCTION to Actuator 1 (you may need to set it to a custom value of 184, depending on which software you’re using to set it), in which case the actuator_1_inc/dec (previously called servo_1_inc/dec) joystick button functions will control that output. Since that matches the old default behaviour, ArduSub >= 4.5.6 can also automatically map that servo function for you, if you have it currently set to Distabled (0), and have one of the relevant joystick button functions set.