karkas:
Well, I am not going to use the arduino board. I am going to use the code on the MCUs with the bootloader.
I'm using EEPROM, LiquidCrystal, avr/io and avr/interrupt libraries, and TinyGPS library from arduiniana, I guess I'm gonna have to check the licensing info about that one over ther.
But I have some doubts about the information you have given. First, is there any other possible requirement or limtation when burning and selling the board based on the MCU with the code I wrtoe? I mean, other than releasen or making available object files. I am only using the libraries, I am not modifying them at all.
Doesn't matter if you modify any of the libraries. The licensing requirements are still the same.
And my guess is that you are using more than just the libraries, in that you have some of your own code as well.
If your code is open source, then things are easy.
It is only if you are refusing to disclose your source code that things can get sticky.
i.e. you want to create a closed source project/product that takes advantage of using other people's open source libraries.
And, what does this mean?
The LGPL does, however, require you to make available object files that allow for the relinking of the firmware against updated versions of the Arduino core and libraries
What are those object files? Realasing them or making them available in the site? or where?
Thannks in advance.
The LGPL license allows LGPL licensed open source code to be used with authors that refuse to disclose their own source.
The spirit of the LGPL license is that users always have the freedom to modify the LGPL licensed code
even if it is part of a larger work.
In order to allow that to happen when authors refuse to disclose certain portions of a larger work that uses
LGPL code the author must make available all that is necessary for a person
to re-create the image (firmware in this case) so that they can make modifications to any of the
LGPL open source modules that were used in the larger work.
For example, suppose there is an update to the EEPROM library code or to tinyGPS.
The user must have the ability to use the updated versions of those libraries in your larger work.
In order to do that, the user must be able to build the larger work, which at a minimum requires
providing the pre-compiled objects of the closed source modules.
That said, given the way the Arduino IDE works, I'm not sure it is ever truly possible to fully comply
with LGPL when using closed source, since the IDE does not provide a way to use pre-compiled
objects.
For full details, I'd suggest carefully reading the actual specific LGPL license that is associated with the library
as there are different versions with slightly different restrictions.
Here is a link to LGPL v2.1
https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html
Section 6 is probably what you are most concerned about.
For an embedded product, section 6a will come into play along
with probably 6c and 6d depending on how you wish to distribute the build materials.
--- bill