All projects
Role
Project lead · 3-person team
Course
ECE-UY 4423, NYU Tandon
Tools
Altium Designer · JLCPCB
Board
4-layer · Rev R1
Status
Layout complete

Highlights

  • Led schematic capture and PCB layout for a 4-layer STM32F405 (ARM Cortex-M4) flight controller.
  • Designed the power tree: 24 V LiPo → 5 V via LMR51450 synchronous buck converter → 3.3 V via LM3940 LDO.
  • Implemented reverse-polarity protection with back-to-back AONR21357 P-channel MOSFETs, TVS protection, and TPS2113 USB/battery power multiplexing.
  • Integrated an LSM6DSV 6-axis IMU, M24C64 EEPROM, and INA226 power monitor with a Kelvin-connected 2 mΩ shunt across three independent I²C buses.
  • Routed 90 Ω differential-pair USB on a JLCPCB 4-layer stackup; completed polygon pours and silkscreen.
  • Structured a multi-page hierarchical schematic with global net labels for parallel team development.

Overview

NYUDroneFC R1 is a quadcopter flight controller and educational development board designed for ECE-UY 4423: PCB Design for Embedded Systems at NYU Tandon School of Engineering. The board was developed by a three-person team (Rosario Campos, Asfaq Fahim, Soyeon Park). As project lead, I directed the schematic architecture, power design, component integration, PCB layout, and routing in Altium Designer, targeting a 4-layer JLCPCB stackup. The schematic spans six sheets.

The design combines a high-current battery input, switching and linear regulation, precision current sensing, inertial sensing, and high-speed USB on a single compact board, which makes power integrity, component placement, and signal routing the primary engineering constraints. The board provides four motor power outputs (J8–J11), four PWM headers, a radio header, SWD, and USB-C.

Fig 1 — 3D render of NYUDroneFC R1 in Altium Designer.
Fig 1 — 3D render of NYUDroneFC R1 in Altium Designer.

Specifications

MicrocontrollerSTM32F405RGT7 (ARM Cortex-M4, LQFP64)
PCB4-layer, JLCPCB stackup · Rev R1
Input power24 V LiPo via XT30 connector, or 5 V USB-C
5 V railLMR51450 synchronous buck converter
3.3 V railLM3940 3.3 V low-dropout regulator (LDO)
Power pathTPS2113 automatic USB / battery power multiplexer
ProtectionBack-to-back AONR21357 P-MOSFETs with BZT52C15S Zener gate clamp · TVS diode · USB ESD protection
Inertial sensingLSM6DSV 6-axis IMU (accelerometer + gyroscope)
Non-volatile memoryM24C64 64-Kbit I²C EEPROM
Power monitoringINA226 on the 24 V motor bus, Kelvin-connected 2 mΩ shunt
CommunicationThree independent I²C buses
USBUSB-C, 90 Ω differential pair
ClockExternal crystal oscillator (Y1)
DebugSWD via 4-pin Molex connector (P1)
I/O4 motor outputs (J8–J11) · 4 PWM headers · radio header · reset & BOOT buttons · status LED

Power architecture

The power tree was designed first, as every downstream subsystem depends on it.

  • Input protection. The XT30 battery input passes through back-to-back AONR21357 P-channel MOSFETs with a BZT52C15S Zener clamping the gate voltage, providing reverse-polarity protection. A TVS diode and bulk capacitance follow on the 24 V rail.
  • 24 V → 5 V: LMR51450 synchronous buck converter. Switching regulation for the large step-down from battery voltage, with a 5.6 µH inductor and a 100 kΩ / 19.1 kΩ feedback divider setting the output.
  • 5 V → 3.3 V: LM3940 LDO. Linear post-regulation provides a low-noise 3V3_MCU rail for the microcontroller and sensors.
  • TPS2113 power multiplexer. Automatically selects between 5V_USB (bench operation) and 5V_Buck (battery operation) to produce 5V_System, without back-feeding either source.
Fig 2 — Power tree, drawn from the power schematic: 24 V input → protection → LMR51450 buck → TPS2113 mux → LM3940 LDO, with INA226 monitoring on the motor bus.
Fig 2 — Power tree, drawn from the power schematic: 24 V input → protection → LMR51450 buck → TPS2113 mux → LM3940 LDO, with INA226 monitoring on the motor bus.

Sensor and peripheral integration

  • LSM6DSV IMU for attitude sensing (3-axis accelerometer and 3-axis gyroscope).
  • M24C64 EEPROM for persistent configuration and calibration data.
  • INA226 power monitor for battery current and power measurement.

Peripherals are distributed across three independent I²C buses with 2.2 kΩ pull-ups. The INA226 sits on the 24 V motor bus, measuring current through a 2 mΩ shunt resistor using Kelvin (4-wire) connections. The sense lines are routed directly from the shunt pads through series filter resistors, so trace resistance is excluded from the measurement.

Schematic architecture

The schematic is organized as a multi-page design (power, MCU, sensors, connectors) linked by global net labels, enabling team members to develop subsystems in parallel while keeping each sheet readable.

PCB layout and routing

  1. Component placement of regulators, MCU, IMU, and connectors prior to routing.
  2. Polygon pours with via stitching for ground and power distribution to provide low-impedance return paths.
  3. 90 Ω differential-pair routing for USB, with trace width and spacing matched to the manufacturer stackup.
  4. Signal routing for I²C, SWD debug, and power distribution.
  5. Silkscreen labeling of connectors and test points to support board bring-up and debugging.

The STM32 support circuitry (crystal oscillator, reset/boot, SWD, decoupling) is carried over from my STM32 development board, which served as the reference platform for this design.

Skills applied

  • Power tree design: buck converter and LDO selection, power path management, input protection.
  • Controlled-impedance differential-pair routing and stackup-aware layout.
  • Precision current sensing with Kelvin shunt connections.
  • Multi-page schematic organization for team-based hardware development.

Available for full-time engineering roles

Electrical, hardware, embedded, and test & validation engineering positions beginning after May 2027 graduation. Open to relocation.