Project Summary
Nova & Zephyr is a hands-on application of university coursework, translating theoretical concepts into a working prototype that integrates software, electronics, and control systems. This project was designed not only to implement classroom knowledge, such as PID control, embedded communication, and circuit design, but also to broaden practical understanding of unfamiliar domains including motor control, wireless protocols, and PCB fabrication. By unifying these elements into a functional system, the project served as both an academic exercise and a personal exploration of full-stack drone engineering.
Key Objectives
- Develop Python-based ground control software enabling wireless communication with an ESP32 microcontroller
- Implement PID-based motor control to achieve stable and responsive drone motor operation
- Design and integrate circuitry connecting microcontrollers, sensors, and four brushless motors for coordinated control
- Engineer a motor speed controller to ensure precise regulation under varying system demands
- Validate electrical specifications to safeguard components and maintain reliable performance
- Fabricate a custom PCB to streamline integration and enhance overall system robustness
Technical Specifications
This project focused on designing and prototyping a custom drone control system that integrates both hardware and software components for reliable system-level testing.
Hardware Components
Supporting circuitry was designed to connect the microcontroller, multiple sensors, and four brushless motors into a cohesive platform. A motor speed controller was engineered to ensure precise performance regulation, while extensive research into electrical specifications ensured all components operated safely within recommended tolerances. To consolidate the system, a custom PCB was designed and fabricated, improving reliability, reducing wiring complexity, and streamlining future development.
Software Architecture
A Python-based ground control application was developed to establish wireless communication with an ESP32 microcontroller over RFCOMM protocols. On the hardware side, a motor control system was prototyped from scratch, implementing PID algorithms to achieve stable and responsive motor balancing.
Ground Control
Documentation in progress.
Hardware
Documentation in progress.
Developmental Timeline
Track the ongoing development journey of Nova & Zephyr, from initial concept to final implementation.
- Manual soldering of 0604 SMD parts completed
- Voltage expectations confirmed
- Frame design begins
- Electrical specifications all met
- Initial PCB design completed
- Initial circuits designed
- Electrical specification validation begins
- Electrical component research
- Custom power board circuit for isolation completed
- Custom motor speed controller circuits completed
- Experimentation with motor thrust and current draw
- Intial experimentation with PID algorithms
- MPU connection and data transfer established
- Data plotting on Nova completed
- Initial Zephyr program established
- Began experimenting with C++
Prototype Version History
Complete version history with detailed change logs and release notes.
Updated PCB Design
Second iteration of schematic and PCB design
Initial PCB Design
First iteration of schematic and PCB design
Changelog Details
New Features:
- Initial PCB design completed
Improvements:
- Added capacitors in parallel to each motor speed controller
Fixes:
- Switched the voltage regulator from a buck-boost TPS63001 to an LDO AP2112R5-3.3TRG1
- Updated the relevant circuit sections to match datasheet recommended values for the new LDO
Gallery
BOM
| Part # | Name | Designator | Qty. |
|---|---|---|---|
| MPZ1608S101ATAH0 | Ferrite Bead | L2, L3 | 2 |
| GRM188Z71A106MA73J | Ceramic Capacitor 10uF | C2-C11 | 10 |
| UCD0J102MNL1GS | Electrolytic Capacitor 1000uF | C1 | 1 |
| SS34 | Schottky Diode | D1, D2, D3, D4 | 4 |
| SMAJ5.0A | TVR Diode | D5 | 1 |
| AO3400A | N-Type MOSFET | Q1, Q2, Q3, Q4 | 4 |
| RC0603JR-0722RL | Resistor 22Ohm | R1, R3, R5, R7 | 4 |
| CR0603-JW-104ELF | Resistor 100kOhm | R2, R4, R6, R8 | 4 |
| 0530480210 | Molex 2Pos 1.25mm Connector | M1, M2, M3, M4 | 4 |
| AP2112R5-3.3TRG1 | 3.3V LDO Voltage Regulator | U1 | 1 |
| S2B-PH-K-S JST | JST 2Pos 2.0mm Horizontal Header Connector | BT1 | 1 |
| Male Vertical Header Pins | 48+ |
Electrical
Flight Controller
Type: ESP32
Link: Freenove ESP32-WROOM Board (2 Pack)
Datasheet: esp32-wroom-32e_esp32-wroom-32ue_datasheet_en.pdf
Memory: 4MB
CPU Speed: 240 MHz
Operating voltage: 3.0-3.6V
Minimum current supply: 0.5A
Accelerometer
Type: MPU6050
Link (Maybe): Wishiot 5pcs MPU-6050 Acceleration Sensor
Gyroscope:
- Standby: 5uA
- Operating: 3.6mA
Accelerometer:
- Operating: 500uA
Total: 3.9mA
VDD supply: 2.375-3.46V
Motors
Type: CFMX143 4 x DIY DC 3.7V 50000RPM 716 motor
Link: 4 x DIY DC 3.7V 50000RPM 716 Hollow Cup Coreless High-speed Motor
Voltage: 3.7V
Speed: 50000RPM
No-load: 0.08A
Stall: 1.8A
Avg. Running: - TO BE TESTED
Size: 7x16mm
Output shaft: 0.8mm
Output shaft length: 7mm
Motor Speed Control
Diode
Type SS34
Datasheet: SS32-S310 Schottky Rectifier
Forward Current: 3A
Max. Reverse Voltage: 40V
MOSFET
Type: AO3400A
Datasheet: AO3400A_Rev3_RoHS
Drain-Source Voltage: 30V Max
Gate-Source Voltage: +-12V Max.
Gate Threshold Voltage: 0.65-1.45V, 1.05V Typ.
Battery
Total running current draw: 0.8239A
- Flight controller: 0.5A
- Accelerometer: 3.9mA
- Motors: 0.08A * 4 = 0.32A
Total peak current draw: 7.7039A
- Flight controller: 0.5A
- Accelerometer: 3.9mA
- Motors: 1.8A * 4 = 7.2A
Expected flight time: 20mins
Raw: 274.63mAh
80% usage: 343.292mAh
Margin: 400-500mAh
Peak current rating: $C=I / Ah$
Rating: C = 19.25 = 20 (400mAh)
Power Control
TVR Diode
Type: SMAJ5.0A
Datasheet: SMAJx
Breakdown voltage: 6.4-7.07V
Clamping voltage: 9.2V
Voltage Regulator IC
Type: AP2112R5-3.3TRG1
Datasheet: AP2112R5-3.3TRG1 Diodes Incorporated | Integrated Circuits (ICs) | DigiKey
Absolute maximum V_in: 6V
Rated current: 0.6A
Fixed output: 3.3V
Dropout voltage: 0.4V @ 600mA
Changelog Details
New Features:
- Individual motor speed controller circuits
- Power circuit to isolate motor and microcontroller power lines
- Custom ESP32 footprint
Gallery
BOM
| Part # | Name | Designator | Qty. |
|---|---|---|---|
| MPZ1608S101ATAH0 | Ferrite Bead | L2, L3 | 2 |
| GCJ188R71C104MA01J | Ceramic Capacitor 0.1uF | C1 | 1 |
| GRM188Z71A106MA73J | Ceramic Capacitor 10uF | C2, C3, C5, C6, C7, C8, C9, C10, C11 | 9 |
| UCD0J102MNL1GS | Electrolytic Capacitor 1000uF | C4 | 1 |
| SS34 | Schottky Diode | D1, D2, D3, D4 | 4 |
| SMAJ5.0A | TVR Diode | D5 | 1 |
| AO3400A | N-Type MOSFET | Q1, Q2, Q3, Q4 | 4 |
| RC0603JR-0722RL | Resistor 22Ohm | R1, R3, R5, R7 | 4 |
| CR0603-JW-104ELF | Resistor 100kOhm | R2, R4, R6, R8 | 4 |
| RC0603JR-13100RL | Resistor 100Ohm | R9 | 1 |
| VLS3012HBX-2R2M | Inductor 2.2uH | L1 | 1 |
| 0530480210 | Molex 2Pos 1.25mm Connector | M1, M2, M3, M4 | 4 |
| TPS63001DRCR | 3.3V Buck-Boost Voltage Regulator | U1 | 1 |
Electrical
Flight Controller
Type: ESP32
Link: Freenove ESP32-WROOM Board (2 Pack)
Datasheet: esp32-wroom-32e_esp32-wroom-32ue_datasheet_en.pdf
Memory: 4MB
CPU Speed: 240 MHz
Operating voltage: 3.0-3.6V
Minimum current supply: 0.5A
![[Pasted image 20250818150404.png]]
Accelerometer
Type: MPU6050
Link (Maybe): Wishiot 5pcs MPU-6050 Acceleration Sensor
Gyroscope:
- Standby: 5uA
- Operating: 3.6mA
Accelerometer:
- Operating: 500uA
Total: 3.9mA
VDD supply: 2.375-3.46V
Motors
Type: CFMX143 4 x DIY DC 3.7V 50000RPM 716 motor
Link: 4 x DIY DC 3.7V 50000RPM 716 Hollow Cup Coreless High-speed Motor
Voltage: 3.7V
Speed: 50000RPM
No-load: 0.08A
Stall: 1.8A
Avg. Running: - TO BE TESTED
Size: 7x16mm
Output shaft: 0.8mm
Output shaft length: 7mm
Motor Speed Control
Diode
Type SS34
Datasheet: SS32-S310 Schottky Rectifier
Forward Current: 3A
Max. Reverse Voltage: 40V
MOSFET
Type: AO3400A
Datasheet: AO3400A_Rev3_RoHS
Drain-Source Voltage: 30V Max
Gate-Source Voltage: +-12V Max.
Gate Threshold Voltage: 0.65-1.45V, 1.05V Typ.
Battery
Total running current draw: 0.8239A
- Flight controller: 0.5A
- Accelerometer: 3.9mA
- Motors: 0.08A * 4 = 0.32A
Total peak current draw: 7.7039A
- Flight controller: 0.5A
- Accelerometer: 3.9mA
- Motors: 1.8A * 4 = 7.2A
Expected flight time: 20mins
Raw: 274.63mAh
80% usage: 343.292mAh
Margin: 400-500mAh
Peak current rating: $C=I / Ah$
Rating: C = 19.25 = 20 (400mAh)
Power Control
TVR Diode
Type: SMAJ5.0A
Datasheet: SMAJx
Breakdown voltage: 6.4-7.07V
Clamping voltage: 9.2V
Voltage Regulator IC
Type: TPS63001
Datasheet: TPS63001 data sheet, product information and support | TI.com
Absolute maximum V_in: 7V
Rated current: 1.8A
Fixed output: 3.3V
Workflow Documentation
Follow the development journey through detailed documentation posts covering challenges, solutions, and insights gained throughout the project.
Custom ESP32 Symbol and Component Selection
v1.0 Finalized
Read full article →Designing the Motor Control and Power Circuits
Read full article →Researching Current Draw and Optimal Battery
Read full article →Starting the Component Selection and Circuit Design
Read full article →Planned Tasks
- [x] Modify circuit to use the AP2112R5-3.3TRG1
- [x] Find battery and connectors
Schematic and PCB
- Created the symbols and footprints for the MPU6050 and BMP180
- Updated schematic to implement the AP2112R5 instead of the previous TSP65001 for a voltage regulated
- Removed unused parts and updated PCB v1.1 BOM
- Updated PCB v1.1 Electrical to match current component specifications
- Began PCB design
PCB Design
- Tried to keep all motor components close together near the connector to minimize the loop
- Diode, cap, MOSFET
- Used the KiCad calculator to find appropriate trace widths for the various sections, depending on the maximum expected current
- 0.2mm for regular sensor traces
- 0.3mm for ESP to MOSFET connections
- 1mm for MOTOR_3.7V to motor connectors (Max 3.5A)
- 2mm for battery to capacitor and TVR diode (Max 7A)
- Tried various placements of parts in order to ensure that there is no interference or overlap
- The ESP32 UBC-C input and the 100uF capacitor
- Used two different ground places on different sides to isolate the two power rails
- Tied these to the various ground points by using different sizes of vias, which were calculated using the KiCad calculator
- All components verified and first PCB iteration should be complete
Updated schematic and current design of the PCB is added to V1.1 BOM.
Battery
- Found some similar batteries online that used the more universal JST connector instead
- 3.7V, 500mAh
- Ensured that the connector and the one on the PCB design is compatible
- Important: battery leads might need to be switched as the polarity might be different than needed
- Found a corresponding 3.7V LiPo battery charger online to charge the battery
- Finalized and ordered these parts
Finalized v1.1 Components
Todo:
- Once arrived, ensure that the battery and charger are compatible, and that the connectors are compatible with the PCB
- Finalize the schematic and do last checks
- Finalize the BOM
- Order parts off DigiKey
Planned Tasks
- [x] Create the component and footprint for the ESP32 FREENOVE dev board
- [x] Look into alternative TVR diodes
TVR Research and ESP32 Footprint
Overall, with additional components like ferrite beads and more capacitor banks, the effects of any voltage spikes up to the clamping voltage of ~9V for the TVR shouldn't propagate too far past into the regulator. So with these extra protections, I will be keeping the TVR that I found previously.
Once this had been completed, I started to make a symbol and footprint for the ESP32 dev board that I had, which turned out to be pretty obscure as there was little to no documentation. However, using the pinout and provided module datasheets, I was able to make the symbol and footprint in a couple hours.
Other Footprints and Component Selection
Finishing up the ESP32 symbol and footprint, I proceeded to create a sheet for the flight controller and attach the corresponding nets to the pins.
Now, it was time to start selecting components and finding the correct footprints for each part. During this whole process, I created and started filling out a [[V1.0 BOM]] as well to keep track of all the needed parts.
Starting with the ferrite bead, I chose one that could handle the current into and out of the regulator while being large enough to hand solder. This eventually lead to me choosing the MPZ1608S101ATAH0 with its 0603 size and 2A rating. These ferrite beads additionally help to isolate the regulator and ESP line from both voltage spikes and any noise from the motor line.
The MOSFET already had a preselected footprint for SOT-23, which I changed to the hand soldering version for extended pads.
For the ceramic capacitors, I choose ones that the regulator datasheet recommended, 10 μF 6.3 V, 0603, X7R. However, after researching more online, I eventually went to search for capacitors that had a rating of 10V instead as the DC bias could reduce the capacitance of the capacitors, reducing the energy it can store. This lead me to choose the following capacitors for my circuit:
- 0.1uF: GCJ188R71C104MA01J
- 10uF: GRM188Z71A106MA73J
With both capacitors having the 0603 size, it was easy to find the footprint as I just chose the standard 0603 hand solder footprint for capacitors.
For the resistors, since they act as gate and gate to source resistors, the current through them and thus power dissipated won't be too large. Thus, I chose resistors that were around the 1/5 to 1/10W range. Since the resistance itself didn't matter much, cheaper 5% tolerance resistors were fine. This lead to me choosing the following resistors:
- 22Ohm: RC0603JR-0722RL
- 100Ohm: RC0603JR-13100RL
- 100kOhm: CR0603-JW-104ELF
These resistors all had the 0603 size as well, and similar to the capacitors, I chose the hand soldering 0603 footprint for resistors.
As for the large 1000uF electrolytic capacitor that acts as an energy bank, I chose a cheap one that had a rated voltage higher than my system's voltage. Eventually, I choose the UCD0J102MNL1GS. For the footprint, I had to download and import the model that was given on DigiKey
For the SS34 Schottky diode and SMAJ5.0A TVR diode, the footprints were already present within KiCad which made it easier to find.
For the inductor, I found the cheapest one that matched the recommended one from the regulator datasheet, which was the VLS3012HBX-2R2M. I also downloaded the footprint for this from DigiKey.
For the motors, I already had PB1.25mm 2Pos connectors that I could use, which could fit the Molex PicoBlade connectors. I then chose a connector header that was through hole, since the handling of unplugging the motor may rip off a SMD header. This was the 0530480210, which I also got the footprint from DigiKey.
Right here, I began to also look into battery connectors for the drone batteries that I could buy off Amazon. However, I noticed that all of them used an outdated 51005 Molex connector, which was now out of production. This made it really hard to find the right connector, so eventually, I moved onto finding lithium batteries that had a newer standardized JBT connector. This will probably be a task for next time as I will have to find a battery, the corresponding header, and a charger.
Once I had finished here, I imported all these footprints into the KiCad PCB editor to had a look and start designing the PCB. However, I instantly noticed a problem. The voltage regulator was way too small to be hand soldered, and also included a pad on the underside for ground. This meant that I either had to order the PCB pre-assembled or choose a different IC. Since I wanted practice on soldering small SMD parts, I chose the latter option.
Finding a new voltage regulator IC
To being looking for a replacement, I started the search on DigiKey, where I looked for all buck-boost regulators with a fixed output of 3.3V and at least 0.5A current. After half and hour of scrolling through, however, I saw that all of them were SMD and impossible to hand solder. The ones that could be hand soldered all had maximum current ratings of less than 0.4A, which couldn't run my ESP32.
Then, I remember about some linear voltage regulators that I've used before in my PHAS ELAB course, which converted an input VIN to a fixed VOUT. I tried to look at some random ones to see if a lower VIN than the fixed VOUT is possible for these ICs, and it was. However, these regulators had drop out voltages, and if VIN was lower than VOUT, then VOUT would be the VIN minus the dropout. This was something else that I had to check now. Since a 3.7V battery can reach down to 3.0V when it is almost empty, my worst case for ESP32 input voltage would be this 3.0V minus the dropout voltage.
Looking back through the various ESP32 datasheets, I found that the ESP32 32E module that was present on my dev board could actually take lower voltages. The recommended operating conditions were between 2.2-3.6V, as long as this was put into the VD33 pin, which was present on my dev board (pin 1). This meant that I could actually use a linear voltage regulator, as long as I found one with low dropout (VDO).
Eventually, after filtering by output voltage (3.3V), maximum dropout (~0.2-0.4V), minimum current (0.5A), and package type/size, I was able to find a suitable LDO. This was the AP2112R5-3.3TRG1, which was 3.3V 600mA with a 0.4V dropout at 600mA. However, this also introduced a slight problem of overheating, as this LDO would dissipate heat with increasing dropout voltage.
This meant that I would need to consider a ground plane for heat dissipation. The part that I chose specifically had a larger package of SOT-89, which helps for conducting that heat. This copper ground plate would be specifically for the ESP32 line. Using ChatGPT to research the specifics and advise on the process of finding the temperature, I found the following:
This meant that, even at the worse case where my copper ground pour was ineffective, the junction temperature would be around 79*C, which is well bellow the IC's max temperature of 150*C, but will still mean that the IC may get warm.
Confirming all of this, I have decided to switch over to this new LDO, which makes it easier to solder but introduces larger dropout voltage and heating. I will being looking further into implementing this IC into my circuit next day.
The current schematic and footprints, will be the version 1.0. The version has been frozen and saved into version control, and screenshots are saved into the PCB v1.0 section. To change the LDO and implementing new battery connectors, I will move onto version 1.1.
Planned Tasks
- [x] Begin mapping out motor circuit and parts
- [x] Decide on which parts to use
Motor Circuit
Initial Design:
Notes:
- D1 is a SS34 (3A) Schottky diode
- It has a nice low forward voltage of 0.2-0.5V and fast switching
- MOTOR_3.7V and MOTOR_GROUD are isolated lines from the ESP32 power
Further Research Notes:
- Confirm that the current flows into the motor from the anode, into the drain, and out the source
- Confirm that when Q1 switches off, the current goes through D1 back into the power source
- Look into a gate resistor
- Look into a gate to source resistor
Resistors
Gate resistor (R1)
- Lowers ringing and EMI
- The GPIO pin has inductance and the MOSFET acts like a capacitor. This forms an LC circuit that can ring
- Protects ESP32 from surge currents
- Instantaneous current is large when applying voltage step to capacitor
- 22 ohm is a good starting point
Gate to source resistor (R2)
- Defines the "off" state for the MOSFET
- Drains charge away when the ESP32 is off, bringing it to near 0V
- Bleeds any static charge back to the source
- 100kOhm is a good starting point
Modified circuit and full circuit:
Power and Isolation
Looking online, it seems that isolating the two power circuits for the ESP32 and motors will be crucial for preventing noise and spikes from damaging the ESP32. Additionally, I will have to prepare for any other voltage spikes that the Schottky diodes can't handle.
A TVS diode seems like the best solution to prevent voltage spikes from affecting the whole board overall. These are like a safety valve and clamp onto certain voltages to prevent damage. The working voltage should be under the breakdown voltage, and the clamping voltage should be under the maximum voltage of all components on my board.
From research, the MOSFETs I will be using can handle a maximum of 30V and the Schottky diodes have a reverse bias of 40V. My ESP32 can only handle voltages between 3.0-3.6V. This may be a problem as the power source is rated 3.7V, but can go from 3.0-4.2V depending on charge level. I will probably need a sort of voltage regulator to ensure the voltage stays around 3.3V. This will introduce another component.
ESP Voltage Regulator Since the voltage of the battery can swing above and below the 3.3V I want, it seems like a buck-boost voltage regulator will be needed. This can boost the voltage or buck the voltage to the 3.3V I want, and will be easy to manage if I can find a fixed version with output 3.3V. However, I will also need to ensure that the current it can provide is at least 0.5A, the "peak" ESP32 current.
Looking online, I've decided on the TPS63001, which has a fixed 3.3V output, 1.7A max current, and 1.8-5.5V input voltage. This will help to regulate the ESP32 voltage, and also provide another buffer against spikes from the motors. However, since the max is 5.5V for the input, the TVR will have to have a clamping voltage less than this.
TVR Diode Initially, I was looking at the SMAJ5.0A, which can handle reverse voltage of 5V, breakdown voltage of 6.4-7V, and max clamping voltage of 9.2V. However, with the addition of the voltage regulator, I will probably have to find one that can clamp at less than 5V.
Power Isolation and Stability To isolate the two power rails, I will have to make sure that none of the power/ground leads from each sector mix around, and only connect to the battery at a single point. Additionally, to prevent sudden current losses from spikes, I will have to have a couple capacitor banks to have reserve power. I will probably have one after the voltage regulator for the ESP32, and a large one at the battery output for the entire circuit.
Motor Voltage When I saw that the battery can fluctuate between 3.0-4.2V, this worried me as I didn't know if the motors can handle this change in voltage as they are rated for 3.7V. However, looking online it seems to be fine as it will just change it's RPM as long as it doesn't exceed it's limit. Additionally, I went through to make sure that the voltage drop from the MOSFET doesn't affect the average voltage that the motor receives, which I found to be in the tens of millivolts based on the running current and MOSFET resistance. This is not significant, so it should be fine.
Power Circuit
Planned Tasks
- [x] Research various electrical components and their specifications, specifically:
- [x] Avg. current draw
- [x] Max current draw
- [x] Voltage specifications
- [x] Find optimal battery specifications through calculations using these
Documentation
Documentation for these calculations and researched specifications can be found in PCB v1.0 Electrical.
Planned Tasks
- [x] Review old code and figure out where I last ended
- [x] Test new motor to see if it works and how powerful the thrust is compared to old motor with 3D printed propellers
- [x] Look into the L293D and specifically how the output voltage works
- [x] Look into circuit design
New Motor and L293D
L293D: L293x Quadruple Half-H Drivers datasheet (Rev. D)
- L293D output voltage is typically the input VCC_2 - 1.4V
- Using a power supply module to convert 12V into 5V, VCC_2 and VCC_1 were tested to be 4.99-5V
- However, with pin 15 (4A) being set to high with ~1.5V from the ESP32, the output pin 14 (4Y) was also 4.99V
- Additionally, even when setting the power supply to 3.3V and testing the 4A output to be ~2.5-3V, the new motor did not turn on
- This is probably due to an insufficient current
- Attaching the motor directly to the power strips does turn it on at 2.5V
Motor:
- Thrust is significantly higher than the older motor with printed propellers, even with a smaller weight
This L283D module may not be fit for my application, going to transition towards looking into past projects to learn what other people do for DC motors
Online Projects
References
- [1] Make a Tiny Arduino Drone With FPV Camera : 19 Steps (with Pictures) - Instructables
- [2] The Ultimate Guide to Building a Quadcopter From Scratch : 35 Steps (with Pictures) - Instructables
- [3] Indoor FPV Drone [Setup,Design and 3D Printing] : 11 Steps (with Pictures) - Instructables
Notes
- Most projects use prebuilt modules and sets for the user to assemble
- All projects use some sort of diode + MOSFET combination to control the DC motors
- [2] Has a very in depth explanation on PID and a DIY flight controller
- [1] Has a simple circuit for motor control with Schottky diodes and N-type MOSFETs
- All projects use a specific battery chosen for their circuit and needs
Outcomes
- I will need to look into specifications for each component I'm using to find the best battery
- I will need to have circuit protections to isolate the ESP32 line and motor line to prevent noise and damage to the electronics
- I will need to look into a different module to control the motors, probably MOSFETs downstream of the motors
- Bluetooth will probably work for now since the drone won't be flown far initially
Motor Speed Control
Diode: Two options: silicone diode vs. Schottky diode
- Plan on using Schottky diode as it has a fast switching time and low forward voltage
- The fast switching time is essential when the motor will be constantly switched through PWM
MOSFET: Currently planning on using N-type MOSFET
- Needs a heat sink from drain
Battery
Voltage: Stick with 3.7V as the motors are rated for 3.7V
- Can use a buck-boost converter to lower to 3.3V for the flight controller
Current Rating: XXC
- Maximum current that a battery can handle at once
- This should be calculated by the maximum peak or surge current that my components will produce (e.g. motor stall current)
Milliamp Hours
- Calculated using Current Draw * Operating Hours
- Find the total current draw of all components, add a safety factor, and calculate
This specification research and calculations are documented in the PCB v1.0 section.