ChibiOS/RT is a GPL3-licensed product but it offers a linking exception in its stable releases.
This article contains some answers about the exception.
- Is ChibiOS/RT free ?
Yes, free as both in free beer and freedom.
- Can I use it in my commercial embedded product?
Yes, you just have to advertise that you are using ChibiOS/RT by putting a link to the project somewhere on your web site or documentation.
- Am I forced to release the source code of my product?
The exception to the GPL allows you to use ChibiOS/RT in your commercial application without have to release your source code under certains conditions. See the GPL Exception Text under "Approved Interfaces" for details.
- What I have to contribute back?
In general you have to offer changes done on existing files (where allowed) or new developments done using the OS template files. As example:
- Ports to new architectures because a new port uses copyrighted OS template files.
- New, HAL-style, device drivers because device drivers use copyrighted template files.
- Improvements on modifiable OS code as described in the "approved interfaces" section of the GPL Exception Text.
- Is the exception applicable to any ChibiOS/RT version ?
The exception is valid only for ChibiOS/RT releases marked as stable. Beta, unstable or development versions are covered by the GPL3 alone because are meant for testing only.
- I don't want to be bound by any of the above restriction, is this possible?
You may contact us about a commercial license.
GPL Exception Text for ChibiOS/RT 1.4.xIn addition, as a special exception, the copyright holder of ChibiOS/RT, gives You the additional right to link the unmodified code of this Program with code not covered under the GNU General Public License ("Non-GPL Code") and to distribute linked combinations including the two, subject to the limitations in this paragraph.
- Non-GPL Code permitted under this exception must only link to the unmodified code of this Program through those well defined interfaces identified as "Approved Interfaces".
- Every copy of the combined work is accompanied by a written statement that details to the recipient the version of ChibiOS/RT used and an offer by yourself to provide the ChibiOS/RT source code should the recipient request it.
- The combined work is not itself an RTOS, scheduler, kernel or related product.
- The combined work is not itself a binary library intended for linking into other software applications.
The Approved Interfaces
- The files of Non-GPL Code may include the unmodified ChibiOS/RT distribution header files contained under:
- ./os/kernel/include
- ./os/hal/include
- ./os/hal/platforms
- ./os/various
without causing the resulting work to be covered by the GNU General Public License.
- The files of Non-GPL Code may link to the unmodified ChibiOS/RT distribution files contained under:
- ./os/kernel/src
- ./os/hal/src
- ./os/hal/platforms
- ./os/various
without causing the resulting work to be covered by the GNU General Public License.
- The files of Non-GPL Code may link to, or include, the modified or unmodified ChibiOS/RT distribution files contained under:
- ./os/kernel/templates
- ./os/hal/templates
- ./os/ports
- ./boards
- ./demos
without causing the resulting work to be covered by the GNU General Public License.
Only the copyright holder of ChibiOS/RT may make changes or additions to the list of Approved Interfaces.
You must obey the GNU General Public License in all respects for all of the Program code and other code used in conjunction with the Program except the Non-GPL Code covered by this exception.