Commit 4e1acc5e authored by Mariano Lizarraga's avatar Mariano Lizarraga

Merge branch 'master' of git@pixhawk.ethz.ch:qgroundcontrol into checkRemote

parents b95fd4cb 3b544d55
...@@ -258,7 +258,7 @@ bool MAVLinkXMLParser::generate() ...@@ -258,7 +258,7 @@ bool MAVLinkXMLParser::generate()
packLines += QString("\ti += put_%1_by_index(%2, %3, i, msg->payload); //%4\n").arg(arrayType, fieldName, QString::number(arrayLength), e2.text()); packLines += QString("\ti += put_%1_by_index(%2, %3, i, msg->payload); //%4\n").arg(arrayType, fieldName, QString::number(arrayLength), e2.text());
// Add decode function for this type // Add decode function for this type
decodeLines += QString("\tmavlink_msg_%1_get_%2(msg, %1->%2);\n").arg(messageName, fieldName); decodeLines += QString("\tmavlink_msg_%1_get_%2(msg, %1->%2);\n").arg(messageName, fieldName);
arrayDefines += QString("#define MAVLINK_MSG_%1_FIELD_%2_LEN %3").arg(messageName.toUpper(), fieldName.toUpper(), QString::number(arrayLength)); arrayDefines += QString("#define MAVLINK_MSG_%1_FIELD_%2_LEN %3\n").arg(messageName.toUpper(), fieldName.toUpper(), QString::number(arrayLength));
} }
else if (fieldType.startsWith("string")) else if (fieldType.startsWith("string"))
{ {
...@@ -273,7 +273,7 @@ bool MAVLinkXMLParser::generate() ...@@ -273,7 +273,7 @@ bool MAVLinkXMLParser::generate()
packLines += QString("\ti += put_%1_by_index(%2, %3, i, msg->payload); //%4\n").arg(arrayType, fieldName, QString::number(arrayLength), e2.text()); packLines += QString("\ti += put_%1_by_index(%2, %3, i, msg->payload); //%4\n").arg(arrayType, fieldName, QString::number(arrayLength), e2.text());
// Add decode function for this type // Add decode function for this type
decodeLines += QString("\tmavlink_msg_%1_get_%2(msg, %1->%2);\n").arg(messageName, fieldName); decodeLines += QString("\tmavlink_msg_%1_get_%2(msg, %1->%2);\n").arg(messageName, fieldName);
arrayDefines += QString("#define MAVLINK_MSG_%1_FIELD_%2_LEN %3").arg(messageName.toUpper(), fieldName.toUpper(), QString::number(arrayLength)); arrayDefines += QString("#define MAVLINK_MSG_%1_FIELD_%2_LEN %3\n").arg(messageName.toUpper(), fieldName.toUpper(), QString::number(arrayLength));
} }
else else
// Handle simple types like integers and floats // Handle simple types like integers and floats
......
...@@ -940,21 +940,20 @@ void UAS::enableExtra3Transmission(bool enabled) ...@@ -940,21 +940,20 @@ void UAS::enableExtra3Transmission(bool enabled)
} }
void UAS::setParameter(int component, QString id, float value) void UAS::setParameter(int component, QString id, float value)
{ {
mavlink_message_t msg; mavlink_message_t msg;
mavlink_param_set_t p; mavlink_param_set_t p;
p.param_value = value; p.param_value = value;
p.target_system = (uint8_t)uasId; p.target_system = (uint8_t)uasId;
p.target_component = (uint8_t)component; p.target_component = (uint8_t)component;
// Copy string into buffer, ensuring not to exceed the buffer size // Copy string into buffer, ensuring not to exceed the buffer size
char* s = (char*)id.toStdString().c_str();
for (unsigned int i = 0; i < sizeof(p.param_id); i++) for (unsigned int i = 0; i < sizeof(p.param_id); i++)
{ {
// String characters // String characters
if ((int)i < id.length() && i < (sizeof(p.param_id) - 1)) if ((int)i < id.length() && i < (sizeof(p.param_id) - 1))
{ {
p.param_id[i] = s[i]; p.param_id[i] = id.toAscii()[i];
} }
// Null termination at end of string or end of buffer // Null termination at end of string or end of buffer
else if ((int)i == id.length() || i == (sizeof(p.param_id) - 1)) else if ((int)i == id.length() || i == (sizeof(p.param_id) - 1))
...@@ -966,7 +965,7 @@ void UAS::setParameter(int component, QString id, float value) ...@@ -966,7 +965,7 @@ void UAS::setParameter(int component, QString id, float value)
{ {
p.param_id[i] = 0; p.param_id[i] = 0;
} }
} }
mavlink_msg_param_set_encode(mavlink->getSystemId(), mavlink->getComponentId(), &msg, &p); mavlink_msg_param_set_encode(mavlink->getSystemId(), mavlink->getComponentId(), &msg, &p);
sendMessage(msg); sendMessage(msg);
} }
......
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