Every message sent to/from the autopilot has a field called sysid containing the id of the system that sent it. ArduSub will only accept RC_OVERRIDE messages from systems with an id that matches the SYSID_MYGC parameter (default value is 255) stored on the autopilot. The default system ids are as follows:
ArduSub (autopilot): 1
Mavproxy running on bluerobotics companion: 200
Mavproxy without any arguments: 255
The reason we run mavproxy on the pi with a different system id than QGC is so that the autopilot can differentiate between mavproxy on the pi and QGC on the surface, and identify when communication with the surface computer has broken and execute a failsafe.
So you need to have mavproxy running with a system id that matches SYSID_MYGCS, you can run MAVProxy on the surface computer with the correct sysid, or delete the --source-system line highlighted in the link above.