{ "lote": "2026-10-29_fw-070-pre2-auditoria", "autor": "claude", "motivo": "29-oct (Leo, 08:11 «audit it exhaustively … compatible with boards 5.6 and 5.7 and hopefully V6.0»; 08:19 «continue working on the firmware»): firmware 0.7.0-pre2 con F-2, F-3, F-5 y E-3, tres revisiones independientes (V5.6/V5.7, lo nuevo y la v6; 33 hallazgos corregidos), procedimiento 1.2 y actas al día; la v6 necesita decisiones antes de G1.", "fuente": "/hardware/firmware-auditoria-29oct/", "cambios": [ { "id": "t-fw-070", "poner": { "descripcion": "Un solo binario para V5.6 y V5.7 (board_v56.h, -DHBOX_BOARD_V56; las dos tarjetas son iguales pin a pin).\n\nHecho al 29-oct: 0.7.0-pre2 (solo banco) = F-1, F-6, F-7 y F-8 de 0.7.0-pre + F-2 (ciclo de 10 min en batería con STOP + RTC, LSE o LSI; movimiento abre ventana), F-3 (driver del SC16IS752 y prueba serie con S/U), F-5 (LIS2DH12: 1 g y movimiento por INT1) y E-3 (PHY del W5500 en power-down), más la auditoría del 29-oct: tres revisiones independientes (A: 0.7.0-pre en V5.6/V5.7, 17 de 23 corregidos; C: lo nuevo de pre2, 16 de 19; B: la v6). Abiertos: A-02 y la A/B del W5500 (tecla W), que se deciden en el banco. Autoprueba 21 PASS por USB / 22 con 5 V. Simulador 118/118. Builds reproducibles (SOURCE_DATE_EPOCH): base 128 204 B y -eth 129 304 B (sin F-2 ni la prueba serie: no caben con Ethernet en el RCT6). hbox-firmware 82905a6.\n\nFalta para 0.7.0 de campo: F-4 Ethernet de campo configurable (la flash del RCT6 va al 97–98 %: antes, el plan de la auditoría §3.3); A-02 (vida del módem con el caster caído, después de caracterizar el LED en el banco); el banco del piloto (criterios 1–8). FOTA no entra en 0.7.0 (D-22-6).", "enlaces": [ { "titulo": "Auditoría del firmware 29-oct (V5.6/V5.7 y v6)", "url": "/hardware/firmware-auditoria-29oct/" }, { "titulo": "0.7.0-pre2 en Descargas (prueba)", "url": "/descargas/#firmware-del-hbox-que-binario-va-en-que-tarjeta" }, { "titulo": "Notas de versión 0.7.0-pre2", "url": "/descargas/notas-de-version/#070-pre2-en-prueba" }, { "titulo": "Prueba y flasheo V5.6/V5.7 (1.2)", "url": "/procedimientos/v56-v57-prueba-y-flasheo/" } ] }, "nota": "29-oct: 0.7.0-pre2 publicado para el banco (F-2, F-3, F-5, E-3 + auditoría: 33 hallazgos corregidos; A-02 y la A/B del W5500 se deciden en el banco). Queda F-4 Ethernet de campo; la fecha nueva la pone Leo." }, { "id": "t-v56-banco-piloto", "poner": { "titulo": "Banco del piloto V5.6: ciclo de 10 min ×20, carga (TP7 ≈ 1.0), Ethernet, RS-232/485 y acelerómetro", "descripcion": "2 días, con el firmware 0.7.0-pre2 (procedimiento de prueba y flasheo V5.6/V5.7 1.2, §10). Ya se pueden correr los 8 criterios: el 3 (20 ciclos de 10 min, piso dormido con PPK2, /SYS5V con osciloscopio) y el 5 (lazo serie con S/U y Ethernet 24 h con el build -eth). Además: caracterizar el LED del módem en cada estado (§7.6, decide A-02) y medir el piso con el W5500 en power-down y en reset (tecla W, §10.1.5). Si pasa, se liberan las V5.6 del volumen. Alta: Claude.", "bloqueada_por": [ "t-v56-piloto" ] }, "nota": "29-oct: 0.7.0-pre2 publicado: ya no lo bloquea t-fw-070 (F-4 no hace falta en el banco). Título: «ciclo de 10 min», no «10 s». Criterios 3 y 5 escritos en el §10.1 del procedimiento 1.2." }, { "id": "t-v57-banco-prototipos", "poner": { "bloqueada_por": [ "t-v56-piloto" ] }, "nota": "29-oct: 0.7.0-pre2 publicado (procedimiento 1.2): el banco de la V5.7 ya solo espera las tarjetas del piloto. §10.2 suma caídas de arranque del motor (24→8 V 200 ms, 12→6 V 500 ms; auditoría A-05)." }, { "id": "t-banco-revision-hw", "nota": "29-oct: el procedimiento ya va en 1.2 (0.7.0-pre2): criterios 3 y 5 escritos (§10.1), caracterización del LED del módem (§7.6), osciloscopio en J8.1 con Q (§7.8) y modo=AUTO al cerrar (§11). Vale revisarlos también." }, { "id": "t-v6-cierre-pedido", "nota": "29-oct (auditoría del firmware, agente B): el 0.7.0 no corre en la v6 (PC3 = RTK_STAT, módem en PC10, F9P de fábrica a 38 400, EFCR 0x10); se reutiliza ≈ 85 % del código y faltan 45–60 KB (A7670, NTRIP, enlace, F9P, aprovisionamiento, FOTA). Decisiones en d-29-2." }, { "id": "t-v6-g1-paquete", "nota": "29-oct: antes del paquete, que Leo decida d-29-1 (cambios de hardware de la v6 que encontró la auditoría del firmware: retención de la SIM, 1 kΩ en /GNSS_RTK_STAT, ID en PC4, CLPROG → PB1, DTR por U5, quitar K1)." }, { "crear": { "id": "d-29-1-v6-hw-firmware", "titulo": "D-29-1: cambios de hardware de la v6 antes de G1 que pide el firmware — decide Leo", "pista": "ingenieria", "estado": "por-hacer", "responsable": "leo", "campeon": "leo", "sitios": [ "qro" ], "version_tarjeta": "v6", "fecha_limite": "2026-11-01", "etiquetas": [ "decisión", "v6" ], "descripcion": "La auditoría del firmware (agente B, 29-oct) encontró cosas que el firmware no puede arreglar en la v6. Propuesta de Claude, en orden:\n1. Retención de la SIM: J11 es push-push y es la única SIM (T48). Cinta, tapa o espuma que la presione (o un portatarjetas con seguro) y una prueba de vibración en el banco.\n2. Protección contra el binario equivocado: 1 kΩ en serie en /GNSS_RTK_STAT junto a U3.11 (PC3, que la V5.x maneja como MODEM_EN) y un divisor de ID en PC4 (2 resistencias 0402).\n3. Casi sin costo: CLPROG → PB1 con 1 MΩ + 100 nF (corriente de entrada visible); DTR del A7670 por el canal 2 de U5 a PB5 con 100 kΩ a GND; 100 kΩ de /DOUT_4G a /3V3 (opcional).\n4. Quitar K1, Q4, D3, R48 y R49 (D-v6-3).\nSí → Michelle los mete antes del paquete de G1. No → se documenta y el firmware vive con el riesgo.", "enlaces": [ { "titulo": "Auditoría del firmware §5.7", "url": "/hardware/firmware-auditoria-29oct/#57-cambios-de-hardware-de-la-v6-que-valen-antes-de-g1-2-nov" } ] }, "si_no_hay": [ "D-29-1" ] }, { "crear": { "id": "d-29-2-v6-firmware-plan", "titulo": "D-29-2: firmware de la v6 — ruta del RTCM, contrato con htracker, ID, secretos, banco de evaluación y G2 — decide Leo", "pista": "ingenieria", "estado": "por-hacer", "responsable": "leo", "campeon": "leo", "sitios": [ "qro" ], "version_tarjeta": "v6", "fecha_limite": "2026-10-31", "etiquetas": [ "decisión", "v6", "firmware" ], "descripcion": "La v6 necesita un enlace nuevo en el MCU (A7670, NTRIP, UDP, F9P desnudo, aprovisionamiento, FOTA): ≈ 39–53 días-ingeniero (centro ≈ 46). Decisiones (propuesta de Claude):\n1. RTCM: el MCU lo reenvía al F9P por USART2 con el CRC revisado y se apagan las entradas del UART2 del F9P (el diseño dice hardware y el §13.4 un socket no transparente: se excluyen).\n2. Enlace con htracker (Gibran): UDP, los mismos formatos y una línea de identidad como el $GPTXT H00xx de hoy.\n3. ID de tarjeta: hoy la prueba de PC12; en hardware, divisor en PC4 (D-29-1).\n4. Secretos (APN, usuario NTRIP, estación): registro de configuración por unidad escrito en la fábrica; nunca en el repo ni en una imagen de FOTA.\n5. Banco de evaluación esta semana (≈ US$100–150): NUCLEO-F411RE, A7670SA del mismo sufijo (-LASC), adaptadores 74LVC2T45, nano-SIM de Vectro.\n6. G2: el piloto de la v6 con el MVP en banco a principios de diciembre e imagen de fábrica con FOTA a mediados o finales de diciembre (el 22-nov con firmware de campo no se alcanza).", "enlaces": [ { "titulo": "Auditoría del firmware §5 (v6)", "url": "/hardware/firmware-auditoria-29oct/#5-la-v6-que-del-070-sirve-y-que-falta" } ] }, "si_no_hay": [ "D-29-2" ] } ] }