Eray.
Back to Projects

Flight Controller (ErayH743)

An STM32H743-based flight controller running ArduPilot, designed to be assembled by hand

•In progress
Embedded SystemsPCB DesignSTM32ArduPilotDrone
Technologies:STM32H743ArduPilotKiCad 10PythonFreerouting

Flight Controller (ErayH743)

I'm designing my own flight controller for a 450 mm class quadcopter that can fly autonomously with GPS. The board runs ArduPilot (ArduCopter) and is designed to be assembled by hand (stencil + hot plate), without factory assembly.

Status: The design is complete. The schematic and the 4-layer PCB are done, with a clean DRC. Next step: manufacturing.

ErayH743 v1, top side (KiCad 3D view)

The board

MCUSTM32H743VIT6 (480 MHz, 2 MB flash)
IMUICM-42670-P (ICM-42688-P fits too) + optional BMI270, each on its own SPI bus
BarometerMS5611
FirmwareArduPilot; board definition (hwdef) written, bootloader and ArduCopter build
ConnectorsPixhawk-standard JST-GH pinouts: GPS ×2, telemetry ×2, RC, I2C, power module; 8 motor outputs; microSD; USB-C
PCB70 × 70 mm, 4 layers (GND and 3V3 inner planes), ENIG, all parts on the top side
MountingStandard 30.5 × 30.5 mm holes

Design approach

The schematic and PCB aren't drawn by hand; they're generated from scripts using KiCad's Python API:

  • Schematic: built from a single design definition; ERC, shorts and pin plan consistency are checked automatically.
  • Placement: large parts go to fixed positions, passives to the nearest free spot by the pin they connect to.
  • Routing: GND and 3V3 connections drop to the inner planes first, then Freerouting routes the signals on the top and bottom layers.
  • Fabrication outputs (gerbers, drill files, BOM, assembly drawing) come out with a single command.

So after a change, the whole board can be regenerated in a few minutes and verified with DRC and a schematic-to-PCB match.

ErayH743 v1, bottom side

Roadmap

  1. ✅ Requirements and reference study (ArduPilot board definitions)
  2. ✅ Pin plan, BOM and ArduPilot board definition
  3. ✅ Schematic (clean ERC)
  4. ✅ PCB placement and routing (clean DRC)
  5. ⏳ Manufacturing
  6. Assembly and bring-up
  7. Firmware tuning and flight tests