I developed a Midi->CV project based on a Github project with a GPL 3 licence, which allows for commercial use. The original project contains code and an Eagle schematic, but no board design. (They used stripboard to make theirs.)
I extended the project, adding some features, changed the code a bit, and also created a Kicad schematic and PCB design.
I want to share the project openly, and was about to post it when I realised I need to consider the licence.
I made this for my own use and want to share it freely to other makers. However, this project is different from the original in that it contains a PCB design, so in theory someone could manufacture and sell the PCBs. I’m not entirely comfortable with that idea. I can see that e.g. Mutable Instruments have hugely benefited the DIY scene by sharing designs, but as a commercial company they also benefit from the critical mass of interest around their work.
This is a very small project with little or no potential for commercial exploitation but I’m interested in the principal, and how to Do The Right Thing. Any thoughts on:
a licence which meets the obligations of the original and allows commercial use of the circuit design and schematic, but prevents commercial use of the PCBs
whether to simply follow the original project and just publish code and a schematic only, or share the PCB design also.
I suppose one option would be to publish two separate repositories with different licences.
is there any opportunity to get in touch with the original makers and ask what they’d be most comfortable with? I’m admittedly not that up to date with licenses, so perhaps the GPL 3 license is specific enough to their wishes.
Just a note that a repository is not limited to a single license, especially when the repo contains multiple types of work. For example, Mutable’s line of modules are in a monorepo, but have 3 different licenses depending on the specifics.
As a “copy left”, GPL is “infectious” and this would be something to consider. Derivative works must be compatible with GPL, ie no rights can be removed from the public. It allows commercial use – look at Google, Facebook, Apple, Amazon or indeed monome Learning about the GNU Vs BSD licenses in open source software world is a quite valuable learning about some of the available, recognized and well-trodden paths of consideration for protecting intellectual property out in the open.
While a common one, the commercial/non-commercial divide is hard to defend philosophically (I’m thinking ontology, not ethics or morals) as well as practically.
Good point @stvnrlly – the concept of a “repo” is recent compared to many of the familiar licenses, and history of ideas.
Would a PCB design based on an adaptation of the original circuit count as a derivative work? It certainly is derived from it in practical terms. But arguably created with a different set of skills. It seems like derivation could be quite a tricky concept.
In copyright law derivation is quite clearly¹ defined but i am mostly familiar with Finnish copyright law and the European to some extend, plus these licenses. Often what is a derivate is quite materially understood: if it contains some of the original code, it’s a derivate. Ideas are not under copyright, but implementations. So one cannot for instance claim copyright on an algorithm, but on its implementation in code – there have been cases where copyright has been avoided by re-implementing existing software with equivalent functionality.
You could ask: could it be defended that this is not a derivate work? Without having seen any of it, i would say it’s a derivate work and it goes against the original GPL if you re-licence while removing some of the rights the original implementation has given to people (you and me).
I’m sorry i am getting carried away talking about the relation of licensing between you and the “upstream”, not what you actually asked namely you and the (imagined) “downstream”.
That’s interesting. What I’m not clear about though is the status of the PCB design. There are 3 key elements in the project:
code for processor in the circuit
The original repository only has schematic and code. Mine has all three. Schematic and code are clearly covered by the GPL licence. The tricky question is whether a PCB design is somehow an implementation of the circuit schematic. In everyday language it is, but as there is no PCB design implementation in the original project, it may not be legally so, based on your examples.
I’m guessing this is not an unusual scenario – I should look into it in more detail – but it’s interesting to hear people’s thoughts.
Derivative: If you think you have to discuss if something is or isn’t a derivative - you can be sure someone with a financial stake is willing to “discuss” that in court. And they will have better lawyers. So just assume it is.
Commercial Use: As an old business partner used to say “Those are problems we’d love to have”. You believe it isn’t commercially viable - so go with your gut. The worst that happens is some company makes zillions and now you know that you could, if you want, design a commercially viable product for the next thing you do.
In short - just go with GPLv3 like the original for all of it, and accept the peace of mind it brings.