Direct SBUS Output on Ardupilot-Linux ports [Expired]

Topic: Direct SBUS Output on Ardupilot-Linux ports

Proposal type: Hardware [ ] , Software [x ] , Other [ ] : _________________

Description:
Implementing a 100kb/s inverted uart would facilitate simple linux ports without requiring a pca9685 or px4IO to externally generate pwm - it could be done simply via an easy to access sbus converter. UARTs are generally at a premium on SBC’s, but it should be possible to bit-bang. If it was a bi-directional uart, this would also provide SBUS input. If it was pin assignable via a param this may make it easily portable and aid broader uptake for Ardupilot on Linux (input and output seems to be more difficult than sensor drivers).
Planned amount $$ (USD): unknown

Estimated time for completion: Unknown - this is a suggestion, as I don’t have the skills to do it myself!

bit-banging this will be quite difficult I think, it would only work if we could DMA to the pin. If we had a hw inverter then adding SBUS out would be quite easy.

a very simple board for this would be simple… a hardware proposal maybe?

Thanks for responding Tridge. Hardware inversion is easy enough, although I was hoping a full sw solution would be possible :frowning:

You’re probably pretty busy, but I can rig up a couple of simple hw inverter options (diode/resistor bridge & max232 should both work), if you’re interested.

Regards,

James

I’ve actually got an inverter here somewhere on my desk. I think it is this one:

all that is really needed is a spare UART and a few hundred lines of code.

Yep, uart + inverter is what you need. We support RCInput with sbus using exactly that. On Intel Aero the uart lines pass through an fpga so it’s very easy to invert them. But it could be done with any inverter.

It’s true that uarts on most SBCs are premium, but you can also add more through expansion ports (USB, sdio, spirit, etc)

1 Like

Some progress here:

1 Like