Supporting FPP development since 2022. Proceeds go to help further FPP development.

I thought FPP was Open Source, licensed under the GPL, how can you require us to buy licenses for particular features?

The core of FPP is a combination of both GPL and LGPL while other parts are actually covered under other licenses such as the MIT license. A complete list of the licenses which apply to FPP code is located in the /opt/fpp/LICENSE file and the FPP github repository. This file received a lot of updating for FPP v6 to clarify what licenses applied to what code since some of the code we are using is not our own and some code we have written is not GPL or LGPL. LGPL is used for the main libfpp.so library which contains most of the brains of FPP. The LGPL license is traditionally used for libraries to allow non-GPL programs to link against those libraries. FPP also includes multiple Channel Output libraries, some of which were completely written by the FPP developers and some which were written by FPP developers but use other external libraries such as the rpi_ws281x and spixels libraries. The new DPIPixels and existing BBB48String Channel Output libraries are not GPL or LGPL, they are covered under the CC-BY-ND license which allows us to redistribute the source code for the Channel Outputs but does not allow modifications to be distributed or derivative works to be made. The license key currently enables advanced functionality in these non-GPL DPIPixels and BBB48String Channel Output libraries. The new BBShiftString Channel Output library also falls into the same category as the legacy BBB48String code.