CAN Bus messages

From OpenGK
Revision as of 08:35, 11 June 2023 by Dante383 (talk | contribs)

CAN Bus on Hyundai Tiburon operates at a speed of 500kb/s and so does the SIMK43 ECU.

SIMK43 reads the following messages for operation, if the corresponding module is present in car:

SIMK43 sends the following messages:

In addition to that, there are messages that are not used by the ECU, but still present on the CAN Bus:

DBC file of Tiburon's CAN Bus: Tiburon_SIMK43_ESP.dbc

Connection points

There is only one CAN bus found in the Tiburons, there are no gateways present.

CAN Bus is exposed on the standard pins in the OBD2 connector as in the following image (vehicle side):

Tiburon's OBD2 plug pinout, limited to power and canbus

Depending on vehicle's production date and trim, there are between 1 to 4 modules on the bus.

Modules connected to the CAN Bus
Module name Connector name CAN high pin CAN low pin CAN ID
2.0 2.7 SIMK41 SIMK43
ECM 2.0 pinout 2.7 pinout 0x545, 0x329, 0x316
TCM 2.0 pinout 2.7 pinout
Multigauge unit (if equipped) M42 7 1
ABS module (if equipped) E37 11 10 0x153

Messages

DME1 0x316

Refresh Rate: 10ms

  • Byte 0 - unknown
  • Byte 1 - TQI_TQR_CAN
    Indexed Engine Torque in % of C_TQ_STND (including ASR/MSR/ETCU/LIM/AMT/GEAR intervention)
    Calculation = HEX * 0.39
  • Byte 2 - N_ENG [LSB]
  • Byte 3 - N_ENG [MSB]
    Engine Speed in rpm
    Calculation = ((HEX[MSB] * 256) + HEX[LSB]) * 0.15625
  • Byte 4 - TQI_CAN
    Indicated Engine Torque in % of C_TQ_STND (based on PVS, N, AMP, TIA ,TCO, IGA, PUC so ip_tqi_pvs__n__pvs)
    Calculation = HEX * 0.39
  • Byte 5 - TQ_LOSS_CAN
    Needs verification
    Engine Torque Loss (due to engine friction, AC compressor and electrical power consumption) in % of C_TQ_STND
    Calculation = HEX * 0.39
  • Byte 6 - Bitfield
    • Bit 0 - ERR_AMT_CAN
    • Bit 1 - ERR_AMT_CAN
  • Byte 7 - TQI_MAF_CAN
    Needs verification
    Theorethical Engine Torque in % of C_TQ_STND after charge intervention (based on MAF & IGA so ip_tqi_maf__n__maf)
    Calculation = HEX * 0.39

DME2 0x329

Refresh Rate: 10ms

  • Byte 0 - unknown
    Seems to always be one of 4 values: 0x11, 0x4F, 0x8E, 0xD9
  • Byte 1 - TEMP_ENG
    Engine (Coolant) Temperature in °C
    Calculation = (HEX * 0.75) - 48°C
    Init: 0xFF
    Min: 0x01 (-48°C)
    Max: 0xFF (142.5°C)
  • Byte 2 - AMP_CAN
    Ambient Pressure in hPa
    Calculation = (HEX * 2) + 598hPa
    Init = 0x00
    Min = 0x01 (600hPa)
    Max = 0xFE (1106hPa)
    Error = 0xFF
  • Byte 3 - unknown
    Seems to always be 0x10
  • Byte 4 - unknown
    Seems to always be 0x00
  • Byte 5 - TPS_CAN
    Accelerator Pedal Position in % of PVS_MAX
    Calculation = HEX * 0.390625
    Init = 0x00
    Min = 0x01 (0%)
    Max = 0xFE (99.2%)
    PVS Error = 0xFF
    Values around 10-15% are to be expected for an un-touched pedal
  • Byte 6 - unknown
    Seems to always be 0xFF
  • Byte 7 - Unused

DME4 0x545

Refresh Rate: 10ms

  • Byte 0 - unknown
    Seems to have a range of 0xC6 to 0xFE
  • Byte 1 - FCO[LSB]
  • Byte 2 - FCO[MSB]
    Fuel Consumption. To be verified but there is a correlation between it, rpms and the accelerator pedal position
  • Byte 3 - unknown
    Seems to have a range of 0x7B to 0x8D
  • Byte 4 - Unused
  • Byte 5 - Unused
  • Byte 6 - Unused
  • Byte 7 - Unused