La próxima frontera del código abierto: construir chips libres de forma artesanal
El hombre llegó a la Luna gracias, en parte, al novedoso ‘software’ desarrollado por un equipo de programadores del Instituto Tecnológico de Massachusetts, dirigidos por una de las primeras mujeres que trabajó en ese campo, Margaret Hamilton. Los listados del código del módulo lunar y del módulo de mando ocupaban una montaña de papeles de la altura de la propia ingeniera.
Hace unos meses, un extrabajador de la NASA decidió revivir el ordenador de navegación del Apolo publicando en GitHub aquel código fuenteGitHub de los años 60. Aunque ya era público, tenerlo disponible en esa plataforma colaborativa permitía a los programadores diseccionar con detenimiento las líneas que contribuyeron a que la humanidad diera un gran paso.
El ingeniero Juan Carlos González (más conocido en la Red como Obijuan) fue uno de los que se interesaron por conocer los detalles de la CPU del famoso Apolo 11. “Vi que había bastante información y dije ‘esto es carne de cañón para meterlo dentro de una FPGA’ [un dispositivo programable]”, ha explicado el ingeniero en el podcast de Hoja de Router. “Puede ser muy mítico hacerte un robot o hacerte una aplicación controlada por la CPU o por el microprocesador original del Apolo 11”.
Doctor en robótica, pionero de la impresión 3D en España, evangelista del movimiento ‘maker’, y defensor del ‘hardware’, el ‘software’ y la cultura libre, Obijuan acaba de convertirse en el primer español que gana un premio en los prestigiosos O’Reilly Open Source AwardsO’Reilly Open Source Awards. Un galardón que ha recibido con una nueva misión entre manos. “Ahora mi obsesión es conseguir que gente, inicialmente gente con perfil técnico, sea capaz de crear sus propios chips”, asegura.
El reto de crear nuestros propios chips
Escondidos en teléfonos, ordenadores, tabletas o relojes inteligentes, los chips nos rodean, aunque la mayoría desconoce los detalles de su funcionamiento interno. Obijuan los define como “cajas negras”“cajas negras”. Por eso, aunque podamos servirnos de una plataforma de ‘hardware’ libre como Arduino para hacer nuestros propios proyectos de electrónica, no podemos fabricar el cerebro de la placa. Obijuan se ha fijado como meta rebasar esa última frontera: que todos podamos crear nuestros circuitos integrados gracias a una tecnología nacida en los 80, las FPGA.
Se trata de chips que contienen los elementos básicos de un circuito sin conectar, como si estuvieran en blanco. Pese a su potencial, hasta hace poco no se habían popularizado entre los ‘makers’ porque los pocos fabricantes que vendían FPGA solo ofrecían ‘software’ propietario para manejarlas. “Era como un secreto industrial que nadie conocía, solo te dejaban usarlas con las herramientas de los fabricantes”, explica Obijuan. Él las utilizaba en sus clases cuando era profesor de la Universidad Autónoma de Madrid, pero que la tecnología fuera cerrada hacía que la experiencia resultara frustrante.
Hace unos años, el austriaco Clifford Wolf cambió por completo el panoramaClifford Wolf. Mediante ingeniería inversa de un modelo concreto de FPGA, logró conocer sus entresijos y liberó las primeras herramientas libres para sintetizar circuitos en estos chips en blanco. “Siempre que se democratiza el conocimiento de las cosas, me he dado cuenta de que se producen revoluciones”, señala Obijuan. Ahora, él pretende promover la revolución de las FPGA libres. Junto a otros ingenieros, ha creado FPGA Wars, un proyecto que ofrece diseños, tutoriales y talleres con el objetivo de formar una comunidad de usuarios que compartan sus creaciones.
Por el momento, están distribuyendo la segunda tirada de Icezum Alhambra, una placa concebida para comenzar a explorar el mundo de las FPGA libres. “Una vez que liberas el conocimiento [...] cada uno lo utiliza para una cosa y pueden salir cosas sorprendentes, y el primer paso es darle acceso a la gente para que lo pueda modificar”, detalla.
Sin duda alguna, crear una versión de la CPU del Apolo 11, un “proyecto épico” en palabras del propio Obijuan, es uno de esos proyectos sorprendentes. “Los estudiantes pueden ver cómo se hacían antes los chips por dentro y pueden compararlo con cómo se hacen ahora”, ejemplifica.
Un referente de la impresión 3D
González compara las FPGA con las impresoras 3D, que también existen desde hace décadas pero no empezaron a popularizar entre los 'makers' hasta hace unos años. Fue a finales de la pasada década cuando nacieron las primeras impresoras 3D de código abierto capaces de autorreplicarse. Otra revolución en la que este reputado ‘maker’ ha desempeñado un rol fundamental.
En 2009, cuando ya había presentado su tesis sobre robots modulares (formados por piezas nada sencillas de fabricar en aquel momento) quedó impresionado con una charla de Adrian Bowyer, un profesor de la Universidad de Bath (Reino Unido) creador de RepRap, un proyecto surgido con el objetivo de crear una impresora 3D autorreplicable de código abierto. Al poco tiempo, Obijuan compraba junto a unos amigos una de las primeras impresoras Makerbot del mundo (una variante de la RepRap original) y comenzaba a fabricar robots con ella.
Ese fue el germen del proyecto Clone Wars en la Universidad Carlos III de Madrid, Clone WarsUniversidad Carlos III de Madriddonde era profesor. A través de una wiki, documentarían en español y de forma sencilla los detalles para crear una impresora 3D a partir de piezas fabricadas con otra. Gracias al conocimiento compartido y a la generosidad de la comunidad (las máquinas serían financiadas por 'jedis' y montadas por 'padawans'), se crearon muchas impresoras clones. “Los que construíamos las primeras impresoras empezamos a imprimir las piezas para donárselas a los siguientes y que puedan construir las suyas”, rememora González.
Hoy, unas 5.000 personas forman parte de la comunidad Clone Wars. “Esto es tan horizontal que en realidad vale para todos, depende de la afición que tenga cada uno”, explica Obijuan, y menciona como ejemplo a su propia hija, apasionada por imprimir pendientes y pulseras a medida. “Simplemente echa un vistazo alrededor y mira a ver cuántas piezas de plástico encuentras”, propone.
Años después de comenzar su andadura en el código abierto, este ‘maker’ sigue haciendo que otros muchos entusiastas de la electrónica se interesen por el ‘hardware’ y el ‘software’ libres. En su canal de YouTube, con más de 13.000 suscriptores 13.000 suscriptoresen el momento de escribir estas líneas, enseña a utilizar programas de diseño 3D como FreeCad o a montar impresoras, y comparte todos sus proyectos en su repositorio de GitHubGitHub para que cualquiera pueda aprovechar el código o modificarlo. En el ámbito profesional, tras dirigir el departamento de i+D+i en la tecnológica BQ, trabaja en proyectos de formación y creación digital en La Rueca, una entidad sin ánimo de lucro que favorece la inclusión social de personas en situación de vulnerabilidad.
Una trayectoria dedicada a promover el Patrimonio Tecnológico de la Humanidad (un concepto que él mismo ha ideado) que hizo que decenas de personas iniciaran una campaña en Twitter para pedir su nominación a los O’Reilly Open Source Awards, los mayores premios del código abierto. De hecho, la encargada de entregarle el galardón destacaba durante el evento en Texas que la cantidad de votos que había recibido era “de locos”.
“Estoy contentísimo y esto ha sido una cosa totalmente inesperada”, destaca con humildad Obijuan. “Yo creo que el premio no me lo han dado a mí personalmente, sino al trabajo que está haciendo la comunidad [...] y creo que en realidad es un impulso que nos tienen que dar a todos para decir ‘compartir merece la pena’”. Él es un claro ejemplo de que los grandes proyectos pueden nacer de dar y recibir. Trabajar con altruismo puede hacer, incluso, que lleguemos a tener en nuestras manos la CPU que llevó al hombre a la Luna.