mirror of
git://projects.qi-hardware.com/wernermisc.git
synced 2024-11-14 19:14:41 +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