Skip to content

SwifPro Max Drone Setup Guide

Overview

This guide will walk you through the steps to set up your drone using Ardupilot firmware. The process involves selecting the appropriate firmware, flashing it to your flight controller, and configuring it using Mission Planner.

Step 1: Choose Firmware Type

Ardupilot Firmware

This is a versatile and widely used open-source firmware designed for various types of drones and vehicles. It supports advanced features such as autonomous flight, waypoint navigation, and mission planning. Ardupilot is continuously updated by a dedicated community, ensuring compatibility with a range of hardware and providing robust support for new technologies. To get started, you can easily download the latest firmware version tailored for your flight controller from the official Ardupilot repository.

  • Custom Ardupilot Firmware
This is also an open-source firmware designed to perform some exceptional task which the standerd firmware cannot perform. This firmware can perform all operations that a standerd firmware has and can also perform FlowHold mode. That's a addon feature of the custom firmware. This Custom firmware is made form Ardupilot Custom Firmware.
If we want to fly drone in FlowHold Mode.
FeatureArduPilot Standard Stable VersionArduPilot Custom Version
Flowhold ModeNot availableAvailable

Step 2: Choose Flight Controller Type

Select the appropriate flight controller for your drone. Examples include:

  • Flywoo 745

Step 3: Download or Build Firmware

File TypeStable ReleaseCustom Version
Firmware Hex FileDownload from Ardupilot FirmwareDownload Custom Firmware
Parameter FilesDownload Stable ParamDownload Custom Param
  • If You want to to use flowHold Mode in your drone download the Custom Firmware

  • Note: If Drone does not respond properly while flying please use default stable version insted of custom version.

  • Download Firmware: Obtain any of the following file types: .hex, .apj, or .elf from the Ardupilot firmware repository or other sources.

  • Ardupilot provides pre-built open-source binaries in .hex, .elf, and .apj formats.

  • Visit the latest stable version release page, select your flight controller, and download the binary file that matches your preferred boot method. Stable Dowanlad Process

  • If you download .hex or .elf, you will need to download the STM32 CUBE PROGRAMMER and follow the official documentation to set it up on your device.

  • If you download the .apj file, download Mission Planner and follow the official documentation for installing the software on your device.

Step 4: Flash Firmware to Flight Controller

  1. Using Cube Programmer (.hex or .elf) After successful setup, open the application and follow the steps outlined below.

    Step 1: Press and hold the boot button until the power cable is connected to the PC/laptop.

    Step 2: Open Cube Programmer and select the USB option. You should see PORT: USB1 in the USB Configuration.

    Note: If USB1 is not detected, repeat Step 1.

    Step 3: Press the connect button and open the `.hex` or `.elf` file.

    Step 4: Click the Download button, wait for a successful download, and then disconnect the cable from the PC.

    Cube Programmer Firmware Download Process

  1. Using Mission Planner (.apj) After successful setup, open the application and follow the steps outlined below.

    Step 1: Connect the data cable to the laptop/PC and check if you can see any COM port.

    Step 2: Click "Initial Setup" in the navigation bar, then select "Install Firmware" and click the "Load custom firmware" link.

    Step 3: Select the `.apj` file and open it; this will automatically download the firmware.

    If needed, refer to Ardupilot for more details.

Step 5: Configure Parameters

Connect to Mission Planner:

  • Open Mission Planner.
  • Select the COM port at the top right corner and click Connect.

1. Set Param for Stable Firmware

  • Select Full Parameter List.
  • Click the Load From File option on the right side panel.
  • use the swiftProMaxStable.param downloaded from above.
  • Upload the swiftProMaxStable.param file.
  • Click on Write parameter and confirm with "OK" or "YES" for default parameters.
  • Note: Upload the files and write the parameter 3 times to ensure all the param are successfully set.
  • press Ctrl+F and press reboot Pixhawk.

2. Set Param for Custom Firmware

  • Select Full Parameter List.
  • Click the Load From File option on the right side panel.
  • use the swiftProMaxCustom.param downloaded from above.
  • Upload the swiftProMaxCustom.param file.
  • Click on Write parameter and confirm with "OK" or "YES" for default parameters.
  • Note: Upload the files and write the parameter 3 times to ensure all the param are successfully set.
  • press Ctrl+F and press reboot Pixhawk.

Step 6: Calibrate & Test Drone

  1. Connect to Mission Planner:
    • Open Mission Planner.
    • Select the COM port at the top right corner and click Connect.

  1. Accelerometer Calibration

    • Click the Setup Icon in the navigation bar.
    • Select "Accel Calibration" from the left panel in Mandatory Hardware.
    • Select "Calibrate Accel" to start the full 3-axis calibration.
    Accelerometer Calibration

    Mission Planner will prompt you to place the vehicle on each axis during the calibration. Press any key to indicate that the autopilot is in position and then proceed to the next orientation.

    The calibration positions are: level, right side, left side, nose down, nose up, and on its back.

    Proceed through the required positions, using the "Click when Done" button once each position is reached and held still. Upon completion, Mission Planner will display “Calibration Successful!”


  1. Compass Calibration

    Select Compass from the left panel in Mandatory Hardware.

    Untick Use Compass 2 and Use Compass 3.

    Click on the Start Button.

    Hold the vehicle in the air and rotate it so that each side (Nose Up, Nose Down, left, right, top, and bottom) points down towards the Earth for a few seconds. Consider performing a full 360-degree turn with each orientation pointing towards the ground. This may require multiple turns to confirm calibration or to retry if it initially does not pass.


  1. Radio Calibration
    • On your RadioMaster, select the Drone Model and ensure it is connected to the drone.
    • Note: Ensure the battery is not connected.
    • Select "Radio Calibration" from the left panel in Mandatory Hardware.
    • Move the controller stick; you should see the minimum and maximum levels of RC channels.
    • Ensure it is increasing and decreasing according to the stick movements; otherwise, refer to the documentation.

radioCalibration1
radioCalibration2
radioCalibration3
radioCalibration4
  1. Flight Mode
    • Select the Flight Modes option in Mandatory Hardware.
    • On your Radio Master, there is a second button labeled SB on the top left corner with a tri-state output.
    • Flight Mode
    • You will see that switching the buttons changes the mode highlighted in green in Mission Planner.
    • Select the appropriate mode, or keep it as default. The safest mode is Stabilize.

  1. Motor Test
    • Note: Turn off the RC receiver and Remove the Propellers of drone to ensure safety.
    • In the Optional Hardware section, open "Motor Test."
    • The direction of the propeller is explained in the diagram below.
    • Motor Direction Legend
    • The drone frame type is Betaflight X, so the direction of propellers is shown below.
    • Motor Direction
    • Click the "Test Motor" [option] and ensure the direction mentioned in Mission Planner matches the diagram above.

Step 7: Rangefinder and Optical Flow Data

  • Go to the Data icon on the navigation bar.
  • Click the right arrow and select the status icon as shown in the figure below.
  • Status
  • Check the Rangefinder1 value by lifting the drone to a height by hand.
  • Also, observe the Sonar value changing as you move your drone.
  • In the world map frame at the bottom left, ensure the sat count is more than 10 if you are flying in PosHold Mode. This requires being in open ground and clear weather to receive a strong GPS signal.

By following this step you can successfully setup your SwiftProMax.

Note: Always adhere to safety protocols during setup and testing to avoid any damage to your drone or potential injury.

  • You can also check all the sensors working correctly after connecting battery in Mission Planner.
  • Press Ctrl + F in mission Planner.
  • Some Highlighted parts should be Ok and correct before the flight. ctrlF

Note: Always adhere to safety protocols during setup and testing to avoid any damage to your drone or potential injury.

Let's understand the indepth parameter we set in our swiftProMaxCustom.param list.

  1. Frame Shape
  • This parameter Defines the class and type which helps the firmware to set the basics dynamics accourding vehical type and its frame.
  • Different types of moter angles in Frame, number of moters defines the dynamics of drone.
  • Go to CONFIG --> Full parameter List --> FRAME
  • FRAME_CLASS Value = 1 (Quad)
  • FRAME_TYPE Value = 12 (BetaFlightX)

  1. Arming Checks
  • This parameter helps to define safety modes for Arming of drone.
  • Most of the big drone often has many safety checks, but in this drone since it is small we do not require any arming checks, so disable it.
  • Go to CONFIG --> Full parameter List --> ARMING
  • ARMING_CHECK Value = 0 (No Arming Checks required)

  1. EK3 Sensor Fusion (Extended Kalman Filter)
  • An Extended Kalman Filter (EKF) algorithm is used to estimate vehicle position, velocity and angular orientation based on rate gyroscopes, accelerometer, compass, GPS, airspeed and barometric pressure measurements.
  • Go to CONFIG --> Full parameter List --> EK3 --> EK3_SRC1
  • EK3_SRC1_POSZ Value = 2 (RangeFinder)
  • EK3_SRC1_VELXY Value = 5 (Opticalflow)
  • EKF3 supports in-flight switching of sensors which can be useful for transitioning between GPS and Non-GPS environments. See GPS / Non-GPS Transitions for more details.
  • Go to CONFIG --> Full parameter List --> EK3 --> EK3_SRC2
  • EK3_SRC1_POSZ Value = 1 (Baro)

  1. Flight Mode Channel Selection
  • The firmware need to know from which channel the different flight mode are switching. So in this case it is swiching from Channel6.
  • Go to CONFIG --> Full parameter List --> FLTMODE
  • FLTMODE_CH Value = 6 (Channel6)

  1. Arming/Disarming
  • Setting a button to arm/disarm.
  • Go to CONFIG --> Full parameter List --> RC5
  • RC5_OPTION value = 153(ArmDisarm (4.2 and Higher)), it basically means firmware version 4.2.x and above.

  1. RangeFinder Settings
  • This sensor is a replacement for GPS values of z-axis. The drone calculate its height using rangefinder sensor.
  • Go to CONFIG --> Full parameter List --> RNGFND1
  • RNGFND1_TYPE value = 16 (VL53L0X or VL53L1X)
  • RNGFND1_ADDR value = 41 (It uses I2C protocol so we need o specify the address)
  • RNGFND1_MAX_CM value = 120 (CM)
  • RNGFND1_MIN_CM value = 5 (CM)
  • RNGFND1_SCALING value = 1 (m/V)

  1. Serial Ports
  • Go to SETUP --> Mandatory Hardware -->Serial Ports
  • SERIAL PORT2 UART2 Speed = 57600 and Protocol = RCIN.
  • SERIAL PORT4 UART4 Speed = 115200 and Protocol = OpticalFlow.
  • SERIAL PORT6 UART6 Speed = 57600 and Protocol = GPS
  • All others ports keep the protocol to None.

  1. Flight Modes
  • Depending on the applications we use differnt flight modes.
  • Go to SETUP --> Mandatory Hardware -->Flight Modes
  • Flight Mode 1 Keep in Stabilize mode.
  • Flight Mode 4 Keep in AltHOLD mode.
  • Flight Mode 6 Keep in PosHOLD mode.

Additional Resources