QP/C++ and QP-nano FRAMEWORK EXCEPTION FOR ARDUINO Version 3.0, December 22, 2021 Copyright (c) 2005-2021 Quantum Leaps, LLC. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. This QP/C++ and QP-nano Framework Exception for Arduino ("Exception") is an additional permission under section 7 of the GNU General Public License, version 3 ("GPLv3"). It applies to the QP/C++ and QP-nano source code (the "QP Frameworks") that is distributed as part of the QP-Arduino Support Package. When you use QP/C++ or QP-nano Frameworks inside your program, the frameworks' code is combined with your code of the program. The purpose of this Exception is to allow non-GPL (including proprietary) programs to use, in this way, the QP Frameworks' code covered by this Exception. 0. Definitions. "QP Frameworks" are lightweight real-time embedded frameworks (RTEFs) as well as all supporting ports and examples, as distributed from: and "Arduino-Certified Board" means any board with an Arduino-supported CPU that bears an official Arduino logo and/or is officially certified under the Arduino Certified Program (see ). "Target Code" refers to output from any compiler and linker in executable form suitable for execution by an embedded microcontroller. 1. Grant of Additional Permission As a special Exception, the copyright holder of QP Frameworks gives you permission to propagate a work of Target Code formed by combining the QP Frameworks with your own source code without the requirement to expose your proprietary source code, provided that all Target Code will execute on Arduino-Certified Board(s). 2. No Weakening of GPL The availability of this Exception does not imply any general presumption that third-party software linking to the QP Framework is unaffected by the copyleft requirements of the GPLv3 license.