DZGarage Cockpit en carrera: del banco al Spain Classic Raid
Cuatro etapas, 894 km de log y 2.080 correcciones de TRIP. Cómo pasó el DZGarage Cockpit del calibre y el CAD al tablero del Audi 100 #89, y cómo lo usamos de Gijón a Palencia.
En el post anterior conté qué construí para el XII Spain Classic Raid: tres ESP32, dos receptores GPS, una pantalla táctil y unas 23.000 líneas de C++, todo mostrado con renders del CAD. Prometí fotos del aparato montado y un informe después de Palencia.
Corrimos las cuatro etapas, de Gijón a Palencia, con Andrés al volante y yo de copiloto. El cockpit grabó 894 km a 10 Hz, casi 1,4 millones de filas de GPS, y terminamos 28º de 127 en la general (la crónica de la carrera, etapa por etapa, está en DZ Lab). Este post es sobre el aparato, desde el garaje hasta Palencia.
Del CAD al tablero
El soporte y las cajas salieron de OpenSCAD, pero las medidas del tablero las saqué a mano. El 12 de octubre me pasé la tarde en el garaje con la cinta métrica, el calibre y una cartulina recortada para copiar la curva de la guantera, y cada número volvía al .scad. Esa misma tarde armé todo sobre la mesa por primera vez, y el 14 lo montamos en el auto, con el neopod pegado arriba del parabrisas.
Gijón, sábado a las 11:17
En la salida de Gijón el tablero del copiloto quedó así: el cockpit a la derecha, la tablet con Rabbit en el centro, el teléfono del piloto en una ventosa sobre el tablero, y arriba el neopod y el receptor de la organización. Antes de largar el cockpit marcaba 0,123 km y la tablet 0,122, y a la tarde la tablet ya iba 24 m por delante.
El log del sábado
El sábado a la noche, en León, bajé los logs del cockpit y los crucé con el rutómetro y con los resultados oficiales de MiRally. Busqué en el recorrido del GPS los giros que dibuja el roadbook y comparé su km con el del cockpit. En los tres cruces que se podían identificar sin dudas el cockpit estaba a 5 a 15 m del rutómetro.
La tablet cuenta de más, unos 6 m por km. Suma distancias entre puntos del GPS y en un TC de 6 km se va 40 m, que a 27 km/h son 5 segundos de adelanto que no existen. A partir del domingo, en el auto, la tablet se ajustó siempre al cockpit con sus botones.
En el TC1, 247 de los 289 puntos del día salieron de tres tandas de −10 m que apretamos en el km 2,8, donde no había ninguna viñeta: 470 m menos de TRIP. La pantalla pasó a decir que íbamos 43 s tarde cuando en realidad íbamos 20 s pronto, y Andrés aceleró para recuperar un retraso inventado. El log guarda cada pulsación de ±1 y ±10 con la hora, el TRIP y la posición, así que la noche alcanzó para reconstruir el error metro por metro. En la revisión quedó escrita la pregunta de qué creíamos que había en el km 2,73, para hablarla en el desayuno.
En cuatro días hubo 2.080 correcciones de TRIP. Unas 1.000 solo a la tablet, para alinearla con el cockpit; el resto a los dos o solo al cockpit. Después del sábado quedó la regla de corregir únicamente en un giro que no se puede confundir o en un cambio de media.
Las noches
Cada noche en el hotel hicimos lo mismo. Al llegar, la "copia del día" del cockpit (la web, en /logs) iba al teléfono y de ahí por AirDrop a la Mac. Yo le pasaba a Claude Code el CSV, el GPX, el link de resultados de MiRally y lo que había pasado en el auto, que eso no está en ningún log. Claude bajaba los resultados de cada control para todos los coches, corría tc_review.py sobre el log y el roadbook, comparaba nuestro recorrido con los controles oficiales y con la mediana de los 20 primeros, y escribía en castellano la revisión del día y el plan del siguiente. Un script los convierte en un PDF del tamaño del teléfono, en un A4 y en texto para WhatsApp.
El domingo arrancamos a las 21:40 y el lunes a las 19:40, y las dos noches pasamos de las 23:00. En el repo quedaron 31 commits del sábado, 19 del domingo, 11 del lunes y 4 del martes.
Claude también se equivocó, y casi todo lo encontramos antes de imprimir. El domingo dijo que con el TC2 y el TC4 al nivel de los 20 primeros estábamos en el podio; hecha la cuenta con las medianas, era 4º o 5º. En el plan de la Etapa 4 escribió que la tablet iba a marcar "pronto" en los R! cuando iba a marcar "tarde", y puso la parada para comer a 32 km del inicio del enlace cuando eran 26. Una tarjeta para el TC3 del martes usaba kilómetros sacados del archivo del roadbook que no están impresos, cosa que el proyecto prohíbe en las hojas de la tripulación, y hubo que recortarla.
El domingo a la noche, el primer borrador de Claude decía "armar siempre la TABLA del cockpit". Le contesté que no: "arming the TC in cockpit is problematic, is not easy to load the info in cockpit using the web; after a reboot the info is lost; we can't do that multiple times while we are driving". De esa respuesta salieron las tarjetas de corrección y la forma de correr de la Etapa 3.
Hubo un solo cambio de firmware en carrera. El sábado a la noche, en León, flasheé la versión que carga el plan del día desde el roadbook en la estructura del carnet (el log del sábado dice v0.1-238, los otros tres días v0.2-91). Con eso rompí el feature freeze, y después no se tocó más el firmware hasta Palencia.
Las tablas y la pantalla de enlace
El post anterior le dedicaba una sección entera al modo TC por tablas, el que reduce una hoja de tiempos de paso a unas pocas cadencias. El cockpit escribe una fila en el log cada vez que una tabla queda armada o arranca, y en los logs de las cuatro etapas no hay ninguna.
Cargar un TC en el cockpit en carretera no funcionó. Hay que hacerlo por la web, con el teléfono, en los minutos entre que te dan la hoja y la salida, y si el cockpit se reinicia los datos del TC se pierden. Así que los TC se corrieron con la tablet, con un cronómetro y con una hoja impresa con el tiempo de paso en cada viñeta.
En los TC con cambios de media ocultos (la organización los marca R!) la tablet usa la media de Rabbit para todo el tramo y no sabe de los cambios. El domingo, en el TC2 y el TC4, la tablet decía que íbamos tarde, apretamos hasta dejarla en 0 y en realidad quedamos 2 a 4 s pronto durante kilómetros: 50 de los 63 puntos del día. Esa noche salieron unas tarjetas de corrección, una tabla por TC que dice cuánto tiene que marcar la tablet en cada km para ir en 0 de verdad.
El lunes ya habíamos dejado la pantalla ENLACE y armado una tabla impresa con la hora de cada punto del día. Desde la Etapa 3 usamos el cockpit solo como odómetro de referencia, todo el día en la cara TC con el TRIP grande.
Dos GPS y un corte de corriente
El Garmin GLO fue la fuente principal y midió entre el 89 % y el 100 % de los kilómetros de cada día. El neopod tomó el relevo cuando el GLO se perdía: el 7 % de la distancia el domingo, el 11 % el martes.
El domingo, a las 12:51:29, 90 segundos antes de la salida del TC2, el cockpit se apagó. Volvió solo en 10 segundos con el TRIP donde estaba. El log lo marca como arranque por corriente, así que algo en la alimentación se movió o hace mal contacto. Esa noche revisamos el cable y el enchufe, y el martes volvió a pasar dos veces, 3 o 4 minutos antes de la salida del TC4. En los cuatro días el cockpit arrancó 21 veces entre hotel, salidas y cortes, y cada vez volvió con el TRIP.
En ese TC4 del martes el odómetro de Rabbit llegó a ir unos 290 m por delante. Esa noche se lo escribí así a Claude: "In TC4, something happened with Rabbit app, and odometer went crazy but odometer in the cockpit was ok."
Los números
| Etapa | Km | Correcciones | Puntos | Puesto |
|---|---|---|---|---|
| E1 Gijón–León | 179,8 | 602 | 289 | 65º/117 |
| E2 León–Salamanca | 305,8 | 510 | 63 | 18º/119 |
| E3 Salamanca–Ávila | 173,3 | 543 | 170 | 26º/115 |
| E4 Ávila–Palencia | 235,5 | 425 | 456 | 25º/114 |
Km es lo que grabó el log y correcciones son las pulsaciones de ±1 y ±10. Los km del log incluyen los traslados desde y hasta el hotel, y por eso no coinciden con el recorrido oficial. Los mapas, los tramos uno por uno y la clasificación están en la crónica del Spain Classic Raid 2026 en DZ Lab.
Qué cambiaría
Las tablas y la pantalla de enlace no las usamos porque en el auto no hay tiempo de cargar nada, y el copiloto ya tiene las dos manos ocupadas con el roadbook y el cronómetro.
Para el año que viene, lo primero es que los datos de un TC sobrevivan a un reinicio, y que el cockpit conozca los cambios ocultos desde el plan del día para reemplazar la tarjeta de corrección. Lo segundo es encontrar qué cable se mueve, el domingo a las 12:51 y el martes antes del TC4. Y no sé si la tablet tiene que seguir en el tablero, o si al cockpit le hace falta una pantalla de roadbook para que Rabbit sobre.