The Aerial Robotics and Rocketry Club at the University of British Columbia Okanagan is a student-led engineer design team that specializes in building autonomous drones and high-power rockets. I am an active member of the drone division, specifically working on the autonomous subsystems. Every year, the drone team build an unmanned aerial system (UAS) to complete specific tasks at the Aerial Evolution Association of Canada (AEAC) student UAS competition.
2022 - 2023
When I joined in 2022, the team was looking to start fresh with a new vehicle design. After some debate, the decision was made to tackle the development of a complicated flying machine: a helicopter. Previously, the club mainly worked with quadcopters, which are renown for their stability and relative simplicity. Developing a helicopter comes with complex mechanical challenges and new flight dynamics. Over the next few months, I get introduced to remotely operating drones using Mission Planner, and the ArduPilot firmware.
![]()
Me (middle right) on one of my first testing "flight days"
By the start of April, we have a working barebones helicopter, although it needs a lot of tuning work to make it fly more reliably.
One of the first flights of the helicopter
In the meantime, I've been working on autonomous software for the helicopter. The specific challenges set out for the 2023 competition requires us to optimize flight routes between "air taxi" trips. Each trip has an associated revenue, so we end up using a modified version of the traveling-salesman problem to try to find the most optimal routes between trips to maximize revenue. The other big challenge is autonomous precision landing on a small blue landing pad. To tackle this challenge, we used a commercial digital FPV video system streaming to a laptop at the ground station. The laptop would then run a custom YOLO machine learning model trained specifically to recognize the blue landing pads, and send position commands to the vehicle via our wireless telemetry link.
In early May, the core team including myself flies out to Quebec to compete against other teams from across Canada. We have refined our helicopter as much as we could and are ready to show the judges what we spend the past 8 months building. It was the first time a helicopter was ever brought to this competition, so the judges were very excited to see it fly. And it flew.
![]()
The final version of the helicopter flying at the 2023 AEAC competition in Alma, QC
Although we had issues with our radio range and the reliability of the video connection for the precision landing, the judges were very impressed and we won 2nd place and the innovation award. At this point, I was becoming a master of the ArduPilot firmware and was the designated operator (the person in charge of autonomous operation during the flight). I was excited to continue working on the project during the next academic year.
![]()
The core team at the 2023 AEAC competition in Alma, QC
2023 - 2024
This year, the competition tasks are slightly different, but similar: Maximize the vehicle's flight distance and autonomously land on a similar blue pad, but while avoiding nearly obstacles such as walls or ceilings. As the new leader for the autonomous subteam, I continue our previous work from last year on precision landing. This time, our approach will be a bit different: To fix our radio range issues, we will use a cellular system to send live video through the internet to be processed at the ground station. This means we need an onboard Raspberry Pi as a companion computer to stream the video from the drone. This introduces me to GStreamer, a popular framework for streaming video for low-latency applications. We also add a few distance sensors to autonomously avoid flying into obstacles.
We also decide to keep developing the helicopter instead of starting a new aircraft. By April 2024, we are much more comfortable with the helicopter and routinely perform fully autonomous flights.
Completely autonomous flight of the helicopter
Meanwile, another subteam was working on a new carbon fibre shell for the exterior, which we decided to paint as an orca whale.
![]()
Orca-themed carbon fiber shell
Unfortunately, just days before the competition, the main gear connecting the motor to the blades failed and we had a catastrophic crash. This crushed our entire airframe, damaged our batteries, and fried many of our electronics.
![]()
Results of the crash
2024 - 2025
This year, the competition focuses on wildfire detection and response. The two challenges are:
- Hotspot detection and mapping
- Find simulated wilfire "hotspots" (infrared beacons).
- Identify the cause of the fire.
- Submit a digital map of the detections.
- Water transport
- Pick up water from a large tank.
- Drop it into a smaller target buckets across the field.
- Deliver as much water as possible, as evenly as possible.
After the crash of the helicopter, we decide to take a step back and upgrade our pre-existing Quadcopter named Jellyfish. The aircraft uses a carbon fiber frame and two 27Ah Li-Ion batteries wired in series to acheive about 30 minutes of flight.
Jellyfish flying during Task 2
Payloads
The Hotspot Detection payload featured a down-facing infrared camera with custom IR filter to highlight the wavelength of interest (940nm). The camera was connected to an onboard Raspberry Pi, which performed image processing to locate the hotspot autonomously.
The Water Transport payload was a cylindrical baffled tank with dual pumps and solenoid valves. The baffles acted as dampers on the inside of the tank to prevent sloshing from affecting flight dynamics. The pumps and solenoids were also controllable by the onboard Raspberry Pi, to allow for autonomous loading and release of water.
![]()
The tank design for water transport
Competition Perfomance
During Task 1, we faced severe camera and telemetry issues, which made autonomous flight impossible. Shortly after taking off, an ESC failure failed a crash. Luckily, nothing was badly damaged and after reprinting some 3d printed parts, we were ready for Task 2.
![]()
Preperations prior to take-off for Task 1
In Task 2, we successfully pumped and carried water. However, our camera and telemetry issues perservered from Task 1, which made it impossible to deposit the water into the target buckets.
![]()
Jellyfish picking up water from a barrel during Task 2
2025 - 2026
In progress