Browse Source

Merge pull request #6378 from bluerobotics/patrickelectric/fix_168

Limit output of camera and lights using brd_pwm_count
QGC4.4
Don Gagne 7 years ago committed by GitHub
parent
commit
cfe7e26538
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 32
      src/AutoPilotPlugins/APM/APMCameraComponent.qml
  2. 32
      src/AutoPilotPlugins/APM/APMLightsComponent.qml

32
src/AutoPilotPlugins/APM/APMCameraComponent.qml

@ -170,17 +170,29 @@ SetupPage {
ListModel { ListModel {
id: gimbalOutModel id: gimbalOutModel
// It appears that QGCComboBox can't handle models that don't have a initial item
// after onModelChanged
ListElement { text: qsTr("Disabled"); value: 0 } ListElement { text: qsTr("Disabled"); value: 0 }
ListElement { text: qsTr("Channel 5"); value: 5 }
ListElement { text: qsTr("Channel 6"); value: 6 } function update(number) {
ListElement { text: qsTr("Channel 7"); value: 7 } // Not enough channels
ListElement { text: qsTr("Channel 8"); value: 8 } if(number < 6) {
ListElement { text: qsTr("Channel 9"); value: 9 } return
ListElement { text: qsTr("Channel 10"); value: 10 } }
ListElement { text: qsTr("Channel 11"); value: 11 } for(var i = 5; i <= number; i++) {
ListElement { text: qsTr("Channel 12"); value: 12 } var text = qsTr("Channel ") + i
ListElement { text: qsTr("Channel 13"); value: 13 } append({"text": text, "value": i})
ListElement { text: qsTr("Channel 14"); value: 14 } }
}
Component.onCompleted: {
// Number of main outputs
var baseValue = 8
// Extra outputs
// http://ardupilot.org/copter/docs/parameters.html#brd-pwm-count-auxiliary-pin-config
var brd_pwm_count_value = controller.getParameterFact(-1, "BRD_PWM_COUNT").value
update(8 + (brd_pwm_count_value == 7 ? 3 : brd_pwm_count_value))
}
} }
Component { Component {

32
src/AutoPilotPlugins/APM/APMLightsComponent.qml

@ -132,17 +132,29 @@ SetupPage {
ListModel { ListModel {
id: lightsOutModel id: lightsOutModel
// It appears that QGCComboBox can't handle models that don't have a initial item
// after onModelChanged
ListElement { text: qsTr("Disabled"); value: 0 } ListElement { text: qsTr("Disabled"); value: 0 }
ListElement { text: qsTr("Channel 5"); value: 5 }
ListElement { text: qsTr("Channel 6"); value: 6 } function update(number) {
ListElement { text: qsTr("Channel 7"); value: 7 } // Not enough channels
ListElement { text: qsTr("Channel 8"); value: 8 } if(number < 6) {
ListElement { text: qsTr("Channel 9"); value: 9 } return
ListElement { text: qsTr("Channel 10"); value: 10 } }
ListElement { text: qsTr("Channel 11"); value: 11 } for(var i = 5; i <= number; i++) {
ListElement { text: qsTr("Channel 12"); value: 12 } var text = qsTr("Channel ") + i
ListElement { text: qsTr("Channel 13"); value: 13 } append({"text": text, "value": i})
ListElement { text: qsTr("Channel 14"); value: 14 } }
}
Component.onCompleted: {
// Number of main outputs
var baseValue = 8
// Extra outputs
// http://ardupilot.org/copter/docs/parameters.html#brd-pwm-count-auxiliary-pin-config
var brd_pwm_count_value = controller.getParameterFact(-1, "BRD_PWM_COUNT").value
update(8 + (brd_pwm_count_value == 7 ? 3 : brd_pwm_count_value))
}
} }
Component { Component {

Loading…
Cancel
Save