Skip to the content
2 layers55.6 × 48.8 mmAAquad PCB, the printed circuit board in 3D

AAquad PCB

Fberbari/AAquad

(OUTDATED, see AAQuad-Evolution) a baremetal implementation of a multirotor flight computer.

Size
55.6 × 48.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
38
Nets
29
Pads
176
Tracks, vias
364, 68
Pours
3
Routed
Yes
KiCad
KiCad 4
Created
19 Sep 2018
Updated
27 Oct 2018

Overview

AAquad PCB is an open-source printed circuit board by Fberbari, from the Fberbari/AAquad repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 55.6 × 48.8 mm with 38 parts on 29 nets, routed with 364 tracks and 68 vias.

It is built around the ATMEGA328-AU, L3GD20H and BSS138, with the SPX1117M3-L-5-0/TR-TD among its other parts. Its parts include 11 resistors, 9 capacitors, 3 ICs, 2 diodes and 2 transistors. It belongs with the AVR (ATmega, ATtiny) boards of this library.

Main components

4

README

readme.md

This is an implementation of a quadcopter filght computer running baremetal on an atmega 328pb chip that takes input a standard hobby receiver and outputs pwm to esc's.

These directories contain the full firmware and the pcb design + gerber files.

As of right now, the system produces desirable results and has passed some basic functionality tests. I am currently waiting on a mechanical engineering student to finish designing the frame of the aircraft before further testing.

WORKING PRINCIPLE

text
As of right now, the system reads input from the receiver via an interrupt based (asynchronous approach). This, because of the 50Hz pwm encoding that the receiver emits is by far the slowest process.

Apart from this step, the rest of the processis synchronous and the loop goesas follows:

	1. The processor gathers data from the 2 on board sensors (accelerometer and gyroscope) via I2C.
	2. Using a modified version of the Kallman filter, the processor uses both pieces of data to determine the absolute position of the aircraft (with reference to gravity)
	3. A function gathers all the newest available data from the pilot and computes the pilots intention. (How should the aircraft bank and pitch and how strong should 		motor power be)
	4. A PID algorythim then uses the processed sensor data aswell, the processed pilot data and the previous cycle's data to compute 4 numbers that represent the 				percentage of full power that each motor should run at to best achieve the pilot's wishes
	5. Those numbers are encodedinto values that the pwm chip can understand and sent to it via I2C.
	6. The process repeats

PURPOSE

text
The purose of this project was to familiarize myself with the basics of avr architecture, firmware design flow, communications between chips (I2C), pcb design flow etc.
It was also a way to enter the world of embedded design in aviation. 

I (Anthony Berbari) AM SOLELY RESPONSIBLE FOR ALL THE FIRMWARE AND HARDWARE DESIGN DONE ON THIS PROJECT.

Parts

38
QtyValueFootprintReferences
910KResistors_SMD:R_0805_HandSolderingR1, R2, R5, R6, R7, R8, R9, R10, R11
8Conn_01x03Pin_Headers:Pin_Header_Straight_1x03_Pitch2.54mmaileron1, elevator1, motor1, motor2, motor3, motor4, rudder1, throttle1
40.1uFCapacitors_SMD:C_0805_HandSolderingC1, C3, C6, C7
310uFCapacitors_SMD:C_0805_HandSolderingC2, C4, C8
2300Resistors_SMD:R_0805_HandSolderingR3, R4
2BSS138TO_SOT_Packages_SMD:SOT-23Q1, Q2
110nFCapacitors_SMD:C_0805_HandSolderingC9
110uCapacitors_SMD:C_0805_HandSolderingC5
1ATMEGA328-AUHousings_QFP:TQFP-32_7x7mm_Pitch0.8mmU1
1L3GD20Hfootprints:L3gd20hIC1
1LIS3DHTRfootprints:Lis3dhU2
1PCA9685PW_112digikey-footprints:TSSOP-28_W4.40mmPWMdriver1
1SPX1117M3-L-5-0_TRSamacSys_Parts:SOT230P700X170-4NPS1
1greenLEDs:LED_0805_HandSolderingD1
1programmerPin_Headers:Pin_Header_Straight_2x03_Pitch2.54mmJ1
1redLEDs:LED_0805_HandSolderingD2

More from Fberbari/AAquad

1
  • 2 layers69.2 × 47.6 mmAAquad PCB, the printed circuit board in 3D

    AAquad PCB

    Fberbari/AAquad

    (OUTDATED, see AAQuad-Evolution) a baremetal implementation of a multirotor flight computer.

    37 partsGPL-3.0

Similar boards

  • 2 layers55.6 × 48.8 mmAAquad PCB, the printed circuit board in 3D

    AAquad PCB

    Fberbari/AAQuad-Evolution

    An original, "from scratch" quadcopter flight computer that was my favorite pet project for some time. Used it to learn all about flight and embedded development.

    47 parts1MIT
  • 2 layers58 × 84 mmZeroPCB, the printed circuit board in 3D

    ZeroPCB

    dangorogoro/DangoromouseZero-PCB

    97 parts3
  • 4 layers81.1 × 85 mmSTS1 EDU V3 0, the printed circuit board in 3D

    STS1 EDU V3 0

    SpaceTeam/STS1_EDU_Hardware

    Contains all Hardware Informations from EDU 2.6 onwards

    108 parts2
  • 2 layers152 × 85 mmLabio, the printed circuit board in 3D

    Labio

    rishabh110493/14-642

    Work Done in Embedded Systems as a part of course

    238 parts1
  • 4 layers65 × 56 mmEDU V3 0 Raspi Hat, the printed circuit board in 3D

    EDU V3 0 Raspi Hat

    SpaceTeam/EDU_RASPI_HATS

    This Repo contains the EDU Raspberry Pi hats from STS1.

    38 parts
  • 6 layers70 × 40.5 mmFMUv246-imported, the printed circuit board in 3D

    FMUv246-imported

    yagamy4680/drone-study

    AUAV-OpenSource/FMUv4-PixRacer is the open hardware design of PixHawk FMUv4. It uses STM32F427 and MPU6000. (github)

    290 parts
  • 6 layers70 × 40.5 mmPX4FMUv2.4, the printed circuit board in 3D

    PX4FMUv2.4

    lachlanA/eagle-to-kicad

    Eagle SCH/LIB to KiCad SCH/LIB ULP conversion script

    354 parts429GPL-2.0
  • 2 layers96 × 34.1 mmDABO2, the printed circuit board in 3D

    DABO2

    lkesteloot/alice

    Website documenting a hardware project from the 1990s.

    62 parts79Apache-2.0

Questions

How big is the AAquad PCB PCB?

It measures 55.6 × 48.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the AAquad PCB use?

38 parts, built around the ATMEGA328-AU, L3GD20H, BSS138 and SPX1117M3-L-5-0/TR-TD. 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 AAquad PCB KiCad files?

From the Fberbari/AAquad repository on GitHub, at the commit this page was made from: the board is AAquad_PCB_V2/AAquad_PCB.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the AAquad PCB design in my own project?

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