mirror of
git://projects.qi-hardware.com/wernermisc.git
synced 2024-12-30 19:57:23 +02:00
556 lines
16 KiB
TeX
556 lines
16 KiB
TeX
\documentclass[12pt,trans]{beamer}
|
|
\usepackage{color}
|
|
\usepackage{url}
|
|
\usepackage{colortbl}
|
|
\usepackage{soul}
|
|
\usepackage[utf8]{inputenc}
|
|
\usefonttheme{structurebold}
|
|
\setbeamertemplate{navigation symbols}{}
|
|
\setbeamertemplate{items}[ball]
|
|
%\setbeamersize{sidebar width left=-5mm}
|
|
\title{\Large Haciendo Hardware Copyleft}
|
|
\author{Werner Almesberger \\\url{werner@almesberger.net}}
|
|
\date{June 30, 2011}
|
|
|
|
|
|
\begin{document}
|
|
|
|
\begin{frame}
|
|
\titlepage
|
|
\begin{itemize}
|
|
\item Traducido por David Samblás \\\url{david@tuxbrain.com} Tuxbrain S.L.
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- Overview ----------------------------------------------------------------
|
|
|
|
\begin{frame}{Indice}
|
|
\begin{itemize}
|
|
\item Hardware Copyleft:Que y Porque?
|
|
\item Herramientas
|
|
\item Proyectos Qi-Hardware
|
|
\item Que hacer y que NO hacer
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- What is Copyleft Hardware -----------------------------------------------
|
|
|
|
\begin{frame}{Que es el Hardware Copyleft ?}
|
|
\begin{itemize}
|
|
\item Principios semejantes a los del Software libre, \\
|
|
aplicados al Hardware
|
|
\item Diseño {\color{red}\underline{y}} producción
|
|
\item Toda la documentación asociada bajo licencias Abiertas \\
|
|
GPL, GFDL, CC-BY, CC-BY-SA
|
|
\item Compatible y afín al Software Libre
|
|
\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 Concepto &\bf Software & \bf Hardware \\
|
|
\hline
|
|
Código Fuente & Programa & Esquemas y Planos \\
|
|
\rowcolor[gray]{0.9}
|
|
Editor & Editor de Texto & EDA system* \\
|
|
Traducción & Compilador, etc. & EDA system* \\
|
|
\rowcolor[gray]{0.9}
|
|
Testeo & Ejecutar & Prototipo(s) \\
|
|
Depuración & Debugger & Instrumentos de Laboratorio \\
|
|
\rowcolor[gray]{0.9}
|
|
Replicación & Descarga & Producción, \\
|
|
\rowcolor[gray]{0.9}
|
|
& (Copia perfecta) & Testear \\
|
|
Distribución & Internet & Envíos, Aduanas \\
|
|
\hline
|
|
\end{tabular}
|
|
*EDA System =Sistemas de Automatización de diseño electrónico
|
|
\end{frame}
|
|
|
|
% --- The Four Freedoms -------------------------------------------------------
|
|
|
|
\begin{frame}{Las Cuatro Libertades}
|
|
|
|
Según la definición de Software Libre: $[1]$
|
|
|
|
\begin{enumerate}
|
|
\item[0]<2-> Ejecutar el programa
|
|
\begin{itemize}
|
|
\item Usar el hardware
|
|
\end{itemize}
|
|
\item[1]<3-> Estudiar el código
|
|
\begin{itemize}
|
|
\item Estudiar los archivos de diseño (Esquemas y planos)
|
|
\end{itemize}
|
|
\item[1]<4-> Adaptar el código fuente a tus necesidades
|
|
\begin{itemize}
|
|
\item Adaptar los archivos de diseño
|
|
\item Tener acceso a las herramientas para hacerlo
|
|
\end{itemize}
|
|
\item[2$-$3]<5-> Redistribuir copias (incluyendo modificaciones)
|
|
\begin{itemize}
|
|
\item Redistribuir los archivos de diseño
|
|
\item Construir o producir el hardware
|
|
\end{itemize}
|
|
\end{enumerate}
|
|
|
|
{\small $[1]$~\url{http://www.gnu.org/philosophy/free-sw.html}}
|
|
\end{frame}
|
|
|
|
% --- Why Copyleft Hardware ---------------------------------------------------
|
|
|
|
\begin{frame}{Porqué Hardware Copyleft?}
|
|
Uno puede $\ldots$
|
|
\setbeamertemplate{items}[default]
|
|
\begin{itemize}
|
|
\item Aprender de el (hasta de los pequeños detalles)
|
|
\item saber que esta pasando dentro de "la caja negra"
|
|
\begin{itemize}
|
|
\item Sin posibilidad de spyware
|
|
\item Análisis de las (dis)funcionalidades
|
|
\end{itemize}
|
|
\item Adaptar el diseño a nuevos usos y entornos
|
|
\item Reutilizar parte del diseño en otros proyectos
|
|
\item Conseguir longevidad del dispositivo por los siguientes medios: $\ldots$
|
|
\begin{itemize}
|
|
\item arreglando/actualizando/mejorando el diseño
|
|
\item reparando/modificando el dispositivo
|
|
\item produciendo mas dispositivos (actualizados)
|
|
\end{itemize}
|
|
\item Elegir el mejor lugar de producción
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- Workflow ----------------------------------------------------------------
|
|
|
|
\begin{frame}{Workflow}
|
|
\begin{center}
|
|
\includegraphics[width=1.1\textwidth]{flow.pdf}
|
|
\end{center}
|
|
\end{frame}
|
|
|
|
% --- Tools: KiCad ------------------------------------------------------------
|
|
|
|
\begin{frame}{Herramientas: KiCad}
|
|
\begin{center}
|
|
\includegraphics[height=50mm]{kicad.png}
|
|
\end{center}
|
|
\begin{columns}
|
|
\begin{column}{12cm}
|
|
\begin{itemize}
|
|
\item Desarrolladores principales: Jean-Pierre Charras, Dick Hollenbeck
|
|
\item Solución EDA completa
|
|
\item Archivos de texto $\rightarrow$ ampliable
|
|
\item Software libre: GPL, LGPL
|
|
\end{itemize}
|
|
\end{column}
|
|
\end{columns}
|
|
\end{frame}
|
|
|
|
% --- Tools: Schematics History -----------------------------------------------
|
|
|
|
\begin{frame}{Herramientas: Schematics History}
|
|
\begin{center}
|
|
\includegraphics[height=4.5cm]{schhist.png}
|
|
\qquad
|
|
\includegraphics[height=4cm]{USB.png}
|
|
\end{center}
|
|
\begin{itemize}
|
|
\item Histórico de evolución de los esquemas
|
|
\item Destaca visualmente los cambios de una versión a otra
|
|
\item Interfaz web (HTML, PNG, PDF)
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- Tools: Footprint Editor (fped) ------------------------------------------
|
|
|
|
\begin{frame}{Herramientas: Footprint Editor (fped)}
|
|
\begin{center}
|
|
\includegraphics[height=6cm]{fped.png}
|
|
\end{center}
|
|
\begin{itemize}
|
|
\item Parametrizable
|
|
\item Interfaz gráfica o comandos en consola
|
|
\item Mediciones automáticas
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- More Tools --------------------------------------------------------------
|
|
|
|
\begin{frame}{Mas Herramientas}
|
|
\begin{columns}
|
|
\begin{column}[l]{8cm}
|
|
\begin{itemize}
|
|
\item Visor de Hoja de especificaciones(dsv)
|
|
\begin{itemize}
|
|
\item Soluciona la no-distribución
|
|
\item Descarga y almacena
|
|
\item Acceso rápido \\
|
|
{\tt dsv mcu}
|
|
\end{itemize}
|
|
\item Renderizador de Gerber (prettygerbv)
|
|
\begin{itemize}
|
|
\item Combina Gerber y Excellon
|
|
\item Coloración Realista
|
|
\end{itemize}
|
|
\item Procesador de Lista de materiales(BOM processor)
|
|
\begin{itemize}
|
|
\item Selecciona los componentes
|
|
\item Encuentra al mejor proveedor
|
|
\item Realiza la lista de compra
|
|
\end{itemize}
|
|
\item Makefiles
|
|
\begin{itemize}
|
|
\item Agiliza procesos
|
|
\item Genera los archivos a fabricantes
|
|
\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}{Comunidad Qi-Hardware}
|
|
\begin{itemize}
|
|
\item Iniciada por ex-Openmokoers
|
|
\item Una colección de proyectos ligeramente interconectados
|
|
\item Hardware Copyleft con Software Libre
|
|
\item Desarrollo y Producción
|
|
\end{itemize}
|
|
|
|
Productos:
|
|
\begin{itemize}
|
|
\item Ben NanoNote (Ordenador de bolsillo)
|
|
\item SIE (Placa de desarrollo)
|
|
\item Universal Breakout Board (UBB)
|
|
\item Ben-WPAN (comunicación inalámbrica IEEE 802.15.4)
|
|
\item Milkymist One (Sintetizador de Video basado en FPGA)
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- Ben NanoNote ------------------------------------------------------------
|
|
|
|
\begin{frame}{Ben NanoNote}
|
|
|
|
\begin{center}
|
|
\includegraphics[height=2.5cm]{Nano_cola.jpg}
|
|
\end{center}
|
|
\begin{columns}
|
|
\begin{column}[r]{6cm}
|
|
\begin{itemize}
|
|
\item Objetivo: Validar el proceso de producción
|
|
\item Basado diseño basado en un diccionario chino-ingles de marca blanca
|
|
\item OS Linux: OpenWrt, Jlime (basado en OE)
|
|
\item 336 MHz MIPS CPU (Ingenic Jz4720)
|
|
\item 32MB RAM, 2GB NAND
|
|
\end{itemize}
|
|
\end{column}
|
|
\begin{column}[r]{6.5cm}
|
|
\begin{itemize}
|
|
\item QVGA LCD, teclado
|
|
\item USB device, tarjetas 8:10, audio
|
|
\item Producido por Sharism at Work Ltd.
|
|
\item $\approx$1300 Unidades vendidas
|
|
\item Esquemas abiertos (KiCad)
|
|
\end{itemize}
|
|
\end{column}
|
|
\end{columns}
|
|
\end{frame}
|
|
|
|
% --- SIE ---------------------------------------------------------------------
|
|
|
|
\begin{frame}{SIE}
|
|
|
|
\begin{center}
|
|
\includegraphics[width=38mm]{SIE_KICAD.png}
|
|
\end{center}
|
|
|
|
\begin{itemize}
|
|
\item Objetivo: Placa de desarrollo (educación)
|
|
\item Ligeramente basado en el diseño del Ben
|
|
\item Trabajo conjunto entre
|
|
\begin{itemize}
|
|
\item Universidad Nacional de Colombia (UNAL)
|
|
\item Tuxbrain S.L.
|
|
\item Sharism Ltd.
|
|
\end{itemize}
|
|
\item Diseño 100\% abierto (con KiCad)
|
|
\item El proyecto continuo como Linux en-Caja
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- UBB ---------------------------------------------------------------------
|
|
|
|
\begin{frame}{UBB}
|
|
|
|
\includegraphics[width=40mm]{UBB_production_08.JPG}
|
|
\quad
|
|
\includegraphics[width=28mm]{ubb-vga-pub-plugged-medium.jpg}
|
|
\quad
|
|
\includegraphics[width=28mm]{ubb-vga-pub-1024-medium.jpg}
|
|
|
|
\vskip10mm
|
|
|
|
Universal Breakout Board
|
|
%\begin{columns}
|
|
% \begin{column}[l]{8cm}
|
|
\begin{itemize}
|
|
\item Objetivo: Facilitar conexiones DIY al Ben
|
|
\item Idea Original de Rikard Lindstrom
|
|
\item Diseño 100\% abierto (con KiCad)
|
|
\item Producido por Tuxbrain S.L.
|
|
\item Ejemplo: ubb-vga
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- Ben-WPAN ----------------------------------------------------------------
|
|
|
|
\begin{frame}{Ben-WPAN}
|
|
|
|
\begin{center}
|
|
\includegraphics[width=30mm]{Atben_atusb_prod_03.jpg}
|
|
\qquad
|
|
\includegraphics[width=50mm]{Atben_atusb_prod_05.jpg}
|
|
\end{center}
|
|
\begin{columns}
|
|
\begin{column}{12cm}
|
|
\begin{itemize}
|
|
\item Objetivo: Proporcionar a Ben comunicación inalámbrica "sin trabas"
|
|
\item IEEE 802.15.4 (LR-WPAN)
|
|
\item 250 kbps (2 Mbps no estandar)
|
|
\item Ben tarjeta 8:10 (atben), USB (atusb)
|
|
\item Diseñado por Werner Almesberger
|
|
\item Diseño 100\% abierto (con KiCad)
|
|
\item Proceso de fabricación altamente automatizado
|
|
\item Producido por Tuxbrain S.L.
|
|
\end{itemize}
|
|
\end{column}
|
|
\end{columns}
|
|
\end{frame}
|
|
|
|
% --- Milkymist One -----------------------------------------------------------
|
|
|
|
\begin{frame}{Milkymist One}
|
|
|
|
\begin{columns}
|
|
\begin{column}[l]{4cm}
|
|
\includegraphics[width=5cm]{M1_dmx_video.jpg}
|
|
\end{column}
|
|
\begin{column}[r]{9cm}
|
|
\begin{itemize}
|
|
\item Sintetizador de Vídeo
|
|
\item Creado por ``one man army'' Sebastien Bourdeauducq
|
|
\item Entrada y salida de Vídeo , audio, Ethernet, USB host, MIDI, $\ldots$
|
|
\item Basado en FPGA (Núcleo Lattice LM32)
|
|
\item Verilog bajo GPL
|
|
\item Herramientas FPGA propietarias
|
|
\item LLHDL: desarrollo de herramientas de síntesis Libres
|
|
\item Archivos de diseño abiertos (con Altium)
|
|
\item Producido por Sharism
|
|
\end{itemize}
|
|
\end{column}
|
|
\end{columns}
|
|
\end{frame}
|
|
|
|
% --- Freedoms Status ---------------------------------------------------------
|
|
|
|
\begin{frame}{Estado de las Libertades}
|
|
\includegraphics[height=0.9\textheight]{achieve.pdf}
|
|
\end{frame}
|
|
|
|
% --- Running an Open Hardware Project ----------------------------------------
|
|
|
|
\begin{frame}{Llevar a cabo un proyecto de Hardware Libre}
|
|
\begin{columns}
|
|
\begin{column}{12cm}
|
|
\begin{itemize}
|
|
\item Tener los objetivos claros
|
|
\item Crear oportunidades de participación
|
|
\item Selecciona sabiamente tus retos
|
|
\begin{itemize}
|
|
\item Ponerse metas realistas
|
|
\item Saber que puedes sacrificar
|
|
\item Prestar atención al proceso de producción
|
|
\end{itemize}
|
|
\item Tener en mente que es lo siguiente
|
|
\end{itemize}
|
|
\end{column}
|
|
\end{columns}
|
|
\end{frame}
|
|
|
|
% --- Common Misconceptions ---------------------------------------------------
|
|
|
|
\begin{frame}{Errores comunes}
|
|
\begin{columns}
|
|
\begin{column}{12cm}
|
|
\begin{itemize}
|
|
\item ``Vamos a hacer un iPhone/iPad!''
|
|
\begin{itemize}
|
|
\item Los componentes de ultima tecnología son difíciles de conseguir
|
|
\item Son difíciles de integrar en el diseño
|
|
\item Son caros
|
|
\item Hay una feroz competencia
|
|
\item Ya llegas tarde a al competición
|
|
\item ``Chico, esto lo hemos patentado!''
|
|
\end{itemize}
|
|
\item ``No hay mañana'' o ``Tiene que ser perfecto''
|
|
\begin{itemize}
|
|
\item Featuritis Rampante \\
|
|
$\Rightarrow$ Retrasos
|
|
\item Intentar estar siempre lo mas actualizado posible \\
|
|
$\Rightarrow$ Rediseño $\Leftrightarrow$ Retrasos
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{column}
|
|
\end{columns}
|
|
\end{frame}
|
|
|
|
% --- Sourcing Pitfalls -------------------------------------------------------
|
|
|
|
\begin{frame}{Trampas de abastecimiento}
|
|
\begin{columns}
|
|
\begin{column}{12cm}
|
|
\begin{itemize}
|
|
\item ``Puedo conseguir cualquier chip que aparezca en la pagina Web del vendedor''
|
|
\begin{itemize}
|
|
\item Eres demasiado pequeño
|
|
\item Pagos no reembolsables
|
|
\item Ten en cuenta la documentación
|
|
\end{itemize}
|
|
\item ``Una vez el chip esta anunciado, ya lo podemos usar''
|
|
\begin{itemize}
|
|
\item Retrasos hasta las primeras (buggy) muestras
|
|
\item Algunos chips son globos sonda
|
|
\item La evoluciones pueden introducir cambios drásticos
|
|
\end{itemize}
|
|
\item Distribuidores
|
|
\begin{itemize}
|
|
\item Incluso los grandes distribuidores no tienen stock de todo
|
|
\item Cantidad mínima de pedido
|
|
\item Tiempos de entrega
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{column}
|
|
\end{columns}
|
|
\end{frame}
|
|
|
|
% --- Dodging Patents ---------------------------------------------------------
|
|
|
|
\begin{frame}{Esquivando Patentes}
|
|
Contrincantes potenciales:
|
|
\begin{itemize}
|
|
\item Los peces gordos (Apple, Nokia, Oracle, $\ldots$)
|
|
\item Agencias de licencias (Sisvel, MPEG-LA, $\ldots$)
|
|
\item Patent trolls
|
|
\end{itemize}
|
|
|
|
Algunas estrategias de evasión:
|
|
\begin{itemize}
|
|
\item No vendas hardware
|
|
\item Mantenerte lejos, pequeño, pobre y sin aparecen en prensa.
|
|
\item Usa tecnología obsoleta
|
|
\item Evitar áreas donde existan guerras de patentes: \\
|
|
Comunicaciones móviles, codecs de A/V , Multitáctil, $\ldots$
|
|
\item Mantenerte optimista y espera lo mejor
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- Conclusion --------------------------------------------------------------
|
|
|
|
\begin{frame}{El Futuro}
|
|
\begin{itemize}
|
|
\item Finalizar Milkymist One
|
|
\item Ben-WPAN firmware y soporte para Linux
|
|
\item Soñar con el Ya NanoNote
|
|
\item Mejorar las herramientas (BOM, LLHDL, layout history)
|
|
\item Mejorar el control sobre el diseño mecánico
|
|
\item Marketing mas inteligente: vender mejor nuestra historia
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- URLs --------------------------------------------------------------
|
|
|
|
\begin{frame}{URLs}
|
|
Esta presentación: \\
|
|
\url{downloads.qi-hardware.com/people/werner/fisl12_es.pdf}
|
|
\vskip2mm
|
|
El proyecto/comunidad Qi-Hardware: \\
|
|
\url{www.qi-hardware.com/}
|
|
\vskip2mm
|
|
Schematics history: \\
|
|
\url{projects.qi-hardware.com/schhist/}
|
|
\vskip2mm
|
|
Footprint editor (fped): \\
|
|
\url{svn.openmoko.org/trunk/eda/fped/README}
|
|
\vskip2mm
|
|
Milkymist: \\
|
|
\url{milkymist.org/}
|
|
\end{frame}
|
|
|
|
% === 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 Sistema embedded Modular (Basado en AVR)
|
|
\item Entorno fácil de utilizar
|
|
\item Muy popular
|
|
\item Comunidad muy activa
|
|
\item CC-BY-SA, GPL, LGPL
|
|
\item Sistema EDA : EAGLE
|
|
\item \url{http://arduino.cc/}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- OpenPandora -------------------------------------------------------------
|
|
|
|
\begin{frame}{OpenPandora}
|
|
\begin{itemize}
|
|
\item No es Hardware abierto y mucho menos libre
|
|
\item es un cenagal
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% --- Openmoko Freerunner -----------------------------------------------------
|
|
|
|
\begin{frame}{Openmoko FreeRunner}
|
|
\begin{itemize}
|
|
\item Smartphone GSM
|
|
\item Diseñado para el Software libre
|
|
\item Generó mucha expectación
|
|
\item ~10'000 unidades vendidas
|
|
\item Openmoko Inc. cambio su rumbo en 2009
|
|
\item Esquemas (PDF) disponibles
|
|
\item Archivo de diseño (Mentor PADS) no disponibles
|
|
\item Archivos CAD disponibles
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\end{document}
|