Car 2 Home es un cliente MQTT completo. Cada sensor que expone tu vehículo (OBD estándar, PID avanzados, métricas calculadas, GPS, TPMS, estado de diagnóstico) se publica en tu broker. Tú eliges el formato de publicación: autodescubrimiento de Home Assistant (el predeterminado), Homie 4.0, topics simples por sensor, JSON unificado o un preset de ThingsBoard.
Si ya tienes Mosquitto, EMQX, HiveMQ o cualquier otro broker, estás a un par de campos de una configuración funcional. Car 2 Home no depende de nuestros servidores para nada de esto: la telemetría va directamente de la app a tu broker.
MQTT vs. Home Assistant nativo
Ambos caminos transmiten los mismos sensores. La diferencia es que MQTT transmite estado continuo, mientras que la integración nativa de Home Assistant también transmite eventos (viaje iniciado, DTC encontrado, aceleración brusca). Si solo necesitas MQTT, obtendrás todos los datos en vivo, pero los momentos concretos que impulsan las automatizaciones más interesantes solo existen en la integración nativa.
Cómo se publican los datos
- Los payloads de autodescubrimiento se envían con
retain=truepara que cualquier suscriptor del broker que se conecte más tarde vea el catálogo de entidades de inmediato. - Solo actualizaciones delta: los valores se vuelven a publicar solo cuando cambian, con limitación opcional, para evitar saturar el broker.
- Los PID enumerados se decodifican: el tipo de combustible "1" pasa a ser "Gasolina", la relación de equivalencia comandada se reporta como una fracción, etc. Tanto los valores en bruto como los legibles para humanos se exponen como atributos.
- Los iconos de Material Design se incluyen en los payloads de descubrimiento, para que los dashboards se rendericen correctamente desde el primer momento.
- QoS configurable por clase de topic. El estado de los sensores usa QoS 0 por defecto; los mensajes de ciclo de vida usan QoS 1.
- TLS y autenticación compatibles; las credenciales se almacenan en el Keychain de iOS / Keystore de Android.
Funciona con
Cualquier cosa que use MQTT, combinada con el formato de publicación adecuado (ver arriba). Probamos con regularidad contra:
- Home Assistant mediante la integración MQTT con el formato Home Assistant Discovery (autodetectado).
- OpenHAB e ioBroker con el formato Homie 4.0 (binding MQTT Homie / adaptador MQTT Client).
- Hubitat, Node-RED, Domoticz con el formato Simple Topics.
- Grafana + Telegraf / InfluxDB y dashboards personalizados con el formato Unified JSON.
- ThingsBoard CE / Cloud con el preset de ThingsBoard; puentes ESPHome y cualquier consumidor MQTT DIY con Simple Topics o Unified JSON.
Formatos de publicación
Elige el formato que coincida con tu plataforma de destino. El predeterminado Home Assistant Discovery cubre HA desde el primer momento; cambia a uno de los otros para OpenHAB, Hubitat, dashboards genéricos o ThingsBoard.
Home Assistant Discovery
Predeterminado. Payloads de autodescubrimiento bajo homeassistant/<component>/<deviceId>/<sensor>/config. El coche aparece automáticamente en HA en Configuración → Dispositivos y servicios → MQTT. El estado continuo se publica como un lote JSON en <prefix>/<deviceId>/state.
Homie 4.0
Estándar abierto con descubrimiento mediante una topología homie/<deviceId>/$nodes y metadatos por propiedad $datatype / $unit / $format. Destino nativo para OpenHAB (binding MQTT Homie) e ioBroker (adaptador MQTT Client). También encaja en los ecosistemas ESPHome.
Topics simples
Un topic MQTT por sensor, sin descubrimiento. El payload alterna entre el valor en bruto (p. ej. 1850) o un JSON {value, ts}. Funciona con Hubitat, Node-RED, Domoticz y cualquier consumidor MQTT genérico.
JSON unificado
Todos los sensores en un único payload JSON hacia un topic configurable, retenido para los suscriptores tardíos. Buena opción para Grafana, InfluxDB / Telegraf y dashboards personalizados que prefieren suscribirse a un solo topic y analizar la instantánea completa del vehículo.
ThingsBoard
Preset nativo para ThingsBoard CE y ThingsBoard Cloud. Publica la telemetría en v1/devices/me/telemetry y los sensores estáticos (VIN, tipo de combustible, CalID) en v1/devices/me/attributes. Tu token de acceso va en el campo de usuario; deja la contraseña vacía.
Cambia de formato cuando quieras en Configuración → MQTT → Formato. Cuando cambias desde Home Assistant o Homie, la app te ofrece limpiar los topics de descubrimiento retenidos que quedaron en el broker para que no veas dispositivos fantasma del lado del consumidor.
Cómo elegir un broker
Si todavía no tienes ninguno, aquí tienes un punto de partida:
- Mosquitto: la opción más sencilla. Se ejecuta como complemento de Home Assistant con un clic, o de forma independiente en Docker. Suficiente para un hogar.
- EMQX: en clúster, escala bien, tiene una interfaz web limpia. Vale la pena si tienes muchos dispositivos o quieres una monitorización detallada.
- HiveMQ: una opción comercial / en la nube sólida si no quieres autoalojarlo.
Configuración rápida
1. Ten un broker accesible desde tu teléfono
Ya sea en tu red local o a través de un túnel (Tailscale, Cloudflare Tunnel, Nabu Casa). El MQTT debe estar accesible mientras conduces para que la telemetría fluya en vivo.
2. Abre Configuración → MQTT en la app
Introduce el host, el puerto, el usuario, la contraseña y los ajustes opcionales de TLS. La app valida la conexión y muestra el estado en tiempo real.
3. Suscríbete y observa cómo llegan las entidades
Los payloads de autodescubrimiento se publican de inmediato. En Home Assistant, el dispositivo aparece en Configuración → Dispositivos y servicios → MQTT. En Node-RED o cualquier explorador MQTT, navega por el árbol de topics bajo el prefijo que configuraste.
Matter / SmartThings / Google Home / Alexa
Estamos construyendo un plugin de Matterbridge que reexporta los mismos datos MQTT como dispositivos Matter, haciendo que tu coche sea detectable en Apple Home, Google Home, SmartThings y Alexa sin ningún broker del lado del consumidor. Próximamente.