Skip to content
This repository was archived by the owner on Aug 26, 2026. It is now read-only.

Repository files navigation

DroneSkeleton — S500 Quadcopter Frame

Modular S500 quadcopter (X-frame) airframe modeled in OpenSCAD. Every structural part ships as a standalone, ready-to-print polyhedron, and a single assembly file (drone.scad) combines them into the complete drone.

Requires OpenSCAD ≥ 2021.01 · Licensed under MIT.

Table of Contents

Features

  • Complete S500 X-frame — 4 arms, 4 landing legs, top/bottom center plates, battery tray, side rails and vibration dampers.
  • Pre-positioned parts — each *.scad part is an exported polyhedron already placed at its final location (centered in X/Y, correct Z height), so the assembly is a plain union with no manual transforms.
  • Symmetry-aware assembly — arm.scad and leg.scad are 4-fold symmetric (one file = all 4 arms / legs); rail-support and rail-support-grommet each already contain a full set of 4 dampers.
  • Parametric mount offsets — rail spacing and battery centering are exposed as variables in drone.scad.
  • 9045 propeller layout — motor positions match a standard 9″ (9045) propeller footprint.

Installation

Prerequisites

git clone https://github.com/colgecen/DroneSkeleton.git
cd DroneSkeleton

No additional dependencies or build step are required — the part files are self-contained geometry.

Usage

Open the full assembly:

openscad drone.scad

Render/export a single part, e.g. one arm:

openscad arm.scad

Export the complete airframe to STL:

openscad --export-format=asciistl -o build/drone.stl drone.scad

A rendered preview image belongs here — drop a docs/preview.png screenshot and link it below once you have rendered the model.

Configuration

The assembly behavior is controlled by two variables at the top of drone.scad:

Variable Default Description
rail_offset 45 X-axis offset of the two side rails (mm).
battery_center [-44.17, 0, 0] Translation that shifts the battery sub-assembly to the dead center.

Part geometry itself is fixed (exported meshes), so dimensional changes require re-exporting the source part, not editing drone.scad.

Project Structure

File Description
drone.scad Main assembly — combines every part.
arm.scad 4 arms (single file, 4-fold symmetric).
leg.scad 4 landing legs (single file, 4-fold symmetric).
top-plate.scad Top center plate.
bottom-plate.scad Bottom center plate.
battery-plate.scad Battery tray plate.
battery-support.scad Battery support bracket.
rail.scad Single side rail (used twice in the assembly).
rail-support.scad Vibration damper (file already contains 4).
rail-support-grommet.scad Damper grommet (file already contains 4).

Contributing

  1. Fork the repository and create a feature branch.
  2. Keep README.md in sync with any structural changes.
  3. Render your changes in OpenSCAD and export an STL to confirm the model is manifold before opening a pull request.

Validation

This repository ships a CAD model, not executable code, so there is no automated test suite. Validate a change by rendering and exporting:

openscad --export-format=asciistl -o build/check.stl drone.scad

Then confirm OpenSCAD reports the output as manifold (no self-intersections or open edges). All original parts were verified manifold under OpenSCAD 2021.01.

License

Released under the MIT License.

Acknowledgements

Built as an open, remixable S500 airframe. Thanks to the OpenSCAD community for the tooling and conventions used throughout this project.

About

OpenSCAD S500 quadcopter frame with full assembly

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages