feat(mpm): increase Spektrum/DSM max channels to 16 (2.12) (#7632)
Co-authored-by: Peter Feerick <5500713+pfeerick@users.noreply.github.com> Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
committed by
Peter Feerick
co-authored by
Peter Feerick
Claude Sonnet 5
parent
5a75b5146d
commit
0819f8d5c0
@@ -365,11 +365,7 @@ int ModuleData::getMaxChannelCount()
|
||||
case PULSES_DSMX:
|
||||
return 6;
|
||||
case PULSES_MULTIMODULE:
|
||||
if (multi.rfProtocol == MODULE_SUBTYPE_MULTI_DSM2)
|
||||
return 12;
|
||||
else
|
||||
return 16;
|
||||
break;
|
||||
return 16;
|
||||
case PULSES_FLYSKY_AFHDS2A:
|
||||
return 14;
|
||||
case PULSES_FLYSKY_AFHDS3:
|
||||
|
||||
@@ -66,7 +66,7 @@ int8_t maxModuleChannels_M8(uint8_t moduleIdx)
|
||||
return 8; // always 16 channels in FCC / FLEX
|
||||
}
|
||||
} else if (isModuleMultimoduleDSM2(moduleIdx)) {
|
||||
return 4; // 12 channels
|
||||
return 8; // 16 channels with new MultiModule Firmware. Older firmware will still work up to 12ch.
|
||||
} else if (isModuleDSMP(moduleIdx)) {
|
||||
return 4; // 12 channels
|
||||
} else {
|
||||
|
||||
@@ -366,7 +366,7 @@ void sendFrameProtocolHeader(uint8_t*& p_buf, uint8_t module, bool failsafe)
|
||||
optionValue |= 0x40; // 11ms servo refresh
|
||||
if (g_model.moduleData[module].multi.optionValue & 0x04)
|
||||
optionValue |= 0x20; // Cloned
|
||||
optionValue |= sentModuleChannels(module); //add number of channels
|
||||
optionValue |= sentModuleChannels(module) & 0x0F; //add number of channels, make sure is only 4 bits, 0 means 16 channels.
|
||||
}
|
||||
|
||||
// Set the highest bit of option byte in AFHDS2A protocol to instruct MULTI to passthrough telemetry bytes instead
|
||||
|
||||
Reference in New Issue
Block a user