ZZ-Cat/CRSFforArduino
Fork: 26 Star: 152 (更新于 2024-11-13 07:30:43)
license: AGPL-3.0
Language: C++ .
An Arduino Library for communicating with ExpressLRS and TBS Crossfire receivers.
最后发布版本: v1.0.4 ( 2024-08-30 07:08:15)
CRSF for Arduino
Written and developed by
Cassandra "ZZ Cat" Robinson
[!NOTE] CRSF for Arduino is now distributed under the GNU Affero General Public License v3. Please take the time to familiarise yourself with the terms of this license before you use this library in your projects.
Description
CRSF for Arduino brings the Crossfire Protocol to the Arduino ecosystem.
This library enables you to connect either a TBS Crossfire or ExpressLRS receiver to your development board,
giving you access to telemetry and up to 16 11-bit proportional RC channels over a tried-and-true serial protocol.
The Crossfire Protocol (better known as CRSF) is used by both Team BlackSheep (in their Crossfire and Tracer receivers) and
ExpressLRS. The latter of the two are well-known in the FPV drone community for their ultra low latency and long range control
link.
By pairing CRSF for Arduino with an ExpressLRS transmitter and receiver, you have a control link between your RC handset and your development project that is robust in tough RF environments.
Documentation
CRSF for Arduino's documentation is now live.
Feel free to peruse the Wiki at your leisure.
For new users, it is strongly recommended that you read the documentation in its entirety.
Features
CRSF for Arduino comes packaged with these features:
- 16 11-bit proportional RC channels.
- Diverse modern hardware support from the following architectures:
- ESP32, RP2040, SAMD21, SAMD5x, SAME5x, STM32, and Teensy 4.x.
- Flight Modes, both custom and standard.
- Standard Flight Modes are based on the Flight Modes from Betaflight 4.3.
- Custom Flight Modes use text-based strings that you can assign custom names to for your bespoke purposes.
- Both Standard and Custom Flight Modes can be sent as Telemetry back to your controller.
- Event-driven API.
- Fully configurable.
- CRSF for Arduino can be tailored to suit the needs of your individual projects.
- Telemetry.
- Attitude.
- Barometric Altitude.
- Battery.
- Flight Modes.
- GPS.
Software license
CRSF for Arduino is distributed under a new license: The GNU Affero GPL v3.
For regular users, this may be a non-issue for you, as you are already REQUIRED by existing licensing terms to make CRSF for Arduino's source code available (you're already doing this by linking back to its GitHub Repository).
With the upcoming Serial Transmitter Interface, this increases CRSF for Arduino's potential usage in the context of network servers. With the former GPL v3, you could use CRSF for Arduino as a dependency in your network host and never make the source code available to clients. Updating CRSF for Arduino's license to the Affero GPL v3 closes that loop hole, because you are REQUIRED to make the source code of CRSF for Arduino available in all of its distributions.
Not a lot has changed across licenses. The same basic four freedoms are upheld: Use, copy, modify, and re-distribute.
The only noteworthy change here you are REQUIRED to make the source code available to clients, if you choose to use CRSF for Arduino as a part of your server-side project. To do this, simply link back to this repository via its URL in addition to the terms outlined in the license.
Attributions
I give credit where credit is due. Because CRSF for Arduino isn't entirely my own idea, but built on the shoulders of giants. Here is a list of credits to those what helped to make this possible:
- Inspiration for this library
- ExpressLRS
- Team BlackSheep FPV - The folks behind the CRSF protocol that both ExpressLRS and CRSF for Arduino uses.
- References for CRSF for Arduino
- BetaFlight
-
CRSF-WG
- This is the official repository for The CRSF Protocol, which CRSF for Arduino is based on.
- RotorFlight
- Third Party libraries
Contributing
If you would like to contribute to the development to CRSF for Arduino, here is what you can do:
- Read my code of conduct and contribution guidelines;
- Fork CRSF for Arduino;
- Make your contribution to the codebase;
- Submit your changes in your fork as a Pull Request back to CRSF for Arduino.
Your contributions are very welcome, and if it benefits the project and community, it will be merged into the Main-Trunk.
最近版本更新:(数据更新于 2024-09-24 20:01:25)
2024-08-30 07:08:15 v1.0.4
2024-07-20 17:11:46 v1.0.3
2024-03-19 06:02:45 v1.0.2
2024-03-07 05:45:50 v1.0.1
2024-02-23 14:05:57 v1.0.0
2023-08-08 11:36:24 v0.4.0
2023-07-19 11:30:04 v0.3.3
2023-06-03 09:59:59 v0.3.2
2023-04-05 11:19:04 v0.3.1
2023-02-25 15:20:51 v0.3.0
主题(topics):
arduino, arduino-library, crsf, expresslrs, protocols, radio-control, rc, remote-control
ZZ-Cat/CRSFforArduino同语言 C++最近更新仓库
2024-11-23 20:28:31 PCSX2/pcsx2
2024-11-22 19:14:23 ClickHouse/ClickHouse
2024-11-22 19:09:45 manticoresoftware/manticoresearch
2024-11-20 09:02:24 dail8859/NotepadNext
2024-11-20 04:28:15 microsoft/terminal
2024-11-19 23:38:51 FreeCAD/FreeCAD