I have noticed that sbus_rx.Read() lags a lot in below example code with Teensy 4.1 but works great with Teensy 3.2. I am currently using a receiver with already inverted signal Oversky XR602T-A2 running at 3.3V. No problems at all with T3.2 as said. I'm wondering if the T4.1 expects a non-already reversed input? Can I define this Option for T4.1? Or is it the higher clock speed in T4.1?
I have used a "only input" version of the Arduino example in the lib:
#include "sbus.h"
/* SbusRx object on Serial1 */
bfs::SbusRx sbus_rx(&Serial1);
/* Array for storing SBUS data */
std::array<int16_t, bfs::SbusRx::NUM_CH()> sbus_data;
void setup() {
/* Serial to display the received data */
Serial.begin(115200);
while (!Serial) {}
/* Begin the SBUS communication */
sbus_rx.Begin();
}
void loop() {
if (sbus_rx.Read()) {
/* Grab the received data */
sbus_data = sbus_rx.ch();
/* Display the received data 6 channels */
for (int8_t i = 0; i < 6; i++) {
Serial.print(sbus_data);
Serial.print("\t");
}
Serial.println();
}
}
I have used a "only input" version of the Arduino example in the lib:
#include "sbus.h"
/* SbusRx object on Serial1 */
bfs::SbusRx sbus_rx(&Serial1);
/* Array for storing SBUS data */
std::array<int16_t, bfs::SbusRx::NUM_CH()> sbus_data;
void setup() {
/* Serial to display the received data */
Serial.begin(115200);
while (!Serial) {}
/* Begin the SBUS communication */
sbus_rx.Begin();
}
void loop() {
if (sbus_rx.Read()) {
/* Grab the received data */
sbus_data = sbus_rx.ch();
/* Display the received data 6 channels */
for (int8_t i = 0; i < 6; i++) {
Serial.print(sbus_data);
Serial.print("\t");
}
Serial.println();
}
}