Variant IBUS - EFeru/hoverboard-firmware-hack-FOC GitHub Wiki

This variant can be used with Flysky RC Receivers compatible with IBUS protocol.
It will send all channels on a single wire like PPM, but is more reliable as it is a digital protocol using a USART frame and checksum.

⚠ Ibus telemetry is not handled by the firmware

⚙️ Configuration/Parameters

Voltage Control Mode is used by default.
Ibus control is reusing some of the USART control parameters.
Use CONTROL_SERIAL_USART3 and FEEDBACK_SERIAL_USART3 for the right sensor cable(default), or CONTROL_SERIAL_USART2 and FEEDBACK_SERIAL_USART2 for left sensor cable.
IBUS_NUM_CHANNELS is the number of channels for IBUS and is 14 by default. As an example Flysky fs-i6ab or RX2A receivers are sending 14 channels even when used with a 6 channel transmitter

Please also check the parameters that are common to all the variants.

🔌 Wiring:

  • Connect your receiver VCC to 3.3v from programming port, 5v from hall sensor cable, or a voltage regulator, ⚠️ Red wire from sensor cable delivers 15v !!!
  • Connect IBUS/Servo port of your receiver to green wire on the cable selected in config.h
  • Connect the receiver to ground, ⚠️ On some boards, the black wire is 15v !!! Check with a multi-meter to make sure 15V and ground are not swapped

Transmitter configuration:

  • Enable IBUS
  • Assign desired joystick to channel 1(steering) and channel 2(throttle)

🎛️ Calibration:

Proceed with calibration for better control.

🧰 Troubleshooting:

If the board is beeping

  • Check the number of channels, even if you transmitter only handles 6 channels, you receiver might transmit more channels
  • Make sure you enabled IBUS on your transmitter, on some models it is activated together with PPM
  • Make sure you are using the sensor cable(left=CONTROL_SERIAL_USART2 or right=CONTROL_SERIAL_USART3) selected in config.h
  • On some boards the wire colors might differ, try the blue wire
  • If you have added capacitors for PWM/PPM, remove it
  • You might have a defective MCU input, a missing 101 smd resistor or with too high resistance (e.g. issue), you can configure the firmware to work on the other cable
⚠️ **GitHub.com Fallback** ⚠️