hilink: resync MSP VTX table after FC restart
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
diff --git a/osd.c b/osd.c
|
diff --git a/osd.c b/osd.c
|
||||||
index a8b756e..49673da 100644
|
index a8b756e..ac9adf5 100644
|
||||||
--- a/osd.c
|
--- a/osd.c
|
||||||
+++ b/osd.c
|
+++ b/osd.c
|
||||||
@@ -190,6 +190,8 @@ extern bool vtxMenuActive;
|
@@ -190,6 +190,8 @@ extern bool vtxMenuActive;
|
||||||
@@ -11,9 +11,22 @@ index a8b756e..49673da 100644
|
|||||||
extern bool DrawOSD;
|
extern bool DrawOSD;
|
||||||
|
|
||||||
// SRT/OSD
|
// SRT/OSD
|
||||||
@@ -960,48 +962,25 @@ static void rx_msp_callback(msp_msg_t *msp_message) {
|
@@ -959,49 +961,38 @@ static void rx_msp_callback(msp_msg_t *msp_message) {
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
+ case MSP_SET_VTX_CONFIG: {
|
||||||
|
+ // A new FC configuration frame is our lifecycle marker: it occurs after
|
||||||
|
+ // FC boot and after a Configurator save. Require a fresh short stream of
|
||||||
|
+ // VTX state frames before re-advertising the read-only table.
|
||||||
|
+ mspVtxConfigFramesReceived = 0;
|
||||||
|
+ mspVtxTableResentAfterFcTraffic = false;
|
||||||
|
+ if (verbose) {
|
||||||
|
+ printf("mspVTX: FC configuration changed; table sync re-armed\n");
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
case MSP_GET_VTX_CONFIG: {
|
case MSP_GET_VTX_CONFIG: {
|
||||||
- if (vtxInitDone) {
|
- if (vtxInitDone) {
|
||||||
+ // The FC publishes its VTX state only after its MSP descriptor is active.
|
+ // The FC publishes its VTX state only after its MSP descriptor is active.
|
||||||
|
|||||||
Reference in New Issue
Block a user