Add OneBit mode to HARDWARE menu. OneBit mode can help if your radio

has a slow inverter circuit by changing the UART sampling behaviour.

* It was found that the X9D+ and X7 (maybe others) have a slow inveter
that messes up reception of fast (400,000baud) UART signals.  On the
scope the rise time of the signal is very long.
* See RM0033 24.3.3 Receiver / Selecting the proper oversampling method.
Page 631.


Also note that reducing the pull-up resistor from 10k to 1k at R82
(X9D+) / R406 (X7) will also help with the rise times.  However on the
X7 changing the resistor is not enough, OneBit is needed too.
This commit is contained in:
Hydra
2021-05-20 23:24:04 +02:00
committed by Raphael Coeffic
parent 343073cfed
commit 2f27c3c1a6
16 changed files with 92 additions and 16 deletions
@@ -77,6 +77,9 @@ void telemetryPortInit(uint32_t baudrate, uint8_t mode)
}
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
USART_InitStructure.USART_Mode = USART_Mode_Tx | USART_Mode_Rx;
if (g_eeGeneral.uartSampleMode == UART_SAMPLE_MODE_ONEBIT) {
USART_OneBitMethodCmd(TELEMETRY_USART, ENABLE);
}
USART_Init(TELEMETRY_USART, &USART_InitStructure);
USART_Cmd(TELEMETRY_USART, ENABLE);