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

FAQs – The Hard Questions

ALL FAQs

c Expand All C Collapse All

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.

FPP is made up of two primary parts, the “player” portion and the “controller” portion. The controller part of FPP allows FPP to control pixels which are directly attached to a Raspberry Pi, BeagleBone, or PocketBeagle SBC (Single Board Computer). The player portion of FPP is everything else. FPP can be used as a player to send show data to physical controllers as well as other FPP systems acting as a controller. The player portion of FPP is free and open as is most of the controller portion of FPP. The two primary controller Channel Outputs that are included with FPP are the existing BBB48String output and the DPIPixels output which is new in FPP v6.0. The BBB48String output supports driving up to 48 strings of pixels on a BeagleBone or PocketBeagle and the DPIPixels output supports driving up to 24 strings of pixels on a Raspberry Pi. The FPP developers use the sale of FPP-based controller capes to help support the development of FPP allowing us to continue to develop the core player portion of FPP and keep the player fully open and free for users. When a FPP-based controller cape is purchased from PixelController.com or KulpLights.com, the purchase is directly supporting FPP developers. The developers want to continue to allow 3rd Party cape designers to build and sell FPP-based controller capes and providing License Keys to enable enhanced functionality on 3rd Party capes is a way of supporting FPP development while purchasing these 3rd Party capes. The new BBShiftString channel output also requires a key to drive more than 50 pixels per output.

No. The Falcon Player project is not considered a charitable organization and does not have 501(c)(3) status.

In order to keep a level playing field, we do not allow cape vendors to sign their own EEPROMs. You can pre-purchase a license key voucher and give it away with a cape to allow the purchaser to get a free license key and sign the EEPROM via the signing UI.

On paper, “Falcon Player, LLC” and the falconplayer.com domain name are owned by Chris Pinkham who is one of the founding developers of FPP, because unfortunately someone has to deal with the tax man. The site and fees collected are used to help support active members of the FPP development team.

A good portion of money from sales and donations is fed directly back into supporting FPP. This applies in multiple ways including buying hardware to test FPP on such as new Pi/BB/PB versions, providing capes and other hardware to the support team members, and even traveling to shows to teach classes. While creating the DPIPixels output CaptainMurdoch/Chris made extensive use of a USB oscilloscope that was purchased previously when working on creating another FPP Channel Output a few years ago. This isn’t a worthwhile paying job for us, there is no way we will ever get back enough for the literally tens of thousands of hours the team has spent creating and supporting FPP. If we charged a going rate for custom programming to create and support for FPP, the cost of this project would easily have exceeded multiple millions of dollars since we created FPP in 2013.

No. The IRS has not made it easy over the past few years for Open Source projects to gain 501(c)(3) status, so the Falcon Player developers have chosen not to pursue this. We would rather spend our time coding new features and fixing bugs than dealing with lawyers and the IRS.

You are free to stay on FPP v5.x for as long as you want. You won’t have access to DPIPixels, bug fixes, or other enhancements, but as the saying goes “if it ain’t broke, don’t fix it.” We can not guarantee that there will not be changes in FPP Connect that break older versions as we do not test older versions and instead focus our development and testing on the latest FPP version.