Autonomous Drone Integration

ModalAI Internship

Sophomore-year high school internship work focused on taking a VOXL 2 Mini-based drone platform through hardware assembly, wiring repair, QGroundControl tuning, camera bring-up, calibration, documentation, and flight testing.

Handwritten process flow for drone hardware setup, software setup, and flight

Phase 01 / System Plan

Build workflow

Broke the internship work into hardware setup, software setup, and flight validation so the drone could be brought up in a repeatable sequence instead of debugged as one large system.

  • Separated frame, motors, camera hardware, RC setup, ADB, QGC, and flight testing.
  • Used the plan as the basis for the instruction manual.
Assembled ModalAI drone on a workbench

Phase 02 / Airframe

Hardware integration

Assembled the drone platform around the carbon frame, protected propeller layout, battery retention, motor assemblies, camera hardware, and onboard compute.

  • Integrated motors, cameras, battery, chip stack, and wiring harnesses.
  • Checked propeller clearance and access to flight-critical electronics.
Aakarsh working on the drone assembly at a workbench

Phase 03 / Bench Work

Component-level debugging

Inspected wiring, board connections, and exposed conductors before returning to flight testing. Damaged parts were documented and used to plan repairs with mentor feedback.

  • Inspected GPS/ELRS-related wiring after a crash event.
  • Documented connector-side damage before another flight attempt.
Damaged drone wiring close-up

Phase 04 / Repair Loop

Crash damage analysis

After an unstable flight attempt, one damaged wire was traced to the GPS-side connection path. The rest of the drone remained usable, so the repair plan focused on replacing the damaged conductor and preserving the test platform.

  • Documented damaged wiring before continuing test cycles.
  • Connected physical damage back to flight instability and sensor reliability.
ELRS board and stripped wires close-up

Phase 05 / GPS Repair

Chip replacement and rewiring

After the unstable lift test, the GPS-side wiring and receiver board connections had to be inspected closely. The image shows the damaged connection work that led to replacing and rewiring the GPS chip path before the drone could safely return to testing.

  • Identified the GPS chip connection as the damaged subsystem.
  • Prepared the replacement wiring before continuing flight validation.
Diagram mapping M0149 and M0107 cameras into the VOXL 2 Mini J6 connector

Phase 06 / VOXL Bring-Up

Camera stack integration

Connected the M0149 tracking camera and M0107 hires camera into the VOXL 2 Mini connector stack, then verified the connection path through ADB shell, QGroundControl, and VOXL portal debugging.

  • Mapped camera hardware into the VOXL chip stack.
  • Debugged the output path into VOXL portal and QGroundControl.
VOXL camera view in grayscale

Phase 07 / Sensor Output

Camera stream validation

Validated camera visibility from the drone's point of view and used the output to continue the perception bring-up path before calibration.

  • Verified camera output instead of only confirming the connector state.
  • Prepared the sensor stream for calibration and downstream perception use.
Camera calibration overlay on checkerboard

Phase 08 / Calibration

Fisheye tracking calibration

Ran the VOXL camera calibration workflow with a 9x6 target and collected feature tracks across the frame. After earlier failed attempts caused by target flatness, the calibration succeeded and stored OpenCV tracking intrinsics.

  • Used voxl-calibrate-camera tracking -f -s 9x6 -l 0.0165.
  • Recorded a 0.491094 reprojection error before saving calibration data.
Terminal output showing successful VOXL camera calibration

Phase 09 / System Confirmation

Calibration saved

The terminal output confirmed successful calibration and wrote the tracking intrinsics to the VOXL file system, closing the loop between camera hardware, calibration software, and saved sensor configuration.

  • Captured fisheye distortion and intrinsic matrix output.
  • Saved data to /data/modalai/opencv_tracking_intrinsics.yml.

Phase 10 / Flight Test

Physical validation

The flight test moved the internship work from bench validation into physical behavior. The test cycle produced useful data on thrust response, disarm behavior, damage modes, and the next set of stability changes needed for safer controlled flight.

  • Validated that QGroundControl changes affected real lift behavior.
  • Converted flight outcomes into repair, tuning, and documentation tasks.

log details

May 2024

Multiple camera calibration attempts initially failed because the target setup was not flat enough. The final attempt succeeded after improving the calibration setup.

October 2024

The drone armed and spun its propellers, but the first lift-off attempts lacked enough thrust. The team then investigated updated software parameters and QGroundControl configuration.

October 2024

Increasing max RPM from 15000 to 32000 produced enough lift, but the vehicle rose uncontrollably and crashed. The crash damaged one GPS-side wire, which became the next repair item.

November 2024

The camera chip was connected to the VOXL stack and verified through ADB/QGC/VOXL portal work, but the camera output path still required debugging before the stream was usable.

November 2024

The build instructions and BOM were reorganized into a more repeatable manual so future users could follow the same assembly and setup process.

Project Documentation

Documentation

The public-facing portfolio page summarizes the engineering path, while the linked manual and presentation provide additional project context from the original drone kit documentation.