mirror of
git://projects.qi-hardware.com/wernermisc.git
synced 2024-11-15 06:41:53 +02:00
fisl2011/: added atusb-front.png, in-progress draft of talk
This commit is contained in:
parent
924bb95ebf
commit
6806d656f4
BIN
fisl2011/atusb-front.png
Normal file
BIN
fisl2011/atusb-front.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 26 KiB |
522
fisl2011/talk.tex
Normal file
522
fisl2011/talk.tex
Normal file
@ -0,0 +1,522 @@
|
|||||||
|
\documentclass[14pt,trans]{beamer}
|
||||||
|
\usepackage{color}
|
||||||
|
\usepackage{url}
|
||||||
|
\usepackage{colortbl}
|
||||||
|
\usepackage{soul}
|
||||||
|
\usefonttheme{structurebold}
|
||||||
|
\setbeamertemplate{navigation symbols}{}
|
||||||
|
\setbeamertemplate{items}[ball]
|
||||||
|
%\setbeamersize{sidebar width left=-5mm}
|
||||||
|
\title{\Large Making Copyleft Hardware}
|
||||||
|
\author{Werner Almesberger \\\url{werner@almesberger.net}}
|
||||||
|
\date{June 28, 2011}
|
||||||
|
|
||||||
|
\setul{}{1.5pt}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{frame}
|
||||||
|
\titlepage
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Overview ----------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Overview?}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Copyleft Hardware: what and why ?
|
||||||
|
\item Tools
|
||||||
|
\item Qi-Hardware projects
|
||||||
|
\item
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- What is Copyleft Hardware -----------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{What is Copyleft Hardware ?}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Principles similar to Free Software, \\
|
||||||
|
applied to hardware
|
||||||
|
\item Design {\color{red}\underline{and}} manufacturing
|
||||||
|
\item All material under open licenses: \\
|
||||||
|
GPL, GFDL, CC-BY, CC-BY-SA
|
||||||
|
\item Friendly to Free Software
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Hardware vs. Software ---------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Hardware vs. Software}
|
||||||
|
\setlength\minrowclearance{4pt}
|
||||||
|
\setlength\arrayrulewidth{1pt}
|
||||||
|
\begin{tabular}{|l|l|l|}
|
||||||
|
\hline
|
||||||
|
\rowcolor[rgb]{0.9,0.9,0.5}
|
||||||
|
\bf Concept &\bf Software & \bf Hardware \\
|
||||||
|
\hline
|
||||||
|
Source & Program text & Schematics, Layout \\
|
||||||
|
\rowcolor[gray]{0.9}
|
||||||
|
Editor & Text editor & EDA system \\
|
||||||
|
Conversion & Compiler, etc. & EDA system \\
|
||||||
|
\rowcolor[gray]{0.9}
|
||||||
|
Testing & Run & Prototype(s) \\
|
||||||
|
Debugging & Debugger & Lab instruments \\
|
||||||
|
\rowcolor[gray]{0.9}
|
||||||
|
Duplication & Download & Manufacturing, \\
|
||||||
|
\rowcolor[gray]{0.9}
|
||||||
|
& (perfect copy) & Testing \\
|
||||||
|
Distribution & Internet & Shipping, Customs \\
|
||||||
|
\hline
|
||||||
|
\end{tabular}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- The Four Freedoms -------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{The Four Freedoms}
|
||||||
|
|
||||||
|
According to The Free Software Definition: $[1]$
|
||||||
|
|
||||||
|
\begin{enumerate}
|
||||||
|
\item[0]<2-> Run the program
|
||||||
|
\begin{itemize}
|
||||||
|
\item Use the hardware
|
||||||
|
\end{itemize}
|
||||||
|
\item[1]<3-> Study the source
|
||||||
|
\begin{itemize}
|
||||||
|
\item Study design files (schematics and layout)
|
||||||
|
\end{itemize}
|
||||||
|
\item[1]<4-> Adapt the source to your needs
|
||||||
|
\begin{itemize}
|
||||||
|
\item Adapt design files
|
||||||
|
\item Access to the tools
|
||||||
|
\end{itemize}
|
||||||
|
\item[2$-$3]<5-> Redistribute copies (including modifications)
|
||||||
|
\begin{itemize}
|
||||||
|
\item Redistribute design files
|
||||||
|
\item Build or produce the hardware
|
||||||
|
\end{itemize}
|
||||||
|
\end{enumerate}
|
||||||
|
|
||||||
|
{\small $[1]$~\url{http://www.gnu.org/philosophy/free-sw.html}}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Why Copyleft Hardware ---------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Why Copyleft Hardware ?}
|
||||||
|
One can $\ldots$
|
||||||
|
\setbeamertemplate{items}[default]
|
||||||
|
\begin{itemize}
|
||||||
|
\item learn from it (also small details)
|
||||||
|
\item know what is happening inside the ``black box''
|
||||||
|
\begin{itemize}
|
||||||
|
\item No spyware
|
||||||
|
\item Analyze (mis)behaviour
|
||||||
|
\end{itemize}
|
||||||
|
\item adapt design for new uses or contexts
|
||||||
|
\item reuse parts of design in other projects
|
||||||
|
\item achieve longevity by $\ldots$
|
||||||
|
\begin{itemize}
|
||||||
|
\item fixing/updating/enhancing the design
|
||||||
|
\item repairing/modifying devices
|
||||||
|
\item producing more/updated devices
|
||||||
|
\end{itemize}
|
||||||
|
\item choose suitable manufacturing site
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Workflow ----------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Workflow}
|
||||||
|
@@@
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Tools: KiCad ------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Tools: KiCad}
|
||||||
|
\begin{center}
|
||||||
|
\includegraphics[height=50mm]{kicad.png}
|
||||||
|
\end{center}
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}{12cm}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Main devs: Jean-Pierre Charras, Dick Hollenbeck
|
||||||
|
\item Complete EDA solution
|
||||||
|
\item Text files $\rightarrow$ extensible
|
||||||
|
\item Free Software: GPL, LGPL
|
||||||
|
\end{itemize}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Tools: Schematics History -----------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Tools: Schematics History}
|
||||||
|
\begin{center}
|
||||||
|
\includegraphics[height=4.5cm]{schhist.png}
|
||||||
|
\qquad
|
||||||
|
\includegraphics[height=4cm]{USB.png}
|
||||||
|
\end{center}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Schematics revision history
|
||||||
|
\item Visual highlighting of changes
|
||||||
|
\item Web output (HTML, PNG, PDF)
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Tools: Footprint Editor (fped) ------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Tools: Footprint Editor (fped)}
|
||||||
|
\begin{center}
|
||||||
|
\includegraphics[height=6cm]{fped.png}
|
||||||
|
\end{center}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Parametric
|
||||||
|
\item GUI or text-based
|
||||||
|
\item Automatic measurements
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Tools: BOM Processing System --------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Tools: BOM Processing System}
|
||||||
|
|
||||||
|
@@@
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item ...
|
||||||
|
\item ...
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- More Tools --------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{More Tools}
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}[l]{8cm}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Data sheet viewer (dsv)
|
||||||
|
\begin{itemize}
|
||||||
|
\item Work around non-distribution
|
||||||
|
\item Download and cache
|
||||||
|
\item Quick access \\
|
||||||
|
{\tt dsv mcu}
|
||||||
|
\end{itemize}
|
||||||
|
\item Gerber renderer (prettygerbv)
|
||||||
|
\begin{itemize}
|
||||||
|
\item Combine Gerber and Excellon
|
||||||
|
\item Realistic coloring
|
||||||
|
\end{itemize}
|
||||||
|
\item Makefiles
|
||||||
|
\begin{itemize}
|
||||||
|
\item Shortcuts
|
||||||
|
\item Fab output
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{column}
|
||||||
|
|
||||||
|
\begin{column}[r]{4cm}
|
||||||
|
\includegraphics[width=3cm]{atusb-front.png}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% === Qi-Hardware =============================================================
|
||||||
|
|
||||||
|
|
||||||
|
% --- Qi-Hardware -------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Qi-Hardware}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Started by happily ex-Openmokoers
|
||||||
|
\item Collection of loosely connected projects
|
||||||
|
\item Development and manufacturing
|
||||||
|
\item Copyleft Hardware with Free Software
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
Products:
|
||||||
|
\begin{itemize}
|
||||||
|
\item Ben NanoNote (Handheld computer)
|
||||||
|
\item SIE (Development board)
|
||||||
|
\item Universal Breakout Board (UBB)
|
||||||
|
\item Ben-WPAN (IEEE 802.15.4 wireless)
|
||||||
|
\item Milkymist One (FPGA-based Video synthesizer)
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Ben NanoNote ------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Ben NanoNote}
|
||||||
|
|
||||||
|
@@@
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item Objective: validate manufacturing process
|
||||||
|
\item OEM dictionary design
|
||||||
|
\item 336 MHz MIPS CPU (Ingenic Jz4720)
|
||||||
|
\item 32 MB RAM, 2 GB NAND Flash
|
||||||
|
\item QVGA LCD, keyboard
|
||||||
|
\item USB device, 8:10 card, audio
|
||||||
|
\item Manufactured by Sharism at Work Ltd.
|
||||||
|
\item $\approx$1300 units sold
|
||||||
|
\item Schematics open (KiCad)
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- SIE ---------------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{SIE}
|
||||||
|
|
||||||
|
@@@
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item Objective: development board (educational)
|
||||||
|
\item Joint work of
|
||||||
|
\begin{itemize}
|
||||||
|
\item Universidad Nacional de Colombia (UNAL)
|
||||||
|
\item Tuxbrain S.L.
|
||||||
|
\item Sharism Ltd.
|
||||||
|
\end{itemize}
|
||||||
|
\item Loosely based on Ben design
|
||||||
|
\item With an FPGA
|
||||||
|
\item Design 100\% open (with KiCad)
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- UBB ---------------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{UBB}
|
||||||
|
|
||||||
|
@@@
|
||||||
|
|
||||||
|
Universal Breakout Board
|
||||||
|
%\begin{columns}
|
||||||
|
% \begin{column}[l]{8cm}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Objective: easy DIY connection to Ben
|
||||||
|
\item Original idea by Rikard Lindstrom
|
||||||
|
\item Design 100\% open (with KiCad)
|
||||||
|
\item Manufactured by Tuxbrain S.L.
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Ben-WPAN ----------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Ben-WPAN}
|
||||||
|
|
||||||
|
@@@
|
||||||
|
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}{12cm}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Objective: unencumbered wireless connectivity for the Ben
|
||||||
|
\item IEEE 802.15.4 (LR-WPAN)
|
||||||
|
\item 250 kbps (2 Mbps non-standard)
|
||||||
|
\item Ben 8:10 card (atben), USB (atusb)
|
||||||
|
\item Designed by Werner Almesberger
|
||||||
|
\item Design 100\% open (with KiCad)
|
||||||
|
\item Largely automated fabrication workflow
|
||||||
|
\item Manufactured by \st{Sharism} Tuxbrain S.L.
|
||||||
|
\end{itemize}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Milkymist One -----------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Milkymist One}
|
||||||
|
|
||||||
|
@@@
|
||||||
|
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}{12cm}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Objective:
|
||||||
|
\item By ``one man army'' Sebastien Bourdeauducq
|
||||||
|
\item Video synthesizer
|
||||||
|
\item Video in/out, audio in, Ethernet, USB host, $\ldots$
|
||||||
|
\item FPGA-based (Lattice LM32 core)
|
||||||
|
\item Verilog under GPL
|
||||||
|
\item Proprietary FPGA tools
|
||||||
|
\item LLHDL: work on Open synthesis tool
|
||||||
|
\item Design files open (use Altium)
|
||||||
|
\item Manufactured by Sharism at Work Ltd.
|
||||||
|
\end{itemize}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
|
||||||
|
% === Tricks and Traps ========================================================
|
||||||
|
|
||||||
|
% --- Sourcing Pitfalls -------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Sourcing Pitfalls}
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}{12cm}
|
||||||
|
\begin{itemize}
|
||||||
|
\item ``I can get any chip I see on a vendor's Web site''
|
||||||
|
\begin{itemize}
|
||||||
|
\item You are too small
|
||||||
|
\item Non-refundable fees
|
||||||
|
\item Consider documentation
|
||||||
|
\end{itemize}
|
||||||
|
\item ``Once a chip is announced, we can use it''
|
||||||
|
\begin{itemize}
|
||||||
|
\item Delays until first samples
|
||||||
|
\item Some chips are test balloons
|
||||||
|
\item Need a few revisions to mature
|
||||||
|
\item Revisions may introduce drastic changes
|
||||||
|
\end{itemize}
|
||||||
|
\item Distributors
|
||||||
|
\begin{itemize}
|
||||||
|
\item Even large distributors don't stock everything
|
||||||
|
\item Minimum Order Quantity
|
||||||
|
\item Lead time
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Common Misconceptions ---------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Common Misconceptions}
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}{12cm}
|
||||||
|
\begin{itemize}
|
||||||
|
\item ``Let's make an iPhone/iPad''
|
||||||
|
\begin{itemize}
|
||||||
|
\item Bleeding edge components are hard to get
|
||||||
|
\item They are hard to design for
|
||||||
|
\item They are expensive
|
||||||
|
\item There is fierce competition
|
||||||
|
\item ``Boy, did we patent it !''
|
||||||
|
\end{itemize}
|
||||||
|
\item ``There is no tomorrow'' or ``It must be perfect''
|
||||||
|
\begin{itemize}
|
||||||
|
\item Rampant featuritis \\
|
||||||
|
$\Rightarrow$ Delays
|
||||||
|
\item Try to be as up to date as possible \\
|
||||||
|
$\Rightarrow$ Redesigns $\Leftrightarrow$ Delays
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Dodging Patents ---------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Dodging Patents}
|
||||||
|
Potential opponents:
|
||||||
|
\begin{itemize}
|
||||||
|
\item Big players (Apple, Nokia, Oracle, $\ldots$)
|
||||||
|
\item Licensing firms (Sisvel, MPEG-LA, $\ldots$)
|
||||||
|
\item Patent trolls
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
Some avoidance strategies:
|
||||||
|
\begin{itemize}
|
||||||
|
\item Do not sell hardware
|
||||||
|
\item Stay small, poor, and out of the news
|
||||||
|
\item Use old technology
|
||||||
|
\item Avoid areas of on-going patent wars: \\
|
||||||
|
Mobile communication, A/V codecs, Multitouch, $\ldots$
|
||||||
|
\item Hope for the best
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Running an Open Hardware Project -------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Running an Open Hardware Project}
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}{12cm}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Have clear objectives
|
||||||
|
\item Create opportunities to participate
|
||||||
|
\item Pick your challenges wisely
|
||||||
|
\begin{itemize}
|
||||||
|
\item Set realistic goals
|
||||||
|
\item Know what you can sacrifice
|
||||||
|
\item Pay attention to manufacturability
|
||||||
|
\end{itemize}
|
||||||
|
\item Think about what follows
|
||||||
|
\end{itemize}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Conclusion --------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Conclusion}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- URLs --------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{URLs}
|
||||||
|
This presentation: \\
|
||||||
|
\url{...}
|
||||||
|
|
||||||
|
The Qi-Hardware project: \\
|
||||||
|
\url{http://www.qi-hardware.com/}
|
||||||
|
|
||||||
|
Schematics history: \\
|
||||||
|
\url{http://projects.qi-hardware.com/schhist/}
|
||||||
|
|
||||||
|
Footprint editor (fped): \\
|
||||||
|
\url{http://svn.openmoko.org/trunk/eda/fped/README}
|
||||||
|
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
|
||||||
|
\end{document}
|
||||||
|
|
||||||
|
% === Extra Slides ============================================================
|
||||||
|
|
||||||
|
% --- Similar Projects --------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Similar Projects}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Arduino
|
||||||
|
\item OpenPandora
|
||||||
|
\item Openmoko Freerunner
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Arduino -----------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Arduino}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Modular embedded system (AVR-based)
|
||||||
|
\item Easy to use environment
|
||||||
|
\item Very popular
|
||||||
|
\item Active community
|
||||||
|
\item CC-BY-SA, GPL, LGPL
|
||||||
|
\item EDA system: EAGLE
|
||||||
|
\item \url{http://arduino.cc/}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- OpenPandora -------------------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{OpenPandora}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Non-open hardware
|
||||||
|
\item A quagmire
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
% --- Openmoko Freerunner -----------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Openmoko FreeRunner}
|
||||||
|
\begin{itemize}
|
||||||
|
\item GSM Smartphone
|
||||||
|
\item Designed for Free Software
|
||||||
|
\item Got a lot of attention
|
||||||
|
\item ~10'000 units sold
|
||||||
|
\item Openmoko Inc. changed course in 2009
|
||||||
|
\item Schematics (PDF) available
|
||||||
|
\item Design files (Mentor PADS) not available
|
||||||
|
\item CAD files available
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\end{document}
|
Loading…
Reference in New Issue
Block a user