Skip to content

Dataset

Chillout edited this page Dec 19, 2020 · 14 revisions

The dataset consists of 4352 Bytes of data. It's rougly constructed as follows:

Header

The most relevant data here is from the first 4 byte. Bytes 0 to 4 hold the version. In the following example, the version is "OC00". This is unique for a specific configuration of the dataset. There's a lot of variation in datasets, but some cars can share the same dataset, even across brands. It might be interesting to create a registry of dataset versions.

Unknown data

There's a lot of unknown data in the area between the header and 0x0296. I've written down some examples of data I've seen in OEM datasets, but haven't yet found the relevance of most of them. I marked them in red.

Profile data

0x32D - 0x339: Profiles

This is a very relevant set of bytes, containing what profile buttons are showing on screen when you press the button. There are 12 profile positions. In this example, 6 bytes are actually filled in. If you set a byte here, it will set a given profile name/graphic to a given profile. In the example, you see profile positions 0, 1, 2, 3, 4 and 6 holding data.

This translates to the following buttons (if your car has the FECs for all of them! Most cars don't have an Offroad FEC, which means the button would be hidden):

If you would change the value in the 3rd position to "06" instead of "03", it would become:

Note: This works, even without the FEC for Race.

Note2: This change will not turn your profile into a Race profile, it will only change the appearance in the user interface and OBD-measurements channel by Race. It's a cool little modification, but it doesn't add any FECs to your car or make the engine run in Race mode all of a sudden. All other profile properties will remain like they were before the modification of this byte.

I've seen the following values being used:

  • 0x00: not set
  • 0x01: Comfort
  • 0x02: Auto/Normal
  • 0x03: Dynamic/Sport
  • 0x04: Offroad
  • 0x05: Eco/Economy
  • 0x06: Race
  • 0x07: Individual
  • 0x08: Range/PHEV 1
  • 0x09: Lift/PHEV 2
  • 0x0a: Offroad Snow/PHEV 3/EV On
  • 0x0b: Offroad individual/PHEV 4/Hybrid auto
  • 0x0c: Offroad 4/Hybrid hold
  • 0x0d: Offroad 5/Hybrid charge
  • 0x0e: Offroad 6/Hybrid area
  • 0x0f: EV Off
  • 0x10: Second hold/Torque Vectoring
  • 0x11: Racetrack/Hybrid Charge Off
  • 0x12: Offroad level 2 / Adaptive
  • 0x13: Offroad level 3 / Traction
  • 0x14: Offroad level 4
  • 0x15: Hybrid sport
  • 0x16: Second auto
  • 0x17: Unknown profile
  • 0x28: GTE off
  • 0x29: GTE off 2
  • 0x2a: Unknown profile 2
  • 0xFF: none
Clone this wiki locally