mirror of
https://github.com/iNavFlight/inav.git
synced 2025-07-13 11:29:56 +03:00
[mspv2] pass "flags" field back to sender, define ILMI flag (#10464)
This commit is contained in:
parent
180d337dbd
commit
9fb51e0655
2 changed files with 7 additions and 6 deletions
|
@ -2717,7 +2717,7 @@ static mspResult_e mspFcProcessInCommand(uint16_t cmdMSP, sbuf_t *src)
|
||||||
vtxSettingsConfigMutable()->lowPowerDisarm = sbufReadU8(src);
|
vtxSettingsConfigMutable()->lowPowerDisarm = sbufReadU8(src);
|
||||||
}
|
}
|
||||||
|
|
||||||
// API version 1.42 - extension for pitmode frequency
|
// API version 1.42 - extension for pitmode frequency
|
||||||
if (sbufBytesRemaining(src) >= 2) {
|
if (sbufBytesRemaining(src) >= 2) {
|
||||||
sbufReadU16(src); //skip pitModeFreq
|
sbufReadU16(src); //skip pitModeFreq
|
||||||
}
|
}
|
||||||
|
@ -2738,15 +2738,15 @@ static mspResult_e mspFcProcessInCommand(uint16_t cmdMSP, sbuf_t *src)
|
||||||
if (sbufBytesRemaining(src) >= 2) {
|
if (sbufBytesRemaining(src) >= 2) {
|
||||||
sbufReadU16(src); // freq
|
sbufReadU16(src); // freq
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sbufBytesRemaining(src) >= 3) {
|
if (sbufBytesRemaining(src) >= 3) {
|
||||||
sbufReadU8(src); // band count
|
sbufReadU8(src); // band count
|
||||||
sbufReadU8(src); // channel count
|
sbufReadU8(src); // channel count
|
||||||
|
|
||||||
uint8_t newPowerCount = sbufReadU8(src);
|
uint8_t newPowerCount = sbufReadU8(src);
|
||||||
if (newPowerCount > 0 && newPowerCount < (vtxDevice->capability.powerCount)) {
|
if (newPowerCount > 0 && newPowerCount < (vtxDevice->capability.powerCount)) {
|
||||||
vtxDevice->capability.powerCount = newPowerCount;
|
vtxDevice->capability.powerCount = newPowerCount;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2944,7 +2944,7 @@ static mspResult_e mspFcProcessInCommand(uint16_t cmdMSP, sbuf_t *src)
|
||||||
if (sublinkID == 0) {
|
if (sublinkID == 0) {
|
||||||
rxLinkStatistics.uplinkTXPower = sbufReadU16(src);
|
rxLinkStatistics.uplinkTXPower = sbufReadU16(src);
|
||||||
rxLinkStatistics.downlinkTXPower = sbufReadU16(src);
|
rxLinkStatistics.downlinkTXPower = sbufReadU16(src);
|
||||||
|
|
||||||
for (int i = 0; i < 4; i++) {
|
for (int i = 0; i < 4; i++) {
|
||||||
rxLinkStatistics.band[i] = sbufReadU8(src);
|
rxLinkStatistics.band[i] = sbufReadU8(src);
|
||||||
}
|
}
|
||||||
|
@ -4249,7 +4249,7 @@ mspResult_e mspFcProcessCommand(mspPacket_t *cmd, mspPacket_t *reply, mspPostPro
|
||||||
if (cmd->flags & MSP_FLAG_DONT_REPLY) {
|
if (cmd->flags & MSP_FLAG_DONT_REPLY) {
|
||||||
ret = MSP_RESULT_NO_REPLY;
|
ret = MSP_RESULT_NO_REPLY;
|
||||||
}
|
}
|
||||||
|
reply->flags = cmd->flags;
|
||||||
reply->result = ret;
|
reply->result = ret;
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
|
@ -46,6 +46,7 @@ typedef struct mspPacket_s {
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
MSP_FLAG_DONT_REPLY = (1 << 0),
|
MSP_FLAG_DONT_REPLY = (1 << 0),
|
||||||
|
MSP_FLAG_ILMI = (1 << 1), // "In-Line Message identifier"
|
||||||
} mspFlags_e;
|
} mspFlags_e;
|
||||||
|
|
||||||
struct serialPort_s;
|
struct serialPort_s;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue