Skip to the content
2 layers80 × 60 mmUAV project, the printed circuit board in 3D

Building a UAV as part of my final year on high school, now my hobby project

Size
80 × 60 mm
Copper layers
2
Thickness
1.57 mm
Parts
80
Nets
83
Pads
297
Tracks, vias
635, 92
Pours
5
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
6 Sep 2021
Updated
30 Nov 2023

Overview

UAV project is an open-source printed circuit board by havrak, from the havrak/UAV-project repository on GitHub, published under the MIT licence. It is a 2-layer board of 80 × 60 mm with 80 parts on 83 nets, routed with 635 tracks and 92 vias.

It is built around the LM2596S-5.0, PCA9685PW and AMS1117-3.3, with the RT9193-33GB, SMAJ30CA and SS210 among its other parts. Its parts include 27 resistors, 12 capacitors, 9 ICs, 6 inductors and 4 diodes. It belongs with the robots and motor control boards of this library.

Main components

6

README

README.md

UAV project

This repository contains all resource that comprised my final thesis for my senior year in high school. Main purpose was to create UAV platform based on Raspberry Pi.

Codebase is this project is rather bad by my current standards and is heavily impacted by the fact it was essentially my first hardware related project. Not to mention my experience with C++ was rather limited at the time.

Desktop client is written in C++ using Gtk3 and is used to control the drone and display telemetry data. UI wise it's really bad, and code itself doesn't land much in a way for easy rewrite.

Drone side might fare a bit better, but it's still not great. Usage of threads is rather questionable and OOP design patterns were a hip new thing for me at the time and not something I was able to use properly.

Thus some parts of codebase are overengineered and some lack any flexibility and don't deserve much other than deletion.

In my 3rd semester of university I've made addition to this project in a shape of proper custom PCB to house drone electronics.

I might rewrite this project in the future, but time is a limited resource and school+work take priority. Though if rewrite happens, it will be wholly different project.

  • camera streaming with gstreamer has never worked as well as I wanted it to
  • using Wi-Fi for communication was never ideal (drone was acting as AP)
  • codebase and communication protocol needs to be much more open to allow different configurations of hardware
  • desktop client needs to be rewritten from scratch and preferably in Qt
  • way more robust compilation and deployment process is needed (Kconfig, hierarchical Makefiles, etc.)

Libraries and toolkits

Photos

UAV Photos

whole plane

body detail

Board

board

Credits

Parts

80
QtyValueFootprintReferences
16220Resistor_SMD:R_0603_1608MetricR7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, R22
7SMAJ30CADiode_SMD:D_SMATVS1, TVS3, TVS5, TVS6, TVS7, TVS8, TVS9
6100nCapacitor_SMD:C_0603_1608MetricC1, C2, C7, C8, C11, C14
4MountingHoleMountingHole:MountingHole_2.2mm_M2H1, H2, H3, H4
4conn_03x04_PinCustom_Footprints:PinHeader_3x04PWM1, PWM2, PWM3, PWM4
210Resistor_SMD:R_0603_1608MetricR23, R27
2100uCapacitor_THT:CP_Radial_D8.0mm_P3.50mmC4, C15
218nInductor_SMD:L_0805_2012MetricL4, L6
21pCapacitor_SMD:C_0603_1608MetricC10, C16
24.7kResistor_SMD:R_0603_1608MetricR24, R25
2470Resistor_SMD:R_0603_1608MetricR6, R26
28.7nInductor_SMD:L_0603_1608MetricL2, L3
2INA226Package_SO:VSSOP-10_3x3mm_P0.5mmU1, U3
2LEDLED_SMD:LED_0805_2012MetricD3, D4
1100Resistor_SMD:R_1206_3216MetricR3
1100pCapacitor_SMD:C_0603_1608MetricC12
110kResistor_SMD:R_1206_3216MetricR4
110kResistor_SMD:R_0603_1608MetricR5
11N53xxBDiode_THT:D_DO-201_P3.81mm_Vertical_AnodeUpD1
120mResistor_SMD:R_2512_6332MetricR2
120mResistor_SMD:R_1206_3216MetricR1
133uCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC6
147nInductor_SMD:L_0603_1608MetricL5
147uInductor_SMD:L_Bourns-SRU8043L1
1AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U2
1Bat IN TerminalTerminalBlock:TerminalBlock_bornier-2_P5.08mmJ3
1Bat OUT TerminalTerminalBlock:TerminalBlock_bornier-2_P5.08mmJ4
1Conn_01x07Connector_PinHeader_1.00mm:PinHeader_1x07_P1.00mm_VerticalJ1
1Conn_CoaxialConnector_Coaxial:U.FL_Molex_MCRF_73412-0110_VerticalJ5
1FuseFuse:Fuseholder_Clip-5x20mm_Littelfuse_111_Lateral_P18.80x5.00mm_D1.17mm_HorizontalF1
1LM2596S-5Package_TO_SOT_SMD:TO-263-5_TabPin3U4
1NEO-M7NRF_GPS:ublox_NEOU6
1NJG1130KA1-TE1Imported_Footprints:SOTFL50P160X60-6NIC2
1PCA9685PWPackage_SO:TSSOP-28_4.4x9.7mm_P0.65mmU5
1PMOSPackage_TO_SOT_THT:TO-220-3_VerticalQ1
1PolyfuseFuse:Fuse_1210_3225MetricF2
1RT9193-33GBPackage_TO_SOT_SMD:SOT-23-5IC1
1SS210Diode_SMD:D_SMBD6
1WT901BCustom_Footprints:WT901BU7

Similar boards

  • 2 layers149 × 141 mmFurnace Controller, the printed circuit board in 3D

    Furnace Controller

    veskotr/furnace-pcb

    The main PCB for the furnace project

    99 parts
  • 4 layers69.5 × 62.6 mmPower Module, the printed circuit board in 3D

    Power Module

    Queens-Rocket-Engineering-Team/av-power

    QRET Avionics PCBs and firmware for delivering power to SRAD PCBs

    136 parts1
  • 2 layers100 × 100 mmHour meter board microfit can handroute, the printed circuit board in 3D

    Hour meter board microfit can handroute

    ilomon10/embedded-totalizer-hour-meter

    ESP32 engine hour meter & totalizer: firmware, SensorFrame protocol, Node host tools, KiCad PCB and a Deno device simulator

    152 parts
  • 2 layers102.5 × 62 mmOxygen Monitoring, the printed circuit board in 3D

    Oxygen Monitoring

    mosyrf/Oxygen-Monitoring-System

    This was my second year project as an electrical engineering student, and it was quite difficult because it used an STM32 controller, which I was not familiar with.

    121 parts
  • 2 layers114.2 × 97.5 mmPlantMonitor v102, the printed circuit board in 3D

    PlantMonitor v102

    MathewNhari/KiCad

    Schematics for the plant monitoring systems

    51 parts
  • 4 layers52 × 73 mmConference Badge, the printed circuit board in 3D

    Conference Badge

    Dheemanth0207/Electronic-Conference-Badge

    This project investigates the design and development of a smart, energy-efficient electronic conference badge intended to replace traditional printed name tags used at events and meetings.

    51 parts
  • 2 layers99.9 × 99.9 mmSpider Robot, the printed circuit board in 3D

    Spider Robot

    duvohuu/Spider_Robot

    Mechatronics System Design

    62 parts
  • 4 layers154.7 × 113.4 mmHand System Rev 1, the printed circuit board in 3D

    Hand System Rev 1

    NHuang58/Piano_Hand_Electronics

    API using Music 21 and MIDI to convert midi files and piano notes to coordinates for a piano hand

    58 parts

Questions

How big is the UAV project PCB?

It measures 80 × 60 mm and has 2 copper layers, 1.57 mm thick.

What parts does the UAV project use?

80 parts, built around the LM2596S-5.0, PCA9685PW, AMS1117-3.3 and RT9193-33GB. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the UAV project KiCad files?

From the havrak/UAV-project repository on GitHub, at the commit this page was made from: the board is board/uav_project.kicad_pcb and its schematic board/gps_module.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the UAV project design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).