Warum ist offene Hardware so selten? [geschlossen]

Ich versuche zu verstehen, warum offene Hardware so viel schwerer zu bekommen ist als Software. Ich habe versucht, mich online umzusehen, und ich konnte keine zufriedenstellende Erklärung finden.

Ich verstehe, dass es so viel einfacher ist, Hardware proprietär zu halten und so viel schwieriger (unmöglich) zurückzuentwickeln (im Fall von ICs, nicht von PCBs), aber warum sollte das offene Hardware-Initiativen zurückhalten?

Sind es die Herstellungskosten? Ist es der Mangel an gemeinsamem Wissen über Hardwaredesign? Ist es die damit verbundene Komplexität?

Mit dem Aufkommen von FPGAs, die es so einfach machen, Hardware zu entwerfen (obwohl sie selbst auch proprietär sind), würde ich erwarten, dass sich offene Hardware viel schneller durchsetzen würde als bisher.

Es tut mir leid, wenn dies der falsche Ort ist, um zu fragen, aber das verwirrt mich jetzt seit ungefähr einem Jahr und lässt mich wünschen, ich hätte Informatik statt Informatik studiert.

Ehrlich gesagt denke ich, dass es einfach nicht so viel Nutzen dafür hat. Täglich können Verbraucher eine Open-Source-Software herunterladen und sie verwenden, um ein Bedürfnis in ihrem Leben zu erfüllen. Es gibt viele Millionen potenzieller Endbenutzer einer offenen Software. Der 'Markt' für freie Hardware-Designs ist um viele Größenordnungen kleiner als der für freie Software, also schätze ich, dass es viel weniger Interesse gibt.
@MattYoung Ja, ich habe ihre Projekte gesehen und hoffe, dass das populärer wird, aber diese Projekte fühlen sich eher wie unorganisierte Hobbys als wie ein echtes Gemeinschaftsprojekt an. Das OpenRISC-Projekt kommt dem, was ich denke, am nächsten, aber das hat immer noch nicht die Dynamik oder Gemeinschaft, die ein Open-Source-Softwareprojekt haben könnte.
@Tim Daran habe ich eigentlich nicht gedacht. Ich verstehe die Motivation, sich als Endbenutzer kostenlose Software zu besorgen, aber ich verstehe nicht, warum Entwickler beispielsweise nicht mehr an einem Open-Hardware-Prozessor interessiert wären. Schließlich habe ich immer gedacht, dass offene Projekte eher für die Entwickler als für den Endbenutzer gedacht sind. Wenn es für den Endbenutzer kostenlos ist, warum sollte es ihn interessieren, ob es Open oder Closed Source ist?
„Diese Frage passt nicht gut zu unserem Q&A-Format … diese Frage wird wahrscheinlich zu Debatten, Argumenten, Umfragen oder ausgedehnten Diskussionen führen.“
Allerdings gibt es auf Board-Ebene viele veröffentlichte Designs, die von jedem wiederverwendet werden können. Zum Beispiel in Anwendungshinweisen und referenzierten Designs von verschiedenen Anbietern. Sie bezeichnen diese Designs nicht als "offene Hardware", aber ihre Existenz bedeutet, dass wirklich "offene" Designs im Sinne von FOSS selten benötigt werden.
Weil Software nur Code ist, Hardware aber echte Arbeit und Talent zum Entwerfen erfordert? Aber im Ernst, ich denke, ein Großteil davon liegt daran, dass es viel weniger Nachfrage gibt. Sie müssen immer noch ein Hardwaredesign erstellen, um etwas daraus zu machen, während es wesentlich einfacher ist, sich Software zu schnappen und sie zu verwenden.
Ein Design, das Sie in einem FPGA implementieren, ist keine Hardware. Es ist Firmware.

Antworten (6)

Jeder kann den Quellcode zu Hause bearbeiten, nur sehr wenige Menschen haben eine Chip-Fertigungsanlage, um ein paar benutzerdefinierte Chips herzustellen. Bytes können frei erstellt und verteilt werden, Materialien nicht.

Es gibt auch das Problem, dass der Quellcode portabel ist, und obwohl CAD-Dateien usw. irgendwie portabel sind, gibt es viel mehr Overhead, Fehler und verschwendete Materialien für Einrichtungskosten.

Der 3D-Druck überschreitet einige der Grenzen, vielleicht könnte ein bisschen Aufwand dasselbe für die (viel ältere) Technologie der Bearbeitung, sowohl von Teilen als auch von Leiterplatten, bewirken.

Bearbeitet, um hinzuzufügen: Beim erneuten Lesen der Frage und vielleicht der Absicht der Frage in Bezug auf FPGAs würde ich sagen, dass sie derzeit für viele immer noch ein bisschen eine dunkle Kunst sind und von den meisten Menschen einfach nicht auf dem Radar sind. Die Eintrittsbarriere in Bezug auf Aufwand, Verständnis und Tools ist ziemlich hoch.

Dies ist die wahre Antwort. Hardware ist teurer in der Anschaffung.
Der 3D-Druck ist ein besonders gutes Beispiel; Auf thingiverse.com erfahren Sie, wie das explodiert ist, jetzt, wo 3D-Drucker immer zugänglicher werden.
Was auffällt, ist der "Apple-Effekt", der dazu gebracht wird - es ist seit einiger Zeit möglich, mit sehr wenig Aufwand 3D-Druck und eine CNC-Maschine viel länger zu Hause zu betreiben ... aber es einfach und zugänglich zu machen, hat dazu geführt eine Menge mehr Leute - auf die gleiche Weise macht Apple seine Sachen benutzerfreundlicher im Vergleich zu anderen Produkten, die dasselbe (oder besser) tun, aber eine steilere Lernkurve/Einstiegsbarriere haben. Benutzerfreundlich ist (heute) ein sehr altmodischer Begriff, aber es ist im Grunde das, was Apple all diese Milliarden eingebracht hat.

Offene Hardware ist eigentlich nicht schwer zu bekommen. Unternehmen wie Sparkfun, Adafruit und Arduino stellen Schaltpläne und Firmware öffentlich zur Verfügung. Vergessen wir auch nicht die Maker-Community da draußen, die einen großen Beitrag zu Open Hardware leistet. Es gibt auch die Open Source Hardware Association (aber das wussten Sie wahrscheinlich schon!).

Es scheint, dass Open-Source-Software etwas prominenter ist als offene Hardware, aber offene Hardware ist da draußen – und sie ist groß. Verbringen Sie einfach 2 Minuten mit Instructables und Sie werden sehen. Mangelndes gemeinsames Wissen ist definitiv kein Problem.

Zugegeben, Sie werden wahrscheinlich nicht viel kostenlosen (wie in Freiheit) Verilog- oder VHDL-Code sehen, aber sie sind da draußen. Es sieht so aus, als ob Mikrocontroller statt FPGAs die offene Hardware-/Hersteller-Community wirklich in die Höhe getrieben haben.

Ich glaube, ich sollte meine Frage genauer präzisieren. Ja, diese Unternehmen stellen ihre Schaltpläne und Platinenlayouts zur Verfügung, aber viele Open-Hardware-Projekte verwenden immer noch hochgradig proprietäre ICs.
Jeder kann den Quellcode zu Hause bearbeiten, nur sehr wenige Menschen haben eine Chip-Fertigungsanlage, um ein paar benutzerdefinierte Chips herzustellen.
@JohnU Ihr Kommentar verdient eine Antwort.
Dann werde ich es so machen!
Ja, bis sie sauer werden, dass andere Unternehmen die Pläne übernehmen und genau das tun, was Open Source bedeutet, und Kopien erstellen (Lesen Sie: Super billige chinesische Knockoffs). Schauen Sie sich MakerBot an. Sie gingen zu Closed Source, weil ihnen die Auswirkungen von Open Source nicht gefielen, dh dass jeder mit der Hardware alles machen kann.
Haha ja und das ist ein großes Problem. The Amp Hour hat einen guten Podcast gemacht, in dem es um offene Hardware ging und ob sie in der Industrie wirklich „erfolgreich“ war. ( theamphour.com/the-amp-hour-125-bus-buccaneer-builder ). Die Antwort war, glaube ich, "noch nicht"

Wie ich sehe, haben Sie in Ihren Kommentaren einige Dinge in Bezug auf offene Hardware im wahrsten Sinne des Wortes klargestellt, bei der die Leute ihr eigenes Design erstellen und von Grund auf neu herstellen können, anstatt Designs zu veröffentlichen, die auf proprietären Teilen basieren.

Es kommt hauptsächlich auf die Herstellungskosten und die Komplexität an. Wenn Sie Ihr OpenRISC-Beispiel nehmen, fallen mir im Moment drei Hauptoptionen ein. Diese Kosten sind sehr grob, weisen aber auf Dinge hin, die in Hunderten bis Tausenden von Einheiten produziert werden, nicht in Millionen:

  • Verwenden Sie stattdessen die proprietäre ARM-Plattform und kaufen Sie Chips von beispielsweise Atmel oder über 20 anderen Herstellern. Die Kosten sagen 5 $ pro Teil aus, die Chips sind gut dokumentiert und bewährt und die Einrichtungskosten / Vorlaufzeit sind praktisch gleich null. Sie erfordern nicht viel Unterstützungsschaltkreis und viele werden in Paketen oder auf billigen Prototypenplatinen geliefert, die leicht von Hand gelötet werden können.

  • Nehmen Sie den OpenRISC-Prozessor, fügen Sie unterstützende Peripheriegeräte hinzu und laden Sie ihn auf ein FPGA. Auf jeden Fall ein machbares "zu Hause" / offenes Hardwareprojekt und auch nicht viele Einrichtungskosten. Das FPGA ist jedoch immer noch proprietär, wie Sie darauf hingewiesen haben, und es ist wahrscheinlicher, dass es 20 US-Dollar pro Teil einschließlich Support-Schaltung kostet, ganz zu schweigen davon, dass viele Gehäuse viel schwieriger von Hand zu löten sind.

  • Nehmen Sie den OpenRISC-Prozessor, fügen Sie Support-Peripheriegeräte hinzu und lassen Sie sich einen ASIC nach Ihrer Wahl fertigen, Sie könnten sogar Ihre eigenen Einrichtungen kaufen. Die Herstellung eines ASICs in einer bestehenden Fertigungsanlage würde die Marke von Hunderttausenden erreichen, der Kauf Ihrer eigenen Produktionsanlagen würde in der Größenordnung von Hunderten von Millionen liegen.

Eine andere Sache, an die Sie sich erinnern sollten, ist, dass FPGAs zwar die Dinge in einigen Designs vereinfachen, aber wirklich nur den digitalen Bereich abdecken. Die meisten realen Designs erfordern viele analoge Unterstützungsschaltkreise, um ihre endgültige Funktion zu erfüllen, sodass ein FPGA möglicherweise keine so universelle Lösung ist, wie Sie glauben.

Die Aspekte „Freiheit, Kopien weiterzuverteilen“ und „Freiheit, Änderungen vorzunehmen“ von Freier Software lassen sich wirklich nicht gut auf Hardware übertragen. Das Kopieren einer Platine ist mit Arbeit und Kosten verbunden, und mit dem Kopieren eines ASIC (modifiziert oder anderweitig) ist noch viel mehr verbunden. Es wird in absehbarer Zeit einfach nicht in Reichweite des durchschnittlichen Benutzers sein.

Ein weiterer Faktor ist die schnelle Obsoleszenz. Ein Teil der offenen UNIX-Software ist dreißig Jahre alt; GCC ist etwa 25 Jahre alt. Offene Hardware hat im Allgemeinen eine kürzere Zeit, bevor sie schrecklich veraltet aussieht. Das gilt vor allem für all die Dinge, die man wirklich offen haben möchte: Prozessoren, Grafikhardware, Funkschnittstellen.

(Sie könnten einen offenen Ersatz für z. B. den 555 oder LM741 haben, der zeitloser wäre, aber was wäre der Sinn? Wie würde er sich wesentlich von den aktuellen unterscheiden?)

Es gibt sicherlich Spielraum für die Entwicklung von "Community"-Hardware, aber das hängt davon ab, ob es eine stabile, vernünftige* Community gibt, die sich einigen kann, was sie will und wofür sie zu zahlen bereit ist. Erfordert wiederum viel Arbeit.

*(Die Verwendung eines halbgeschlossenen Broadcom-Chips im Raspberry Pi hat eine kleine, aber sehr verärgerte Gruppe von Beschwerdeführern angezogen. Ich denke, so etwas schreckt vernünftige Leute von der Art von Projekt ab, das für Open ASIC-Design notwendig wäre . Ein Ersatz könnte für etwa 5 Millionen US-Dollar und ein Jahr Arbeit erfolgen, es sei denn, es gibt katastrophale Patenthindernisse. Sie müssten die patentbehaftete Videodecodierungshardware verlieren und eine Befehlssatzlizenz von ARM erarbeiten.)

Es ist nicht die geschlossene Hardware des SOC, die die Leute dort wütend macht, es ist das Fehlen eines vollständigen öffentlichen Datenblatts, selbst für Aspekte, die nichts mit der GPU zu tun haben. Das und das Beschaffungsproblem haben wirklich begrenzte Community-Derivate, die die Board-Probleme beheben könnten, die die Aufnahme in Nicht-Neugier-Anwendungen verhindern.

Die Werkzeugkette ist für den Mann auf der Straße viel weniger zugänglich. Jeder und seine Onkel können sich einen Compiler, eine Datenbank usw. besorgen, aber ein Oszilloskop, ein Funktionsgenerator, Laborzubehör, eine Teilebibliothek und die hart erkämpften Fähigkeiten, sie zu benutzen, bedeuten nur, dass es um Größenordnungen weniger Spieler geben wird im offenen Hardwarespiel.

Ich stimme der Einschätzung der „Größenordnung“, wie einfach und zugänglich offene Software im Vergleich zu offener Hardware ist, vollkommen zu. Es kommt auf „Bits“ versus „Atome“ an. Die Kosten und Mühen, die mit der Arbeit an einem offenen Softwareprojekt verbunden sind, sind extrem gering, und Tools und Infrastruktur (das Internet, Github und Ihr PC) wurden alle bezahlt, bevor Sie Ihr offenes Softwareprojekt beginnen, sodass die zusätzlichen Kosten Ihre Zeit sind.

Offene Hardware erfordert, dass Sie die "Atome" erhalten, nur um mit dem Projekt zu beginnen, und wie in einem früheren Beitrag angegeben:

  • Die Verwendung des Standardprodukts eines Unternehmens ist die kostengünstigste Option (5 bis 100 US-Dollar)*
  • FPGA-Implementierung ist teurer (20 bis 2000 US-Dollar)
  • Ihr eigener benutzerdefinierter ASIC (200.000 bis 2.000.000 US-Dollar)
  • Ihre eigene Fabrik zur Herstellung Ihrer Teile (500.000.000 $ bis 2 Mrd. $)

'* Diese Kosten umfassen sowohl Entwicklungskosten als auch Chipkosten

Jetzt hat die Open-Mixed-Signal-Hardware-Bewegung nicht den Vorteil einer FPGA-ähnlichen Option, die oben erwähnt wurde, mit vernünftigeren Entwicklungskosten und Gerätekosten.

Unternehmen [ja, mein Unternehmen gehört dazu] arbeiten an konfigurierbaren Mixed-Signal-Lösungen, die ein FPGA-ähnliches Geschäftsmodell in das Design von Analog- und Mixed-Signal-Chips bringen würden. In gewisser Weise eignet sich offene Hardware in einem konfigurierbaren Mixed-Signal-Chip für offene Hardwareprojekte mehr als Designs auf PCB-Ebene heute.

Ja, ich sage, dass das Design von konfigurierbaren Chips einfacher sein könnte als das Design von Leiterplatten.

Ein konfigurierbarer Chip würde Silizium-erprobtes IP enthalten, das mit Einzelmasken-Layer-Änderungen durch automatisierte Design-Tools verbunden werden könnte, ähnlich einem FPGA-Place&Route- und Konfigurationsablauf. Und Mixed-Signal-Designs veralten nicht so schnell wie digitale Designs, da analoge Schaltungen nicht wie digitale Designs dem Moore-Tief nachjagen müssen.

Die Möglichkeit, mit einem verteilten Team an den Inhalten eines konfigurierbaren Chips zu arbeiten, könnte möglicherweise offene Softwarekonzepte und Vorteile für offenes Hardwaredesign bringen.

Unsere Prämisse ist, dass die folgenden Attribute dazu beitragen werden, offene Hardware populärer zu machen:

  • Standardisierte konfigurierbare Mixed-Signal-Chip-Hardware
  • Charakterisierte und dokumentierte IP-Blöcke
  • Erschwingliche High-Level-Designtools, die vollständig benutzerdefinierte Chipdesigndetails abstrahieren
  • Automatisierte Kompilierung von High-Level-Designs zu konfigurierbaren Geräten
  • Design-Sharing-Tools, die verteilte Teams unterstützen