Browse Source

ArduPlane: SET_SENSORS_OFFSETS support for third compass

mission-4.1.18
Don Gagne 9 years ago committed by Lucas De Marchi
parent
commit
151686ce9d
  1. 24
      ArduPlane/GCS_Mavlink.cpp

24
ArduPlane/GCS_Mavlink.cpp

@ -1391,17 +1391,21 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg) @@ -1391,17 +1391,21 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
break;
case MAV_CMD_PREFLIGHT_SET_SENSOR_OFFSETS:
if (is_equal(packet.param1,2.0f)) {
// save first compass's offsets
plane.compass.set_and_save_offsets(0, packet.param2, packet.param3, packet.param4);
result = MAV_RESULT_ACCEPTED;
}
if (is_equal(packet.param1,5.0f)) {
// save secondary compass's offsets
plane.compass.set_and_save_offsets(1, packet.param2, packet.param3, packet.param4);
result = MAV_RESULT_ACCEPTED;
{
uint8_t compassNumber = -1;
if (is_equal(packet.param1, 2.0f)) {
compassNumber = 0;
} else if (is_equal(packet.param1, 5.0f)) {
compassNumber = 1;
} else if (is_equal(packet.param1, 6.0f)) {
compassNumber = 2;
}
if (compassNumber != (uint8_t) -1) {
plane.compass.set_and_save_offsets(compassNumber, packet.param2, packet.param3, packet.param4);
result = MAV_RESULT_ACCEPTED;
}
break;
}
break;
case MAV_CMD_COMPONENT_ARM_DISARM:
if (is_equal(packet.param1,1.0f)) {

Loading…
Cancel
Save