# flix
**flix** (*flight + X*) — making an open source ESP32-based quadcopter from scratch.
## Features
* Simple and clean Arduino based source code.
* Acro and Stabilized flight using remote control.
* Precise simulation using Gazebo.
* [In-RAM logging](docs/log.md).
* Command line interface through USB port.
* Wi-Fi support.
* MAVLink support.
* Control using mobile phone (with QGroundControl app).
* ESCs with reverse mode support.
* *Textbook and videos for students on writing a flight controller\*.*
* *Completely 3D-printed frame*.*
* *Position control and autonomous flights using external camera\**.
* [Building and running instructions](docs/build.md).
*\* — planned.*
## It actually flies
See YouTube demo video: https://youtu.be/8GzzIQ3C6DQ.
## Simulation
Simulation in Gazebo using a plugin that runs original Arduino code is implemented:
## Schematics
You can also check a user contributed [variant of complete circuit diagram](https://miro.com/app/board/uXjVN-dTjoo=/) of the drone.
*\* — SBUS inverter is not needed as ESP32 supports [software pin inversion](https://github.com/bolderflight/sbus#inverted-serial).*
## Components (version 0)
|Component|Type|Image|Quantity|
|-|-|-|-|
|ESP32 Mini|Microcontroller board|
|1|
|GY-91|IMU+LDO+barometer board|
|1|
|K100|Quadcopter frame|
|1|
|8520 3.7V brushed motor (**shaft 0.8mm!**)|Motor|
|4|
|Hubsan 55 mm| Propeller|
|4|
|2.7A 1S Dual Way Micro Brush ESC|Motor ESC|
|4|
|KINGKONG TINY X8|RC transmitter|
|1|
|DF500 (SBUS)|RC receiver|
|1|
||~~SBUS inverter~~*|
|~~1~~|
|3.7 Li-Po 850 MaH 60C|Battery|||
||Battery charger|
|1|
||Wires, connectors, tape, ...|||
||3D-printed frame parts|||
*\* — not needed as ESP32 supports [software pin inversion](https://github.com/bolderflight/sbus#inverted-serial).*
## Materials
Subscribe to Telegram-channel on developing the drone and the flight controller (in Russian): https://t.me/opensourcequadcopter.
Detailed article on Habr.com about the development of the drone (in Russian): https://habr.com/ru/articles/814127/.