SAE J1939 se utiliza ampliamente en maquinaria de construcción, equipos agrícolas, vehículos mineros y otras máquinas móviles para la comunicación entre dispositivos electrónicos.
A través de una red J1939 pueden intercambiar datos diferentes componentes, como:
ECU del motor
Sistemas de transmisión
Otros dispositivos CAN
Además de transmitir datos de funcionamiento, J1939 también proporciona información de diagnóstico.
Cuando aparece un fallo, los técnicos pueden utilizar datos como SPN, FMI y mensajes DM1 para identificar el problema y localizar su posible causa.
Este artículo explica un proceso práctico para diagnosticar códigos de fallo J1939 en maquinaria móvil.
En J1939, los fallos se comunican mediante Diagnostic Trouble Codes (DTC).
Un DTC contiene información que ayuda a identificar qué condición anormal ha detectado una ECU.
Dos de los elementos más importantes son:
SPN — Suspect Parameter Number
Identifica el parámetro, señal o componente relacionado con el fallo.
FMI — Failure Mode Identifier
Describe el tipo de fallo detectado.
Por ejemplo:
SPN 110
FMI 0
SPN 110 corresponde a la temperatura del refrigerante del motor.
FMI 0 indica que el valor es válido, pero se encuentra por encima del rango operativo normal en el nivel más severo.
Por tanto:
SPN 110 + FMI 0
Indica una condición de temperatura del refrigerante excesivamente alta.
Uno de los mensajes de diagnóstico más importantes de J1939 es DM1 — Diagnostic Message 1.
DM1 se utiliza para comunicar los DTC actualmente activos.
Cuando una ECU detecta un fallo activo, puede transmitir información de diagnóstico a través de la red J1939.
Un flujo simplificado sería:
ECU del motor
↓
Fallo detectado
↓
J1939 DM1
↓
Controlador móvil
↓
HMI
El controlador o la HMI puede interpretar estos datos y presentar el fallo al operador o al técnico de mantenimiento.
El primer paso consiste en determinar qué dispositivo de la red está generando el DTC.
Una máquina puede tener múltiples dispositivos J1939, por ejemplo:
ECU del motor
Controlador de transmisión
Controlador hidráulico
Controlador principal de la máquina
Otros módulos electrónicos
Por eso, conocer únicamente el SPN y el FMI puede no ser suficiente.
También es importante identificar la fuente del mensaje.
Esto ayuda a determinar qué sistema debe revisarse primero.
Después de identificar la ECU, revise el SPN.
El SPN indica qué parámetro está relacionado con el fallo.
Por ejemplo:
SPN 110 = Temperatura del refrigerante del motor
El SPN permite reducir rápidamente el área de diagnóstico.
Sin embargo, no significa necesariamente que el componente identificado esté averiado.
Solo indica qué parámetro o condición está asociado al DTC.
A continuación, revise el FMI.
El FMI describe la naturaleza del problema.
Algunos FMI comunes incluyen:
| FMI | Significado general |
|---|---|
| 0 | Valor por encima del rango normal — nivel más severo |
| 1 | Valor por debajo del rango normal — nivel más severo |
| 2 | Datos erráticos, intermitentes o incorrectos |
| 3 | Tensión por encima de lo normal |
| 4 | Tensión por debajo de lo normal |
| 5 | Corriente por debajo de lo normal / posible circuito abierto |
| 6 | Corriente por encima de lo normal |
| 7 | El sistema mecánico no responde correctamente |
| 9 | Frecuencia de actualización anormal |
| 12 | Dispositivo o componente defectuoso |
| 13 | Fuera de calibración |
| 19 | Datos de red recibidos con error |
SPN y FMI deben interpretarse conjuntamente.
En términos sencillos:
SPN = ¿Dónde está el problema?
FMI = ¿Qué tipo de problema se ha detectado?
Un código de fallo proporciona una dirección para el diagnóstico, pero normalmente no explica por sí solo la causa raíz.
Por eso, el siguiente paso consiste en revisar los datos en tiempo real.
Supongamos que aparece:
SPN 110 FMI 0
La HMI o una herramienta de diagnóstico puede mostrar simultáneamente:
Coolant Temperature: 108 °C
Engine Speed: 1800 rpm
Engine Load: 82%
Si la temperatura realmente es demasiado alta, el problema puede estar relacionado con el sistema de refrigeración.
Pero si el valor mostrado es claramente irreal, podría existir un problema con:
El sensor
El cableado
El conector
La alimentación
La masa
Comparar el DTC con los datos reales de funcionamiento ayuda a diferenciar un fallo eléctrico de una condición mecánica real.
Muchos fallos electrónicos en maquinaria móvil están relacionados con conexiones eléctricas.
Las máquinas trabajan habitualmente en entornos con:
Vibraciones
Polvo
Humedad
Cambios de temperatura
Barro
Impactos mecánicos
Por ello, durante el diagnóstico conviene revisar:
Conectores sueltos
Pines dañados
Cables rotos
Corrosión
Mala conexión a masa
Circuitos abiertos
Cortocircuitos
Alimentación incorrecta
Por ejemplo, un FMI relacionado con una tensión demasiado baja no significa automáticamente que el sensor esté averiado.
También podría deberse a una caída de tensión o a una mala conexión eléctrica.
Si el fallo está relacionado con la comunicación, también es necesario comprobar la red CAN.
Los problemas pueden incluir:
Dispositivo CAN desconectado
Cable CAN dañado
Problemas en CAN High o CAN Low
Mala conexión
Problemas de terminación
Alimentación incorrecta de un dispositivo
Mensajes que dejan de recibirse
Un controlador móvil puede supervisar si determinados mensajes J1939 se reciben dentro del intervalo esperado.
Si un mensaje deja de llegar durante un periodo determinado, el sistema puede detectar un communication timeout.
Esto permite diferenciar entre un fallo del parámetro y un problema de comunicación con la ECU.
Un DTC J1939 también puede incluir un Occurrence Count (OC).
Por ejemplo:
SPN: 110
FMI: 0
OC: 3
El Occurrence Count aporta información adicional sobre las ocurrencias del fallo según la implementación de diagnóstico de la ECU.
Puede ser especialmente útil cuando se investigan problemas intermitentes.
Un fallo que aparece repetidamente puede requerir una investigación diferente a un evento aislado.
Después de encontrar y corregir la posible causa, el diagnóstico todavía no ha terminado.
Es necesario verificar que:
El DTC ya no está activo
Los valores de los sensores son normales
La comunicación J1939 funciona correctamente
La máquina opera como se espera
El fallo no vuelve a aparecer durante la prueba
Simplemente borrar un código sin corregir la causa no constituye una reparación.
La máquina debe probarse nuevamente en condiciones de funcionamiento adecuadas.
Una HMI puede hacer que la información de diagnóstico sea mucho más fácil de interpretar.
En lugar de mostrar únicamente:
SPN 110
FMI 0
puede mostrar:
TEMPERATURA DEL REFRIGERANTE DEL MOTOR DEMASIADO ALTA
Para el personal de mantenimiento, una página más detallada puede incluir:
FALLO ACTIVO DEL MOTOR
SPN: 110
FMI: 0
Occurrence Count: 3
Temperatura del refrigerante: 108 °C
La HMI también puede mostrar:
Fallos activos
Valores de sensores
Estado de E/S
Datos del motor
Estado de comunicación CAN
Información de diferentes ECU
Esto reduce la necesidad de interpretar manualmente datos CAN en muchas tareas básicas de diagnóstico.

En una arquitectura moderna, el controlador móvil puede actuar como punto central para recopilar información de diferentes sistemas.
Por ejemplo:
ECU del motor ── J1939 ──┐
│
Remote I/O ───── CAN ─────┼──→ Controlador móvil
│
Sensores ─────── E/S ─────┘
│
↓
HMI
El controlador puede combinar:
DTC J1939
Datos del motor
Señales analógicas
Entradas digitales
Estado de salidas
Información de dispositivos CAN
Después puede transmitir la información relevante a la HMI.
Esto proporciona una visión más completa del estado de la máquina.
Este es uno de los errores más comunes durante el diagnóstico.
Supongamos que aparece un código relacionado con un sensor.
Eso no demuestra automáticamente que el sensor esté averiado.
La causa podría ser:
Sensor defectuoso
Cable roto
Conector suelto
Circuito abierto
Cortocircuito
Mala masa
Problema de alimentación
Problema de comunicación CAN
Una condición física realmente fuera del rango normal
Por tanto, el DTC debe considerarse como una pista de diagnóstico, no como una conclusión definitiva.
El proceso completo puede resumirse así:
Leer el DTC
↓
Identificar la ECU
↓
Interpretar el SPN
↓
Interpretar el FMI
↓
Revisar datos en tiempo real
↓
Comprobar cableado y conectores
↓
Comprobar CAN/J1939
↓
Encontrar la causa raíz
↓
Reparar
↓
Verificar el funcionamiento
Seguir un proceso sistemático ayuda a reducir diagnósticos incorrectos y sustituciones innecesarias de componentes.
El diagnóstico de códigos de fallo J1939 requiere algo más que leer un número en una pantalla.
Un proceso eficaz combina:
La ECU que genera el fallo
SPN
FMI
Mensajes DM1
Occurrence Count
Datos en tiempo real
Estado del cableado
Comunicación CAN/J1939
Un controlador móvil y una HMI pueden integrar esta información en un único sistema de diagnóstico, facilitando la identificación y el análisis de los fallos.
Para fabricantes OEM y técnicos de maquinaria móvil, una estrategia de diagnóstico J1939 bien diseñada puede acelerar la localización de averías, reducir sustituciones innecesarias de componentes y ayudar a disminuir el tiempo de inactividad de la máquina.