Main Content

Hardware Setup for QAV250 Multicopter

R2026b

This topic shows how to assemble the QAV250 multicopter, install indoor positioning sensors, integrate a Raspberry Pi® Zero 2W companion computer, and verify system operation. For information about assembling the QAV250 frame, see the QAV250 Quickstart Guide in the PX4 documentation.

Note

Complete the QAV250 Quickstart Guide before following this topic. The quickstart guide covers frame assembly, power system wiring, and initial power-up verification. Verify the assembly before proceeding with Pixhawk 6C integration, companion computer setup, and indoor sensor installation.

Safety and Required Tools

Before you begin assembly, gather the required tools and follow safety guidelines.

Required Tools.  

  • Hex driver set (M2, M2.5, M3)

  • Temperature-controlled soldering iron (350 °C)

  • Wire strippers and flush cutters

  • Multimeter

  • Heat-shrink tubing and zip ties

  • Double-sided mounting tape (for example, 3M™ VHB™)

  • Thread-locking compound (for example, Loctite® Blue)

Warning

Remove propellers before performing any powered testing. Do not arm the vehicle indoors without propeller guards. Use a fire-safe LiPo bag when charging batteries.

Assemble Frame, Power System, and Pixhawk 6C

After completing the QAV250 Quickstart Guide, mount the Pixhawk 6C flight controller on the assembled frame and connect motors and ESCs.

  1. Mount the Pixhawk 6C on vibration-damping foam on the top plate. Ensure the arrow faces forward.

  2. Connect ESC signal wires to the Pixhawk 6C MAIN OUT ports (1–4).

  3. Connect the power module to the Pixhawk 6C POWER1 port and the battery connector.

  4. Connect the RC receiver to the RC IN port.

After completing the assembly, the QAV250 multicopter with Pixhawk 6C should look similar to the following figure.

Top view of fully assembled QAV250 multicopter.

The following figure shows the Pixhawk 6C Mini flight controller with Raspberry Pi CSI camera module, and PMW3901 optical flow sensor mounted on the QAV250 frame.

Close-up view of the center section showing the Pixhawk 6C Mini flight controller with vibration damping foam, Raspberry Pi CSI camera module, and PMW3901 optical flow sensor mounted on the QAV250 frame.

The following figure shows the assembled QAV250 multicopter with the battery secured, Pixhawk 6C Mini flight controller, Raspberry Pi Zero 2W connected through a CSI ribbon cable, wiring, and motors fitted with red propellers.

Side profile view of the assembled QAV250 multicopter showing the battery mounted with velcro straps, Pixhawk 6C Mini flight controller, Raspberry Pi Zero 2W with CSI ribbon cable, wiring, and motors with red propellers.

This image shows a side view of the assembled QAV250 multicopter with the Pixhawk 6C Mini, Raspberry Pi Zero 2W connected through USB.

Side view of assembled QAV250 showing Pixhawk 6C Mini FMU Debug port, Raspberry Pi Zero 2W connected via USB, battery with velcro straps, and FrSky RC receiver.

The following figure shows a close-up side view of the assembled QAV250 multicopter, highlighting the Raspberry Pi Zero 2W USB port connected to the Pixhawk 6C Mini, with the wiring harness and battery also visible.

Close-up side view of assembled QAV250 showing the Raspberry Pi Zero 2W USB port connected to the Pixhawk 6C Mini, with wiring harness and battery visible.

Verify Assembly with QGroundControl.  Connect the hardware to QGroundControl and perform these verification checks:

  1. Connect the Pixhawk 6C to the host computer using a USB cable and verify that QGroundControl detects the flight controller.

    QGroundControl Vehicle Configuration summary screen showing detected Pixhawk 6C Mini with airframe, flight modes, joystick, power, radio, safety, and sensor status panels.

  2. Confirm that the power module reports valid voltage readings. Navigate to Vehicle Setup > Power and verify the battery configuration.

    QGroundControl Power configuration screen showing Battery 1 set to Power Module source with 3 cells in series, 3.60 V empty voltage, and 4.05 V full voltage per cell.

  3. Navigate to Vehicle Setup > Actuators and test each motor individually. Verify that:

    • Front-left and rear-right motors rotate counterclockwise (CCW).

    • Front-right and rear-left motors rotate clockwise (CW).

    QGroundControl Actuators screen showing motor test interface with motor positions and spin directions displayed on the quadcopter diagram, with individual motor sliders for testing.

  4. Verify that all sensors are detected in Vehicle Setup > Sensors.

Warning

Remove all propellers before performing motor tests. Ensure the vehicle is secured and cannot move.

Install Indoor Positioning Sensors

Install the optical flow sensor and Time-of-Flight (ToF) rangefinder to enable position estimation in GPS-denied environments.

Optical Flow Sensor

This example uses the PMW3901 Optical Flow Sensor, which communicates over UART. In this example flight configuration, the PMW3901 is connected to the TELEM2 port on the Pixhawk 6C.

  1. Mount the PMW3901 optical flow sensor on the underside of the frame, facing downward. Ensure the orientation matches PX4® requirements.

  2. Connect the optical flow sensor to the Pixhawk 6C TELEM2 port.

The following figures show the PMW3901 optical flow sensor and its connection to the Pixhawk 6C Mini TELEM port.

PMW3901 optical flow sensor next to Pixhawk 6C Mini flight controller, showing the UART cable used for connection to the TELEM port.

The following figure shows the PMW3901 optical flow sensor connected to the Pixhawk 6C Mini TELEM port through a UART cable, illustrating the wiring between the sensor and the flight controller.

PMW3901 optical flow sensor connected to the Pixhawk 6C Mini TELEM port via UART cable, showing the wiring from the sensor to the flight controller.

For detailed configuration instructions, see PMW3901-Based Flow Sensors in the PX4 documentation to configure the Holybro PMW3901 with the Pixhawk 6C.

Verify Optical Flow.  In QGroundControl, open the MAVLink Inspector and verify that OPTICAL_FLOW_RAD messages are present with valid data.

Range Finder (Time-of-Flight)

This example uses the ST VL53L1X Lidar, which communicates over I2C.

  1. Mount the ST VL53L1X ToF rangefinder on the underside of the frame, facing downward.

  2. Connect the rangefinder to the Pixhawk 6C external I2C port.

The following figures show the Pixhawk 6C Mini with both the PMW3901 optical flow sensor and VL53L1X rangefinder connected, and the side view showing the FMU Debug and I2C ports.

Pixhawk 6C Mini with PMW3901 optical flow sensor connected to TELEM port and VL53L1X rangefinder connected to I2C port, showing both sensors with their respective cables.

The following figure shows a side view of the Pixhawk 6C Mini, showing the FMU Debug, I2C, and GPS2 ports, with the PMW3901 optical flow sensor and VL53L1X rangefinder connected through their respective cables.

Side view of Pixhawk 6C Mini showing the FMU Debug port, I2C port, and GPS2 port, with PMW3901 and VL53L1X sensors connected via their respective cables.

For detailed configuration instructions, see Distance Sensors (Rangefinders) in the PX4 documentation.

Verify Range Finder

In QGroundControl, open Analyze Tools > MAVLink Inspector and verify that DISTANCE_SENSOR messages report valid distance values.

QGroundControl MAVLink Inspector showing DISTANCE_SENSOR and LOCAL_POSITION_NED messages with valid data, confirming that the rangefinder and position estimation are active.

Verify Sensor Fusion

Confirm that the estimator (EKF) fuses both sensors for position estimation without GPS. In QGroundControl, verify that the EKF status is healthy and position estimation is active.

Integrate Companion Computer (Raspberry Pi Zero 2W)

Set up the Raspberry Pi Zero 2W and connect it to the Pixhawk 6C as a companion computer.

For initial operating system setup, see Set Up Operating System on Raspberry Pi Board (Raspberry Pi Blockset). For hardware setup details, see Hardware Setup for Raspberry Pi Blockset (Raspberry Pi Blockset).

  1. Flash Raspberry Pi OS Lite (64-bit) to a microSD card.

  2. Enable SSH in the Raspberry Pi configuration using raspi-config or by placing an empty ssh file on the boot partition.

  3. Enable the CSI camera interface in the Raspberry Pi configuration using raspi-config > Interface Options > Camera.

  4. Connect the Raspberry Pi Camera Module to the CSI interface on the Raspberry Pi Zero 2W.

    This image shows the Raspberry Pi camera module with the CSI ribbon cable connected, showing the display cable adapter used to connect the Pi Camera Module.

    Raspberry Pi Zero 2W with CSI ribbon cable connected, showing the display cable adapter used for the Pi Camera Module connection.

    This image shows the Raspberry Pi Camera Module connected to the Raspberry Pi Zero 2W through a CSI ribbon cable, with the camera mounted on the QAV250 frame and oriented downward.

    Pi Camera Module connected to Raspberry Pi Zero 2W via CSI ribbon cable, with the camera mounted on the QAV250 frame facing downward.

  5. Connect the Raspberry Pi to the Pixhawk 6C over the USB port for serial communication.

    This image shows the Raspberry Pi Zero 2W connected to the Pixhawk 6C Mini through a USB cable, with the PMW3901 optical flow sensor also connected, illustrating the complete companion computer integration setup.

    Raspberry Pi Zero 2W connected to Pixhawk 6C Mini via USB cable, with PMW3901 optical flow sensor also connected, showing the complete companion computer integration.

  6. Connect the PX4 FMU Debug port to the Raspberry Pi for NSH (NuttShell) console access.

    This image shows a side view of the Pixhawk 6C Mini FMU Debug port connected to the Raspberry Pi through a debug cable, with the VL53L1X rangefinder also visible.

    Side view of the Pixhawk 6C Mini FMU Debug port connected to the Raspberry Pi Zero 2W via debug cable, with VL53L1X rangefinder also visible.

  7. Mount the Raspberry Pi on the frame using standoffs or mounting tape.

  8. Power the Raspberry Pi using a 5 V BEC (Battery Eliminator Circuit) connected to the PDB.

Verify Integration.  Perform the following verification steps:

  1. Connect to the Raspberry Pi using SSH over Wi-Fi.

  2. Verify camera operation using libcamera-still.

  3. Verify UART communication using minicom (or a similar tool) to exchange test data between the Raspberry Pi and Pixhawk 6C:

    minicom -D /dev/ttyS0 -b 57600
  4. Verify NSH console access from the Raspberry Pi to the Pixhawk 6C through the FMU Debug connection.