From 17f5ef46101d04228466704087891e6272fa8285 Mon Sep 17 00:00:00 2001 From: Peter Barker Date: Thu, 28 Jul 2016 16:37:28 +1000 Subject: [PATCH] Plane: inform dataflash of vehicle arm state --- ArduPlane/ArduPlane.cpp | 10 ++++++++-- ArduPlane/Plane.h | 1 + ArduPlane/system.cpp | 3 +-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/ArduPlane/ArduPlane.cpp b/ArduPlane/ArduPlane.cpp index 742719e3a8..0091acaba0 100644 --- a/ArduPlane/ArduPlane.cpp +++ b/ArduPlane/ArduPlane.cpp @@ -151,11 +151,17 @@ void Plane::loop() scheduler.run(loop_us); } +void Plane::update_soft_armed() +{ + hal.util->set_soft_armed(arming.is_armed() && + hal.util->safety_switch_state() != AP_HAL::Util::SAFETY_DISARMED); + DataFlash.set_vehicle_armed(hal.util->get_soft_armed()); +} + // update AHRS system void Plane::ahrs_update() { - hal.util->set_soft_armed(arming.is_armed() && - hal.util->safety_switch_state() != AP_HAL::Util::SAFETY_DISARMED); + update_soft_armed(); #if HIL_SUPPORT if (g.hil_mode == 1) { diff --git a/ArduPlane/Plane.h b/ArduPlane/Plane.h index 903795acb9..6f9c631e58 100644 --- a/ArduPlane/Plane.h +++ b/ArduPlane/Plane.h @@ -1095,6 +1095,7 @@ private: void parachute_release(); bool parachute_manual_release(); void accel_cal_update(void); + void update_soft_armed(); // support for AP_Avoidance custom flight mode, AVOID_ADSB bool avoid_adsb_init(bool ignore_checks); diff --git a/ArduPlane/system.cpp b/ArduPlane/system.cpp index a7cf147ea0..a725acf847 100644 --- a/ArduPlane/system.cpp +++ b/ArduPlane/system.cpp @@ -815,8 +815,7 @@ int8_t Plane::throttle_percentage(void) void Plane::change_arm_state(void) { Log_Arm_Disarm(); - hal.util->set_soft_armed(arming.is_armed() && - hal.util->safety_switch_state() != AP_HAL::Util::SAFETY_DISARMED); + update_soft_armed(); quadplane.set_armed(hal.util->get_soft_armed()); }