Smart thinking to solve the issue at hand
Also, are you using a Blue Robotics electronics enclosure? We have it so that the Pixhawk is on its side normally (Roll90 - base vertical, and flat against the raspberry pi on the electronics tray), so if you’ve got something similar it may be better to use Roll90Pitch315 instead of just Pitch315.
QGroundControl sends mavlink commands to ArduSub telling it what to do, and ArduSub reports back sensor data (telemetry) and status updates. It’s not possible for ArduSub to not have access to the calibration data because otherwise it wouldn’t be able to use it when reporting sensor values or controlling the vehicle.
I did a quick search in the GitHub repo and found that ArduSub palms off calibration to the more general GCS Mavlink library (shared by all the ArduPilot vehicle firmwares), which handles calibration messages here (there’s even a message there for forcing a set of parameters, which could be a good starting point for you to look into, if you want to take this approach).
Note that that’s on the
master branch, which I believe is what’s loaded when updating ArduSub with the ‘Development’ button from the companion web interface. The ‘Beta’ button currently uses the
Sub-4.1 branch, and ‘Stable’ uses the
Sub-4.0 branch. It seems like the ‘force accept’ parameter input is new, because
Sub-4.1 doesn’t have it.