From b9e053e103dcee48e4cce687f258281ab65a0491 Mon Sep 17 00:00:00 2001 From: DonLakeFlyer Date: Sat, 27 Apr 2019 14:44:07 -0700 Subject: [PATCH] Add support for ESC Calibration --- .../APM/APMPowerComponent.qml | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/src/AutoPilotPlugins/APM/APMPowerComponent.qml b/src/AutoPilotPlugins/APM/APMPowerComponent.qml index 7bb93fc8e..2e703566e 100644 --- a/src/AutoPilotPlugins/APM/APMPowerComponent.qml +++ b/src/AutoPilotPlugins/APM/APMPowerComponent.qml @@ -45,6 +45,8 @@ SetupPage { property bool _batt2ParamsAvailable: controller.parameterExists(-1, "BATT2_CAPACITY") property bool _showBatt1Reboot: _batt1MonitorEnabled && !_batt1ParamsAvailable property bool _showBatt2Reboot: _batt2MonitorEnabled && !_batt2ParamsAvailable + property bool _escCalibrationAvailable: controller.parameterExists(-1, "ESC_CALIBRATION") + property Fact _escCalibration: controller.getParameterFact(-1, "ESC_CALIBRATION", false /* reportMissing */) property string _restartRequired: qsTr("Requires vehicle reboot") @@ -217,6 +219,61 @@ SetupPage { } } } + + Column { + spacing: _margins / 2 + visible: _escCalibrationAvailable + + QGCLabel { + text: qsTr("ESC Calibration") + font.family: ScreenTools.demiboldFontFamily + } + + Rectangle { + width: escCalibrationHolder.x + escCalibrationHolder.width + _margins + height: escCalibrationHolder.y + escCalibrationHolder.height + _margins + color: ggcPal.windowShade + + Column { + id: escCalibrationHolder + x: _margins + y: _margins + spacing: _margins + + Column { + spacing: _margins + + QGCLabel { + text: qsTr("WARNING: Remove props prior to calibration!") + color: qgcPal.warningText + } + + Row { + spacing: _margins + + QGCButton { + text: qsTr("Calibrate") + enabled: _escCalibration.rawValue === 0 + onClicked: _escCalibration.rawValue = 3 + } + + Column { + enabled: _escCalibration.rawValue === 3 + QGCLabel { text: _escCalibration.rawValue === 3 ? qsTr("Now perform these steps:") : qsTr("Click Calibrate to start, then:") } + QGCLabel { text: qsTr("- Disconnect USB and battery so flight controller powers down") } + QGCLabel { text: qsTr("- Connect the battery") } + QGCLabel { text: qsTr("- The arming tone will be played (if the vehicle has a buzzer attached)") } + QGCLabel { text: qsTr("- If using a flight controller with a safety button press it until it displays solid red") } + QGCLabel { text: qsTr("- You will hear a musical tone then two beeps") } + QGCLabel { text: qsTr("- A few seconds later you should hear a number of beeps (one for each battery cell you’re using)") } + QGCLabel { text: qsTr("- And finally a single long beep indicating the end points have been set and the ESC is calibrated") } + QGCLabel { text: qsTr("- Disconnect the battery and power up again normally") } + } + } + } + } + } + } } // Flow } // Component - powerPageComponent -- 2.22.0