diff --git a/src/AutoPilotPlugins/PX4/CameraComponent.qml b/src/AutoPilotPlugins/PX4/CameraComponent.qml index 6234a6420e7d3f018c9645b2b689c00ce3fe0946..09034962e42f937562f6fb58a7c82088b4ce8966 100644 --- a/src/AutoPilotPlugins/PX4/CameraComponent.qml +++ b/src/AutoPilotPlugins/PX4/CameraComponent.qml @@ -36,6 +36,7 @@ QGCView { property real _editFieldWidth: ScreenTools.defaultFontPixelWidth * 16 property Fact _camTriggerMode: controller.getParameterFact(-1, "TRIG_MODE") + property Fact _camTriggerInterface: controller.getParameterFact(-1, "TRIG_INTERFACE", false) property Fact _camTriggerPol: controller.getParameterFact(-1, "TRIG_POLARITY", false) // Don't bitch about missing as these only exist if trigger mode is enabled property Fact _auxPins: controller.getParameterFact(-1, "TRIG_PINS", false) // Ditto @@ -145,7 +146,6 @@ QGCView { spacing: _margins * 0.5 anchors.verticalCenter: parent.verticalCenter Row { - visible: !controller.fixedWing QGCLabel { anchors.baseline: camTrigCombo.baseline width: _middleRowWidth @@ -162,6 +162,24 @@ QGCView { } } } + Row { + visible: _camTriggerInterface ? true : false + QGCLabel { + anchors.baseline: camInterfaceCombo.baseline + width: _middleRowWidth + text: qsTr("Trigger interface:") + } + FactComboBox { + id: camInterfaceCombo + width: _editFieldWidth + fact: _camTriggerInterface + indexModel: false + enabled: !_rebooting + onActivated: { + applyAndRestart.visible = true + } + } + } Row { QGCLabel { text: qsTr("Time Interval") @@ -269,6 +287,7 @@ QGCView { } Item { width: _margins * 0.5; height: 1; } Column { + visible: !_camTriggerInterface || (_camTriggerInterface.value === 1) spacing: _margins * 0.5 anchors.verticalCenter: parent.verticalCenter QGCLabel { diff --git a/src/AutoPilotPlugins/PX4/CameraComponentSummary.qml b/src/AutoPilotPlugins/PX4/CameraComponentSummary.qml index 565ec1fc2ae5bd8b33d7c914dc63abbebbd16ffd..6ebc862a4f0dadaeadfec48c7456df132a6a826c 100644 --- a/src/AutoPilotPlugins/PX4/CameraComponentSummary.qml +++ b/src/AutoPilotPlugins/PX4/CameraComponentSummary.qml @@ -15,6 +15,7 @@ FactPanel { FactPanelController { id: controller; factPanel: panel } property Fact _camTriggerMode: controller.getParameterFact(-1, "TRIG_MODE", false) + property Fact _camTriggerInterface: controller.getParameterFact(-1, "TRIG_INTERFACE", false) property Fact _camTriggerPol: controller.getParameterFact(-1, "TRIG_POLARITY", false) // Don't bitch about missing as these only exist if trigger mode is enabled property Fact _auxPins: controller.getParameterFact(-1, "TRIG_PINS", false) // Ditto property Fact _timeInterval: controller.getParameterFact(-1, "TRIG_INTERVAL", false) // Ditto @@ -23,6 +24,11 @@ FactPanel { Column { anchors.fill: parent + VehicleSummaryRow { + labelText: qsTr("Trigger interface:") + valueText: _camTriggerInterface ? _camTriggerInterface.enumStringValue : "" + } + VehicleSummaryRow { labelText: qsTr("Trigger mode:") valueText: _camTriggerMode ? _camTriggerMode.enumStringValue : "" diff --git a/src/FirmwarePlugin/PX4/PX4ParameterFactMetaData.xml b/src/FirmwarePlugin/PX4/PX4ParameterFactMetaData.xml index ca121441ec82742dd869b97641bfa92621b41ea7..e9b1495288b7c2d5abc7525284a178bf10cff06c 100644 --- a/src/FirmwarePlugin/PX4/PX4ParameterFactMetaData.xml +++ b/src/FirmwarePlugin/PX4/PX4ParameterFactMetaData.xml @@ -392,6 +392,16 @@ velocity + + Camera trigger Interface + Selects the trigger interface + true + drivers/camera_trigger + + GPIO + Seagull MAP2 (PWM) + + Camera trigger interval This parameter sets the time between two consecutive trigger events @@ -435,7 +445,7 @@ velocity Distance, mission controlled - + Camera trigger pin Selects which pin is used, ranges from 1 to 6 (AUX1-AUX6) 1