diff --git a/radio/src/cli.cpp b/radio/src/cli.cpp index 0e1d41370..669ac9634 100644 --- a/radio/src/cli.cpp +++ b/radio/src/cli.cpp @@ -498,11 +498,13 @@ int cliDebugVars(const char ** argv) #if defined(PCBHORUS) extern uint32_t ioMutexReq, ioMutexRel; extern uint32_t sdReadRetries; - serialPrint("ioMutexReq=%d", ioMutexReq); serialPrint("ioMutexRel=%d", ioMutexRel); serialPrint("sdReadRetries=%d", sdReadRetries); +#elif defined(PCBTARANIS) + serialPrint("telemetryErrors=%d", telemetryErrors); #endif + return 0; } diff --git a/radio/src/targets/taranis/board_taranis.h b/radio/src/targets/taranis/board_taranis.h index 3c53bd828..8f7adf706 100644 --- a/radio/src/targets/taranis/board_taranis.h +++ b/radio/src/targets/taranis/board_taranis.h @@ -325,6 +325,7 @@ void telemetryPortInit(uint32_t baudrate); void telemetryPortSetDirectionOutput(void); void sportSendBuffer(uint8_t * buffer, uint32_t count); int telemetryGetByte(uint8_t * byte); +extern uint32_t telemetryErrors; // Audio driver void audioInit(void) ; diff --git a/radio/src/targets/taranis/telemetry_driver.cpp b/radio/src/targets/taranis/telemetry_driver.cpp index 2098aba3f..0718ce059 100644 --- a/radio/src/targets/taranis/telemetry_driver.cpp +++ b/radio/src/targets/taranis/telemetry_driver.cpp @@ -21,6 +21,7 @@ #include "opentx.h" Fifo telemetryFifo; +uint32_t telemetryErrors = 0; void telemetryPortInit(uint32_t baudrate) { @@ -125,7 +126,10 @@ extern "C" void TELEMETRY_USART_IRQHandler(void) uint32_t status = TELEMETRY_USART->SR; while (status & (USART_FLAG_RXNE | USART_FLAG_ERRORS)) { uint8_t data = TELEMETRY_USART->DR; - if (!(status & USART_FLAG_ERRORS)) { + if (status & USART_FLAG_ERRORS) { + telemetryErrors++; + } + else { telemetryFifo.push(data); } status = TELEMETRY_USART->SR;