License Question

If I were to write software that was 100% original, that ran on the Arduino hardware, would there be any reason, according to the license, that I could not sell that software without publishing the source?

For instance, if I were to create an application - say for instance a clock design - that combined certain Arduino off-the-shelf hardware...could I burn that code onto an AVR chip, and sell those chips (with the embedded application) ...and not publish any of my work?

I believe that is already answered under the Arduino FAQ

Can I build a commercial product based on Arduino?

Yes, with the following conditions:

Physically embedding an Arduino board inside a commercial product does not require you to disclose or open-source any information about its design.

Deriving the design of a commercial product from the Eagle files for an Arduino board requires you to release the modified files under the same Creative Commons Attribution Share-Alike license. You may manufacture and sell the resulting product.

Using the Arduino core and libraries for the firmware of a commercial product does not require you to release the source code for the firmware. 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. Any modifications to the core and libraries must be released under the LGPL.

The source code for the Arduino environment is covered by the GPL, which requires any modifications to be open-sourced under the same license. It does not prevent the sale of derivative software or its inclusion in commercial products.

In all cases, the exact requirements are determined by the applicable license. Additionally, see the previous question for information about the use of the name [ch8220]Arduino[ch8221].

So it seems you can, as long as you publish the the object file(s). Now I’m not entirely sure what an object files is or how they work, so on that someone else better answer. All I know, or think I know, is that its an intermediate step in the compiling process of the final hex file.

But its not completely secure (from what I understand). So I guess your out of (legal) luck if you want your clock completely shrouded in mystery as to its inner magic :stuck_out_tongue: I wouldn’t be surprised if there was some kind of a disassembler(?) for object files to reverse engineer some source code. While it ideally would result in the same object file (if compiled), it would not be your original source code, but an automatically generated one (I would think, I guess original variable names, comments etc is not included in the object file).


Why would you use the Arduino hardware for a finished product that you are going to sell in quantity? Unless your software is going to communicate with a PC via the serial/USB line you don't need most of the stuff on the Arduino board. You would be better off having a board made or using one of the stripped down 'duino type boards.


I feel that even using a standalown 'duino is pointless, use the Arduino for prototyping then move it to a different controller altogether, like an ATTiny or something more suited to the task in hand. It will be cheaper and should be in a better form factor (eg SMD chips, smaller DIPs etc)

I want to license my hardware I built around an Arduino Mega in combination with another embedded module, so that my idea and 5 years engineering work is save from being stolen by a commercial company, but because of it´s social impact I want it to be open source. It is a device supporting visually impaired people. Thanks kindly for any links to comprehensible information. I find it difficult to understand all the juridical terminology on creativecommons websites... Greets, Marc P.S.: Sorry I´m not yet very familiar with posting and polls etc... too much into music and electronics ::)