The following licensing provisions apply to the Ornament & Crime (o_C) hardware design, the Ornament + Crime firmware and its source code bundle (repository), and to the associated documentation for both the hardware and the firmware and its source code.
If you are making o_C modules for your own use or to give to friends, go for it! No other action needed.
If you are offering o_C PCBs, panels, kits or partially- or fully-assembled modules for sale, then contact the o_C developers as a courtesy to let us know what you intend, and to make arrangements of a suitable donation to the o_C research and development fund to be made for each PCB/panel/kit/module you sell.
The schematic for the o_C module is copyright M. Stadler and is released under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license.
Anyone wishing to use the o_C schematic to create a derivative version of the o_C module hardware is welcome to do so provided that you observe the requirements of the CC-BY-NC-SA license. If you are using the schematic to create a derived version of o_C (eg for a different format, or with a different module layout or width), the NC (non-commercial) clause of the license means that you may NOT sell that version without obtaining written, explicit permission to do so from the copyright holder (Max Stadler). All you need to do in the first instance is send Max an email, requesting permission to sell your derivative version of o_C, and to make arrangements to contribute a small sum to the o_C research and development fund for each PCB/panel/kit/module you sell.
PCBs and panels
The Gerber files for the various versions of the o_C PCBs are copyright M. Stadler and are released under the Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.
Anyone wishing to build o_C modules using PCBs produced from the PCB files is welcome to do so. If you are making copies of the PCBs for personal use or on behalf of a small group of people, there are no other considerations — please proceed. If you are making copies of the PCBs for commercial sale or as part of a large group-buy, please read the Considerations for licensees section of this Creative Commons document and note the request to comply with non-binding licensor preferences. For the Ornament & Crime PCB files, the licensor (M. Stadler) requests that anyone intending to undertake a large-scale (say, 20 or more) group-buy purchase of o_C PCBs or anyone intending to offer them for sale on a commercial basis informs him of such intentions via email in order to arrange for a small donation for each PCB sold to be made to the o_C R&D (Research and Development) fund.
The arrangements for o_C panels are similar. If you are offering o_C panels for sale, even at cost, please contact Max Stadler to arrange for a small donation for each panel sold to be made to the o_C R&D (Research and Development) fund.
Kits, partially-assembled modules and fully-assembled modules
Anyone wishing to build o_C modules is welcome to do so. If you are making o_C modules for personal use or on behalf of a small group of people, there are no other considerations — please proceed. If you are making o_C modules for commercial sale, please read the Considerations for licensees section of this Creative Commons document and note the request to comply with non-binding licensor preferences. For Ornament & Crime, the licensor (M. Stadler) requests that anyone intending to offer kits, partially-assembled or fully-assembled modules for sale on a commercial basis informs him of such intentions via email in order to arrange for a suitable donation for each kit or module sold to be made to the o_C R&D (Research and Development) fund.
The Ornament & Crime firmware bundle comprises all the source code contained in the O_C GitHub repositories at the following URLs, and any clones or copies of those repositories:
- https://github.com/mxmxmx/O_C/ (canonical repository for released versions, as well as developmental versions)
Most of the individual source code files in the O_C firmware bundle (repository) have MIT license headers, and the copyright holders for them are shown in that header. A few files lack such headers, in which case, the files are copyright M.Stadler, P. Dowling, T. Churches 2015, 2016, 2017 and should be considered to have an MIT license attached to them.
Some of the source code files have been written by third parties, and the relevant copyrights are shown in the license headers in those files. In particular, quite a few of the files are copyright O. Gillet 2013-2015, or are copyright P. Stoffregen (PJRC.COM LLC) 2012-2016, and have been released by their authors under an MIT license which permits their re-use and adaption as part of the o_C firmware bundle.
However, at least one source code file used in the O_C firmware bundle is licensed under the GNU Public License v3.0 (GPL3) — see drivers/SH1106_128x64_driver.cpp, because it is derived from code that was itself released under the GPLv3 license. Due to the “copyleft” provisions of the GPL3 license, the necessary inclusion of this file in the O_C firmware bundle means that all the source code contained in the O_C firmware bundle (i.e. in the o_C repositories), and any binary files derived from it, are all implicitly subject to the provisions of the GPLv3 license. Note that this only applies to the source code contained in the O_C bundle (and copies and clones thereof) used to create the O_C firmware binaries. Copies of third-party code obtained from their original third-party sources (e.g. source code from Olivier Gillet’s GitHub repository for the Mutable Instruments modules) are not subject to the GPLv3 provisions which apply to that source code as used and adapted in the O_C bundle.
Implications of the MIT and GPLv3 licenses
For DIY makers and end users of the o_C module, these licensing arrangements do not impose any additional burden or duties on you: you are free to build the module, use it, modify the firmware, and sell modules to others. If you sell modules to others (which means you are providing a copy of the firmware), please make sure the buyer is aware of this documentation here on GitHub — that will be sufficient to satisfy the following clause in the MIT license:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
For third-party module manufacturers wishing to re-use O_C code in your products, the licenses permit you to do so, but they also impose some additional duties on you:
- the GPLv3 license requires you to release, also under the GPLv3 or some other compatible open-source license, all the source code for any module in which you have used GPLv3-licensed O_C code
- the MIT license requires you to include the various copyright notices in the O_C source code headers and the MIT license permission notice in all copies or substantial portions of “the Software”. The “Software” includes any binaries compiled from code which includes any O+C source code i.e. the firmware flashed to module MPUs. Therefore, these copyright assertions and permission notices must be included in any manual or other documentation for your module, including printed documentation provided with the module.
If you cannot comply with these licensing requirements, then please do not re-use O_C code in your products.
The o_C build guides, the firmware user manual and associated documentation files are not licensed under any open-source or Creative Commons license. Copyright is asserted on them and third parties are thus not permitted to copy or re-publish the material. DIY builders and end-users are welcome to make copies of the documentation in other formats, such as PDF files, although for personal use only, and not for redistribution to others.