Skip to content

Lab 9 - Believer Avionics + Lab 10 - Motors and Controls

The purpose of this lab is to establish a functional connection between the CubePilot flight controller and the Ground Control Station (GCS), integrate telemetry, GPS, and airspeed sensors, and verify system communication using MAVLink protocols. By the end of this lab, the system demonstrated live data transmission between onboard and ground components, confirming the correct configuration of the aircraft’s onboard communication systems.

Resources:

Hardware:

Holybro MS4525DO Airspeed Sensor
CubePilot Here 3+ GPS
RFD900x Telemetry Modules (Air and Ground)

Software and Tools:

AIDA3 PC
Ground Control Station (GCS) software
Mission Planner
Hexadecimal to Decimal Converter
Diffchecker (for parameter comparison)

The CubePilot ecosystem integrates multiple sensors and communication modules to provide reliable flight control, telemetry, and navigation. Parameters within the GCS control flight modes, sensor behaviors, and communication protocols. Understanding how to configure and verify these parameters ensures stable operation and accurate telemetry data during flight.

Procedure and Results

1. Ground Control Station (GCS) Connection

Procedure:
Connected the CubePilot to the AIDA3 PC via USB.
Verified live connection in the GCS by monitoring movement in the HUD.
Reviewed the GCS manual for parameter and platform details.
Results:
Connection confirmed via green beating heart icon in GCS.
Successfully identified the aircraft ID.

2. Parameters

Procedure:
Accessed and downloaded CubePilot parameters through the GCS.
Exported the parameter
Notes:
Parameters are static until manually refreshed or updated.
Changes must be submitted to the FCU for activation.

3. Telemetry Setup

Procedure:
Connected the RFD900x telemetry module.
Verified parameter settings
Verified wireless communication after switching serial connection to RFD900.
Results:
Telemetry successfully transmitted data wirelessly to GCS.
Confirmed correct baud rate and protocol matching.
Notes:
MAVLink is the message protocol allowing communication between drones, sensors, and GCS.

4. Airspeed Sensor Integration

Procedure:
Connected the MS4525DO airspeed sensor to the CubePilot using proper tubing and port alignment.
Configured GCS parameters
Rebooted the autopilot and verified readings on the Airspeed Indicator.
Results:
Airspeed sensor operational and transmitting data.
Notes:
The pitot tube’s length allows it to measure undisturbed free-stream air pressure for accurate dynamic pressure readings.

5. GPS Integration

Procedure:
Connected the Here3+ GPS to the CubePilot CAN ports.
Verified communication via DroneCAN protocol.
Configured GPS parameters
Confirmed GPS lock and satellite acquisition.
Results:
GPS successfully communicated over DroneCAN.
Parameters reflected appropriate connection and configuration.
Notes:
Additional Sensors in GPS Unit: Magnetometer, gyroscope, and accelerometer.
We never ended up getting a full correct GPS signal. It is something we will have to revisit.

6. Parameter Verification

Procedure:
Used Diffchecker to compare modified parameters against the reference set.
Identified differences in Airspeed Bus and Tube Order configurations.
Results:
Confirmed only expected changes occurred, validating successful setup (other than GPS connection).

Questions:

What does the GUID_THISMAV parameter control?
Globally unique ID to this MAV(Aircraft). It is how the system differentiates one vehicle from another across networks or DroneCan buses.
Under Ground Software > Platform Connection, what indicator can an operator look for to confirm connectivity?
Connectivity is confirmed with the green Beating Heart icon.
Under Flight Software > Flight Modes, what is the difference between manual and stabilized flight modes?
For manual flight, the pilot directly manipulates all actuators. For stabilized flight modes, the pilot indirectly manipulates all actuators except for ailerons, elevators, rudders, and ground steering.
What is MAVLink?
MavLink is a messaging protocol used for communicating between drones and drone components.
What baud rate must TELEM 1 be set to in order to communicate with the GCS?
TELEM 1 must have a BAUD rate of 115200 in order to communicate with the GCS.
What type of connector links the RFD900 with the Cubepilot?
The JST- GH Telemetry connector cable links the RFD900 with the Cubepilot. Specifically the Telem1 and Telem2 port on the Cubepilot.
According to the User Manual, under Flight Software > Sensor Input, is an airspeed sensor mandatory?
Airspeed sensors are optional but highly recommended. If an airspeed sensor is not used an open-loop throttle mapping could be used instead, but keep in mind that additional margin should be incorporated into TECS settings when flying in open loop throttle.
Briefly, what is open-loop throttle mapping? Comparing to closed-loop throttle mapping may help.
Open-loop throttle mapping sends preset throttle commands without sensor feedback, unlike closed-loop mapping, which adjusts throttle based on real-time sensor data to maintain desired performance.
For what aerodynamic reason is the pitot tube so long?
The pitot tube is long so it can collect information from undisturbed free-stream airflow, where the air pressure reflects the aircraft’s true dynamic pressure
What communication protocol does the airspeed sensor use?
The communication protocol used by the airspeed sensor is I2C Address: 0x28H.
What is hexadecimal? Convert 0x28 from hexadecimal to decimal.
0x28 hexadecimal = 40 decimal
A Hexadecimal number is a number expressed in the base 16 numeral system. Hexadecimal number's digits have 16 symbols: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. Each digit of a hexadecimal number counts a power of 16.
What communication protocol does the Here3+ GPS use?
DroneCan 8Mbit/s
What additional sensors does the GPS unit include?
Magnetometer (compass), Gyroscope, Accelerometer
Primarily what parameters changed?
Airspeed Bus, Airspeed tube order

Want to print your doc?
This is not the way.
Try clicking the ··· in the right corner or using a keyboard shortcut (
CtrlP
) instead.