hilink: serialize MSP VTX tables correctly
This commit is contained in:
@@ -58,10 +58,43 @@ index a8b756e..eefb4d6 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/osd/msp/msp.c b/osd/msp/msp.c
|
diff --git a/osd/msp/msp.c b/osd/msp/msp.c
|
||||||
index b1a538c..bdb443e 100644
|
index b1a538c..bb8c44e 100644
|
||||||
--- a/osd/msp/msp.c
|
--- a/osd/msp/msp.c
|
||||||
+++ b/osd/msp/msp.c
|
+++ b/osd/msp/msp.c
|
||||||
@@ -144,22 +144,26 @@ void setVtxTablePowerLevel(int serial_fd, uint8_t idx) {
|
@@ -69,7 +69,7 @@ void wipeVtxTable(int serial_fd, int band, int channel) {
|
||||||
|
uint8_t buffer[256];
|
||||||
|
|
||||||
|
construct_msp_command(buffer, MSP_SET_VTX_CONFIG, payload, sizeof(payload), MSP_OUTBOUND);
|
||||||
|
- write(serial_fd, &buffer, sizeof(buffer));
|
||||||
|
+ write(serial_fd, buffer, sizeof(payload) + 6);
|
||||||
|
|
||||||
|
// now prepare the table
|
||||||
|
payload[0] = 0; // idx LSB
|
||||||
|
@@ -89,7 +89,7 @@ void wipeVtxTable(int serial_fd, int band, int channel) {
|
||||||
|
payload[14] = 0; // vtxtable should be cleared
|
||||||
|
|
||||||
|
construct_msp_command(buffer, MSP_SET_VTX_CONFIG, payload, sizeof(payload), MSP_OUTBOUND);
|
||||||
|
- write(serial_fd, &buffer, sizeof(buffer));
|
||||||
|
+ write(serial_fd, buffer, sizeof(payload) + 6);
|
||||||
|
}
|
||||||
|
|
||||||
|
void setVtxTableBand(int serial_fd, uint8_t band) {
|
||||||
|
@@ -119,7 +119,7 @@ void setVtxTableBand(int serial_fd, uint8_t band) {
|
||||||
|
}
|
||||||
|
|
||||||
|
construct_msp_command(buffer, MSP_SET_VTXTABLE_BAND, payload2, sizeof(payload2), MSP_OUTBOUND);
|
||||||
|
- write(serial_fd, &buffer, sizeof(buffer));
|
||||||
|
+ write(serial_fd, buffer, sizeof(payload2) + 6);
|
||||||
|
}
|
||||||
|
|
||||||
|
void setVtxTablePowerLevel(int serial_fd, uint8_t idx) {
|
||||||
|
@@ -139,27 +139,31 @@ void setVtxTablePowerLevel(int serial_fd, uint8_t idx) {
|
||||||
|
|
||||||
|
construct_msp_command(
|
||||||
|
buffer, MSP_SET_VTXTABLE_POWERLEVEL, payload2, sizeof(payload2), MSP_OUTBOUND);
|
||||||
|
- write(serial_fd, &buffer, sizeof(buffer));
|
||||||
|
+ write(serial_fd, buffer, sizeof(payload2) + 6);
|
||||||
|
}
|
||||||
|
|
||||||
void msp_set_vtx_config(int serial_fd) {
|
void msp_set_vtx_config(int serial_fd) {
|
||||||
|
|
||||||
@@ -95,6 +128,24 @@ index b1a538c..bdb443e 100644
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
diff --git a/osd/msp/msp.h b/osd/msp/msp.h
|
||||||
|
index 3e60a31..772aaed 100644
|
||||||
|
--- a/osd/msp/msp.h
|
||||||
|
+++ b/osd/msp/msp.h
|
||||||
|
@@ -40,10 +40,10 @@
|
||||||
|
// wfb-ng list
|
||||||
|
|
||||||
|
#define CHANNEL_COUNT 8
|
||||||
|
-#define BAND_COUNT 8
|
||||||
|
+#define BAND_COUNT 7
|
||||||
|
#define IS_FACTORY_BAND 0
|
||||||
|
-#define FREQ_TABLE_SIZE 64
|
||||||
|
-#define FREQ_LABEL_SIZE 64
|
||||||
|
+#define FREQ_TABLE_SIZE 56
|
||||||
|
+#define FREQ_LABEL_SIZE 56
|
||||||
|
|
||||||
|
#define MSP_REBOOT 68 // in message reboot settings
|
||||||
|
|
||||||
diff --git a/osd/util/interface.c b/osd/util/interface.c
|
diff --git a/osd/util/interface.c b/osd/util/interface.c
|
||||||
index 089fdc2..49d60fc 100644
|
index 089fdc2..49d60fc 100644
|
||||||
--- a/osd/util/interface.c
|
--- a/osd/util/interface.c
|
||||||
|
|||||||
Reference in New Issue
Block a user