mkschreder / ninjaflight

Fast, clean and well tested.
GNU General Public License v3.0
5 stars 0 forks source link

NinjaFlight

Build Status Coverage Status

An even cleaner version of cleanflight flight-controller. Flight controllers are used to fly multi-rotor craft and fixed wing aircraft.

IMPORTANT: if you are building from source code then do not use "master" branch. Instead use a tagged release.

Latest release: 1.16.10 (Codename: "Panic In The Sewers")

This fork differs from cleanflight in that it introduces SITL (software in the loop) support that is able to simulate the flight controller in a simulated physics environment powered by Bullet physics. It also adds support for tilted motor quads and uses modern development practices to simplify maintainability and improve quality of the firmware.

This is done by:

New in NinjaFlight

SITL

Simulator is an integral part of the development cycle. It is however located in a separate repo and requires some data files to work (notably pak0.pk3 from quake3). Main makefile can already download the necessary files for you.

To build and run the sitl on linux you can do the following:

make start-sitl

Features

Ninjaflight also supports:

Most popular supported boards

NAZE

NAZE

CJMCU

CJMCU

CC3D

CC3D

Dodo

DODO

Sparky

Sparky

SPRacingEVO

SPRacingEVO

SPRacingF3

SPRacingF3

Colibri

Colibri Race

Lux-Race

Lux Race

Olimexino

Olimexino

Installation

See: Installation.md

Documentation

See: docs folder

If what you need is not covered, check the Cleanflight documentation.

In many ways currently ninjaflight works exactly like cleanflight so a lot of things are already covered by cleanflight documentation (although this may change as the project evolves).

Configuration Tool

To configure Ninjaflight you can use the Cleanflight-configurator GUI tool (Windows/OSX/Linux).

The source for it is here:

https://github.com/cleanflight/cleanflight-configurator

Contributing

Contributions are welcome and encouraged. You can contribute in many ways:

The best place to start is the IRC channel on freenode (see above), drop in, say hi. Next place is the github issue tracker:

https://github.com/mkschreder/ninjaflight/issues

And also:

https://github.com/mkschreder/ninjaflight/issues https://github.com/cleanflight/cleanflight-configurator/issues

Before creating new issues please check to see if there is an existing one, search first otherwise you waste peoples time when they could be coding instead!

See CONTRIBUTING.md

Acknowlegements

Every single person who has contributed to this project over time (see AUTHORS file).