AV-Portal 3.23.3 (4dfb8a34932102951b25870966c61d06d6b97156)

Bits, Gates, Traces, and Pins

Video in TIB AV-Portal: Bits, Gates, Traces, and Pins

Formal Metadata

Bits, Gates, Traces, and Pins
Copyleft and Licensing in Open Hardware
Title of Series
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Release Date
Production Year

Content Metadata

Subject Area
What does it look like when we apply Open Source software licenses andpractices to hardware? How do authors intend for Open Source licenses andcopyleft principles to apply to hardware, across its many types of componentsand interconnects, and what legal frameworks can preserve that intent?Hardware raises new scenarios and questions; how might we extrapolate ourprinciples to them? We'll propose some use cases to explore intent and idealoutcomes, and invite discussion on how to get there. The first hardware-focused Open Source activities started around 20 years ago.But even as open hardware itself matures, the legal aspects remain relativelyunexplored, and many unanswered legal questions remain. We'll examine what"licensing" means in terms of hardware, and discuss the adequacy of currentlyavailable mechanisms to express the intent of the authors and creators of openhardware. From our experience in Open Source software, we naturally attempt tofind parallels in software licenses that can be applied to hardware; however,hardware designs introduce new aspects that have no equivalent in the softwareworld. In particular, we're especially interested in how the ideas and principles ofcopyleft translate. How do things like linking, derivative works, andcompilation operate in terms of hardware? What "exclusive rights" belong toauthors and makers in this domain, and can we offer a license to those rightsthe same way we can for software copyrights? What rights dobuilders/fabricators have? How does a license on a digital description affectthe manufacture, distribution, and copying of the corresponding physicalobjects it describes? How do the various types of components within an openhardware design interact, and how do the licenses of those components interactover the many ways of connecting those components together? And can we applyor adapt existing Open Source software licenses for hardware, withoutfragmenting the ecosystem between software and hardware, especially as thelines between the two become increasingly fluid? We'll explore each of these areas, using as a case study the creation,licensing, and distribution of a product incorporating both open software andmany types of open hardware. We'll offer our thoughts on some possibleproperties of an ideal open hardware licensing framework, seek consensus onhow our principles apply in various concrete scenarios, and invite discussionon how our legal structures can adapt to serve the needs of the developingOpen Source hardware world.
Point (geometry) Server (computing) Socket-Schnittstelle Implementation Computer file Link (knot theory) View (database) Source code Open set Mereology Computer programming Different (Kate Ryan album) Computer hardware Boundary value problem Form (programming) Computer architecture Multiplication Software engineering Theory of relativity Physical law Shared memory Bit Set (mathematics) Flow separation Open set Equivalence relation Degree (graph theory) Process (computing) Software Personal digital assistant Computer hardware Self-organization Object (grammar) Remote procedure call Software architecture Freeware Spectrum (functional analysis) Library (computing)
Personal identification number Digital electronics Connectivity (graph theory) Multiplication sign Physicalism Bit Streaming media Set (mathematics) Connected space Software Computer hardware Object (grammar) System on a chip Whiteboard Descriptive statistics Form (programming)
Digital electronics Computer file Computer-aided design Source code Process capability index Number Process (computing) Different (Kate Ryan album) Auditory masking Computer hardware Whiteboard Object (grammar) Form (programming)
Axiom of choice Presentation of a group Context awareness Digital electronics Multiplication sign 1 (number) Insertion loss Open set Shape (magazine) Function (mathematics) Parameter (computer programming) Mereology Perspective (visual) Logic synthesis Computer programming Subset Formal language Derivation (linguistics) Exclusive or Different (Kate Ryan album) Single-precision floating-point format Core dump Diagram Endliche Modelltheorie Series (mathematics) Computer engineering Identity management Area Pattern recognition File format Closed set Software developer Binary code Physicalism Parallel port Sound effect Bit Complete metric space Connected space Degree (graph theory) Process (computing) Auditory masking Order (biology) output Right angle Quicksort Whiteboard Figurate number Sinc function Speichermodell Reverse engineering Probability density function Point (geometry) Slide rule Implementation Observational study Open source Wage labour Computer file Connectivity (graph theory) Virtual machine Motion capture Streaming media Computer Attribute grammar Product (business) 2 (number) Goodness of fit Term (mathematics) Computer hardware Authorization Boundary value problem Representation (politics) Condition number Form (programming) Addition Multiplication Standard deviation Information Surface Physical law Projective plane Line (geometry) Set (mathematics) Cartesian coordinate system Symbol table Word Pointer (computer programming) Software Personal digital assistant Hybrid computer Object (grammar) Musical ensemble Routing
Point (geometry) Auditory masking Physical law Right angle Product (business)
NP-hard Email Digital electronics Variety (linguistics) INTEGRAL Multiplication sign Streaming media Open set Computer programming Hardware description language Term (mathematics) Natural number Different (Kate Ryan album) Computer configuration Core dump Computer hardware Boundary value problem Damping Exception handling Vulnerability (computing) Form (programming) Physical system Area Standard deviation Block (periodic table) File format Interface (computing) Bit Equivalence relation Software Logic Order (biology) Quicksort Family Library (computing)
Hardware description language Computer file Projective plane Core dump 1 (number) Numbering scheme Right angle Quicksort Open set Computer programming Library (computing) Exception handling
Group action Computer file Intel Computer-aided design Transformation (genetics) Chemical equation Projective plane Mathematical analysis Bit Open set Field programmable gate array Streaming media Mereology Flow separation Computer programming Lattice (group) Personal digital assistant Computer hardware Order (biology) Object (grammar) Reverse engineering Speichermodell
Axiom of choice Building Randomization Context awareness Digital electronics State of matter Multiplication sign Source code Open set Field programmable gate array Parameter (computer programming) Mereology Perspective (visual) Subset Core dump Damping No free lunch in search and optimization Descriptive statistics Position operator Exception handling Physical system Software developer Binary code Physicalism Auditory masking Order (biology) Right angle Whiteboard Freeware Resultant Speichermodell Spacetime Reverse engineering Point (geometry) Slide rule Vapor barrier Open source Connectivity (graph theory) Machine vision Field (computer science) Product (business) Latent heat Goodness of fit Computer hardware Ideal (ethics) Boundary value problem Data structure Firmware Form (programming) Distribution (mathematics) Scaling (geometry) Projective plane Line (geometry) Set (mathematics) Software Personal digital assistant Statement (computer science) Video game Object (grammar) Table (information) Library (computing)
okay next up we have Josh Triplett and just
Kumar's alright so we'd like to talk to you a little bit about licensing open hardware as opposed to just as open software so I'm Josh Triplett this is Jessica Mars we're gonna and I want to start off with some of the standard disclaimers I am NOT a lawyer jessica is a lawyer but is not your lawyer and neither of us are speaking for any company organization or any other entity that we may be a part of we will assume if you ask questions you're not either this is not legal advice our experience is primarily with US law so that is where our citations are many of the things we're mentioning and talking about do apply globally or to numerous countries based off of various treaties but we would certainly welcome any Corrections or commentary from people experienced with the International equivalents or other related law and please do feel free if you've got an urgent question or commentary to make this more interactive and have a discussion otherwise feel free to ask questions at the end as well so as I said I'm not a lawyer my primary day job is that I'm a software architect so let's talk about software architecture first so there's a lot of ways you could put software together you can put source code into the same source file you could link object files or libraries together from multiple object files or multiple separate libraries shared or static you could fork an exec a process you could create multiple independent servers communicate via remote procedure call communicate via sockets of some kind even over a network you could have a shared memory architecture between multiple processes you could have some standardized API is for talking between multiple programs for which multiple implementations exist and one interesting distinction here is that these various distinctions don't matter massively from a legal point of view if you're using permissive licensing if you're using a license that says do whatever you want door do whatever you want as long as you give me credit for it then it doesn't really matter how you put your software together you can do whatever you want but where those distinctions start getting interesting is when you start using copyleft licenses in that case there is an intent that you're trying to provide of saying this is the scope that I consider this license to extend to and there are various licenses that extend that scope to varying degrees on a spectrum you've got the LGPL which extends it to the the case of linking multiple objects together but allows some more flexibility and more free passes if you're linking dynamic libraries you've got the GPL that extends through dynamic libraries and up to some other boundary you know details to be determined see court law see various courts in the future you've got the a GPL which will extend that out through servers of various kinds and the point is not to say this is where the boundary should be drawn it's to say there are many interesting points you can draw that boundary on based off of your goal and your intent one point I want to make here is we're not claiming in this talk to have all the answers our hope is that we have almost all of the right questions and then some plausible set of answers that we can talk to you about so that's software architecture and software copyleft and that's been you know while it may not be perfectly explored in case law at this point it is certainly something that has been well trodden by many a software engineer and lawyer for the last several decades so let's talk a little bit about hardware architecture and how that leads into open hardware so there are many different ways you could put Hardware together as well and many different forms of hardware you could have some
physical object that you have blueprints for this is the Voyager probe for example you could have circuits on an
integrated circuit the individual pieces of the chip that you know fit together to make one integrated circuit this is the 486 for example you could have many components on a system on chip that have multiple integrated components that each go to may go together on the same physical chip of manufacturer but at the same time are in some ways somewhat independent pieces put together so here's a relatively new SOC this is a set of Haswell chips you you could have a set of almost software like descriptions of hardware in the form of an FPGA that the FPGA itself is hardware and it is in a way interpreting that bit stream to implement hardware in a soft way you can glue chips together on a board via pins via some printed circuit board you can have the printed circuit board itself that's designed to connect many components and connectors together or
you can wire those boards together via any number of connectors from PCI to USB and you know on top of the ways that you could put Hardware together there are
many different forms of hardware as well so just like you can compile a piece of source code to get a binary you could
have a CAD STL file that you then turn into a physical object via 3d printer or some injection molding or similar you
could have a schematic for a chip that gives you the actual circuitry of the chip but not exactly how its laid out you could do a partially compiling and partially manual process to turn that into laid out masks for a semiconductor and then turn that into a physical chip this is the original four thousand four integrated circuit you could again have
an FPGA bitstream and then put it on to an actual programmed FPGA and ship that FPGA in a product you can have a PCB layout in various forms and stages that then becomes a physical PCB and so that's an interesting distinction that it goes beyond the notion of a compiled binary for software because it's not just that you have a compiled binary you have a physical object some of the laws apply differently and again all of these things are relatively easy to talk about when you're dealing with permissive licensing if you're saying do whatever you want then the details don't really matter and most of the efforts going on around open hardware right now are based on permissive licensing so I think where this gets particularly interesting again is when you start talking about copyleft and at that point we really have to start talking about intent what is your goal in trying to use copyleft for hardware what are you trying to enable what would you like people to be able to do and we can talk about various boundaries you might want to draw or various pieces that you would say well going up to this point we would say copyleft extends but I would say there's a few people in the room that would say that just because you have a copyleft license on a board that you should have to free whatever is on the other end of a USB connection but on the other hand if you have two circuits on the in the same integrated circuit manufactured with the same mask on the that might reasonably have a copyleft license extend that far and somewhere between there there's a line or even a set of lines for different licenses that we might reasonably agree on so in addition to those intense then there's the question of how do we implement that with software we can use copyright as the exclusive right that backs our licenses that allows us to then choose what subset of those rights we license and under what condition ille grande of permission so with Hardware the situation gets a little bit more complicated and more interesting and with that I'd like to hand it over to Jessica to discuss the legal implementation of that thank you no actually I need that this will be a challenge I have two devices in my hands at the same time so hopefully as Josh was talking the wheels were turning in your mind you were thinking perhaps of parallels between software and hardware are there actually any hardware designers or developers in the eyes awesome actually that's kind of terrifying because I'm probably going to get this wrong as Josh mentioned not my day job but anyway since we have experience in software and in in licensing we sort of naturally look at the licenses that we know and love and that our OSI approved and think how can we apply them to to hardware and [Music] obviously permissive licenses are easy as Josh said if you don't really have to worry about anything except just giving somebody attribution or credit you know no problem copyleft is much more interesting and non-trivial because you have to think of things like boundaries and boundaries and hardware are much different than they are in in software there are some close parallels like Josh was saying the perhaps two circuits or two cores on the same die that are on a board connected to some other thing there's there's boundaries that are really far away sort of easy to see in boundaries that are fuzzier so you need something like copyleft I think in order to sorry I'm gonna go over here we need something like copy left in order to open hardware and I'm sorry that was a bad segue I said I had to slide up earlier everyone here familiar with copyleft goals right most important is probably enabling the study of the design in the preferred format for making modifications to design people need to be able to modify and distribute what they modify the person who originally came up with the design the license or should have all the same rights afforded to them that the licensee has and so that's something that gets protected or is ensured by making derivative is available under the same license not one of the official four freedoms but one that we've talked about earlier today is making sure that recognition or attribution of the creative origin of a design happens and then of course ultimate goal by having something under a copyleft regime is to expand the size of the open common I think there's a couple of additional considerations that we want to think of for hardware anyway hardware specifically and those should be that any any necessary components that you aren't going to build yourself or so non self manufactured things should be standard or readily available so nothing made of unobtainium or that's available in the in minimum purchased quantities of a hundred thousand so I would say those would be I am goals for for open hardware Josh was talking also before about how exactly we make these things work and we know that we use copyright for software copyright under US law actually under all's grants the creators certain exclusive rights and the fact that people have exclusive rights mean that they then have something that they can choose to license with others so a really quick review because I know even though I don't know how many people are lawyers in the audience fewer than the hardware developers but okay so even so most of you guys probably know this stuff too but in the interest of completeness I'm going to talk about each of these sources of exclusive rights for authors and creators so copyright patent masks work which might be one that's kind of new to folks and Trademark so copyright just again is a refresher there's five exclusive rights three of them are probably most important for both software and hardware so that's reproducing the work distributing copies of the work or creating derivative works based on the work subject matter for copyright there's a whole lot but really two are going to be important for hardware and those are literary works and that's probably are primarily going to be important for the software that is going to enable hardware and by the way I'm sorry assumption that everyone was thinking that I was I'm talking about electronic hardware I'm not talking about just a plain physical object that doesn't have any circuits in it literary works and the pictorial graphic and sculptural works and then just for completeness in case anybody who's interested in what the entire scope of u.s. copyright law covers I listed the other so check matter the next source of exclusive rights for creators is patent patent law and that gives inventors the exclusive rights to do four things make use sell or import the inventions and there's four areas of subject matter under patent law most likely thinking about hardware machine and manufacture are going to be the applicable ones but process and composition conceivably could also have to do with hardware so you might wonder you know open open patent patent excludes people why would you possibly want to patent something that you want to open which is a legitimate question and the reason that I can think if you didn't already have a patent the reason why you might want to go get one is so that assuming that you had a hardware design that you had licensed under a copyleft terms if someone wasn't fulfilling the terms the copyleft terms of that license and you terminated their license you could still have rights under your patent to go after them for some sort of damages but patents again sort of contrary to free and open they're also expensive and
time-consuming to get and they only last for twenty years but always not losses so it's not it's not like patents are totally useless you could file for a patent and then never get one or even not not actually filing for a patent just publishing your design can serve an important purpose in terms of keeping hardware free also and so that's you know the idea of defensive publishing or putting something out there and making it prior art and I put a little plug down in the bottom corner my slide here there's actually a presentation tomorrow from the what are they called the open patent project excuse me talking specifically about this subject so I would definitely check that out if you're interested I know I'm going to be there but patents don't make a ton of sense but again have to talk about them in the context of exclusive rights so masks works are interesting and mask works actually came into being in nineteen for because of the semiconductor chip Protection Act which international internationally semiconductor chips are protected under something that's called trips and what the acronym stands for right now is eluding me but so close yes okay there's an S there too but anyway came came into being to protect ships and it's sort of a hybrid between copyright and patent it doesn't give you all of the same exclusive rights of either one of it I was but the important ones are that you can reproduce the mask work and import or distribute a semiconductor chip in which the masks work is embodied so it's kind of interesting the masks work doesn't give you any exclusive rights until it becomes embodied in the chip but then once it does you have the rights to keep other people from basically cloning your product interestingly you might have noticed that the there's no language about derivative works they're mask works do not give you the exclusive right to create derivative works and reverse engineering is under is allowed underneath the CPA so it's conceivable that someone could you know take a chip that I bailed and reverse-engineer it or study it make significant modifications to it and then build you know their own and ship it and sell it but the one thing or one of the things that stands in the way of that is actually making ships is really expensive and really hard so I think at the time that this law came out or that this was enacted it was a bigger deal I think maybe it would only cost like maybe 50 million dollars to reverse engineer and make a chip but I think that figure has grown exponentially since then and subject matter again a mask work is something that's fixed in a semiconductor chip that's the only thing that mask quarks applied to and last but not least trademark trademark the exclusive rights associated with that are the exclusive rights to use a mark and a corollary to that then is the ability to prevent the use of that mark or a confusingly similar mark by another party subject matter for trademarks word name symbol or any device used to identify product the thing about trademark as opposed to the other three sources of exclusive rights that I just talked about this is the only one that I don't think is a really good candidate for opening and the reason for that is that trademark is it's associated with you your brand and your identity so you don't want people to be sticking you know your trademark on a product that doesn't live up to your quality standards but it also indicates a single source of origin which is not really consistent with the whole principle of open development right which is the sort of decentralized and multiplayer multi party model but I felt it would have been remiss if I didn't talk about trademark at least a little bit so there it is that's the last I'm going to talk about it so now that we have our foundation or we've been reminded of the sources of our exclusive rights in various objects let's talk about hardware and forms again so actually one second for those of you who aren't hardware engineers the difference between developing software and developing hardware the biggest difference seems to me and again this is me as a layperson is that there are a lot of different steps involved in creating hardware and those steps interestingly different different tools are used different parts along the journey and different exclusive rights can attach at different places and to me that's interesting from a legal perspective because potentially you can put different licenses on things at different parts and depending on where in the stream you're combining things there may be different effects happening so now I can talk about printed circuit boards PCBs I think are really good of what I was talking about where there are these different steps that have different artifacts that get created that are potentially protected by different exclusive rights at different stages in the process so you start out with your schematic capture which is basically just representing the logical design of the circuit can't copyright or can't protect a circuit that's it just it is as fact but the the graphical representation that I've put out here is something that could be protected by copyright the output of this schematic capture process there's I guess usually three one would be a proprietary design file another would be this graphic so something that's usually like in a PDF or JPEG format a visual representation of the circuit and then netlist and component information files the proprietary file the design file and the diagram are like I said they're protectable as expressive works the netlist and the component information probably aren't protectable because they're so functional but interestingly the netlist and the component information are the important wait does this have yes the pointer okay those become the input to the second part in the PCB process which is the layout where the designer is actually coming up with the physical implementation of how the circuits are going to work and it's not really dark in this room so you can't really see how complex it is but it's it's really beautiful pretty no argument I think that a certain degree of artistic skill and creativity is required to place you know routes and figure out where components are going to go the output of the layout process are a series of files called Gerber files and what they represent most definitely the fruits of that creative and artistic labor are protectable by a copyright and since copyright gives us exclusive rights that means you could license them under a copyleft regime or any other open licensing regime of your choice and then last but not least those Gerber files get fed into the tooling at PCB manufacturing house and they make your PCB you have this manufactured board that embodies the design the actual board itself now it's no longer protected by anything although I suppose if it was sculptural or really expressive in its shape it might qualify for protection under the pictorial graphic or sculptural works but probably not basically the only thing at this point that would be eligible for any sort of exclusive rights would be any designs that you had screened on the surface of the of the board but anyway PCB an example of the multiple stages the different artifacts that get produced and in this case they're actually all protected by copyright but examples of the different exclusive rights that could attach at different
points so silicon then is interesting we'll start with talking about mask works over here on the left dang it left
I had there we go a picture of a mask work remember mask works don't actually have any masks don't have any protection under that mask work law until they actually become fixed over and the piece of silicon which you see on the right but over here just when it's existing is emit a mask this could be protected under copyright right and then over here on the right again final product here you get the mask work kicking in and it's protectable under the SCPA provisions but before a mask work even exists before you start to build the masks you start out with the
design of the chip and one of the things that I think is testament to how difficult and time-consuming it is to produce or to design a semiconductor chip is the fact that what has become really a large industry in and of itself in the tech industry is the licensing of core I pee course which are usually broken into it or referred to as either being hard or soft but these are designs that are made by third party vendors or there's you know some companies all they do is Korres other companies do a variety of things but the idea is that they are pre-configured or pre-designed blocks of IP that can be dropped into designs thus enabling people to design more quickly you see up here oh dang it
I've keep wanting to push the other thing on the upper left this is a drawing of what's supposed to be a system on a chip and you can see very distinct blocks in here those are coarse these are supposed to representing hard coarse and the things that's interesting to me anyway about course and whether they're hard or soft is well they they affect the way that the licenses might work on them when you use them in a design the hard cores again you can see how they're very distinct if you have a hard core IP block that you basically drop into a design and you interface with the rest of the design using standard interfaces to communicate then it stays pretty discreet stays by itself if you had a copyleft license on that IP core it wouldn't be extending the copyright sorry the copyleft terms to the rest of the course on your silicon but what if you had a hard core they put into your design and it turns out that you couldn't use standard interfaces in your design you had to make modifications in order to make that core work well then those modified interfaces would probably become a derivative work of the copyleft core and then you would have copyleft obligations spreading beyond that core and going at least to the interface that you had to do so requiring you to make the sources available for that soft course on the other hand are well they're more like software they're malleable they're in an editable format and down here I've got a picture the same picture Josh had of an you can see there's definitely some hardcore logic blocks in here but then there's a whole bunch of other area that is more tightly synthesized there's been a lot more integration that happens when you're using soft cars and engineers correct me if I have this wrong but the the nature of the soft IP because you're getting it in HDL you're getting it in the the human readable form describing the circuit is that actually it's going to influence the design the rest of the design and the other design the rest of the design is going to influence it there's sort of this interplay which if you think about it in software terms it's it's very much like a commingling or what we say it's not even linking it's like taking snippets and merging things together so I think if you're using a soft IP core you're almost guaranteed to have a derivative work so again you could have a spread of copyleft you could open up your design way big if you didn't want to have your design open but you wanted to use a soft IP core what you might do is take the soft IP core and try to harden it up before you put it in your design I guess that would be one way that you could sort of try to minimize the boundary creep or the boundary encroachment but anyway those are the differences between hard and soft IP as I understand them and I just thought that was really interesting it's worth mentioning as well that this is another place where your intent matters such that it's reasonable to ask as we develop more understanding of how to apply copyleft to open Hardware where we want our licenses to extend we may reasonably want Hardware equivalents of the LGPL as well as Hardware equivalents of the GPL with you know tighter and looser boundaries for how far they extend and that would play nicely into this as well sorry I didn't think that I forgot to mention and this is sort of unfortunate that you reminded me we were talking about intent all of my great intent to have an open design is going to be for naught or may be for naught at the end here when I get down to actually finishing up my design using my EDA tools all of the tools have proprietary libraries in them so when I combine whether they're hard or soft IP cords that I licensed whether it's you know I did the full design myself from scratch when it comes time to combining them with the libraries from my EDA tools I may very well end up with a derived work that now is going to have license compatibility issues because like I said all of those EDA libraries are under proprietary licenses so have a couple of options I could choose to license or you know make my course available under a permissive license because that makes things easy or maybe I could make them under a weak copyleft license or another possibility not sure if we can actually take this as gospel but what if we had a okay what if what if we had a system the equivalent of a system library exception for course so a core library exception I'm not sure if you could read the gplv3 as enabling that but if you could that would be great and just by the way the gplv3 family of licenses is the only are the only OSI approved licenses that mention asked works in them which I thought was interesting so they were kind of thinking I had two Hardware related to the library problem that I mentioned for my soft and hard IP cores run into a similar problem with the FPGA down below and so we've got the Giza silicon that's built over here you got a program with a bit stream there there is no open tooling from any of the major FPGA vendors that to enable the the creation of a bit stream to put into the FPGA so once again I could have done all of my other design have it be opened but then when I okay you're gonna correct me
yes yes well and not are you from the
ice storm project okay but you know about it no no okay so so here's a problem so so again I can't program my my my FPGA without getting in trouble so really the best that you could possibly do I think if you are coming up with the design for a for an FPGA would be to make your HDL designs available under an open license and then provide instructions for your users how they could create the rest of the design files and how they can generate the bitstream although that still doesn't solve the problem for them it's just moved it over to the right now they're the ones who are going to be creating the thing that has the proprietary libraries mixed with the open with the open license design I suspect that the absence of or lack of clarity around whether we have a core library exception is why most of the cores that you see available under open licenses are either permissive or LGPL because I think either of those licensing schemes sort
of gets around the problem and yes okay so open hardware there is actually an opened FPGA the ice storm project guys reverse engineered that lattice ice 40 FPGAs so they've figured out how to do the bit stream and this is actually a picture of something called my storm which a guy named Alan wood created fully open piece of hardware you can see the open hardware that open Hardware logo on it so if you were so inclined you could get all the get the schematics get the Gerber's get your files over to your PCB house build your PCB order your lattice semiconductor for what like what 15 dollars or something and then you can you can program it know the bit stream that magical part magical last part isn't open not on Intel sorry but that's a great question and we asked our friends in the program will solutions group hey would you open the bit stream so we could do that but no even lattice hasn't opened it right it's the guys at ice storm who reverse engineered it because again reverse engineering is allowed under the SCPA but no no vendor has opened their bitstream if anyone wants to volunteer to reverse engineer on Terra FPGA or Xilinx that's that would be awesome
sorry so back back to my hardware design an enclosure might be another thing that you have in your your hardware design so an original design created in a CAD tool or it could be something like a scan of an existing object whether or not your enclosure or your physical thing is going to be able to be protected in any way or whether your design files representing the object are going to be protected depends on a couple of things how it was created again whether it was native in the tool versus a scan of an existing object I'll give you a hint if it's native in the tool might be protectable if you just do a scan of an existing object not going to be protected no matter how much skill or creativity or art was required in making that scan you haven't done enough transformation to make it make it eligible and then whether or not your design file or the design itself are going to be able to be protected by anything they're going to be looking at whether it's totally useful or creative or you know where the balance is between the two and courts would do a separable ax T analysis to determine whether copyright was going to apply to anything in this case I think we would to say that probably the the Intel logo is well it's already protected by trademark but my design file containing it would be protectable and licensable under a copyright just the interesting thing in this example actually this isn't an intel design this is some guy who is infringing on the intel trademark i thought it was nice and i'm not going to report him because it's it's in support of an Intel open hardware project so I'm
gonna wrap up briefly before I hand it over to Josh I just wanted to talk about the state of open hardware licensing today so what would happen intellectual exercise if I had a chip today that was built on an open design and I sold it or I had a PCB that's built on open designs and I manufacture the PCB and I sell it what would happen or what does the person who makes this stuff have to do with it the answer is actually they don't really have to do anything if unless I license the design under either the CERN or the tap or open hardware licenses all of the other licenses that are currently available or that are designed for hardware plus the GPL v3 don't extend beyond the documentation they don't extend beyond the digital they stop at the hardware which i think is unfortunate because i think the goal of open hardware shouldn't be just that you can build it but once you've received the thing that's built you should be able to understand how it was built so I just have a little table here summarizing you know the source field delivery requirements which again I think are really key whether or not the physical Hardware gets treated like a binary you know under the GPL is the source required whether or not you can use it for any purpose that's an important one for some reason that the tapper one doesn't have that as a as a requirement but also having having the license be compatible with copyleft software licenses because again it's the electronic device I'm imagining that I'm going to have hardware and software working together so over on the far right I have my ideal hardware license you see it has yes all over the place but I also I'm going to make a specific a core library exception so that I solved my problem with the with the course and yeah if anyone wants to take a stand at writing that license that would be awesome I'm actually the last person who wants to encourage license proliferation but I do think that to make open hardware truly work we may need a revised license now I'll turn it back to Josh so one key question you might reasonably ask is why do we care about license compatibility you know as mentioned on the previous slide one of the issues is that the the tapper open hardware license for example explicitly has some restrictions on what you can use the resulting hardware for and as a result it's a license that would not actually qualify as an open source or free software license that you know the tapper folks would say well it's a hardware license those don't apply but I think that there's a key requirement here that is becoming increasingly important we want to support the ability to copy freely between hardware software firmware documentation specifications you may want to take some key piece of the hardware description and copy it into the spec in order to document something or copy something into the comment of a piece of source code or vice versa and the boundaries between those become fuzzier over time FPGAs become more important hardware's described with software there's the the running phrase that you might have heard that software is eating the world and in some ways it's kind of eating hardware but you know hardware is not going quietly and there's still a very interesting subset that is firmly in the hardware design space so the ability to have these interoperate is very critically important we want to have compatible licenses for these so I'm gonna echo the same thing Jessica said that we certainly do not want people going off and writing their own license from scratch any more than we would for software but if you are you know one of those precious few people who are doing or visions of a existing well-established software license please seriously consider accounting for hardware in those new revisions and in particular extending those provisions in ways that make sense such as treating physical Hardware similar to a compiled binary with respect to provisions like copyleft so with regard to the open hardware see ecosystem as a whole we're still very much in the early days of open hardware most production designs still do include some proprietary components whether it is some part library or some portion of a circuit or whether it's simply the fact that all of the individual ASIC chips on the board are not themselves open then we're still very similar to be very early days of free software where you know the new project was a set of more usable more friendly free software tools that sat on top of proprietary UNIX systems and they existed within that ecosystem that was kind of carving out a niche of free software and hardware is still in the same vein of here is a little niche of open hardware that is carved out within a broader proprietary ecosystem and we want to push to make that more open so along those same lines one of the critical needs for open hardware that we'd be really interested in seeing people work towards would be more open source parts libraries and we think copyleft would go a long way towards growing that ecosystem and building that up to be something that can interoperate with itself very well so you know as said before we're primarily aiming to provide all the right questions rather than get saying that we have all the right answers but at the same time we do have some specific recommendations so in
particular for chips if you're doing any form of ASIC design whether on the small scale or large scale if you want copyleft the gplv3 is currently the best choice of license because it's the only license that actually mentions masks works and covers all the way through to hardware it's not perfect since it does not necessarily extend the provisions to force the distribution of source code to anyone who has the physical chip but it still goes further and fits better than any other life out there including the the Creative Commons licenses that have commonly been used for hardware which don't really include any of those provisions for PCBs you could absolutely use a copyleft license if you like it's a good statement of your intent and many people will respect your intent whether there is an exclusive right backing it or not unfortunately or fortunately depending on your perspective PCBs as in a physical object form are not actually protected in any way on the one hand that's not necessarily a good thing for copyleft on the other hand that can be a boon to the maker community that does do reverse engineering and development of let me build a compatible board for this random chip so it's it's a mixed blessing we would definitely encourage the development and contribution of open parts libraries to try to get rid of that proprietary substrate that open hardware is still built upon and if you are drafting a future copyleft license of any kind definitely account for masks works or any other similar present or future illegal structure and treat physical hardware like binaries require the source code for it so with that I'd like to wrap things up and invite any questions or discussion I think we may have time for one or two questions hi Josh I have a very basic question I don't even see the point of copyleft hardware I you know I've written stuff under GPL and I've put it out I've been working Louis for 20-plus years but I don't did you know when I put stuff in copyleft in Suffern it frees up a lot of the barriers namely you know people are free to do whatever they want with it and it costs nothing all along the way that's not the case for hardware I mean even if it Brougham crap copyleft there's the things I'm preserving are not the same and I'm not even sure the the value that I'm bringing to people by doing so I you know there's an argument that can even be made that by preserving some of the rights I'm actually enabling myself to create cash reserves that allow me to create more of what people like so you could also argue that by keeping your software a proprietary that you are developing funds for future development and I think it's basically the same argument honestly we're in the really early days of open hardware we're in the very later stages of open software the ecosystems look so different right now they looked so similar back when open software's first being developed that you know when you're developing early-stage software and it is mostly duplicating things that exist but making them free the value of saying hey this is copyleft this needs to be kept open you know it seems like you have a smaller item of value and a smaller case to make for it but at the same time building up that ecosystem and eventually building up pieces of hardware that are difficult to replicate and easier to work with in an open form that if we want to encourage a broader open hardware ecosystem and encourage pieces of hardware that would otherwise be proprietary to be opened up then we're in a position where copyleft potentially gives us some leverage we wouldn't ordinarily have so in particular you know using permissive licenses would you have you have to pay to manufacture at the same time again software is eating the world in a way FPGAs don't require any additional cost each time you program them so as you're doing hardware development on FPGA yep sure I use the Kepler license extensively and I believe you when you say that it doesn't meet the requirements you have can you provide me the the rationale for why it doesn't work not here that extra okay it has a restriction on use it has to be for a lawful purpose they don't it's written in license yes yes exactly yeah so that otherwise I'm okay okay yeah it's the same thing that came up in the context of software with respect to like the hacktivism Oh license where they said you can't use this to do human rights violations but the problem is two people who would do that don't care what the license says so that's the only only complain a minute yeah that's the only reason why it doesn't qualify as an open-source software license thank you so much Josh and Jessica [Applause]