oh1fss wrote: ↑Thu Apr 22, 2021 7:35 pm
Is it really a problem to distribute OpenGD77 firmware file (the .sgl file) which contains the AMBE codec ("the blob")?
The sgl file is encrypted, so it is usable only on a supported radio. You can't extract the codec from the sgl file. And if the radio contained the same version of the official firmware, the radio contains already exactly the same AMBE codec.
Could we just write an end user license for OpenGD77 which states that the sgl file is only allowed to be downloaded if the user has a supported radio (which already contains the same AMBE codec)?
IMNAL
But if the requirement is that you must, on request, supply
allthe sources for the binary you are providing e.g. the firmware.
Then you must supply sources for the AMBE codec.
However.
1. We don't have sources for the AMBE codec
2. If
you have sources an AMBE codec, which you can provive, you would potentially be at legal risk from claims of patent infringement depending on what is in the sources.
There is nothing in the license which says that if you encrypt the binary, then this requirement to provide the source code is removed.
This raises some bigger questions.
If its impossible to supply the sources, because you simply we have them, what is the status of the firmware?
Is it truely open source?
Can an open source license be applied to other people's code binary without their permission?
i.e
Are Releases not possible for this firmware.
You could of course remove the AMBE blocks and fill them with zeros, but the radio would crash if you uploaded the firmware and it received a DMR signal
You could check if the AMBE block was empty and then not use it.
But the DMR voice prompts would no longer work. So you would be distributing firmware with substantially different functionality, i.e well under 50% of the full functionality.
You could personally patch in the AMBE blocks from the official firmware, becuase what you privately with the binary is up to you.
You could write any automated tool to do that patching and distribute it.
However be aware the license on some of the loader code is not "open source". Its included in the repo, but its copyright me or others.
IMNAL, but the way I read the GPL FAQ, is simply including source into an open source project does not make that code open source.
IMDNAL, but I am the personal copyright holder on many of the files and I presume have some rights to my work.
Also, if you look carefully at the code in some places, the license header on files is not actually correct.
e.g.
As curtacy, I cut and pasted headers from MMDVMHOst onto some new files I had written, which were based on concepts from MMDVMHost.
They perform the same functions as the MMDVMHost code, but had to re-write the code because the firmware is C not C++ of MMDVMHost.
This is my mistake, and lack of understanding of not setting the correct copyright on my own work.
I can't remember if this applies to 100% of the code that is used in the hotspot, bu it was definitely not a cut and paste job from the MMDVMHos files, as they simply won't compile.