Qué abrimos, qué no, y por qué
Durante mucho tiempo nuestro repositorio llevó una insignia que decía License: Open Source. Debajo no había casi nada — ninguna de las fuentes del dispositivo que realmente vendemos. La insignia hacía un trabajo que el código no hacía.
Ahora es al revés. El firmware está publicado bajo GPL-3.0, junto a él la referencia de procesamiento de señal, los diseños de la carcasa bajo CC BY-SA 4.0, y los datos sísmicos de la red bajo CC BY 4.0.
Y el diseño del PCB sigue cerrado. El backend en la nube también. Este artículo trata de dónde está exactamente la línea, y por qué la dibujamos ahí en lugar de en un sitio que sonara mejor.
La línea
| Parte | Estado | Licencia |
|---|---|---|
| Firmware (ESP32-S3, ESP-IDF) | Abierto | GPL-3.0-or-later |
| Referencia de procesamiento de señal | Abierto | GPL-3.0-or-later |
| Diseños de carcasa (STL + fuente Fusion) | Abierto | CC BY-SA 4.0 |
| Datos sísmicos | Abierto | CC BY 4.0 |
| Documentación | Abierto | CC BY-SA 4.0 |
| Diseño de PCB / esquemáticos | Cerrado | no publicado |
| Backend en la nube | Cerrado | operado por nosotros |
Como el PCB es propietario, el GeoShake T1 no es hardware de código abierto, y no lo llamamos así en ninguna parte. La frase correcta — la que usamos en la web, en el README y en cada anuncio — es:
Firmware de código abierto, diseños de carcasa abiertos, datos abiertos. El diseño del PCB y el backend en la nube son propietarios.
Es larga. También es cierta, cosa que la insignia no era.
¿Por qué mantener cerrado el PCB?
Es la pregunta que más nos hacen, y merece una respuesta directa en lugar de una nota de prensa.
Somos pequeños. Publicar los archivos de la placa significa que cualquiera puede fabricarla por unos pocos dólares por unidad. La placa es lo único físico que vendemos; el firmware, la app y la red son lo que la hacen útil, pero la placa es por lo que la gente paga.
Abrir es una puerta de un solo sentido. Podemos publicar el PCB más adelante. Nunca podremos despublicarlo. Ante esa asimetría, "todavía no" nos cuesta muy poco y "sí, ahora" podría costarnos la empresa. Así que la decisión no es una doctrina sobre la apertura — es una cuestión de secuencia. Esperamos revisarla en la próxima revisión de hardware.
Preferimos ser honestos antes que quedar bien. Sería fácil describir el T1 como "hardware abierto" y esperar que nadie lo compruebe. La gente lo comprueba. Y en el momento en que alguien encuentra el hueco, todo lo demás que hemos dicho sobre transparencia se lee de otra manera.
Hay un detalle incómodo que conviene admitir: mantener el PCB cerrado compra fricción, no protección. Cualquiera que compre un T1 puede abrirlo y fotografiar la placa — la ingeniería inversa es completamente legal. Lo que cerrar los archivos hace en realidad es que copiar sea más lento e incómodo. Lo que de verdad nos protege es la marca, las credenciales de red y el copyleft del firmware.
Por qué estas licencias concretas
Firmware — GPL-3.0. Copyleft fuerte. Si distribuyes un firmware GeoShake modificado en un producto, tus cambios también tienen que ser públicos. Preferimos que las mejoras vuelvan antes que ver cómo un fork cerrado se las lleva.
Carcasa — CC BY-SA 4.0. Al principio planeamos CERN-OHL-S v2, la licencia de hardware abierto más "seria". Cambiamos por una razón poco glamurosa pero decisiva: CC BY-SA es una opción nativa del desplegable en Printables, MakerWorld y Thingiverse, y CERN-OHL-S no. Una licencia que nadie puede seleccionar en el formulario de subida es una licencia que mantiene tu diseño fuera de las plataformas donde los makers realmente miran. La misma protección share-alike, un obstáculo menos.
Datos — CC BY 4.0. Deliberadamente sin share-alike. Solo pedimos atribución, porque queremos que los datos se usen en artículos y productos sin que nadie tenga que pensar en compatibilidad de licencias. La versión 4.0 además cubre el derecho sui generis de bases de datos de la UE, cosa que la 3.0 no hacía — y eso importa cuando se trata de un conjunto de datos y no de un solo archivo.
Tu dispositivo es realmente tuyo
Esta parte importa más que el texto de la licencia.
Las unidades GeoShake T1 salen sin quemar los eFuses de secure boot. Puedes compilar tu propio firmware y grabarlo por USB-C, cuando quieras, sin pedirnos permiso. Es lo que la GPLv3 §6 exige a cualquiera que distribuya software GPL sobre hardware, y lo cumplimos en lugar de buscarle la vuelta.
Si no quieres usar nuestra red, apunta el firmware a tu propio broker MQTT — una constante en main/config.h. El dispositivo funcionará perfectamente sin nosotros.
El acceso a la red oficial sí requiere credenciales que emitimos nosotros, y decimos abiertamente que podemos denegarlas o revocarlas para proteger la calidad de los datos. Pero eso es una puerta en nuestra red, no un candado en tu hardware. Esa distinción es todo el asunto.
Qué puedes hacer con todo esto
- Lee el código de detección. El detector STA/LTA y las matemáticas de características están en el repositorio, junto con la referencia TypeScript contra la que se verifican — escribimos sobre cómo funciona esa verificación.
- Imprime la carcasa. Archivos STL más la fuente editable de Fusion, en Printables y Thingiverse.
- Usa los datos. Sin cuenta, sin clave de API: api.geoshake.org/developer.
- Construye otra cosa con ello. Véndela, incluso. Solo que no bajo nuestro nombre — la marca GeoShake no se licencia, que es el mismo modelo que usan Arduino y Prusa.
La parte que cambiaríamos si pudiéramos
Ser preciso implica admitir lo incómodo, así que: lo que abrimos es genuinamente útil, pero no es una receta completa. No puedes construir un T1 con lo que hemos publicado — tendrías que diseñar tu propia placa portadora en torno al pinout que el firmware espera. Para quien quiera un dispositivo totalmente abierto, eso es una limitación real y no vamos a fingir lo contrario.
Lo que sí podemos prometer es que la línea se queda donde dijimos, y que lo diremos claramente cuando se mueva.
Todo lo que llamamos abierto vive aquí: github.com/GeoShake/geoshake
¿Listo para unirte a la red?
Obtén el sensor GeoShake T1 y comienza a detectar terremotos en casa.