diff --git a/package/msposd/0001-wifilink-mspvtx-read-only.patch b/package/msposd/0001-wifilink-mspvtx-read-only.patch index fe79aad..96441df 100644 --- a/package/msposd/0001-wifilink-mspvtx-read-only.patch +++ b/package/msposd/0001-wifilink-mspvtx-read-only.patch @@ -58,10 +58,43 @@ index a8b756e..eefb4d6 100644 } 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 +++ 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) { @@ -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 index 089fdc2..49d60fc 100644 --- a/osd/util/interface.c