Integrar directamente las salidas de KiCad en el pipeline CI/CD es un enfoque que he probado y mejora la robustez, pero tiene limitaciones en proyectos de domótica con PCBs custom. Usar netlists de KiCad para verificar asignaciones de firmware en tiempo de compilación puede detectar errores temprano, pero requiere que el diseño del PCB esté siempre sincronizado con el repositorio de firmware, lo que añade complejidad en equipos distribuidos. Herramientas como PCBflow o integraciones nativas de KiCad en Git, como Git hooks con kicad-cli, pueden automatizar esto, pero en mi experiencia, introducen dependencias adicionales y pueden ralentizar builds si los archivos de diseño son grandes. Prefiero mantener scripts personalizados en Python que parseen netlists y las comparen con el código del firmware, ya que son más flexibles para ajustar umbrales de validación, como tiempos de señal específicos para sensores de domótica, sin bloquear el pipeline completo. Esto complementa el uso de QEMU para pruebas de integración, asegurando que tanto el diseño físico como las actualizaciones de software se alineen sin sacrificar velocidad en CI/CD.