Este documento describe los principios del hardware copyleft y su aplicación a proyectos de hardware abierto. Explica las similitudes y diferencias entre el desarrollo de software y hardware libre, y presenta varios proyectos de hardware copyleft como Ben NanoNote, SIE, UBB y Milkymist One. También discute las herramientas de diseño electrónico de código abierto como KiCad y los desafíos comunes en el desarrollo de hardware libre.
1. Haciendo Hardware Copyleft
Werner Almesberger
werner@almesberger.net
June 30, 2011
Traducido por David Sambl´s
a
david@tuxbrain.com Tuxbrain S.L.
2. Indice
Hardware Copyleft:Que y Porque?
Herramientas
Proyectos Qi-Hardware
Que hacer y que NO hacer
3. Que es el Hardware Copyleft ?
Principios semejantes a los del Software libre,
aplicados al Hardware
Dise˜o y producci´n
n o
Toda la documentaci´n asociada bajo licencias Abiertas
o
GPL, GFDL, CC-BY, CC-BY-SA
Compatible y af´ al Software Libre
ın
4. Hardware vs. Software
Concepto Software Hardware
C´digo Fuente
o Programa Esquemas y Planos
Editor Editor de Texto EDA system*
Traducci´n
o Compilador, etc. EDA system*
Testeo Ejecutar Prototipo(s)
Depuraci´n
o Debugger Instrumentos de Laboratorio
Replicaci´n
o Descarga Producci´n,
o
(Copia perfecta) Testear
Distribuci´n
o Internet Env´ Aduanas
ıos,
*EDA System =Sistemas de Automatizaci´n de dise˜o
o n
electr´nico
o
5. Las Cuatro Libertades
Seg´n la definici´n de Software Libre: [1]
u o
0 Ejecutar el programa
Usar el hardware
1 Estudiar el c´digo
o
Estudiar los archivos de dise˜o (Esquemas y planos)
n
1 Adaptar el c´digo fuente a tus necesidades
o
Adaptar los archivos de dise˜o
n
Tener acceso a las herramientas para hacerlo
2−3 Redistribuir copias (incluyendo modificaciones)
Redistribuir los archivos de dise˜o
n
Construir o producir el hardware
[1] http://www.gnu.org/philosophy/free-sw.html
6. Porqu´ Hardware Copyleft?
e
Uno puede . . .
Aprender de el (hasta de los peque˜os detalles)
n
saber que esta pasando dentro de ”la caja negra”
Sin posibilidad de spyware
An´lisis de las (dis)funcionalidades
a
Adaptar el dise˜o a nuevos usos y entornos
n
Reutilizar parte del dise˜o en otros proyectos
n
Conseguir longevidad del dispositivo por los siguientes
medios: . . .
arreglando/actualizando/mejorando el dise˜o
n
reparando/modificando el dispositivo
produciendo mas dispositivos (actualizados)
Elegir el mejor lugar de producci´n
o
8. Herramientas: KiCad
Desarrolladores principales: Jean-Pierre Charras, Dick Hollenbeck
Soluci´n EDA completa
o
Archivos de texto → ampliable
Software libre: GPL, LGPL
9. Herramientas: Schematics History
Hist´rico de evoluci´n de los esquemas
o o
Destaca visualmente los cambios de una versi´n a otra
o
Interfaz web (HTML, PNG, PDF)
11. Mas Herramientas
Visor de Hoja de especificaciones(dsv)
Soluciona la no-distribuci´n
o
Descarga y almacena
Acceso r´pido
a
dsv mcu
Renderizador de Gerber (prettygerbv)
Combina Gerber y Excellon
Coloraci´n Realista
o
Procesador de Lista de materiales(BOM
processor)
Selecciona los componentes
Encuentra al mejor proveedor
Realiza la lista de compra
Makefiles
Agiliza procesos
Genera los archivos a fabricantes
12. Comunidad Qi-Hardware
Iniciada por ex-Openmokoers
Una colecci´n de proyectos ligeramente interconectados
o
Hardware Copyleft con Software Libre
Desarrollo y Producci´n
o
Productos:
Ben NanoNote (Ordenador de bolsillo)
SIE (Placa de desarrollo)
Universal Breakout Board (UBB)
Ben-WPAN (comunicaci´n inal´mbrica IEEE 802.15.4)
o a
Milkymist One (Sintetizador de Video basado en FPGA)
13. Ben NanoNote
Objetivo: Validar el proceso
de producci´n
o
Basado dise˜o basado en un
n QVGA LCD, teclado
diccionario chino-ingles de USB device, tarjetas 8:10, audio
marca blanca Producido por Sharism at Work
OS Linux: OpenWrt, Jlime Ltd.
(basado en OE) ≈1300 Unidades vendidas
336 MHz MIPS CPU (Ingenic Esquemas abiertos (KiCad)
Jz4720)
32MB RAM, 2GB NAND
14. SIE
Objetivo: Placa de desarrollo (educaci´n)
o
Ligeramente basado en el dise˜o del Ben
n
Trabajo conjunto entre
Universidad Nacional de Colombia (UNAL)
Tuxbrain S.L.
Sharism Ltd.
Dise˜o 100% abierto (con KiCad)
n
El proyecto continuo como Linux en-Caja
15. UBB
Universal Breakout Board
Objetivo: Facilitar conexiones DIY al Ben
Idea Original de Rikard Lindstrom
Dise˜o 100% abierto (con KiCad)
n
Producido por Tuxbrain S.L.
Ejemplo: ubb-vga
16. Ben-WPAN
Objetivo: Proporcionar a Ben comunicaci´n inal´mbrica ”sin
o a
trabas”
IEEE 802.15.4 (LR-WPAN)
250 kbps (2 Mbps no estandar)
Ben tarjeta 8:10 (atben), USB (atusb)
Dise˜ado por Werner Almesberger
n
Dise˜o 100% abierto (con KiCad)
n
Proceso de fabricaci´n altamente automatizado
o
Producido por Tuxbrain S.L.
17. Milkymist One
Sintetizador de V´
ıdeo
Creado por “one man army” Sebastien
Bourdeauducq
Entrada y salida de V´ ıdeo , audio, Ethernet,
USB host, MIDI, . . .
Basado en FPGA (N´cleo Lattice LM32)
u
Verilog bajo GPL
Herramientas FPGA propietarias
LLHDL: desarrollo de herramientas de s´ ıntesis
Libres
Archivos de dise˜o abiertos (con Altium)
n
Producido por Sharism
18. Estado de las Libertades
Components Firmware Manufacturing
Schematics Drivers
Layout Case 2.5D
Verilog Case 3D
Ben NanoNote 11
00
11
00 11
00
11
00
MilkyMist One
11
00
11
00 11
00
SIE
11
00 ?
UBB
111111 11
000000 00
Ben−WPAN
111111 11
000000 00
SDR GPS 11
00 ?
111
000
11
00
111
000 ? ? ?
Ya NanoNote Hypothetical
MilkyMist Two
Closed Open; proprietary format/tools Fully open
Does not apply/insignificant 11
00
11
00 WIP; fully open
19. Llevar a cabo un proyecto de Hardware
Libre
Tener los objetivos claros
Crear oportunidades de participaci´n
o
Selecciona sabiamente tus retos
Ponerse metas realistas
Saber que puedes sacrificar
Prestar atenci´n al proceso de producci´n
o o
Tener en mente que es lo siguiente
20. Errores comunes
“Vamos a hacer un iPhone/iPad!”
Los componentes de ultima tecnolog´ son dif´
ıa ıciles de conseguir
Son dif´
ıciles de integrar en el dise˜o
n
Son caros
Hay una feroz competencia
Ya llegas tarde a al competici´no
“Chico, esto lo hemos patentado!”
“No hay ma˜ana” o “Tiene que ser perfecto”
n
Featuritis Rampante
⇒ Retrasos
Intentar estar siempre lo mas actualizado posible
⇒ Redise˜o ⇔ Retrasos
n
21. Trampas de abastecimiento
“Puedo conseguir cualquier chip que aparezca en la pagina Web
del vendedor”
Eres demasiado peque˜o
n
Pagos no reembolsables
Ten en cuenta la documentaci´n
o
“Una vez el chip esta anunciado, ya lo podemos usar”
Retrasos hasta las primeras (buggy) muestras
Algunos chips son globos sonda
La evoluciones pueden introducir cambios dr´sticos
a
Distribuidores
Incluso los grandes distribuidores no tienen stock de todo
Cantidad m´ ınima de pedido
Tiempos de entrega
22. Esquivando Patentes
Contrincantes potenciales:
Los peces gordos (Apple, Nokia, Oracle, . . .)
Agencias de licencias (Sisvel, MPEG-LA, . . .)
Patent trolls
Algunas estrategias de evasi´n:
o
No vendas hardware
Mantenerte lejos, peque˜o, pobre y sin aparecen en
n
prensa.
Usa tecnolog´ obsoleta
ıa
Evitar ´reas donde existan guerras de patentes:
a
Comunicaciones m´viles, codecs de A/V , Multit´ctil, . . .
o a
Mantenerte optimista y espera lo mejor
23. El Futuro
Finalizar Milkymist One
Ben-WPAN firmware y soporte para Linux
So˜ar con el Ya NanoNote
n
Mejorar las herramientas (BOM, LLHDL, layout history)
Mejorar el control sobre el dise˜o mec´nico
n a
Marketing mas inteligente: vender mejor nuestra historia
24. URLs
Esta presentaci´n:
o
downloads.qi-hardware.com/people/werner/fisl12_
es.pdf
El proyecto/comunidad Qi-Hardware:
www.qi-hardware.com/
Schematics history:
projects.qi-hardware.com/schhist/
Footprint editor (fped):
svn.openmoko.org/trunk/eda/fped/README
Milkymist:
milkymist.org/
26. Arduino
Sistema embedded Modular (Basado en AVR)
Entorno f´cil de utilizar
a
Muy popular
Comunidad muy activa
CC-BY-SA, GPL, LGPL
Sistema EDA : EAGLE
http://arduino.cc/
27. OpenPandora
No es Hardware abierto y mucho menos libre
es un cenagal
28. Openmoko FreeRunner
Smartphone GSM
Dise˜ado para el Software libre
n
Gener´ mucha expectaci´n
o o
10’000 unidades vendidas
Openmoko Inc. cambio su rumbo en 2009
Esquemas (PDF) disponibles
Archivo de dise˜o (Mentor PADS) no disponibles
n
Archivos CAD disponibles