Skip to content

Vehicle Control Module (VCM)

Daniel Öster edited this page Dec 19, 2024 · 2 revisions

Vehicle Control Module (VCM)

Power Switch Information

  • Name: Power Switch
  • Type: Boolean
  • Description:
    Power SW is True if the Leaf’s power switch is ON; otherwise, it is False. The fifth reply byte value is 0x80 if the car is powered on.
  • Query:
    0x797 03 22 13 04 00 00 00 00
  • Answer:
    0x79A 05 62 13 04 **80** FE 00 00
  • Formula: Power SW = ( data[4] & 128 == 128 );

Gear Information

  • Name: Gear
  • Type: Integer
  • Description:
    Gear position (1=Park, 2=Reverse, 3=Neutral, 4=Drive, 7=Eco). The fifth reply byte value is the gear value. In the example, gear is 1.
  • Query:
    0x797 03 22 11 56 00 00 00 00
  • Answer:
    0x79A 04 62 11 56 01 00 00 00
  • Formula:
    Gear = data[4]

Bat 12V Voltage (V) Information

  • Name: Bat 12V Voltage (V)
  • Type: Integer
  • Description:
    The voltage of the 12V battery as read by the Leaf’s Vehicle Control Module ECU. The Bat 12V Voltage is the fifth reply byte value times 0.08. In the example, Bat 12V Voltage is 13.04V.
  • Query:
    0x797 03 22 11 03 00 00 00 00
  • Answer:
    0x79A 04 62 11 03 A3 00 00 00
  • Formula:
    Bat 12V Voltage = (data[4] * 0.08)

Bat 12V Current (A) Information

  • Name: Bat 12V Current (A)
  • Type: Integer
  • Description:
    12V battery current. Negative values indicate a drain, and positive values indicate charging. In the example, Bat 12V Current is -0.5546875A.
  • Query:
    0x797 03 22 11 83 00 00 00 00
  • Answer:
    0x79A 05 62 11 83 FF 72 00 00
  • Formula:
    Bat 12V Current temp = ( data[4] << 8 ) | data[5]; if (Bat 12V Current temp & 32768 == 32768): Bat 12V Current temp = Bat 12V Current temp | -65536; //Negative value Bat 12V Current = Bat 12V Current temp / 256

Quick Charge Information

  • Name: Quick Charge
  • Type: Integer
  • Description:
    Number of quick charges (QC). Each time a quick charge occurs this number increments by 1, even if not fully charged. In the example, Quick Charge is 1.
  • Query:
    0x797 03 22 12 03 00 00 00 00
  • Answer:
    0x79A 05 62 12 03 00 01 00 00
  • Formula:
    Quick Charge = (data[4] << 8) | data[5]

L1 L2 Charge Information

  • Name: L1 L2 Charge
  • Type: Integer
  • Description:
    Number of L1/L2 connections and charges, even if not fully charged. In the example, L1 L2 Charge is 115.
  • Query:
    0x797 03 22 12 05 00 00 00 00
  • Answer:
    0x79A 05 62 12 05 00 73 00 00
  • Formula:
    L1 L2 Count = (data[4] << 8) | data[5]

Ambient C Temp (°C) Information

  • Name: Ambient C Temp (°C)
  • Type: Integer
  • Description:
    Ambient temperature comes from the Leaf’s outside temperature sensor and is initially obtained in °F. It’s then converted to °C. In the example, the Ambient C Temp is 24 °C.
  • Query:
    0x797 03 22 11 5D 00 00 00 00
  • Answer:
    0x79A 04 62 11 5D 81 00 00 00
  • Formula: Ambient F Temp = (data[4] * 0.9) - 40.9; Ambient C Temp = (Ambient F Temp - 32) * 5/9

EstPwr AC 50W (W) Information

  • Name: EstPwr AC 50W (W)
  • Type: Integer
  • Description:
    Estimated Air Conditioning system power (COOL).
  • Query:
    0x797 03 22 12 61 00 00 00 00
  • Answer:
    0x79A 04 62 12 61 02 00 00 00
  • Formula:
    EstPwr AC 50W = data[4] * 50

EstPwr Htr 250W (W) Information

  • Name: EstPwr Htr 250W (W)
  • Type: Integer
  • Description:
    Estimated Cabin PTC heater power (HEAT).
  • Query:
    0x797 03 22 12 62 00 00 00 00
  • Answer:
    0x79A 04 62 12 62 01 00 00 00
  • Formula:
    EstPwr Htr 250W = data[4] * 250

2

Name: Aux Pwr 100W (W) Type: Integer Description: Power used by the auxiliary equipment (Lights, Radio, Navigation system, rear defroster...) Query: 0x797 03 22 11 52 00 00 00 00 Answer: 0x79A 04 62 11 52 02 00 00 00 Formula: Aux Pwr 100W = data[4]*100 Name: AC Pwr 250W (W) Type: Integer Description: A/C system Power (250W): Power used by the Air Conditioning System power. This includes the power used by the cabin PTC Heater. Query: 0x797 03 22 11 51 00 00 00 00 Answer: 0x79A 04 62 11 51 01 00 00 00 Formula: AC Pwr 250W = data[4]*250 Name: PlugState Type: Integer Description: Plug state of J1772 (L1/L2) charge port ( 0=Not plugged, 1=Partial Plugged, 2=Plugged ) Query: 0x797 03 22 12 34 00 00 00 00 Answer: 0x79A 04 62 12 34 02 00 00 00 Formula: PlugState = data[4] Name: Charge Mode Type: Integer Description: Charging mode. ( 0=Not charging, 1=Level 1 charging [100-120 volts], 2=Level 2 charging [200-240 volts)], 3=Level 3 Quick Charging ) Query: 0x797 03 22 11 4E 00 00 00 00 Answer: 0x79A 04 62 11 4E 02 00 00 00 Formula: Charge mode = data[4] Name: RPM (r/min) Type: Integer Description: Motor revolutions per minute Query: 0x797 03 22 12 55 00 00 00 00 Answer: 0x79A 05 62 12 55 FF AB 00 00 Formula: RPM = ( data[4] << 8 ) | data[5]; if (RPM & 32768 == 32768): RPM = RPM | -65536; Name: VIN Type: String Description: The vehicle identification number indicates which vehicle the data came from. The string of HEX must be converted to UTF-8. Query: 0x797 02 21 81 00 00 00 00 00 0x797 02 30 00 00 00 00 00 00 00 Answer: 0x79A 10 15 61 81 53 4A 4E 46 0x79A 21 41 41 5A 45 31 55 30 0x79A 22 30 35 33 39 32 37 00

3

0x79A 23 00 00 00 00 00 00 00 Formula: (534A4E4641415A45315530303533393237).decode(’utf-8’) Name: OBC Out Pwr (W) Type: Integer Description: Charging power coming into the Leaf from the on-board charger, when the car is charging. Query: 0x797 03 22 12 36 00 00 00 00 Answer: 0x79A 05 62 12 36 00 15 00 00 Formula: OBC Out Pwr = (( data[4] << 8 ) | data[5])*100; Name: Motor Pwr (W) Type: Integer Description: Driving motor power. Query: 0x797 03 22 11 46 00 00 00 00 Answer: 0x79A 04 62 11 46 00 27 00 00 Formula: Motor Pwr = (( data[4] << 8 ) | data[5])*40; Name: Speed (km/h) Type: Integer Description: Car speed Query: 0x797 03 22 12 1A 00 00 00 00 Answer: 0x79A 05 62 12 1A 00 01 00 00 Formula: Speed = (( data[4] << 8 ) | data[5])/10; Name: AC Type: Boolean Description: AC status (On/Off) Query: 0x797 03 22 11 06 00 00 00 00 Answer: 0x79A 05 62 11 06 01 7f 00 00 Formula: AC = data[4] Name: RearHeater Type: Boolean Description: Rear heater status (On/Off) Query: 0x797 03 22 11 0F 00 00 00 00 Answer: 0x79A 04 62 11 0F A2 00 00 00 Formula: RearHeater = ( HEX(data[4]) == ’0xA2’ ) Name: ECO Type: Boolean Description: ECO mode status (On/Off) Query: 0x797 03 22 13 18 00 00 00 00 Answer: 0x79A 05 62 13 1B 10 39 00 00 Formula: ECO = ( HEX(data[4]) == ’0x10’ or HEX(data[4]) == ’0x11’ ) Name: e-Pedal Type: Boolean Description: e-Pedal mode (On/Off). The e-Pedal[?] allows the driver to start, accelerate, decelerate and stop using only the accelerator pedal. Query: 0x797 03 22 13 1A 00 00 00 00 Answer: 0x79A 05 62 13 1A 04 14 00 00

4

Formula: e-Pedal = ( HEX(data[4]) == ’0x4’ )