El servicio 0x01 del protocolo OBD2 en el toyobaru (I)

El servicio OBD2 más popular ...

El servicio 0x01 de OBD2 es el más conocido de los servicios OBD2, pues normaliza el acceso, en tiempo real, a datos de entrada y salida de la ECU. El protocolo normaliza además las unidades en que deben venir informados los datos, lo cual ha hecho su uso muy frecuente en aplicaciones de monitorización de vehículos, tipo Torque App, o similares.

El protocolo define en este servicio más de 100 parámetros de consulta, pero sin embargo, salvo unos contados parámetros, no obliga a implementarlos a los fabricantes. Eso hace que cada fabricante pueda implementar los parámetros que considere convenientes.

Para descubrir que parámetros están disponibles, el servicio 0x01 funciona de una forma similar a como lo hace el servicio 0x09. Dispone de unos PIDs (0x00, 0x020, 0x40, 0x60, 0x80, 0xA0, 0xC0 y 0xE0) para interrogar a la ECU, que devolverá como respuesta una máscara de bits indicando los PIDs disponibles en el rango.

Es decir, si interrogamos a la ECU con el PID 0x00, nos devolverá una máscara de bits con los PIDs disponibles entre el 0x01 y el 0x20. Si en esa máscara devuelve que el PID 0x20 está disponible, podremos interrogar a la ECU por el PID 0x20 que nos devolverá los PIDs disponibles entre el 0x21 y 0x40 y así sucesivamente.

¿ Y qué PIDs tenemos disponibles en el toyobaru ?

Pues interrogando a la ECU de mi coche (GT86 modelo de 2013) obtenemos que el PID 0x00 nos devuelve:

  • PID 0x01: Estado de los monitores de diagnóstico desde que se borraron los códigos de error DTC
  • PID 0x03: Estado del sistema de combustible
  • PID 0x04: Carga calculada del motor
  • PID 0x05: Temperatura del líquido refrigerante del motor
  • PID 0x06: Ajuste de combustible a corto plazo—Banco 1
  • PID 0x07: Ajuste de combustible a largo plazo—Banco 1
  • PID 0x0B: Presión absoluta del colector de admisión
  • PID 0x0C: RPM del motor
  • PID 0x0D: Velocidad del vehículo
  • PID 0x0E: Avance del encendido (en cilindro #1)
  • PID 0x0F: Temperatura del aire del colector de admisión
  • PID 0x10: Velocidad del flujo del aire MAF
  • PID 0x11: Posición del acelerador
  • PID 0x13: Presencia de sensores de oxígeno (en 2 bancos)
  • PID 0x15: Sensor de oxígeno 2
  • PID 0x1C: Estándar OBD implementado en este vehículo
  • PID 0x1F: Tiempo desde que se puso en marcha el motor
  • PID 0x20: PID implementados del 0x21 al 0x40

Como el PID 0x20 está disponible, si consultamos ahora por el PID 0x20 nos devuelve la disponibilidad de:

  • PID 0x21: Distancia recorrida con la luz indicadora de fallo (MIL) encendida
  • PID 0x23: Presión del circuito de combustible (Diesel o inyección directa de gasolina)
  • PID 0x24: Sensor de oxígeno 1
  • PID 0x2E: Purga evaporativa comandada
  • PID 0x2F: Nivel de entrada del tanque de combustible
  • PID 0x30: Número de arranques desde que se borraron los errores
  • PID 0x31: Distancia recorrida desde que se borraron los errores
  • PID 0x33: Presión barométrica absoluta
  • PID 0x34: Sensor de oxígeno 1
  • PID 0x3C: Temperatura del catalizador: Banco 1, Sensor 1
  • PID 0x40: PID implementados del 0x41 al 0x60

Y como el PID 0x40 está disponible, podemos repetir el proceso por ese PID, obteniendo:

  • PID 0x41: Estado de los monitores en este ciclo de conducción
  • PID 0x42: Voltaje del módulo de control
  • PID 0x43: Valor absoluta de carga
  • PID 0x44: Dosado comandado
  • PID 0x45: Posición relativa del acelerador
  • PID 0x46: Temperatura del ambiente
  • PID 0x47: Posición absoluta del acelerador B
  • PID 0x49: Posición del pedal acelerador D
  • PID 0x4A: Posición del pedal acelerador E
  • PID 0x4C: Actuador comandando del acelerador
  • PID 0x4D: Tiempo transcurrido con MIL encendido
  • PID 0x4E: Tiempo desde que se borraron los códigos de fallo
  • PID 0x51: Tipo de combustible
  • PID 0x5A: Posición relativa del pedal del acelerador
  • PID 0x60: PID implementados del 0x61 al 0x80

El PID 0x60 está disponible por lo que podemos continuar buscando nuevos parámetros y obtenemos:

  • PID 0x65: Entradas / salidas auxiliares implementadas

Vemos ahora que el PID 0x80 ya no está disponible, por lo que la búsqueda de parámetros finaliza aquí.

¿ Y estos parámetros son los mismos todos los toyobarus ?. Pues la respuesta es NO.

Si consultamos la ECU de un GT86 modelo de 2018 ( Imanol ... ¡gracias por dejar que me conectara a tu coche! ) encontramos algunos cambios.

Por un lado vemos que el PID 0x23, que nos da la presión en el ciruito de combustible de inyección directa, no está disponible. Sin embargo aparecen algunos PIDs nuevos. Disponemos ahora del PID 0x5C, que nos ofrece la temperatura del aceite del motor

Y ahora además, la consulta al PID 0x60 cambia su respuesta, ofreciendo además del PID 0x65, ya presente en el modelo de 2013 , dos más:

  • PID 0x65: Entrada / salida auxiliar implementada
  • PID 0x6D: Sistema de control de presión del combustible
  • PID 0x80: PID implementados del 0x81 al 0xA0

Aparece el PID 0x6D que parece sustituir al PID 0x23 presente en el modelo de 2013 y, ahora tenemos disponible el PID 0x80, que nos permite acceder a nuevos parámetros. Invocándolo obtenemos:

  • PID 0x9F: Porcentaje de uso del sistema de combustible

Vemos que no está disponible el PID 0xA0, por lo que finaliza aquí la búsqueda de nuevos parámetros. De este modo vemos que en el modelo de 2018 el PID 0x23 ha sido sustituido por el PID 0x6D y han aparecido dos nuevos PIDs (0x5C y 0x9F)

En las siguientes entradas del blog para este servicio, iremos consultando cada uno de estos parámetros para ver que datos devuelven.

Añadir un comentario

El código HTML se muestra como texto y las direcciones web se transforman automáticamente.

Page top