diff --git a/src/msp_displayport.c b/src/msp_displayport.c index a343ffa..59828a3 100644 --- a/src/msp_displayport.c +++ b/src/msp_displayport.c @@ -1055,6 +1055,11 @@ void parse_vtx_params(uint8_t isMSP_V2) { return; } + // Ignore unknown/unsupported VTX devices + if (msp_rx_buf[0] == VTXDEV_UNKNOWN || msp_rx_buf[0] == VTXDEV_UNSUPPORTED) { + return; + } + fc_pwr_rx = msp_rx_buf[3]; if (fc_pwr_rx == 0) { fc_pwr_rx = POWER_MAX+2; // 0mW diff --git a/src/msp_displayport.h b/src/msp_displayport.h index b9516e4..2d49603 100644 --- a/src/msp_displayport.h +++ b/src/msp_displayport.h @@ -112,6 +112,16 @@ typedef enum { VTX_MENU_SAVE_EXIT, } vtx_menu_state_e; +typedef enum { + VTXDEV_UNSUPPORTED = 0, // reserved for MSP + VTXDEV_RTC6705 = 1, + // 2 reserved + VTXDEV_SMARTAUDIO = 3, + VTXDEV_TRAMP = 4, + VTXDEV_MSP = 5, + VTXDEV_UNKNOWN = 0xFF, +} vtxDevType_e; + typedef enum { DISPLAY_OSD, DISPLAY_CMS,