Skip to the content
2 layers96.2 × 65.9 mmEsp32FC, the printed circuit board in 3D

This project is about creating a PCB board for the rtlopez esp-fc project

Size
96.2 × 65.9 mm
Copper layers
2
Thickness
1.6 mm
Parts
34
Nets
49
Pads
129
Tracks, vias
357, 68
Pours
4
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
28 Jun 2025
Updated
27 Jul 2025

Overview

Esp32FC is an open-source printed circuit board by fxrnando, from the fxrnando/esp32FC-PCB repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 96.2 × 65.9 mm with 34 parts on 49 nets, routed with 357 tracks and 68 vias.

Its parts include 14 connectors, 7 capacitors, 4 ICs, 3 resistors and 1 transistor. It belongs with the ESP32 boards of this library.

README

README.md

ESP32FC - PCB for X Quadcopter Drones

PCB v2 iso front view PCB v2 iso back view

This repository contains the PCB designs and hardware documentation for a flight controller extension board based on the esp-fc project. The board is designed to connect an ESP32 microcontroller to a set of peripherals commonly used in unmanned aerial vehicles (UAVs) and robotics.

The project is intended to be developed using modular components commonly found in Arduino projects. This makes it easier for hobbyists to source and manipulate the parts, facilitating both assembly and PCB construction.

📦 Project Structure

The project contains two PCB versions:

  • v1-single-sided: A one-layer PCB version, considered functional and stable, but not actively maintained. Note: This version has not yet been built or tested, as its dimensions are too large to fit inside the intended drone frame.

  • v2-double-sided: A two-layer PCB version, under active development, with continuous improvements and upgrades.

🧩 Features

  • Microcontroller: ESP-WROOM-32 - ESP32 D1 Mini DevKit

  • IMU & Barometer: SPI connection to MPU9250 and BMP250 (separated modules)

  • Motor Outputs: 4 motor outputs, supporting PWM, Oneshot and DShot protocols

  • Serial Interfaces:

    • Serial1: USB-to-serial for configuration (through Betaflight Configurator)
    • Serial2: Connection to ELRS receiver (CRSF protocol)
    • Serial3: Optional GPS or other peripheral like vtx smart audio (still not implemented in version 0.2.1)
  • Battery Monitoring: Voltage divider for battery voltage measurement

  • Status Indication: Piezo buzzer

  • Power Inputs: LiPo battery connector

  • Power Outputs:

    • ESCs power lines
    • Companion computer (e.g., Jetson Nano)

The board is designed to be installed in a standard F450 X-frame drone, but may also be adapted to fit other drone models with minor modifications.

📷 General Connections Diagram

Below is a visual representation of the wiring and placement of components for the quadcopter configuration using the ESP32FC board:

PCB v2 iso front view

Legend:

  • Yellow components: Electronic Speed Controllers (ESCs)
  • Orange components: Brushless motors
  • Center green board: ESP32FC custom PCB
  • Black antenna: ELRS receiver module

All motor ESC signal wires are routed to the motor control pins on the PCB, while power and telemetry signals are handled via separate connections to the battery and optional modules.

🗂 Folder Overview

text
hardware/                  PCB designs
  └── v1-single-sided/     Single-layer version
  └── v2-double-sided/     Dual-layer version
        └── exports/       3d images, BOM, gerber files, gcode files
        └── kicad_pcb/    
  └── library/             Custom symbols & footprints
firmware/                  Optional test or support code
  └── ...
docs/                      Diagrams and usage docs and files
tools/                     Scripts for BOM or Gerber generation

🔧 Development

All initial configuration for the ESP32 module should be done following the instructions provided by @rtlopez in his esp-fc repository. This includes flashing the firmware, setting up the environment, and configuring the board.

Pin remapping specific to this board design (e.g., motor outputs, SPI, UARTs, battery monitor, buzzer) should be defined according to the layout described in the firmware/ section of this repository. Additional notes and configuration tips will be included there as development progresses.

All PCB schematics and layouts are designed using KiCad 9. Gerber files are exported using the Gerber2Order plugin for optimal manufacturing compatibility. CNC toolpaths (G-code) for PCB isolation routing are generated using FlatCAM Beta 8.994. Exports include Gerbers, BOMs, and 3D renders. Contributions are welcome, especially to the v2-double-sided version.

📝 License

This project is licensed under the GPLv3, following the upstream esp-fc licensing terms.

👤 Author & Maintainer

Developed and maintained by fxrnando. Based on the work of @rtlopez.


Feel free to fork, modify, or contribute improvements to the hardware. If you build one, let us know!

Parts

34
QtyValueFootprintReferences
6100nCapacitor_THT:C_Disc_D3.8mm_W2.6mm_P2.50mmC1, C2, C3, C4, C5, C6
6Conn_01x03_PinConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ3, J4, J5, J6, J7, J8
6Screw_Terminal_01x02Connector_Wire:SolderWire-2.5sqmm_1x02_P8.8mm_D2.4mm_OD4.4mmJ9, J10, J11, J12, J13, J14
4MountingHole_3.2mm_M3MountingHole:MountingHole_3.2mm_M3M3, M3, M3, M3
11kResistor_THT:R_Axial_DIN0309_L9.0mm_D3.2mm_P2.54mm_VerticalR3
122kResistor_THT:R_Axial_DIN0309_L9.0mm_D3.2mm_P2.54mm_VerticalR1
12N3904Package_TO_SOT_THT:TO-92_Inline_WideQ1
13.3kResistor_THT:R_Axial_DIN0309_L9.0mm_D3.2mm_P2.54mm_VerticalR2
147uCapacitor_THT:C_Radial_D10.0mm_H12.5mm_P5.00mmC7
1BuzzerBuzzer_Beeper:Buzzer_12x9.5RM7.6BZ1
1Conn_01x04_PinConnector_Molex:Molex_KK-254_AE-6410-04A_1x04_P2.54mm_VerticalJ2
1Conn_01x06_PinConnector_Molex:Molex_KK-254_AE-6410-06A_1x06_P2.54mm_VerticalJ1
1esp32-wemos-d1-miniesp32-wemos-d1-mini:esp32-wemos-d1-miniU1
1~esp32-wemos-d1-mini:mpu9250U2
1~esp32-wemos-d1-mini:xl4005 DC-DC stepdown moduleU4
1~esp32-wemos-d1-mini:bmp280U3

More from fxrnando/esp32FC-PCB

1
  • 2 layers105 × 86.5 mmEsp32FC, the printed circuit board in 3D

    Esp32FC

    fxrnando/esp32FC-PCB

    This project is about creating a PCB board for the rtlopez esp-fc project

    27 parts5GPL-3.0

Similar boards

  • 2 layers26 × 30 mmMicrocontroller, the printed circuit board in 3D

    Microcontroller

    FrameworkComputer/ExpansionCards

    Reference designs and documentation to create Expansion Cards for the Framework Laptop

    34 parts1.1kCC-BY-4.0
  • 2 layers171.2 × 72.9 mmAmiga gfxcard old, the printed circuit board in 3D

    Amiga gfxcard old

    mntmn/amiga2000-gfxcard

    MNT VA2000, an Open Source Amiga 2/3/4000 Graphics Card (Zorro II/III), written in Verilog

    34 parts1k
  • 2 layers53.5 × 62.5 mmLed matrix, the printed circuit board in 3D

    Led matrix

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    34 parts915
  • 2 layers45 × 26 mmESP32-HELP Button, the printed circuit board in 3D

    ESP32-HELP Button

    pcbreflux/espressif

    all espressif stuff will committed here

    34 parts608GPL-3.0
  • 2 layers41.7 × 25.7 mmHeadphones flex pcb rigid, the printed circuit board in 3D

    Headphones flex pcb rigid

    strangeparts/niubi-headphones

    Flexible circuit board design for adding a headphone jack to an iPhone 7

    34 parts493MIT
  • 2 layers18.8 × 16.3 mmAmoeba, the printed circuit board in 3D

    Amoeba

    mtl/keyboard-pcbs

    Keyboard PCBs

    34 parts485
  • 2 layers127 × 69.9 mmEzcgi, the printed circuit board in 3D

    Ezcgi

    baldengineer/bit-preserve

    Project for capturing vintage, classic, aka old computer schematics in KiCad.

    34 parts446

Questions

How big is the Esp32FC PCB?

It measures 96.2 × 65.9 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Esp32FC use?

34 parts. 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 Esp32FC KiCad files?

From the fxrnando/esp32FC-PCB repository on GitHub, at the commit this page was made from: the board is hardware/v2-double-sided/kicad_pcb/esp32FC.kicad_pcb and its schematic hardware/v1-single-sided/kicad_pcb/esp32FC.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Esp32FC 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).