Skip to content
estebanavv edited this page Mar 5, 2018 · 23 revisions

Ardupilot on OpenPilot Revolution

This is a fork of Ardupilot for OpenPilot Revolution/RevoMini boards and derived family of flight controllers. It contain an HAL written from scratch for the following boards:

  • OpenPilot Revolution / RevoMini (target revomini_Revolution)
  • Airbot F4 (target revomini_airbot)
  • Omnibus F4 V2 Pro (target revomini_airbotV2)
  • Omnibus F4 V3 Pro (target revomini_airbotV2, needs parameter change)
  • CL_Racing_F4 (target revo_cl_racing) also it can be easily ported to similar boards

How to flash: https://github.com/night-ghost/ardupilot/wiki/Flash-firmware

Once the firmware is flashed the various parameters can be configured using a GCS from the Ardupilot project:

Other then the Ardupilot parameters there are HAL parameters specific for this HAL.

OpenPilot Revolution / RevoMini

Revo Ports

Main differences between Revolution and RevoMini are:

  • lack of radio link in the RevoMini (anyway this HAL don't use it)
  • Flexi-IO aka RC Input has 10 pin on Revolution and 8 pin on RevoMini

Main port -> Serial1 (common use: telemetry)

Flexi port -> Serial2 (common use: OSD)

RC Input port pin 7,8 (on Revolution) 5,6 (on RevoMini) -> Serial3 (common use: GPS)

RC Input port pin 9,10 (on Revolution) 7,8 (on RevoMini) -> SCL, SDA (I2C)

RC Input on Revolution

  1. Ground
  2. +5V
  3. NA (PB12, pin 2. Can be used as relay pin)
  4. NA (PB13, pin 3. Can be used as relay pin)
  5. PPM/SBUS/DSM Input 1
  6. PPM/SBUS/DSM Input 2 or Servo7 - see HAL_SERVO_MASK parameter
  7. UART6 TX (SERIAL3 as Ardupilot Parameter) or Servo8
  8. UART6 RX or Servo9
  9. SCL external I2C, Tx SoftSerial if I2C moved to FlexiPort or Servo10
  10. SDA external I2C, Rx SoftSerial if I2C moved to FlexiPort or Servo11

RC Input on RevoMini

  1. Ground
  2. +5V
  3. PPM/SBUS/DSM Input 1
  4. PPM/SBUS/DSM Input 2
  5. UART6 TX (SERIAL3 as Ardupilot Parameter)
  6. UART6 RX
  7. SCL external I2C, Tx SoftSerial if I2C moved to FlexiPort
  8. SDA external I2C, Rx SoftSerial if I2C moved to FlexiPort

Other info for this board on the Readme file.

Airbot F4

Airbot F4

After selecting PPM (both via jumper or removing 0 ohm resistor) UART1 is no more used for RC IN and can be used for telemetry (Serial1 on MP settings). Once PPM is selected this pin can be used for RC IN with PPM/SBUS/DSM, the parser in the HAL is able to understand which protocol are you using and to decode it properly.

Other info for this board on the Readme file.

Omnibus F4 V2 Pro + V3 Pro

Omnibus F4 V2 Pro

Omnibus F4 V3 Pro

It is recommended to set the jumper in PPM. On the V3 there is a three pad jumper: connect with a solder the central pad with PPM pad and cut (if present) the track on the PCB connecting central pad with SBUS.

After selecting PPM (both via jumper or removing 0 ohm resistor) UART1 is no more used for RC IN and can be used for telemetry (Serial1 on MP settings). Once PPM is selected this pin can be used for RC IN with PPM/SBUS/DSM, the parser in the HAL is able to understand which protocol are you using and to decode it properly.

Other info for this board on the Readme file.