Open-source. Modular. Built to grow. Powered by ESP32-S3 and lots of prayers. ;_;
Project Skyfall is an open-source modular aviation companion built around the ESP32-S3.
Its goal is simple:
Build a reliable, expandable and hackable platform that can be customized for different aviation applications without redesigning the entire system.
Skyfall is not intended to replace certified avionics.
Instead, it serves as a modular companion platform for experimentation, education, research and personal projects.
Instead of putting everything onto one PCB, Skyfall uses stackable daughterboards.
Examples include:
- RS-232
- GPS
- CAN
- AC Power
- Future expansions
Need a feature?
Add a daughterboard.
Don't need it?
Leave it out.
The RS-232 daughterboard contains an independent ATmega328PB.
Its responsibilities include:
- Heartbeat monitoring
- Fault detection
- ESP32 reset
- RGB status indication
- System supervision
Official description:
Keeps the ESP32 from having a panic attack.
The ESP32 periodically sends heartbeat packets.
If they stop arriving, the ATmega immediately notices.
Possible recovery actions include:
- Fault logging
- Status LED update
- ESP32 reset
- Safe state transition
SkyBus is the internal expansion interface used throughout Project Skyfall.
It allows daughterboards to communicate with the mainboard while remaining stackable.
Current supported interfaces include:
- I²C
- UART
- Power
- Reset
- Heartbeat
Additional interfaces may be added in future revisions.
The project was designed with expansion in mind.
Adding a new feature should not require redesigning the mainboard.
Examples include:
- New communication interfaces
- Sensors
- Displays
- Power modules
- Custom hardware
Everything is intended to be open.
That includes:
- Schematics
- PCB files
- Firmware
- Documentation
Because knowledge should be shared.
Project-Skyfall
│
├── Hardware
│ ├── Mainboard
│ ├── RS232-Daughterboard
│ ├── GPS-Daughterboard
│ ├── CAN-Daughterboard
│ └── ...
│
├── Software
│ ├── ESP32
│ ├── ATmega328PB
│ └── PC
│
├── Docs
│
├── README.md
├── CONTRIBUTING.md
├── CODE_OF_CONDUCT.md
├── CHANGELOG.md
└── LICENSE
The hardware is split into independent modules.
Each hardware folder contains everything related to that PCB:
- KiCad Project
- Schematics
- PCB Layout
- BOM
- Gerbers
- Images
- Documentation
No unnecessary folder nesting.
One board.
One folder.
Firmware is separated by platform.
Current targets include:
- ESP32-S3
- ATmega328PB
- PC Utilities
Each platform has its own documentation.
Project Skyfall follows a few simple principles.
Need something?
Add it.
Don't?
Leave it out.
Hardware should be understandable.
Not disposable.
Future hardware should not require redesigning the entire platform.
Good documentation is just as important as good hardware.
Learning is one of the main goals of this project.
Study it.
Modify it.
Improve it.
Contributions are always welcome.
You can contribute by:
- Fixing bugs
- Improving documentation
- Designing daughterboards
- Writing firmware
- Suggesting improvements
Please read CONTRIBUTING.md before opening a Pull Request.
See LICENSE.
Project Skyfall is an experimental open-source project.
It is not certified avionics and must not be relied upon as the primary source of information for operating an aircraft.
Always follow applicable regulations and use certified equipment where required.
Project Skyfall is developed by Melih.
Thanks to everyone who contributes to the project.
If you somehow spent weeks reverse engineering this board...
...
Check the back.
There was probably a QR code.
"One day, I'll come back to see what you've built."
— Melih