fix(multi): set bind status explicitly when aborted manually (#2455)

* fix(multi): set bind status explicitly when aborted manually

Fixes #2263

* fix: adjust MPM bind status on B&W as well
This commit is contained in:
Raphael Coeffic
2022-10-06 20:03:39 +10:00
committed by GitHub
parent d014709172
commit f7e3458bac
3 changed files with 17 additions and 6 deletions
+6 -3
View File
@@ -1641,9 +1641,12 @@ void menuModelSetup(event_t event)
moduleState[moduleIdx].mode = newFlag;
#if defined(MULTIMODULE)
if (isModuleMultimodule(moduleIdx) &&
(newFlag == MODULE_MODE_BIND)) {
setMultiBindStatus(moduleIdx, MULTI_BIND_INITIATED);
if (isModuleMultimodule(moduleIdx) && (oldFlag != newFlag)) {
if (newFlag == MODULE_MODE_BIND) {
setMultiBindStatus(moduleIdx, MULTI_BIND_INITIATED);
} else if (getMultiBindStatus(moduleIdx) != MULTI_BIND_NONE) {
setMultiBindStatus(moduleIdx, MULTI_BIND_NONE);
}
}
#endif
if (isModuleDSMP(moduleIdx) &&
+6 -3
View File
@@ -1435,9 +1435,12 @@ void menuModelSetup(event_t event)
}
moduleState[moduleIdx].mode = newFlag;
#if defined(MULTIMODULE)
if (isModuleMultimodule(moduleIdx) &&
(newFlag == MODULE_MODE_BIND)) {
setMultiBindStatus(moduleIdx, MULTI_BIND_INITIATED);
if (isModuleMultimodule(moduleIdx) && (oldFlag != newFlag)) {
if (newFlag == MODULE_MODE_BIND) {
setMultiBindStatus(moduleIdx, MULTI_BIND_INITIATED);
} else if (getMultiBindStatus(moduleIdx) != MULTI_BIND_NONE) {
setMultiBindStatus(moduleIdx, MULTI_BIND_NONE);
}
}
#endif
if (isModuleDSMP(moduleIdx) &&
+5
View File
@@ -284,6 +284,11 @@ void ModuleWindow::updateModule()
}
if (moduleState[moduleIdx].mode == MODULE_MODE_BIND) {
moduleState[moduleIdx].mode = MODULE_MODE_NORMAL;
#if defined(MULTIMODULE)
if (isModuleMultimodule(moduleIdx)) {
setMultiBindStatus(moduleIdx, MULTI_BIND_NONE);
}
#endif
#if defined(AFHDS2)
if (isModuleFlySky(moduleIdx)) resetPulsesAFHDS2();
#endif