GithubHelp home page GithubHelp logo

lulauav / atmega328-flight-controller Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jawher-mansour/atmega328-flight-controller

1.0 0.0 0.0 5.3 MB

A Flight Controller board for a quadcopter based on YMFC Joop Brokking's code.

C++ 100.00%

atmega328-flight-controller's Introduction

Atmega328-Flight-Controller

A Flight Controller board for a quadcopter based on YMFC Joop Brokking's code.

Board Animated GIF

This is the readme file of the Atmega328-Flight Controller project, which is my contribution to the OPEN SOURCE community. The board was developed by LAB619 Engineering & Consulting Services which is a tech company based in Tunisia that is specialized in custom machine fabrication and embedded solution development, the company is also specialized in developing IoT solutions (LoRa, GPRS, and WiFi), PCB and mechanical design. You can check the website for further information: LAB619 Engineering & Consulting Services

This board is an Atmega328 MCU-based flight controller for quadcopters that is easy to build and fun to fly. The board is compatible with Joop BROKKING YMFC-AL (Your Multi-copter Flight Controller -Auto Leveling). Auto leveling means that when you release the sticks the quadcopter levels itself.

Broadly, this repository consists of:

  • Hardware designs (developed using Altium).
  • PDF for Schematics
  • Bill of Materials Files
  • Footprint Position File
  • Gerber Files
  • Software written using Arduino-IDE
📦Atmega328-Flight-Controller
 ┣ 📂Fabrication
 ┃ ┣ 📂Assembly
 ┃ ┗ 📂Gerber
 ┣ 📂Image
 ┣ 📂Altium Files
 ┣ 📂Software
 ┣ 📜.gitignore
 ┣ 📜README.md
 ┣ 📜fabrication and assembly drawings.pdf
 ┗ 📜Schematics.pdf

Board Specifications :

The board currently includes:

  • MCU: Atmega328 with an I2C, UART, and SPI interfaces.
  • IMU: MPU6050 which is a 3-axis gyroscope and a 3-axis accelerometer on the same silicon die with an I2C interface and an interrupt pin.
  • 4 PWM outputs to control the motors.
  • 4 Timer input channels for the Inputs.
  • Batterie voltage measurement system (voltage divider and Zener diode for protection).
  • FTDI and ICSP interfaces for programming & debugging.
  • LEDs for signaling.
PCB Rendred Top View PCB Rendred Bottom View
Top side of the PCB Bottom side of the PCB

Getting Started:

In order to program the board, it is necessary to use an AVR ICSP Programmer.

If you don't have an AVR ICSP you can use any Arduino board as a programmer as shown in this link


Fabrication

This board can be manufactured and assembled by JLCPCB. Check the fabrication folder for files related to manufacturing the board


How to setup and program the board

Use an AVR ICSP programmer or any Arduino board as a programmer to connect to Atmega328-Flight-Controller

You need to connect AVR ICSP's 5V,MOSI,MISO,SCK,RESET,GND to Flight Controller board's 5V,MOSI,MISO,SCK,RESET,GND.

Further details can be found on Joop BroKking web page link or you can follow this amazing video by Joop Youtube Video

Programming Pins AVR ICSP programmer

Useful ressources

Datatsheets

Credits


Note: This repository is reserved for the hardware part of this project, as well as the embedded software of the project.

atmega328-flight-controller's People

Contributors

jawher-mansour avatar

Stargazers

Lula Sky Dream UAV avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.