The Moddable SDK is offered with two distinct licensing options:
This approach to licensing is commonly known as "dual-licensing" and is sometimes referred to as "proprietary relicensing." For more information on FOSS and commercial licensing of the Moddable SDK, read on.
Moddable offers an FOSS licensing option because we believe it is the right thing to do.
The selection of a FOSS license to use for the Moddable SDK was difficult. We have a bias towards licenses that oblige improvements and fixes made to our code be shared with everyone. We believe that's only fair. Where the Moddable SDK incorporates other FOSS software, we have published any changes we made. The Mozilla Public License (MPL) is a license which incorporates this requirement. In fact, a very early version of portions of the Moddable SDK was briefly released using the MPL.
There are a number of different FOSS licenses used in the Moddable SDK. Here are the licenses we use:
Files from other FOSS projects use other licenses, all of which we believe to compatible with the licenses above. Of particular note, portions of XS are licensed under the Apache V2 license. Each file carries a license statement, so check the source code of the files you are using to understand the requirements of its license.
We understand that FOSS licensed software does not meet the needs of all organizations or independent developers creating software for embedded devices. In our work with organizations, large and small, building embedded software we have encountered many different reasons why FOSS is not a viable option, particularly for mission critical aspects of a product. We want these organizations to be able to use our software. Because these organizations are not contributing by making their own code available to us and others under a FOSS license, we believe it is fair to ask them to pay a license fee for the use of our software to help support our on-going software development.
Additionally, organizations expect warranties, IP provenance, patent rights, on-demand bug fixes, and development assistance from the software they license for use in their products. These have a real cost and require a full time staff.
It is common in the embedded software space to only provide licensing pricing under a non-disclosure agreement. There are good reasons for this, especially since each potential licensee has unique circumstances which can change the license cost and terms. Still, we don't like it when we are asked to sign an NDA to receive a simple price quote. In the interest of promoting the kind of transparency we'd like to see in the embedded software market, we provide our licensing costs publicly.
For use of the Moddable SDK in a product using a commercial software license, Moddable charges twenty-five cents (US dollar) per unit. This price is valid for any volume. If you are a small shop shipping 1000 units of an embedded device, the commercial license is truly only $250 per year.
We understand that organizations shipping a large volume of products may feel a volume discount is appropriate. We are open to that discussion.
Our commercial license includes:
Note: Support level commensurate with licensee's product volume.
Any large organization will have its own particular requirements. We are open to reviewing those to find a way to support them if at all possible.
For questions about the Moddable SDK commercial license, contact us by email at email@example.com
By offering two distinct licensing options -- one open source and the other commercial -- we hope to make it possible for the majority of embedded software developers to use the Moddable SDK in their products, if they choose. We recognize that no single option or two will satisfy everyone.
As an anecdote, when we made the decision at Marvell to provide our work on XS under the Apache V2 license, the very first customer we told about the decision responded with a room full of silence. They politely explained that they were more concerned about receiving development support and prompt bug fixes than they were about the cost of the software. They were happy to pay to know that someone stood behind the software they were using.
We also understand that there are very strong positions established regarding the many FOSS licenses. No doubt there will be those that disagree with our choices. Perhaps this article provides those who disagree with some understanding of our thought process.
The XS code at the heart of the Moddable SDK has been provided in many different ways: commercial license of proprietary code, Apache license, LGPLv3/GPLv3 license, and commercial license of FOSS code. Perhaps in the future there will be other licensing options. If you have suggestions, we would like to hear them.
Any good lawyer will tell you that this article is not legal advice or a binding contract.