GNU General Public License v3.0

项目介绍

emuflight/EmuFlight 是一个托管在 GitHub 上的开源项目,主要使用 C 编写,采用 GNU General Public License v3.0 许可证,目前获得 507 个 Star、121 次 Fork。

仓库全名
emuflight/EmuFlight
开源许可证
GNU General Public License v3.0
Star 数
507
Fork 数
121
未关闭 Issue
58

README 摘要

EmuFlight is flight controller software (firmware) used to fly multi-rotor aircraft. This fork differs from Baseflight, Cleanflight and Betaflight in that it focuses on flight performance, innovative filtering, and leading-edge features. [!WARNING] Always remove propellers and use a smoke-stopper when bench-testing. Never arm with propellers attached while connected to a computer. EmuFlight Releases…

完整内容见 GitHub 原始 README 或本页 。

常见问题

EmuFlight 用什么语言开发?

主要使用 C 编写,采用 GNU General Public License v3.0 许可证,目前有 507 个 Star。

EmuFlight 可以免费商用吗?

仓库标注的许可证为 GNU General Public License v3.0,商用前请先阅读仓库 LICENSE 文件确认授权范围。

如何获取 EmuFlight 的源码?

可以直接克隆仓库:git clone https://github.com/emuflight/EmuFlight.git,默认分支为 master;安装与运行步骤见仓库 README。

EmuFlight 最近还在维护吗?

仓库最近一次更新为 18 小时前,当前有 58 个未关闭 Issue;Star 数为 507,可作为社区活跃度的参考。

关于

EmuFlight is flight controller software (firmware) used to fly multi-rotor craft.

描述取自 GitHub 官方 API,中文内容由 GitRead 中文社区 编辑团队整理。

语言占比

Assembly
Batchfile
C
C++
HTML
Linker Script
Makefile
Perl

README

EmuFlight

EmuFlight is flight controller software (firmware) used to fly multi-rotor aircraft.

  • This fork differs from Baseflight, Cleanflight and Betaflight in that it focuses on flight performance, innovative filtering, and leading-edge features.
Warning 警告

Always remove propellers and use a smoke-stopper when bench-testing. Never arm with propellers attached while connected to a computer.

EmuFlight Releases

Support and Developers Channel

Features

  • Support for targets that use the STM32 H7, F7, and F4 processors
  • Support for HelioRC Spring FC’s
  • IMUF (Kalman-based) Filtering for all FC’s
  • Additional DShot levels: 1200, 2400, 4800
  • OSD based configuration without needing third-party OSD software/firmware/comm devices
  • Per-Axis Lowpass filters
  • Feathered PIDs
  • Error-based Boosts for P, I, & D. (EmuBoost/DBoost)
  • i-Decay
  • Throttle Point Attenuation (TPA) for P, I, & D
  • Stick Point Attenuation (SPA)
  • Advanced Dynamic Gyro & D-Term Filters
  • Smith-Predictor on Gyro
  • Optional ABG Filters for Gyro and DTerm
  • PT(n) for LPF and RC-Smoothing
  • Rate-Dynamics (Stick-feel modifier)
  • Angle-mode 2.0
  • Dual Axis Steering
  • NFE racer mode
  • Fixed yaw PIDsum limit
  • LPF filter for voltage and current
  • Motor output limit
  • Motor output smoothing
  • Thrust linearization
  • Axis Lock
  • and MUCH, MUCH more

Installation & Documentation

Configuration Tool

HD Video System Compatibility

Caution 注意

Do not use HD video systems (HDZero, Walksnail, or DJI) to configure EmuFlight. These systems send Betaflight-formatted MSP; EmuFlight’s PID, rate, and filter structs differ significantly from Betaflight’s, and MSP configuration writes are not source-gated. Sending configuration from any of these devices may silently corrupt your tune. Use EmuConfigurator, the CLI, or the EmuFlight OSD for all configuration.

Tip 提示

Stock DJI goggles do not display OSD. WTFOS enables EmuFlight OSD passthrough on DJI hardware and is the recommended solution for DJI users.

Contributing

Build Environment

Requirement Version
ARM GCC toolchain 9.x – 13.x (xPack ARM GCC recommended)
Python 3.12+
GNU Make 4.x+

Automated builds and unit tests run via GitHub Actions on every push and pull request — see .github/workflows/ for CI configuration.

To install the ARM toolchain:

make arm_sdk_install   # downloads xPack ARM GCC into tools/
make test              # run unit tests

Development Guidelines

EmuFlight development guidance lives in .github/instructions/:

  • Unit test development best practices

Read these before opening a pull request.

Developers

Contribution of bugfixes and new features is encouraged. Please be aware that we have a thorough review process for pull requests. Be prepared to explain what you want to achieve with your pull request. Before starting to write code, review the Development Guidelines section above.

Open Source / Contributors

EmuFlight is software that is open source and is available free of charge without warranty to all users.

EmuFlight is forked from Betaflight, so thanks goes to all those whom have contributed to Cleanflight, Betaflight, Butterflight and their origins.

Origins for this fork (Thanks!):

  • Alexinparis (for MultiWii),
  • timecop (for Baseflight),
  • Dominic Clifton (for Cleanflight),
  • borisbstyle (for Betaflight),
  • Sambas (for the original STM32F4 port), and
  • Marinus (for forking IMUF thus beginning EmuFlight).

The EmuFlight Configurator is forked from Betaflight Configurator and its origins.

Origins for EmuFlight Configurator:

  • Dominic Clifton (for Cleanflight configurator), and
  • ctn (for the original Configurator).

Big thanks to current and past contributors:

  • Budden, Martin (martinbudden)
  • Bardwell, Joshua (joshuabardwell)
  • Blackman, Jason (blckmn)
  • ctzsnooze
  • Höglund, Anders (andershoglund)
  • Ledvina, Petr (ledvinap) - IO code awesomeness!
  • kc10kevin
  • Keeble, Gary (MadmanK)
  • Keller, Michael (mikeller) - Configurator brilliance
  • Kravcov, Albert (skaman82) - Configurator brilliance
  • MJ666
  • Nathan (nathantsoi)
  • ravnav
  • sambas - bringing us the F4
  • savaga
  • Stålheim, Anton (KiteAnton)
  • Tim Sweet, Kaylin Doerr, Shawn Loftin - Filtering improvements, IMUF

And many many others either mentioned in release notes, GitHub history, or possibly haven’t been mentioned… Thank you!

评论

暂无评论