Raspberry Pi Bootloader License Precludes it to Run on Competing Broadcom BCM283x Boards
Yesterday I wrote about ArduCAM Raspberry Pi compatible module, that packs most of the features of Raspberry Pi Zero or Pi Compute module into a 24x24mm board, and is based on Broadcom BCM2835 processor. One person also started a thread on Raspberry Pi forums about the tiny module, and one of the Raspberry Pi engineer and forum moderator replied that will would breach the bootloader license.
This software may only be used for the purpose of developing for, running or using a Raspberry Pi device.
ArduCAM module is only Raspberry Pi compatible, so it would indeed breach the license, and you can get into troubles if you planned to use that module in a commercial project, especially in countries where IP protection is taking seriously.
This raises a few questions. First why did the Raspberry Pi foundation chose that restrictive license? The obvious answer would be to protect there investment, but it’s also possible that since the bootloader and firmware is related to the GPU, video codec license may also have been a part of the decision.
The other issues is that after ordering 5K Broadcom BCM2835 processors for the first run of their ODROID-W module, Broadcom decided not to sell the processor anymore to Hardkernel subsequently. The exact reason is not known, but there are speculations that it was because of the Raspberry Pi foundation, and the license above may have been a reason for it. So could this also happen to ArduCAM? In theory yes, but If I’m not mistaken the company is based in China, and there are multiple smaller distributors, but it may not be quite as easy for Broadcom to block them.
The final question I has is whether it could possible to legally use the board without using the bootloader. Maybe… thanks to Kristina Brooks work on an open source bootloader for Raspberry Pi, released under BSD and GPLv2+, and not including any “Raspberry Pi only” conditions. There are some serious caveats such as no support for video codecs (licenses are part of it too), and while it can boot Linux, some things are broken.
If you are based in mainland China, and your customers are all based there, you probably don’t have to care about any of this, but in the western world, commercial projects should probably keep using official Raspberry Pi parts, or other solutions not involving Broadcom processors, nor official Raspberry Pi OS images.