Unverified Commit 683ffe67 authored by Don Gagne's avatar Don Gagne Committed by GitHub

Merge pull request #7510 from DonLakeFlyer/ParamSet

ArduPilot: Fix parameter write broken by non-ArduPilot component changes
parents 6b49fdee 38ae14b4
...@@ -295,6 +295,11 @@ void APMFirmwarePlugin::_handleOutgoingParamSet(Vehicle* vehicle, LinkInterface* ...@@ -295,6 +295,11 @@ void APMFirmwarePlugin::_handleOutgoingParamSet(Vehicle* vehicle, LinkInterface*
mavlink_msg_param_set_decode(message, &paramSet); mavlink_msg_param_set_decode(message, &paramSet);
if (!_ardupilotComponentMap[paramSet.target_system][paramSet.target_component]) {
// Message is targetted to non-ArduPilot firmware component, assume it uses current mavlink spec
return;
}
paramUnion.param_float = paramSet.param_value; paramUnion.param_float = paramSet.param_value;
switch (paramSet.param_type) { switch (paramSet.param_type) {
...@@ -502,14 +507,11 @@ bool APMFirmwarePlugin::adjustIncomingMavlinkMessage(Vehicle* vehicle, mavlink_m ...@@ -502,14 +507,11 @@ bool APMFirmwarePlugin::adjustIncomingMavlinkMessage(Vehicle* vehicle, mavlink_m
void APMFirmwarePlugin::adjustOutgoingMavlinkMessage(Vehicle* vehicle, LinkInterface* outgoingLink, mavlink_message_t* message) void APMFirmwarePlugin::adjustOutgoingMavlinkMessage(Vehicle* vehicle, LinkInterface* outgoingLink, mavlink_message_t* message)
{ {
// Only translate messages which come from ArduPilot code. All other components are expected to follow current mavlink spec.
if (_ardupilotComponentMap[vehicle->id()][message->compid]) {
switch (message->msgid) { switch (message->msgid) {
case MAVLINK_MSG_ID_PARAM_SET: case MAVLINK_MSG_ID_PARAM_SET:
_handleOutgoingParamSet(vehicle, outgoingLink, message); _handleOutgoingParamSet(vehicle, outgoingLink, message);
break; break;
} }
}
} }
QString APMFirmwarePlugin::_getMessageText(mavlink_message_t* message, bool longVersion) const QString APMFirmwarePlugin::_getMessageText(mavlink_message_t* message, bool longVersion) const
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment