

PlaneController
An RC airplane, controlled by a custom flight controller based on Arduino Nano.
- Size
- 44.2 × 83.8 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 17
- Nets
- 37
- Pads
- 79
- Tracks, vias
- 114, 0
- Routed
- Yes
- KiCad
- KiCad 8.0 (file 20240108)
- Created
- 17 Aug 2024
- Updated
- 1 Oct 2025
Overview
PlaneController is an open-source printed circuit board by gregora, from the gregora/Arduino-RC-Plane repository on GitHub. It is a 2-layer board of 44.2 × 83.8 mm with 17 parts on 37 nets, routed with 114 tracks and 0 vias.
It belongs with the robots and motor control boards and the AVR (ATmega, ATtiny) boards of this library.
README
README.mdArduino-RC-Plane
An RC airplane, controlled by a custom flight controller based on Arduino Nano.
CAD
CAD files are available on OnShape here
Controller hardware
The following devices are necessary to recreate the flight controller:
-
Arduino Nano microcontroller
-
BNO055 Adafruit absolute orientation sensor
-
CC1101 radio module
-
Flysky radio receiver (or any receiver with iBus)
Flight modes
The controller enables you to choose from a few different modes of flying. A mode of flying can be chosen by flipping a switch on your radio transmitter on channel 6.
Mode 0 - Manual: Your transmitter outputs are directly linked to the motors.Mode 1 - Take-off: The aircraft will maintain a 10 degree pitch-up with wings level.Mode 2 - Fly-by-wire- The aircraft will follow the angular velocity, commanded by the transmitter. For example, a full deflection of right joystick corresponds to2*pi rad/sroll rate.Mode 3 - Automatic- The aircraft will fly automatically to the desired target positionMode 255 - Recovery: The aircraft will assume -10 degree pitch down and wings level
Ground UI
UI for ground control was also written in Python. The UI includes all the necessary information about the flight and enables saving the flight data to a csv file.

Parts
17| Qty | Value | Footprint | References |
|---|---|---|---|
| 5 | Motor_Servo | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | M1, M2, M3, M4, M5 |
| 4 | MountingHole | MountingHole:MountingHole_3mm | H1, H2, H3, H4 |
| 1 | Arduino_Nano_Every | Module:Arduino_Nano | A1 |
| 1 | Conn_01x03 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J3 |
| 1 | Conn_01x04_Pin | Connector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_Vertical | J2 |
| 1 | Conn_01x06_Pin | Connector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_Vertical | J1 |
| 1 | Conn_02x04_Odd_Even | Connector_PinSocket_2.54mm:PinSocket_2x04_P2.54mm_Vertical | J4 |
| 1 | GPIO7 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J5 |
| 1 | GPIO8 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J6 |
| 1 | GPIO9 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J7 |
Similar boards
- 2 layers50 × 35 mm

- 2 layers139.7 × 62.2 mm

- 2 layers29.2 × 55.9 mm

Deniseadapter
hoglet67/RGBtoHDMI
Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI
17 parts1kGPL-3.0 - 2 layers24.5 × 36.5 mm

- 2 layers56.3 × 55.7 mm

StarNecklace
hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!
17 parts915 - 2 layers25 × 25 mm

SmallEncoder
DDeGonge/OS-ARM
This arm is not industrial and it will not be fast, but that is not my goal. But it will hopefully be a very nice looking arm fully capable of 6dof motion, cheap enough to keep it accessable but capable enough to…
17 parts498MIT - 2 layers38.9 × 16.1 mm

- 2 layers36 × 51 mm

Questions
How big is the PlaneController PCB?
It measures 44.2 × 83.8 mm and has 2 copper layers, 1.6 mm thick.
What parts does the PlaneController use?
17 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 PlaneController KiCad files?
From the gregora/Arduino-RC-Plane repository on GitHub, at the commit this page was made from: the board is PCB/PlaneController.kicad_pcb and its schematic PCB/PlaneController.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the PlaneController design in my own project?
Its repository states no licence, so its author keeps all rights: ask gregora before reusing the design.