Auto-assembled, not yet reviewed

Flix

ESP32-based DIY quadcopter built from scratch for learning.

  • No repo-wide license
  • drone4 DoF
  • cost not published
Flix 4-DoF drone, 3D render from flix.sdf
main assembly 3D · flix.sdf

About Flix

Flix is a source-published ESP32-based quadcopter built from scratch for education and research. It pairs a 3D-printed frame with brushed 8520 motors and a GY-91 IMU, driven by under 2,000 lines of Arduino firmware that speaks MAVLink over Wi-Fi or ESP-NOW, plus a Gazebo simulation and Python control library.

Licenses

Hardware
No repo-wide licenseMIT covers the Python tools only
Software
Not published
Docs
Not published

Degrees of freedom

4 DoF

No per-group breakdown has been sourced yet.

Quadcoptersource

How to build Flix

5 steps

Steps marked Motari summary condense the linked source; follow the source for exact instructions. Upstream step marks a step taken from the linked guide.

  1. Print the frame

    Print the v1.1 frame main part, the ESP32 holder top part and two M3 washers from the provided STL or STEP files; the README recommends 0.2 mm layers and 100% infill.

    Upstream stepgithub.com/okalachev/flix/blob/9d47bcb82e41f12ca2cfbb7914461...
  2. Solder the electronics

    Solder the four 8520 motors via N-MOSFETs to the ESP32 Mini and wire the GY-91 IMU per the assembly docs.

    Motari summarygithub.com/okalachev/flix/blob/master/docs/assembly.md
  3. Flash the firmware

    Build and upload the Arduino firmware (under 2,000 lines) to the ESP32.

    Motari summarygithub.com/okalachev/flix/blob/master/docs/assembly.md
  4. Calibrate the IMU

    Run the calibration described in usage.md and verify attitude estimation.

    Upstream stepgithub.com/okalachev/flix/blob/9d47bcb82e41f12ca2cfbb7914461...
  5. Fly or simulate

    Control over Wi-Fi/ESP-NOW with a gamepad, or run the Gazebo simulation with the Python library.

    Upstream stepgithub.com/okalachev/flix/blob/9d47bcb82e41f12ca2cfbb7914461...
Print timenot published
Assembly timenot published

Wiring, power and firmware are safety-relevant and shown for reference only. Check them against the source before building.

Flix bill of materials

18 rows

Cost to build

The sources do not publish a cost total. The rows below are what they list, without a sum.

Flix parts, as the source lists them (read 2026-06-07). Prices are the source's, not checked against vendors.

Flix bill of materials
PartQtySpecSourceConfidence
ESP32 Mini boardFlight controller; ESP32-S3/ESP32-C3 boards also supported
1ESP32 microcontroller board
vendor not namedprice not listedokalachev/flix README.md line 82
high
IMU and barometer boardGY-91, MPU-9265, ICM20948V2 or GY-521 options listed
1IMU board; barometer on supported variants
vendor not namedprice not listedokalachev/flix README.md line 83
high
Boost converterOptional, for more stable 5V power supply
15V output boost converter
vendor not namedprice not listedokalachev/flix README.md line 84
high
8520 3.7V brushed motorsMotor shaft and propeller hole diameters must match
48.5x20 mm 3.7V brushed motor
vendor not namedprice not listedokalachev/flix README.md line 85
high
55 mm or 65 mm propellersPropellers for the 8520 motors
455 mm or 65 mm
vendor not namedprice not listedokalachev/flix README.md line 86
high
100N03A MOSFETsMotor-driver transistors; analog accepted by upstream docs
4100N03A or analog N-channel MOSFET
vendor not namedprice not listedokalachev/flix README.md line 87
high
10 kOhm resistorsPull-down and voltage measurement resistors
610 kOhm resistor
vendor not namedprice not listedokalachev/flix README.md line 88
high
3.7V Li-Po batteryLW 952540 or size-compatible battery with sufficient discharge rate
11S Li-Po, 25C or higher recommended
vendor not namedprice not listedokalachev/flix README.md line 89
high
Battery connector cableBattery connector cable listed in hardware table
1MX2.0 2P female
vendor not namedprice not listedokalachev/flix README.md line 90
high
Li-Po battery chargerUpstream table accepts any compatible charger
1compatible 1S Li-Po charger
vendor not namedprice not listedokalachev/flix README.md line 91
high
IMU mounting screwsScrews for IMU board mounting
2M3x5
vendor not namedprice not listedokalachev/flix README.md line 92
high
Frame assembly screwsScrews for frame assembly
4M1.4x5
vendor not namedprice not listedokalachev/flix README.md line 93
high
3D-printed frame main partSource STL/STEP and print settings are linked from the hardware table
1flix-frame-1.1, 0.2 mm layer, 0.4 mm line, 100% infill recommended
3D print yourselfprice not listedokalachev/flix README.md line 94
high
1ESP32 holder STL/STEP
3D print yourselfprice not listedokalachev/flix README.md line 95
high
3D-printed IMU washersWashers for IMU board mounting
2washer-m3 STL/STEP
3D print yourselfprice not listedokalachev/flix README.md line 96
high
ControllerRecommended controller options: CC2500 transmitter, two-stick gamepad, or other supported controller
1CC2500 transmitter or compatible controller
vendor not namedprice not listedokalachev/flix README.md line 97
high
Optional RC receiverOptional receiver listed by upstream hardware table
1DF500 or other compatible receiver
vendor not namedprice not listedokalachev/flix README.md line 98
high
Wires and tapeConsumables listed by upstream table
128 AWG wire recommended; tape/double-sided tape
vendor not namedprice not listedokalachev/flix README.md lines 99-100
high

Rows from the source's own parts list 19

README.md@9d47bcbmarkdown

Source rowQtyPrice and vendorLine
ESP32 Mini. ESP32-S3/ESP32-C3 boards are also supported.
1
vendor not listedno price listed
L82
GY‑91, MPU-9265 (or other MPU‑9250/MPU‑6500 board) ICM20948V2 (ICM‑20948) GY-521 (MPU-6050)
1
vendor not listedno price listed
L83
5V output
1
vendor not listedno price listed
L84
8520 3.7V brushed motor. Motor with exact 3.7V voltage is needed, not ranged working voltage (3.7V to 6V). Make sure the motor shaft diameter and propeller hole diameter match!
4
vendor not listedno price listed
L85
55 mm or 65 mm
4
vendor not listedno price listed
L86
100N03A or analog
4
analogt.meno price listed
L87
10 kΩ
6
vendor not listedno price listed
L88
LW 952540 (or any compatible by the size). Make sure the battery has enough discharge rate: 25C or more!
1
vendor not listedno price listed
L89

11 more rows in README.md

Flix source files

14 files

Files stay in the upstream repository under their own licenses; these links open them there. The 3D model on this page is Motari's conversion of the file named under Simulation.

Flix in simulation

Robot description files a simulator or CAD tool can load, linked at the commit they were found.

The 3D specimen on this page is converted from gazebo/models/flix/flix.sdf at 9d47bcb.

Builds of Flix

0 reviewed

No reviewed builds of Flix yet.

A build log records the evidence (photos, a video, your repository), what the build cost, how long it took and what you changed. Each one is checked by Motari (until a maintainer claims this page) before it shows here, and reviewed builds count toward the reproducibility score.

Sources and provenance

Sources

Last push to okalachev/flix: 2026-09-30 (checked 2026-10-01)

How this page was made

Assembled from public sources on 2026-06-04, not yet reviewed by the maintainer. Each figure links to where it is stated; a value the sources do not state reads "not published". Last source review: 2026-06-07 okalachev/flix README hardware table.

Original files stay intact and separately licensed; Motari adds only the summary on this page. Maintainer? Request a correction or removal.

Badge for the README

Maintain Flix? Show its reproducibility score in the project's README. The badge links back to this page and updates with the score.

Badge: reproducibility 70/100

Markdown
[![Motari reproducibility score for Flix](https://motari.io/api/v1/badge/flix-quadcopter)](https://motari.io/r/flix-quadcopter)
HTML
<a href="https://motari.io/r/flix-quadcopter"><img src="https://motari.io/api/v1/badge/flix-quadcopter" alt="Motari reproducibility score for Flix" height="20"></a>

Not fully met yet: bom evidence (partial), oshw-compatible license. The score is read from the project's own sources, so publishing what is missing is what raises it. A score of 90 or more needs a reviewed build. How the score is computed