Skip to content

Commit aa2be50

Browse files
authored
Re-license CRSF for Arduino under the latest GNU Affero General Public License (#128)
Please refer to #126 for details on this.
1 parent 0ed20d4 commit aa2be50

File tree

25 files changed

+250
-257
lines changed

25 files changed

+250
-257
lines changed

LICENSE.md

Lines changed: 99 additions & 114 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@
99

1010
Cassandra "ZZ Cat" Robinson
1111

12+
> [!NOTE]
13+
> CRSF for Arduino is now distributed under the [GNU Affero General Public License v3.](https://github.com/ZZ-Cat/CRSFforArduino/blob/Main-Trunk/LICENSE.md)
14+
> Please take the time to familiarise yourself with the terms of this license _before_ you use this library in your projects.
15+
1216
## Description
1317

1418
CRSF for Arduino brings the Crossfire Protocol to the Arduino ecosystem.
@@ -49,8 +53,12 @@ CRSF for Arduino comes packaged with these features:
4953

5054
## Software license
5155

52-
As always, I believe in freedom and I want to pass that freedom onto you.
53-
Which is why I am proud to license CRSF for Arduino to you under the [GNU GPL v3](https://github.com/ZZ-Cat/CRSFforArduino/blob/Main-Trunk/LICENSE.md).
56+
CRSF for Arduino is distributed under a new license: The [GNU Affero GPL v3](https://github.com/ZZ-Cat/CRSFforArduino/blob/Main-Trunk/LICENSE.md).
57+
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).
58+
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.
59+
60+
Not a lot has changed across licenses. The same basic four freedoms are upheld: Use, copy, modify, and re-distribute.
61+
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.
5462

5563
## Attributions
5664

examples/flight_modes/flight_modes.ino

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,24 @@
22
* @file flight_modes.ino
33
* @author Cassandra "ZZ Cat" Robinson ([email protected])
44
* @brief Example of how to read flight modes from a receiver.
5-
* @version 1.1.0
6-
* @date 2024-4-18
5+
* @version 1.0.3
6+
* @date 2024-7-20
77
*
88
* @copyright Copyright (c) 2024, Cassandra "ZZ Cat" Robinson. All rights reserved.
99
*
10-
* @section License GNU General Public License v3.0
10+
* @section License GNU Affero General Public License v3.0
1111
* This example is a part of the CRSF for Arduino library.
1212
* CRSF for Arduino is free software: you can redistribute it and/or modify
13-
* it under the terms of the GNU General Public License as published by
13+
* it under the terms of the GNU Affero General Public License as published by
1414
* the Free Software Foundation, either version 3 of the License, or
1515
* (at your option) any later version.
1616
*
1717
* CRSF for Arduino is distributed in the hope that it will be useful,
1818
* but WITHOUT ANY WARRANTY; without even the implied warranty of
1919
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20-
* GNU General Public License for more details.
20+
* GNU Affero General Public License for more details.
2121
*
22-
* You should have received a copy of the GNU General Public License
22+
* You should have received a copy of the GNU Affero General Public License
2323
* along with CRSF for Arduino. If not, see <https://www.gnu.org/licenses/>.
2424
*
2525
*/

examples/link_stats/link_stats.ino

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,24 @@
22
* @file link_stats.ino
33
* @author Cassandra "ZZ Cat" Robinson ([email protected])
44
* @brief Example of how to read link statistics from a receiver.
5-
* @version 1.1.0
6-
* @date 2024-4-18
5+
* @version 1.0.3
6+
* @date 2024-7-20
77
*
88
* @copyright Copyright (c) 2024, Cassandra "ZZ Cat" Robinson. All rights reserved.
99
*
10-
* @section License GNU General Public License v3.0
10+
* @section License GNU Affero General Public License v3.0
1111
* This example is a part of the CRSF for Arduino library.
1212
* CRSF for Arduino is free software: you can redistribute it and/or modify
13-
* it under the terms of the GNU General Public License as published by
13+
* it under the terms of the GNU Affero General Public License as published by
1414
* the Free Software Foundation, either version 3 of the License, or
1515
* (at your option) any later version.
1616
*
1717
* CRSF for Arduino is distributed in the hope that it will be useful,
1818
* but WITHOUT ANY WARRANTY; without even the implied warranty of
1919
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20-
* GNU General Public License for more details.
20+
* GNU Affero General Public License for more details.
2121
*
22-
* You should have received a copy of the GNU General Public License
22+
* You should have received a copy of the GNU Affero General Public License
2323
* along with CRSF for Arduino. If not, see <https://www.gnu.org/licenses/>.
2424
*
2525
*/

examples/platformio/main.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,24 @@
22
* @file main.cpp
33
* @author Cassandra "ZZ Cat" Robinson ([email protected])
44
* @brief This is the main development file for CRSF for Arduino.
5-
* @version 1.1.0
6-
* @date 2024-4-18
5+
* @version 1.0.3
6+
* @date 2024-7-20
77
*
88
* @copyright Copyright (c) 2024, Cassandra "ZZ Cat" Robinson. All rights reserved.
99
*
10-
* @section License GNU General Public License v3.0
10+
* @section License GNU Affero General Public License v3.0
1111
* This source file is a part of the CRSF for Arduino library.
1212
* CRSF for Arduino is free software: you can redistribute it and/or modify
13-
* it under the terms of the GNU General Public License as published by
13+
* it under the terms of the GNU Affero General Public License as published by
1414
* the Free Software Foundation, either version 3 of the License, or
1515
* (at your option) any later version.
1616
*
1717
* CRSF for Arduino is distributed in the hope that it will be useful,
1818
* but WITHOUT ANY WARRANTY; without even the implied warranty of
1919
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20-
* GNU General Public License for more details.
20+
* GNU Affero General Public License for more details.
2121
*
22-
* You should have received a copy of the GNU General Public License
22+
* You should have received a copy of the GNU Affero General Public License
2323
* along with CRSF for Arduino. If not, see <https://www.gnu.org/licenses/>.
2424
*
2525
*/

examples/rc_channels/rc_channels.ino

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,24 @@
22
* @file rc_channels.ino
33
* @author Cassandra "ZZ Cat" Robinson ([email protected])
44
* @brief Example of how to read rc channels from a receiver.
5-
* @version 1.1.0
6-
* @date 2024-4-18
5+
* @version 1.0.3
6+
* @date 2024-7-20
77
*
88
* @copyright Copyright (c) 2024, Cassandra "ZZ Cat" Robinson. All rights reserved.
99
*
10-
* @section License GNU General Public License v3.0
10+
* @section License GNU Affero General Public License v3.0
1111
* This example is a part of the CRSF for Arduino library.
1212
* CRSF for Arduino is free software: you can redistribute it and/or modify
13-
* it under the terms of the GNU General Public License as published by
13+
* it under the terms of the GNU Affero General Public License as published by
1414
* the Free Software Foundation, either version 3 of the License, or
1515
* (at your option) any later version.
1616
*
1717
* CRSF for Arduino is distributed in the hope that it will be useful,
1818
* but WITHOUT ANY WARRANTY; without even the implied warranty of
1919
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20-
* GNU General Public License for more details.
20+
* GNU Affero General Public License for more details.
2121
*
22-
* You should have received a copy of the GNU General Public License
22+
* You should have received a copy of the GNU Affero General Public License
2323
* along with CRSF for Arduino. If not, see <https://www.gnu.org/licenses/>.
2424
*
2525
*/

examples/telemetry/telemetry.ino

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,24 @@
22
* @file flight_modes.ino
33
* @author Cassandra "ZZ Cat" Robinson ([email protected])
44
* @brief Example of how to send telemetry back to your RC handset using CRSF for Arduino.
5-
* @version 1.1.0
6-
* @date 2024-4-18
5+
* @version 1.0.3
6+
* @date 2024-7-20
77
*
88
* @copyright Copyright (c) 2024, Cassandra "ZZ Cat" Robinson. All rights reserved.
99
*
10-
* @section License GNU General Public License v3.0
10+
* @section License GNU Affero General Public License v3.0
1111
* This example is a part of the CRSF for Arduino library.
1212
* CRSF for Arduino is free software: you can redistribute it and/or modify
13-
* it under the terms of the GNU General Public License as published by
13+
* it under the terms of the GNU Affero General Public License as published by
1414
* the Free Software Foundation, either version 3 of the License, or
1515
* (at your option) any later version.
1616
*
1717
* CRSF for Arduino is distributed in the hope that it will be useful,
1818
* but WITHOUT ANY WARRANTY; without even the implied warranty of
1919
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20-
* GNU General Public License for more details.
20+
* GNU Affero General Public License for more details.
2121
*
22-
* You should have received a copy of the GNU General Public License
22+
* You should have received a copy of the GNU Affero General Public License
2323
* along with CRSF for Arduino. If not, see <https://www.gnu.org/licenses/>.
2424
*
2525
*/

library.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"$schema": "https://raw.githubusercontent.com/platformio/platformio-core/develop/platformio/assets/schema/library.json",
33
"name": "CRSFforArduino",
4-
"version": "1.1.0",
4+
"version": "1.0.3",
55
"description": "An Arduino Library for communicating with ExpressLRS and TBS Crossfire receivers.",
66
"keywords": "arduino, remote-control, arduino-library, protocols, rc, radio-control, crsf, expresslrs",
77
"repository":
@@ -18,7 +18,7 @@
1818
"maintainer": true
1919
}
2020
],
21-
"license": "GNU GPLv3",
21+
"license": "GNU AGPLv3",
2222
"homepage": "https://github.com/ZZ-Cat/CRSFforArduino",
2323
"dependencies": {
2424
},

library.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name=CRSFforArduino
2-
version=1.1.0
2+
version=1.0.3
33
author=Cassandra Robinson <[email protected]>
44
maintainer=Cassandra Robinson <[email protected]>
55
sentence=CRSF for Arduino brings the Crossfire Protocol to the Arduino ecosystem.

src/CFA_Config.hpp

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,24 @@
22
* @file CFA_Config.hpp
33
* @author Cassandra "ZZ Cat" Robinson ([email protected])
44
* @brief This is the configuration file for CRSF for Arduino.
5-
* @version 1.1.0
6-
* @date 2024-4-18
5+
* @version 1.0.3
6+
* @date 2024-7-20
77
*
88
* @copyright Copyright (c) 2024, Cassandra "ZZ Cat" Robinson. All rights reserved.
99
*
10-
* @section License GNU General Public License v3.0
11-
* This header file is a part of the CRSF for Arduino library.
10+
* @section License GNU Affero General Public License v3.0
11+
* This source file is a part of the CRSF for Arduino library.
1212
* CRSF for Arduino is free software: you can redistribute it and/or modify
13-
* it under the terms of the GNU General Public License as published by
13+
* it under the terms of the GNU Affero General Public License as published by
1414
* the Free Software Foundation, either version 3 of the License, or
1515
* (at your option) any later version.
1616
*
1717
* CRSF for Arduino is distributed in the hope that it will be useful,
1818
* but WITHOUT ANY WARRANTY; without even the implied warranty of
1919
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20-
* GNU General Public License for more details.
20+
* GNU Affero General Public License for more details.
2121
*
22-
* You should have received a copy of the GNU General Public License
22+
* You should have received a copy of the GNU Affero General Public License
2323
* along with CRSF for Arduino. If not, see <https://www.gnu.org/licenses/>.
2424
*
2525
*/
@@ -36,11 +36,11 @@ namespace crsfForArduinoConfig
3636
/* CRSFforArduino version
3737
Versioning is done using Semantic Versioning 2.0.0.
3838
See https://semver.org/ for more information. */
39-
#define CRSFFORARDUINO_VERSION "1.1.0"
40-
#define CRSFFORARDUINO_VERSION_DATE "2024-4-18"
39+
#define CRSFFORARDUINO_VERSION "1.0.3"
40+
#define CRSFFORARDUINO_VERSION_DATE "2024-7-20"
4141
#define CRSFFORARDUINO_VERSION_MAJOR 1
42-
#define CRSFFORARDUINO_VERSION_MINOR 1
43-
#define CRSFFORARDUINO_VERSION_PATCH 0
42+
#define CRSFFORARDUINO_VERSION_MINOR 0
43+
#define CRSFFORARDUINO_VERSION_PATCH 3
4444

4545
/* Failsafe Options
4646
- CRSF_FAILSAFE_LQI_THRESHOLD: The minimum LQI value for the receiver to be considered connected.

0 commit comments

Comments
 (0)