
MBO
shanteacontrols/OpenDeck
A platform for building interactive control and sensing devices using MIDI and OSC built with Zephyr RTOS.

🚁 A mini quadcopter that is lightweight and designed for agility.
MiniCopterSchematic is an open-source printed circuit board by AshishA26, from the AshishA26/MiniCopter repository on GitHub. It is a 2-layer board of 79.6 × 62.6 mm with 61 parts on 41 nets, routed with 279 tracks and 35 vias.
Its parts include 6 resistors, 4 transistors, 3 ICs, 2 diodes and 2 inductors. It belongs with the robots and motor control boards of this library.
A mini quadcopter that is lightweight (~100g) and designed for agility. It is made using an Arduino Nano, an MPU6050 for orientation sensing, an NRF24L01 for wireless communication, MOSFETs that act as motor drivers, and 8520 motors. The quadcopter is controlled using a custom transmitter that has 2 joysticks and an NRF24L01, and uses PID motor control for stabilizing roll and pitch of the quadcopter. In addition, I created a custom PCB to house all these components and allow for better wiring, testing, and weight reduction.
Programmed in Arduino IDE, models created in Autodesk Inventor, schematics and PCB created in KiCad.

Demo showing the PID motor control of the quadcopter that allows for the quadcopter to stabilize and balance (full video):

My original design used a perfboard, but I eventually designed a 2-layer PCB that would not only simplify debugging and wire routing, but also allow for some weight reduction.
The PCB contains all circuitry and the connections between them. The placement, orientation, and connections of each component was carefully considered when making decisions on the design of the PCB. The size of the PCB itself was also an important factor for me to consider because I needed to be the smallest and most optimal size it could be in order to reduce the weight on the quadcopter.
The PCB also acts as custom motor drivers for each motor by employing the use of MOSFETs, as normal Arduino motor drivers available online are too large and are not meant for high current flow and high speeds.
Through calculations, I determined the trace size required for each component on the board, such as the LiPo battery connections needing thicker traces due to the high current. After various tests, it was found that dupont connectors could not be used to transfer current to the motors as the end connectors had resistance, so having a PCB with custom trace sizes was very useful.
Additionally, through testing on the Perfboard, I found that 2 LiPo batteries were required as I not only needed to power the 4 motors, but also the Arduino (which also powers other components).


| Perfboard Front Side | Perfboard Back Side |
|---|---|
![]() | ![]() |
| Back side of complete perfboard | Perfboard on Mini-Copter |
![]() | ![]() |
After many tests and designs, the final chassis has been built such that the frame is strong and firm enough, while greatly reducing weight. The propellor gaurds have also been iteratively designed after numerous tests such that it protects people and the quadcopter, while also being very lightweight.

Checkout some flight testing.
Checkout a demo of the joystick wirelessly controlling a motor.
To determine the strength of each motor, I 3D printed some parts and flipped the motor upside down to conduct a thrust analysis. This allowed me to see if the MOSFETs and batteries would be able to supply enough current to the motors.

| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | 10K Ω | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal | R1, R2, R3, R4 |
| 4 | FQP20NO6L | AA_Custom_Components:3Pin_MOSFET_MotorDriver | Q1, Q2, Q3, Q4 |
| 4 | G*** | kibuzzard-6440B80B | kibuzzard-6440B80B, kibuzzard-6440B80B, kibuzzard-6440B80B, kibuzzard-6440B80B |
| 4 | G*** | kibuzzard-6440B803 | kibuzzard-6440B803, kibuzzard-6440B803, kibuzzard-6440B803, kibuzzard-6440B803 |
| 4 | MountingHole | MountingHole:MountingHole_3.2mm_M3_Pad | H1, H2, H3, H4 |
| 2 | 100 Ω | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal | R5, R6 |
| 2 | LED_5MM | LED_THT:LED_D5.0mm | D1, D2 |
| 2 | LOGO | MiniCopterSchematic:FhciLogo | G***, G*** |
| 2 | LOGO | MiniCopterSchematic:DroneIcon | G***, G*** |
| 1 | 47UF-CAPACITOR | Capacitor_THT:CP_Radial_D6.3mm_P2.50mm | C1 |
| 1 | ARDUINO NANO | AA_Custom_Components:Arduino_Nano | U1 |
| 1 | G*** | kibuzzard-644F2068 | kibuzzard-644F2068 |
| 1 | G*** | kibuzzard-6452D829 | kibuzzard-6452D829 |
| 1 | G*** | kibuzzard-644F15D5 | kibuzzard-644F15D5 |
| 1 | G*** | kibuzzard-644F1CFC | kibuzzard-644F1CFC |
| 1 | G*** | kibuzzard-644F2052 | kibuzzard-644F2052 |
| 1 | G*** | kibuzzard-644F1F4C | kibuzzard-644F1F4C |
| 1 | G*** | kibuzzard-644F2071 | kibuzzard-644F2071 |
| 1 | G*** | kibuzzard-644F167C | kibuzzard-644F167C |
| 1 | G*** | kibuzzard-6452DC40 | kibuzzard-6452DC40 |
| 1 | G*** | kibuzzard-6452DC36 | kibuzzard-6452DC36 |
| 1 | G*** | kibuzzard-644F1527 | kibuzzard-644F1527 |
| 1 | G*** | kibuzzard-6452DC3B | kibuzzard-6452DC3B |
| 1 | G*** | kibuzzard-6440D5EF | kibuzzard-6440D5EF |
| 1 | G*** | kibuzzard-6452DC31 | kibuzzard-6452DC31 |
| 1 | G*** | kibuzzard-644F152E | kibuzzard-644F152E |
| 1 | G*** | kibuzzard-644F1D01 | kibuzzard-644F1D01 |
| 1 | G*** | kibuzzard-644F1F53 | kibuzzard-644F1F53 |
| 1 | G*** | kibuzzard-6440D635 | kibuzzard-6440D635 |
| 1 | G*** | kibuzzard-644F1F59 | kibuzzard-644F1F59 |
| 1 | G*** | kibuzzard-644F1F5E | kibuzzard-644F1F5E |
| 1 | G*** | kibuzzard-6440D61E | kibuzzard-6440D61E |
| 1 | LIPO 3.7V 380 mAH | AA_Custom_Components:PowerPad_Pair_5.0x5.0mm | L1 |
| 1 | LIPO 3.7V 680 mAH | AA_Custom_Components:PowerPad_Pair_5.0x5.0mm_1PadFlipped | L2 |
| 1 | MPU6050 | AA_Custom_Components:MPU6050 | U2 |
| 1 | Motor_DC_1 | AA_Custom_Components:PowerPad_Pair_3.0x3.0mm | M1 |
| 1 | Motor_DC_2 | AA_Custom_Components:PowerPad_Pair_3.0x3.0mm | M2 |
| 1 | Motor_DC_3 | AA_Custom_Components:PowerPad_Pair_3.0x3.0mm | M3 |
| 1 | Motor_DC_4 | AA_Custom_Components:PowerPad_Pair_3.0x3.0mm | M4 |
| 1 | NRF24L01_Breakout | AA_Custom_Components:NRF24L01_Breakout | U3 |
| 1 | SolderJumper_1 | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | JP1 |
| 1 | SolderJumper_2 | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | JP2 |
It measures 79.6 × 62.6 mm and has 2 copper layers, 1.6 mm thick.
61 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.
From the AshishA26/MiniCopter repository on GitHub, at the commit this page was made from: the board is Schematics/MiniCopterSchematic/MiniCopterSchematic.kicad_pcb and its schematic Schematics/MiniCopterSchematic/MiniCopterSchematic.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask AshishA26 before reusing the design.

shanteacontrols/OpenDeck
A platform for building interactive control and sensing devices using MIDI and OSC built with Zephyr RTOS.

Neumi/open_echo
Open Source echo sounder / depth sounder / SONAR for bathymetry and research. Arduino based and compatible.

StuckAtPrototype/AirCube
Works standalone out of the box. Pairs with Home Assistant in minutes. Other platforms are supported through community-contributed extensions.

TeXitoi/keyseebee
KeySeeBee is a split ergo keyboard. It is only 2 PCB (so the name) with (almost) only SMD components on it. It's only a keyboard, no LED, no display, nothing more than keys and USB.


Jeija/esp8266-smartwatch
ESP8266 DIY WiFi Smartwatch with MPU-9250, RTC, OLED, FT232, ...

