Home Forums Articles How To's FAQ Register
Go Back   Xoutpost.com > BMW SAV Forums > X5 (E53) Forum
Arnott
User Name
Password
Member List Premier Membership Today's Posts New Posts

Xoutpost server transfer and maintenance is occurring....
Xoutpost is currently undergoing a planned server migration.... stay tuned for new developments.... sincerely, the management


Reply
 
LinkBack Thread Tools Display Modes
  #1  
Old 06-01-2019, 11:16 PM
Member
 
Join Date: Nov 2014
Location: SF Bay Area
Posts: 1,451
oldskewel is on a distinguished road
Quote:
Originally Posted by Overboost View Post
I found the hex code for our E53 X5 Crowz. Like the E39, the code is in 2 places and must be modified in both addresses. The addresses for the code string are:

0x0F0 rolling into 0x100
0x290 rolling into 0x02A0

My original hex code starting at:
0F 62 32 CB 4B CB 73 38 78 6A 7D FF
Changed to:
0F 62 3C CB 55 CB 5F 38 6E 6A 73 FF

...
I got the PA Soft running earlier, and am having some questions about the gauge programming.

First, general question, when you say "0x0F0 rolling into 0x100" do you mean that the 12-element byte array that you list is present in consecutive elements spread across those two 16-element rows? I think yes, but just checking. For example, my first appearance looks like:
0x0F0 08 45 14 E8 27 0F 5E 32 C9 4B C9 73 36 78 6A 7D
0X100 FF ...


Then regarding the values found in there, it looks like there are different values found by overboost, crowz, and now me. Here's what I've found reported here, plus what I found on my 2001 3.0i with high cluster.

0F 62 32 CB 4B CB 73 38 78 6A 7D FF overboost original 2004 3.0i high
0F 65 32 D0 4B D0 73 38 78 69 7D FF crowz original
0F 5E 32 C9 4B C9 73 36 78 6A 7D FF oldskewel original 2001 3.0i high

The fact that these arrays do not match raises some concern for me, and I figured I should think before bricking my car.

6 of the 12 values in each array seem to map to meaningful values, as I'll write out here:
0F 62 32 CB 4B CB 73 38 78 6A 7D FF overboost
0F 65 32 D0 4B D0 73 38 78 69 7D FF crowz
0F 5E 32 C9 4B C9 73 36 78 6A 7D FF oldskewel
15 -- 50 -- 75 -- 115 -- 120 -- 125 -- hex to Decimal (*C) conversions. meaningful values shown, others left as "--"

It looks like those 6 break point temps all match for all 3, as do some of the others. So if it is true that the 6 other ("--") values don't matter, then the 3 original arrays do match between overboost, crowz, and me.

The gauge visualizations show 8 total values, but I think I figured this one out. The two extra ones (e.g., 60*C and 118*C) are not actual break points. They are interpolated, which is why they show in light gray in the visualization. So there are only 6 actual values to adjust.

So I think I've figured things out as I have carefully composed this question. I'm thinking I should leave the ("--") values as is, and modify only the 6 meaningful breakpoint values, making sure to make the change in both places this array appears.

Sound good?
__________________
2001 X5 3.0i, 203k miles, AT, owned since 2014
Reply With Quote
  #2  
Old 06-02-2019, 08:51 AM
Overboost's Avatar
Member
 
Join Date: Apr 2006
Location: Huntersville, NC
Posts: 3,295
Overboost is on a distinguished road
Quote:
Originally Posted by oldskewel View Post
I got the PA Soft running earlier, and am having some questions about the gauge programming.

First, general question, when you say "0x0F0 rolling into 0x100" do you mean that the 12-element byte array that you list is present in consecutive elements spread across those two 16-element rows? I think yes, but just checking. For example, my first appearance looks like:
0x0F0 08 45 14 E8 27 0F 5E 32 C9 4B C9 73 36 78 6A 7D
0X100 FF ...


Then regarding the values found in there, it looks like there are different values found by overboost, crowz, and now me. Here's what I've found reported here, plus what I found on my 2001 3.0i with high cluster.

0F 62 32 CB 4B CB 73 38 78 6A 7D FF overboost original 2004 3.0i high
0F 65 32 D0 4B D0 73 38 78 69 7D FF crowz original
0F 5E 32 C9 4B C9 73 36 78 6A 7D FF oldskewel original 2001 3.0i high

The fact that these arrays do not match raises some concern for me, and I figured I should think before bricking my car.

6 of the 12 values in each array seem to map to meaningful values, as I'll write out here:
0F 62 32 CB 4B CB 73 38 78 6A 7D FF overboost
0F 65 32 D0 4B D0 73 38 78 69 7D FF crowz
0F 5E 32 C9 4B C9 73 36 78 6A 7D FF oldskewel
15 -- 50 -- 75 -- 115 -- 120 -- 125 -- hex to Decimal (*C) conversions. meaningful values shown, others left as "--"

It looks like those 6 break point temps all match for all 3, as do some of the others. So if it is true that the 6 other ("--") values don't matter, then the 3 original arrays do match between overboost, crowz, and me.

The gauge visualizations show 8 total values, but I think I figured this one out. The two extra ones (e.g., 60*C and 118*C) are not actual break points. They are interpolated, which is why they show in light gray in the visualization. So there are only 6 actual values to adjust.

So I think I've figured things out as I have carefully composed this question. I'm thinking I should leave the ("--") values as is, and modify only the 6 meaningful breakpoint values, making sure to make the change in both places this array appears.

Sound good?
Good morning oldskewel. I can only assume your 2001 with High Cluster is the same and the numbers you posted should be fine.

First thing to do is save your original .bin so if it gets sideways, you have a way back.

Second is to remember you have 2 lines of code that need to be changed. 0x0F0 rolling into 0x100 and 0x290 rolling into 0x02A0. This will keep the checksum correct.

I think you only need to change 5 hexadecimal values as I did.

0F 5E 32 C9 4B C9 73 36 78 6A 7D FF original
0F 5E 3C C9 55 C9 5F 36 6E 6A 73 FF modified

1) Click on IKE.
2) Click "Read EEPROM"
3) Hex editor functions are in the lower left hand corner. Click the floppy disk icon to save the factory loaded file onto your desktop as backup.
4) Make revisions from "factory" values to "revised" values shown above: Find the corresponding offset and move the cursor over the bytes to be revised. You can use arrow keys to move the cursor as well.
5) Click "Write EEPROM." Your cluster will flash and beep several times after completion -- and like magic, your gauge will now reflect more accurately what's happening under the hood.
6) You will need to reset you time and date after the cluster EEPROM has been flashed
Reply With Quote
Reply

Bookmarks


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On





All times are GMT -4. The time now is 04:21 AM.
vBulletin, Copyright 2026, Jelsoft Enterprises Ltd. SEO by vBSEO 3.6.0
© 2017 Xoutpost.com. All rights reserved. Xoutpost.com is a private enthusiast site not associated with BMW AG.
The BMW name, marks, M stripe logo, and Roundel logo as well as X3, X5 and X6 designations used in the pages of this Web Site are the property of BMW AG.
This web site is not sponsored or affiliated in any way with BMW AG or any of its subsidiaries.