Prusa-Firmware-Buddy
Prusa-Firmware-Buddy copied to clipboard
[QUESTION] Where is the source code for the actual bootloader shipped with the Prusa Mini+?
The Prusa Mini+ Buddy board ships with a bootloader pre-flashed at the factory.
When compiling the firmware source code from this repository, the bootloader is downloaded in binary form by utils/bootstrap.py
as part of the build process, from this URL:
https://prusa-buddy-firmware-dependencies.s3.eu-central-1.amazonaws.com/bootloader-mini-1.0.0.zip
This ZIP file contains a 128KB binary file named bootloader.bin
:
Archive: bootloader-mini-1.0.0.zip
Length Date Time Name
--------- ---------- ----- ----
131069 2019-11-08 07:09 bootloader.bin
212 2019-11-08 07:09 __MACOSX/._bootloader.bin
--------- -------
131281 2 files
The source code which generates this binary file, which contains executable ARM code, does not seem to be available anywhere in Prusa's GitHub repositories. This bootloader is distributed with the Prusa Mini+, in the flash memory on the ARM chip on the Buddy board, alongside and packaged together with the rest of the firmware, which of course is based on Marlin. It is also distributed in binary form, similarly packaged with Marlin, as part of the official firmware file downloadable from Prusa's website (https://www.prusa3d.com/drivers/).
The entire project is a covered work under the terms of the GPL v3 license, as it is based on Marlin which is also GPL v3. I believe that Prusa is required to supply the complete source code for the entire firmware, including the bootloader, because it is packaged together in the distribution media which Prusa itself distributes, to form a larger program. Therefore, in order to comply with Marlin's source code license, I believe Prusa is required to supply the source code for the bootloader.
I hereby request Prusa make available the source code for bootloader.bin
.