How Can We Help?
RC RX PWM to SBUS
with the SynerduinoSTM being digital it uses a Serial means to connect RC Receiver to the board , is also means the PPM or SBUS needs to be converted.
Fortunately there are existent of PWM ,PPM ,SBUS ,IBUS ,XBus Converters in the market to aid you with this conversion issue
8Ch Arduino PWM ,PPM ,SBUS Converter
Alternatively there is also a DIY method as well using an Arduino to do the conversion as well
18Ch Arduino PWM ,SBUS Converter
start with:
- An Arduino with a Atmega328 or 328p chip on it. (Promini , Nano , UNO R3)
- IDE to program the chip with this code.
How:?
8ch Converter
- Used Arduino IDE to program this firmware onto the Arduino chip.
- Connect upto 8 RC PWM input signals so that the wires go to: red = 5v black = GND or 0V pin on arduino white = PWM signal pins, these connect to D2,D3,D4,D5,D6,D7,D8,D9,
- Connect the PPM output so that the wires go to: red = 5v black = GND or 0V PPM out = D10
18ch PWM – Sbus Converter
- 18 channels of R/C-style PWM input (nominal 1ms to 2ms positive pulses at nominally 50Hz to 100Hz)
- inputs are on D2-D13, A0-A5,
- outputs inverted SBUS on TX0.
18ch Sbus-PWM Converter
- SBUS to PWM
- for ATmega328 16MHz (Nano, Uno, Pro Micro, etc)
- inverted SBUS signal into RX0
- all 18 channels out on D2-D13, A0-A5
18Ch Sbus Monitor
- // 18 channels of R/C-style PWM input (nominal 1ms to 2ms positive pulses at nominally 50Hz to 100Hz)
- // inputs are on D2-D13, A0-A5,
- // outputs the 18 channels via Serial port at 115200 baud.
- // use Arduino IDE Serial Monitor to view channels – displays all 18 channels on one row in half-microsecond units
- // better, use Arduino IDE Serial Plotter, to view channels graphically
Done!
TIPS:
- any channel that you don’t connect a PWM input on, will emit a default value ( which is 1500 for all channels except throttle, which is 1100.) unless modify to provide basic fail safe function
- disconnecting any channel after booting will cause the system to use the last-known-position of the input, until a good signal returns.
- having pin PC3 (Arduino A3) pulled high on startup produces human readable serial 115200,8n1 output of the channel data instead of sbus
- This is not a “failsafe” unit, if has no failsafe functionality. Failsafe is done by the Receiver so please study your Radio transmitter should it have any.
- use this Code / Circuit with precaution , expect unwanted behavior if it should occur