perhapsleiana
Elite member
I think I have working code already, but it's good to know that Teensy boards can natively do inverted serial. also I chuckled at how you said "ultra high performance" because I don't think anything beats an STM32F7 or ATSAMD51 board. I have a couple projects that have Adafruit Metro M4 boards in them, my latest uses a Grand Central running 32 bits at 180 MHz. However, then ya gotta deal with 3.3v logic all over, often too fast for conventional level shifters.I like the frsky sbus receivers. I am sure you can find many sbus parsing libraries online, but here is my sbus parsing code if it helps, feel free to copy or borrow from it.
https://github.com/RiceCreekUAS/rc-fmu/blob/master/src/sensors/sbus/sbus.cpp
Note the sbus signal line is inverted from standard serial so I bought a little $3 hardware logic inverter to read sbus onto an atmega chip. Now I'm running teensy (ultra high performance arduino) boards and those can handle inverted serial natively. I use the hardware PWM generators to drive the PWM servos.
Of course every project is a little different and every diy'er has different ideas and different goals, so it is fun to see what every one else is up to and how they go about solving things.
All that being said, do you think an Uno is fast enough to read and process the SBUS data and send servo commands to an i2c servo controller once per packet? If not, I have a spare Metro M4 laying around, as well as a Grand Central M4, and I could venture into the Blue Pill realm, which I haven't done yet.