// evaluate all other incoming serial data void evaluateOtherData(uint8_t sr) { #ifndef SUPPRESS_OTHER_SERIAL_COMMANDS switch (sr) { // Note: we may receive weird characters here which could trigger unwanted features during flight. // this could lead to a crash easily. // Please use if (!f.ARMED) where neccessary #ifdef LCD_CONF case 's': case 'S': if (!f.ARMED) configurationLoop(); break; #endif #ifdef LOG_PERMANENT_SHOW_AT_L case 'L': if (!f.ARMED) dumpPLog(1); break; #endif #if defined(LCD_TELEMETRY) && defined(LCD_TEXTSTAR) case 'A': // button A press toggle_telemetry(1); break; case 'B': // button B press toggle_telemetry(2); break; case 'C': // button C press toggle_telemetry(3); break; case 'D': // button D press toggle_telemetry(4); break; case 'a': // button A release case 'b': // button B release case 'c': // button C release case 'd': // button D release break; #endif #ifdef LCD_TELEMETRY case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': #ifndef SUPPRESS_TELEMETRY_PAGE_R case 'R': #endif #if defined(DEBUG) || defined(DEBUG_FREE) case 'F': #endif toggle_telemetry(sr); break; #endif // LCD_TELEMETRY } #endif // SUPPRESS_OTHER_SERIAL_COMMANDS }
// evaluate all other incoming serial data void evaluateOtherData(uint8_t sr) { #ifndef SUPPRESS_OTHER_SERIAL_COMMANDS #if GPS #if !defined(I2C_GPS) // on the GPS port, we must avoid interpreting incoming values for other commands because there is no // protocol protection as is with MSP commands // doing so with single chars would be prone to error. if (CURRENTPORT == GPS_SERIAL) return; #endif #endif switch (sr) { // Note: we may receive weird characters here which could trigger unwanted features during flight. // this could lead to a crash easily. // Please use if (!f.ARMED) where neccessary #ifdef LCD_CONF case 's': case 'S': if (!f.ARMED) configurationLoop(); break; #endif #ifdef LOG_PERMANENT_SHOW_AT_L case 'L': if (!f.ARMED) dumpPLog(1); break; #endif #if defined(LCD_TELEMETRY) && defined(LCD_TEXTSTAR) case 'A': // button A press toggle_telemetry(1); break; case 'B': // button B press toggle_telemetry(2); break; case 'C': // button C press toggle_telemetry(3); break; case 'D': // button D press toggle_telemetry(4); break; case 'a': // button A release case 'b': // button B release case 'c': // button C release case 'd': // button D release break; #endif #ifdef LCD_TELEMETRY case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': #ifndef SUPPRESS_TELEMETRY_PAGE_R case 'R': #endif #if defined(DEBUG) || defined(DEBUG_FREE) case 'F': #endif toggle_telemetry(sr); break; #endif // LCD_TELEMETRY } #endif // SUPPRESS_OTHER_SERIAL_COMMANDS }