8 changed files with 247 additions and 125 deletions
@ -0,0 +1,38 @@ |
|||||||
|
/**************************************************************************** |
||||||
|
* |
||||||
|
* (c) 2009-2016 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org> |
||||||
|
* |
||||||
|
* QGroundControl is licensed according to the terms in the file |
||||||
|
* COPYING.md in the root of the source code directory. |
||||||
|
* |
||||||
|
****************************************************************************/ |
||||||
|
|
||||||
|
import QtQuick 2.3 |
||||||
|
|
||||||
|
import QGroundControl 1.0 |
||||||
|
import QGroundControl.Controls 1.0 |
||||||
|
import QGroundControl.Vehicle 1.0 |
||||||
|
|
||||||
|
PreFlightCheckButton { |
||||||
|
name: qsTr("Global position estimate") |
||||||
|
|
||||||
|
property int _unhealthySensors: _activeVehicle ? _activeVehicle.sensorsUnhealthyBits : 0 |
||||||
|
property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle |
||||||
|
|
||||||
|
on_UnhealthySensorsChanged: updateItem() |
||||||
|
on_ActiveVehicleChanged: updateItem() |
||||||
|
|
||||||
|
Component.onCompleted: updateItem() |
||||||
|
|
||||||
|
function updateItem() { |
||||||
|
if (!_activeVehicle) { |
||||||
|
state = stateNotChecked |
||||||
|
} else { |
||||||
|
if (_unhealthySensors & Vehicle.SysStatusSensorAHRS) { |
||||||
|
state = stateMajorIssue |
||||||
|
} else { |
||||||
|
state = statePassed |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,48 @@ |
|||||||
|
/**************************************************************************** |
||||||
|
* |
||||||
|
* (c) 2009-2016 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org> |
||||||
|
* |
||||||
|
* QGroundControl is licensed according to the terms in the file |
||||||
|
* COPYING.md in the root of the source code directory. |
||||||
|
* |
||||||
|
****************************************************************************/ |
||||||
|
|
||||||
|
import QtQuick 2.3 |
||||||
|
|
||||||
|
import QGroundControl 1.0 |
||||||
|
import QGroundControl.Controls 1.0 |
||||||
|
import QGroundControl.Vehicle 1.0 |
||||||
|
|
||||||
|
// This class stores the data and functions of the check list but NOT the GUI (which is handled somewhere else). |
||||||
|
PreFlightCheckButton { |
||||||
|
name: qsTr("Battery") |
||||||
|
pendingtext: qsTr("Healthy & charged > %1. Battery connector firmly plugged?").arg(failureVoltage) |
||||||
|
|
||||||
|
property int failureVoltage: 40 |
||||||
|
|
||||||
|
property int _unhealthySensors: _activeVehicle ? _activeVehicle.sensorsUnhealthyBits : 0 |
||||||
|
property var _batPercentRemaining: _activeVehicle ? _activeVehicle.battery.percentRemaining.value : 0 |
||||||
|
property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle |
||||||
|
|
||||||
|
on_BatPercentRemainingChanged: updateItem() |
||||||
|
on_UnhealthySensorsChanged: updateItem() |
||||||
|
on_ActiveVehicleChanged: updateItem() |
||||||
|
|
||||||
|
Component.onCompleted: updateItem() |
||||||
|
|
||||||
|
function updateItem() { |
||||||
|
if (!_activeVehicle) { |
||||||
|
state = stateNotChecked |
||||||
|
} else { |
||||||
|
if (_unhealthySensors & Vehicle.SysStatusSensorBattery) { |
||||||
|
failuretext = qsTr("Not healthy. Check console.") |
||||||
|
state = stateMajorIssue |
||||||
|
} else if (_batPercentRemaining < failureVoltage) { |
||||||
|
failuretext = qsTr("Low (below %1). Please recharge.").arg(failureVoltage) |
||||||
|
state = stateMajorIssue |
||||||
|
} else { |
||||||
|
state = _nrClicked > 0 ? statePassed : statePending |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,40 @@ |
|||||||
|
/**************************************************************************** |
||||||
|
* |
||||||
|
* (c) 2009-2016 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org> |
||||||
|
* |
||||||
|
* QGroundControl is licensed according to the terms in the file |
||||||
|
* COPYING.md in the root of the source code directory. |
||||||
|
* |
||||||
|
****************************************************************************/ |
||||||
|
|
||||||
|
import QtQuick 2.3 |
||||||
|
|
||||||
|
import QGroundControl 1.0 |
||||||
|
import QGroundControl.Controls 1.0 |
||||||
|
import QGroundControl.Vehicle 1.0 |
||||||
|
|
||||||
|
PreFlightCheckButton { |
||||||
|
name: qsTr("Radio Control") |
||||||
|
pendingtext: qsTr("Receiving signal. Perform range test & confirm.") |
||||||
|
failuretext: qsTr("No signal or invalid autopilot-RC config. Check RC and console.") |
||||||
|
|
||||||
|
property int _unhealthySensors: _activeVehicle ? _activeVehicle.sensorsUnhealthyBits : 0 |
||||||
|
property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle |
||||||
|
|
||||||
|
on_UnhealthySensorsChanged: updateItem() |
||||||
|
on_ActiveVehicleChanged: updateItem() |
||||||
|
|
||||||
|
Component.onCompleted: updateItem() |
||||||
|
|
||||||
|
function updateItem() { |
||||||
|
if (!_activeVehicle) { |
||||||
|
state = stateNotChecked |
||||||
|
} else { |
||||||
|
if (_unhealthySensors & Vehicle.SysStatusSensorRCReceiver) { |
||||||
|
state = stateMajorIssue |
||||||
|
} else { |
||||||
|
state = _nrClicked > 0 ? statePassed : statePending |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,56 @@ |
|||||||
|
/**************************************************************************** |
||||||
|
* |
||||||
|
* (c) 2009-2016 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org> |
||||||
|
* |
||||||
|
* QGroundControl is licensed according to the terms in the file |
||||||
|
* COPYING.md in the root of the source code directory. |
||||||
|
* |
||||||
|
****************************************************************************/ |
||||||
|
|
||||||
|
import QtQuick 2.3 |
||||||
|
|
||||||
|
import QGroundControl 1.0 |
||||||
|
import QGroundControl.Controls 1.0 |
||||||
|
import QGroundControl.Vehicle 1.0 |
||||||
|
|
||||||
|
PreFlightCheckButton { |
||||||
|
name: qsTr("Sensors") |
||||||
|
|
||||||
|
property int _unhealthySensors: _activeVehicle ? _activeVehicle.sensorsUnhealthyBits : 0 |
||||||
|
property bool _gpsLock: _activeVehicle ? _activeVehicle.gps.lock.rawValue>=3 : 0 |
||||||
|
property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle |
||||||
|
|
||||||
|
on_GpsLockChanged: updateItem() |
||||||
|
on_UnhealthySensorsChanged: updateItem() |
||||||
|
on_ActiveVehicleChanged: updateItem() |
||||||
|
|
||||||
|
Component.onCompleted: updateItem() |
||||||
|
|
||||||
|
function updateItem() { |
||||||
|
if (!_activeVehicle) { |
||||||
|
state = stateNotChecked |
||||||
|
} else { |
||||||
|
if(!(_unhealthySensors & Vehicle.SysStatusSensor3dMag) && |
||||||
|
!(_unhealthySensors & Vehicle.SysStatusSensor3dAccel) && |
||||||
|
!(_unhealthySensors & Vehicle.SysStatusSensor3dGyro) && |
||||||
|
!(_unhealthySensors & Vehicle.SysStatusSensorAbsolutePressure) && |
||||||
|
!(_unhealthySensors & Vehicle.SysStatusSensorDifferentialPressure) && |
||||||
|
!(_unhealthySensors & Vehicle.SysStatusSensorGPS)) { |
||||||
|
if (!_gpsLock) { |
||||||
|
pendingtext = qsTr("Pending. Waiting for GPS lock.") |
||||||
|
state = statePending |
||||||
|
} else { |
||||||
|
state = statePassed |
||||||
|
} |
||||||
|
} else { |
||||||
|
if (_unhealthySensors & Vehicle.SysStatusSensor3dMag) failuretext=qsTr("Failure. Magnetometer issues. Check console.") |
||||||
|
else if(_unhealthySensors & Vehicle.SysStatusSensor3dAccel) failuretext=qsTr("Failure. Accelerometer issues. Check console.") |
||||||
|
else if(_unhealthySensors & Vehicle.SysStatusSensor3dGyro) failuretext=qsTr("Failure. Gyroscope issues. Check console.") |
||||||
|
else if(_unhealthySensors & Vehicle.SysStatusSensorAbsolutePressure) failuretext=qsTr("Failure. Barometer issues. Check console.") |
||||||
|
else if(_unhealthySensors & Vehicle.SysStatusSensorDifferentialPressure) failuretext=qsTr("Failure. Airspeed sensor issues. Check console.") |
||||||
|
else if(_unhealthySensors & Vehicle.SysStatusSensorGPS) failuretext=qsTr("Failure. No valid or low quality GPS signal. Check console.") |
||||||
|
state = stateMajorIssue |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,46 @@ |
|||||||
|
/**************************************************************************** |
||||||
|
* |
||||||
|
* (c) 2009-2016 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org> |
||||||
|
* |
||||||
|
* QGroundControl is licensed according to the terms in the file |
||||||
|
* COPYING.md in the root of the source code directory. |
||||||
|
* |
||||||
|
****************************************************************************/ |
||||||
|
|
||||||
|
import QtQuick 2.3 |
||||||
|
|
||||||
|
import QGroundControl 1.0 |
||||||
|
import QGroundControl.Controls 1.0 |
||||||
|
import QGroundControl.Vehicle 1.0 |
||||||
|
|
||||||
|
PreFlightCheckButton { |
||||||
|
name: qsTr("Sound output") |
||||||
|
pendingtext: qsTr("QGC audio output enabled. System audio output enabled, too?") |
||||||
|
failuretext: qsTr("Failure, QGC audio output is disabled. Please enable it under application settings->general to hear audio warnings!") |
||||||
|
|
||||||
|
property bool _audioMuted: QGroundControl.settingsManager.appSettings.audioMuted.rawValue |
||||||
|
property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle |
||||||
|
|
||||||
|
on_AudioMutedChanged: updateItem() |
||||||
|
on_ActiveVehicleChanged: updateItem() |
||||||
|
|
||||||
|
Component.onCompleted: updateItem() |
||||||
|
|
||||||
|
function onActiveVehicleChanged() { |
||||||
|
buttonSoundOutput.updateItem(); // Just updated here for initialization once we connect to a vehicle |
||||||
|
updateVehicleDependentItems(); |
||||||
|
} |
||||||
|
|
||||||
|
function updateItem() { |
||||||
|
if (!_activeVehicle) { |
||||||
|
state = stateNotChecked |
||||||
|
} else { |
||||||
|
if (_audioMuted) { |
||||||
|
state = stateMajorIssue |
||||||
|
_nrClicked = 0 |
||||||
|
} else { |
||||||
|
state = _nrClicked > 0 ? statePassed : statePending |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue