On 27/06/16 15:05, Bernelle Verster wrote: > Hi all > > If you are interested in open hardware, please indulge me. > The context: > On our trip to the Honingklip brewery, Andy and I got talking about > open hardware, a big mutual passion. The conversation continued all > through the trip. > > I would like to write this up as a blogpost, and a draft is copied below. > > This email is mainly for Andy, Marc, Mark and Graham to give input, > but why not build on the discussion with the whole of DebConf? > > The purpose of the blogpost is not to be decisive on an opinion, but > to give an idea of the tensions at play. > > If there are other posts out there about this topic, I'd appreciate > links to them too. > > (There is also a panel discussion on Saturday 2 July where we can pick > up on this more formally) > > best regards > Bernelle > > ====== > > DebConf16: Where do you draw the line of "Open" in open hardware? > > pre-amble - great beer at Honingklip, a brewery that is a good example > of open hardware. But what does this mean? > > At the most basic level, it is about what is available. What is > manufactured, and how available are the units once these are not > manufactured commercially anymore? > > There are different levels to consider, including the platform used > and the chip architecture. > The CPU (central processing unit), I/O (input/output) > The thing that it boots from, e.g. an ARM64 tech alpha instruction set. > > The questions to ask when you need to determine your own level of "openness": > - At what level are you willing to buy it? > - Can I reproduce this at home? (And this is relative, comes back to > the question of, at what point am I willing to buy (some of) the > components? > > Now the units are running stuff we can't even see, it is too complex to > analyze. > > What does it mean to be open? > - To be accessible, hackable > - To give a 'How To' manual with the hardware, to say what they did, > and how the user could do the same thing, explaining how it works. > - Open is about the idea that you can at least try to reproduce something. > - To share your design, and let other people comment on that design. > > But, to implement the design, you need money. Hardware is different > from software in it's materiality. Software scales exponentially: once > you made something, you can sell every new unit with a very small > increase in cost. Hardware scales linearly. While the overall cost of > design per unit reduces with the more units you produce, there is > still a cost associated with each new unit produced. There is material > cost, and cost of production, time on a machine, electricity, labour, > shipping... There is a difference between 'telling' people something, > and 'giving' people something. > > A challenge to hardware is that it is more and more integrated, and if > you want to do a thing, you need to pay someone to do it for you. > > We then chatted about what to do about this. Appropriate level of > complexity is one clear argument. > > There was talk about overspecification. The metaphor of music cassette > tapes were used: they are no longer made, but they may be appropriate > for simple applications. > You need, for example, a 74 series TTL to control temperature, an > Arduino is already much too complicated. > > There was something about the difficulty of achieving/maintaining open > hardware standards, this was a more fuzzy second argument. > > On the way back from Honingklip we spoke about that hardware always > forces a compromise. You can work, for example, on C++, but you still > need to rely on something else to compile it. >
So in an ideal world... Hardware would be Open and Free (libre). - Everything from the ground up is available and free to access, use, change as you see fit. - Licence is permissive and inclusive - A/The community is able to refine materials, produce components, Silicon wafer, package it, fabricate boards, populate boards, write and debug any firmware, and then move into the very bottom of the open source software stack.... Of course even if this IS the case is it feasible to manufacture everything yourself? certainly not. First of all this is a very broad subject area. Forget SoCs and VLSI for the moment the materials science just to understand and build simple passive components and semiconductors (a simple diode for example) is one serious curve to climb, and what you'll end up with is something that is very clunky, unreliable and physically much larger than anything that you can purchase today. never mind the plant and facilities you will need - and yes truly open means that that should be open as well.... "Turtles all the way down". Sure you could perhaps build this yourself, but would anyone ever do this? Individual people MAY be interested in some or many of the steps (hopefully we can build diverse enough communities to be able to do this before we need to re-bootstrap humanity). Now we are looking at a comparable stack to that of open software, i.e. it is very rare that the person interested in maintaining and developing a compiler is the SAME person that is interested in adding to the GUI design. But as a community, together we can do everything we want. Moving on... For your chosen open project, will everything you want to produce be available in the open? Perhaps not, almost certainly not - Does anyone reading this know where I can buy an Open Hardware processor comparable in performance to an ARM7TDMI? really you know of one? hold on, that's not open. It is an open implementation of a processor in VHDL, but I am still stuck, because I can't buy an open hardware FPGA onto which I can load your VHDL processor 'simulate'. Over time these things may come, personally I am not that interested in building and selling open hardware components, I doubt there is a sustainable business model for this either (remember unlike software every COPY of your product is something physical and has an associated cost), but for an interesting project understanding some of the steps and perhaps being able to reproduce them myself IS something I could be interested enough in to have a go. I think I have successfully argued that whilst it would be idyllic to be able to produce everything in a product/project/thing entirely open, today that is not really feasible. Perhaps we can look at what is? manufacturing our own components isn't really viable (with perhaps the exception of wound inductors). passive devices are however a commodity, there are many different manufactures of resistors and capacitors (in $dayjob I personally do not specify manufactures or part numbers for my designs - instead I specify a component footprint, and the important parts of the component specification. i.e. I might specify a 100nF capacitor as follows: 100nF <= 20% (20% or better tolerance to the 200nF value) X5R (the dialectic I want) => 6V (working voltage of at least 6V) 0402 (physical size) This is fine for simple passive components, and true as well for most desecrate semiconductors; although finding suitable FETs to match particular characteristics / specification yields far fewer compatible devices to choose from. Simple logic / LSI / VLSI devices are also pretty simple to select from generic supply (there are many companies making 4000 series CMOS logic devices for example). However the trend within electronics has been more towards specialist devices, more and more integration of functionality within a single package. and even where there is commoditisation and standardisation for example in SDRAM the world is moving so fast that whole swaths of technology are made obsolete after shorter and shorter production life as the manufactures are forever competing to lower their production costs whilst improving headline stats (i.e. more storage on the Chip and faster access time - although this may need more work in terms of error correction) Move up to a SoC and you will probably only ever have once vendor device because the competition even if it has the same headline specification is not pin compatible, and requires differant support logic / power supplies etc. Pic a new wonder SoC for a mobile phone for example and it is likly to be available for perhaps 2 years and then only to a specially selected customer base (i.e. one with a proven trading history who will buy litteraly millions of these devices) Perhaps these aren't the correct devices to use for your projects if long term availability is what you want. Then again, if you need a 3D GPU and a full Linux distribution (such as Debian) on your system then your choice is very limited... I do Open hardware , what do I consider is enough - for now? All electronics start from a schematic (the circuit diagram). This absolutely must be made available (imo this must be available in the native CAD package used, along with all libraries used - NOT just a pdf! Good practice would be to provide your calculations and rationale for your design decisions and component selection (a mailing list?) Next is the PCB design. Just like the circuit diagram this is essential (imo this again should be in the native CAD package used and not just Gerber files) again follow the good practice of providing rationale for design decisions (controlled impedance, design rules followed, flight times, etc) Accompany this with the full Bill of Materials (including suppliers and alternative parts) A suitable Licence. Ideally you will use an open source CAD package - KyCAD is pretty damn good and I recommend it as a first port of call. I do use it for a lot of my smaller boards but I am happy to use commercial, non free CAD for more complex designs (think tablet PCs or mobile phones). At this point we are on par with of older FLOSS cousins, work we have done is available to be picked up and used by anyone. Where Open Hardware differs is at this stage we need to spend some money and fabricate PCBs, populate them and test them. Hopefully your project has attracted enough of a community that you can perhaps share the cost of your PCB fabrication (perhaps it is simple enough that you can do it yourself) and assembly (again this may be something that you could do dependant upon the component technologies you have selected) Personally I try to select parts that are likely to be available for the foreseeable useful life of the project, but expecting a mobile phone SoC to be available 3 years from now is just unrealistic - and I would only select that sort of thing given no other choice). I hope that this perhaps better outlines where I draw the boundaries between the ideal world and the one we find ourselves in. /Andy
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Debconf-discuss mailing list Debconf-discuss@lists.debconf.org http://lists.debconf.org/mailman/listinfo/debconf-discuss