Skip to the content
4 layers90 × 90 mmFlightControllerv1.0, the printed circuit board in 3D

FlightControllerv1.0

EE-crisrmh/VIGIL-Systems

an autonomous drone that patrols a building at night, so a guard doesn't have to walk it alone.

Size
90 × 90 mm
Copper layers
4
Thickness
1.6 mm
Parts
110
Nets
122
Pads
451
Tracks, vias
771, 213
Pours
4
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
11 Apr 2026
Updated
3 Nov 2026

Overview

FlightControllerv1.0 is an open-source printed circuit board by EE-crisrmh, from the EE-crisrmh/VIGIL-Systems repository on GitHub, published under the MIT licence. It is a 4-layer board of 90 × 90 mm with 110 parts on 122 nets, routed with 771 tracks and 213 vias.

It is built around the IST8310, MS5611-01BA03 and TPS5430DDA, with the AMS1117-3.3, ICM-20602 and ICM-20689 among its other parts. Its parts include 53 capacitors, 24 resistors, 10 ICs, 5 connectors and 2 diodes. It belongs with the STM32 boards of this library.

Main components

8

README

README.md

vigil systems

v.i.g.i.l.: visual indoor guard & intrusion locator

an autonomous drone that patrols a building at night, so a guard doesn't have to walk it alone.

working name. the project was previously called port, then lumaway.


the problem

overnight security is risky and expensive. a guard patrolling a dark building alone can run into an intruder with no backup, and every overnight post is a recurring cost. fixed cameras and alarms can report that something happened, but they can't go and look.

vigil is built to fill that gap: a drone that checks the building for you, verifies what tripped an alarm, and gets a photo to the people who need it.


what vigil does

  1. patrols on its own. each drone covers one floor. the building is mapped and divided into zones, and a state machine picks the next waypoint at random, weighted toward zones that haven't been visited recently. no fixed route means no predictable gaps.
  2. sees in the dark. thermal imaging and lidar detect people, and the classifier separates a person from an animal or a misplaced object.
  3. responds. on a likely intruder, the drone takes a photo, triggers the building's alarm system, and notifies the property manager.
  4. stays supervised. a remote operator can watch and take over any drone at any time. guards keep their jobs, they just do them from somewhere safe.

indoor only. night only. version 1 uses sight only, with no audio. photos are taken on a trigger, not continuously, and there is no face matching.


why a drone

a drone can cover a whole floor quickly, reach places a fixed camera can't, and investigate an alarm before anyone is dispatched. one remote operator can supervise several drones.


the system

custom flight controller (hardware) a 4-layer custom pcb with two stm32 microcontrollers (stm32f405 for navigation, stm32f103 for i/o) running px4. onboard sensors: dual imus (icm-20689, icm-20602), a barometer (ms5611), and a magnetometer (ist8310), plus a power monitor and flash for black-box logging. designed in kicad and manufactured in-house.

companion computer (autonomy) an nvidia jetson nano runs patrol logic and person detection, and talks to the flight controller over mavlink.

indoor sensing thermal camera and lidar for detection, plus a gps-free position source for indoor flight.

response and remote operation photo capture, alarm-system integration, and an operator link for live view and manual override.


project goals

  • stable flight on the custom flight controller
  • gps-free indoor position hold
  • reliable person detection in the dark, with animals and objects filtered out
  • random patrol that covers every zone within a set time window
  • photo capture and alarm trigger on detection
  • end-to-end demo: patrol, detect, photograph, alert, remote takeover

status

in development. uw bothell electrical engineering capstone, 2026 to 2027.

  • flight controller v1.0: built and assembled, bring-up in progress
  • test airframe: assembly in progress
  • sensing, patrol logic and alerts: planned

team

built by a four-person electrical engineering capstone team at the university of washington bothell, supervised by dr. hannachi.

  • cris r. martinez hernandez
  • abraham chen
  • frank ma
  • howard sin

built with

  • stm32f405 / stm32f103 (flight controller mcus)
  • px4 autopilot
  • nvidia jetson nano (onboard compute)
  • ros2 and mavlink
  • opencv / python (perception)
  • kicad (pcb design)
  • platformio (firmware)

vigil systems: always watching, so nobody has to.

Parts

110
QtyValueFootprintReferences
26100nCapacitor_SMD:C_0402_1005MetricC2, C3, C11, C12, C13, C14, C15, C16, C18, C19, C26, C29, C33, C34, C35, C36 +10
1210kResistor_SMD:R_0402_1005MetricR1, R2, R3, R4, R5, R6, R7, R8, R9, R19, R20, R23
61R8Resistor_SMD:R_0201_0603MetricR12, R13, R14, R15, R16, R17
6TestPointTestPoint:TestPoint_Pad_1.0x1.0mm3.3V, 3.3V_SENS, 3.3VA, 5V, TP5, VBAT
510uCapacitor_SMD:C_0603_1608MetricC1, C10, C38, C40, C49
410pCapacitor_SMD:C_0402_1005MetricC20, C21, C22, C23
42u2Capacitor_SMD:C_0402_1005MetricC24, C25, C27, C30
447uCapacitor_SMD:C_0805_2012MetricC43, C45, C50, C52
4MountingHoleMountingHole:MountingHole_3.2mm_M3H1, H2, H3, H4
310nCapacitor_SMD:C_0402_1005MetricC28, C31, C47
2120RInductor_SMD:L_0603_1608MetricFB1, FB2
216MHzCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mmY1, Y2
21uCapacitor_SMD:C_0402_1005MetricC9, C17
222uCapacitor_SMD:C_0805_2012MetricC39, C41
24k7Resistor_SMD:R_0201_0603MetricR10, R11
2AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U7, U8
10.47uCapacitor_SMD:C_0603_1608MetricC32
115uInductor_SMD:L_2512_6332MetricL1
11kResistor_SMD:R_0402_1005MetricR18
1220uCapacitor_SMD:CP_Elec_8x10.5C48
12mResistor_SMD:R_Shunt_Vishay_WSK2512_6332Metric_T1.19mmR22
13k24Resistor_SMD:R_0402_1005MetricR24
13k3Resistor_SMD:R_0402_1005MetricR21
14u7Capacitor_SMD:C_0603_1608MetricC37
1B340Diode_SMD:D_SMAD2
1BATT ConnectorConnector_AMASS:AMASS_XT60PW-F_1x02_P7.20mm_HorizontalJ3
1ICM-20602Package_LGA:LGA-16_3x3mm_P0.5mmU4
1ICM-20689Package_DFN_QFN:QFN-24-1EP_4x4mm_P0.5mm_EP2.65x2.65mmU3
1INA226Package_SO:VSSOP-10_3x3mm_P0.5mmU9
1IST8310Package_LGA:LGA-16_3x3mm_P0.5mmU6
1JETSON COMMSConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ1
1MMBT2222APackage_TO_SOT_SMD:SOT-23Q1
1MS5611-01BAPackage_LGA:LGA-8_3x5mm_P1.25mmU5
1PWM ConnectorConnector_PinHeader_2.54mm:PinHeader_2x04_P2.54mm_VerticalJ2
1RC ReceiverConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ4
1REDLED_SMD:LED_0805_2012MetricD1
1STM32F103C8TxPackage_QFP:LQFP-48_7x7mm_P0.5mmU2
1STM32F405RGTxPackage_QFP:LQFP-64_10x10mm_P0.5mmU1
1SWD DebugConnector_PinHeader_1.27mm:PinHeader_2x05_P1.27mm_VerticalJ5
1TPS5430DDAPackage_SO:TI_SO-PowerPAD-8_ThermalViasU10

Similar boards

  • 2 layers50 × 50 mmUpper board, the printed circuit board in 3D

    Upper board

    Peize-Liu/404APDdemo

    404 auto pilot drone demo

    125 parts9
  • 4 layers98.7 × 104 mmFlight Controller, the printed circuit board in 3D

    Flight Controller

    ThaoMinhHoang/350_Flight_controller

    ECTE350 storage room for Locus team

    233 parts3
  • 4 layers64.6 × 57.3 mmDragonfly, the printed circuit board in 3D

    Dragonfly

    Broccoliux/dragonfly

    A very cool, drone that can perform maneuvers.

    246 parts2MIT
  • 2 layers68 × 54 mmController, the printed circuit board in 3D

    Controller

    byrantech/stepcraft-3-d600-controller

    Open-source FluidNC Controller for the Stepcraft-3/D.600 system.

    97 parts2MIT
  • 4 layers94.9 × 34.6 mmUSB C PD Power Supply Board, the printed circuit board in 3D

    USB C PD Power Supply Board

    Suman-Gayen/USB-C-PD-Power-Supply-Board

    Design a custom pcb for USB-C PD Power Supply Board

    71 parts
  • 4 layers48.9 × 49.8 mmFC REV2, the printed circuit board in 3D

    FC REV2

    xXsenseiXx/KHATAF-F411

    Open-hardware 4-layer STM32F411 drone flight controller designed in KiCad for INAV and Betaflight.

    73 parts2
  • 2 layers25.2 × 30.5 mmGPS, the printed circuit board in 3D

    GPS

    Daksh-Saksena/Street-Safe

    A hackclub Project

    12 partsMIT
  • 4 layers51 × 31.5 mmMaru x21, the printed circuit board in 3D

    Maru x21

    donghee/maru-x21

    Pixhawk compatible autopilot based from AUAV X2.1

    196 parts

Questions

How big is the FlightControllerv1.0 PCB?

It measures 90 × 90 mm and has 4 copper layers, 1.6 mm thick.

What parts does the FlightControllerv1.0 use?

110 parts, built around the IST8310, MS5611-01BA03, TPS5430DDA and AMS1117-3.3. 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 FlightControllerv1.0 KiCad files?

From the EE-crisrmh/VIGIL-Systems repository on GitHub, at the commit this page was made from: the board is hardware/kicad/FlightControllerv1.0.kicad_pcb and its schematic hardware/kicad/FlightControllerv1.0.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the FlightControllerv1.0 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).