|
|
|
|
|
|
BMW Garage | BMW Meets | Register | Today's Posts | Search |
|
BMW 3-Series (E90 E92) Forum
>
I cloned my MSV70 DME
|
|
12-06-2016, 12:08 PM | #1102 |
Colonel
1002
Rep 2,287
Posts |
Expert mode makes managing the custom files easy. Import what you want into the development folder and go for it. Comfort mode needs to be fooled by overwriting your original datem files with the custom stuff. If you want to test few different files comfort mode is just too cumbersome. I was also looking at some of the command line scripting available for WinFKP. Perhaps a batch file could take make the process less prone to human error. There are both Command Line parameters and batch processing command scripts available. |
Appreciate
0
|
12-06-2016, 12:11 PM | #1103 |
Major General
3987
Rep 7,212
Posts |
A batch file would be neat. Distribute it with the modified 0pa/0da files.
Would be nice if WinKFP didn't check "boot sector update" every time you start it. It's a pain to remember to uncheck it every time, and it wastes at least 40 minutes of time since the flash fails and then you have to reset it again. |
Appreciate
0
|
12-06-2016, 12:20 PM | #1104 | |
Colonel
1002
Rep 2,287
Posts |
Quote:
I need to look at this again, the 100+ page manual for WinFKP is a horrible document to read |
|
Appreciate
0
|
12-06-2016, 12:32 PM | #1105 | |
Colonel
1002
Rep 2,287
Posts |
Quote:
It took me a long time to get the process correct. Probably something that should be written up and posted. |
|
Appreciate
0
|
12-06-2016, 12:51 PM | #1106 | |
Captain
253
Rep 775
Posts |
Quote:
|
|
Appreciate
0
|
12-07-2016, 01:09 AM | #1108 |
Major General
3987
Rep 7,212
Posts |
|
Appreciate
0
|
12-07-2016, 03:39 AM | #1109 |
Colonel
1002
Rep 2,287
Posts |
Any more progress with the RSA delete?
To save time testing and flashing over ODB I'm wondering if it is possible to capture a failed flash state of the DME via BDM, make the Changes for the test , then re-flash via BDM. Would the DME reboot and rerun the ODB flash checks? I guess it would be easy test. |
Appreciate
0
|
12-07-2016, 10:08 AM | #1110 |
Major General
3987
Rep 7,212
Posts |
No bueno - I've tried setting the # of segments to 2 and 5, I've tried the segment addresses as 0x840XXX & 0x40XXX, I've tried with a non-modified file and just the signature/references changed - I get "security access denied" at the end of every flash. The good thing, again, is typically after a failed flash, I can just restart it again with a different file (I wrote the stock one again as I was leaving this morning).
The one thing I can think of is maybe it doesn't like segments 3-5 being set to 0. Do we suppose there's anything magical to the segment lengths? Could I just divide the last segment up and make 3 more? like, segments 3, 4 and 5 could be 16 bytes each, and segment 2 would be 48 bytes shorter? Writing via BDM won't work, because the routine that checks the RSA is only run when activated with an OBD flash. That's why BDM writes don't have to worry about the RSA key matching. BTW, one thing I never even tried to do was find the 0pa for the 730S A2L. Well, durrr, it's right in there with the Z4 daten files. So I'm going to flash that, pull a full memory read, and I'll have a complete disassembly of the A2L binary (my 921S IDA is basically complete anyway, but some things are fuzzy since MSS70 doesn't have valvetronic or DISA). |
Appreciate
0
|
12-07-2016, 10:36 AM | #1111 | |
Captain
253
Rep 775
Posts |
Quote:
This is one area where it would be nice to have a more generic BDM interface rather than one designed specifically for reading/flashing. Would be very helpful to setup a breakpoint when RSA stuff is loaded into memory and just see what's going on. |
|
Appreciate
0
|
12-07-2016, 11:39 AM | #1112 | |
Banned
2476
Rep 9,004
Posts |
Quote:
|
|
Appreciate
0
|
12-07-2016, 11:41 AM | #1113 | |
Colonel
1002
Rep 2,287
Posts |
Quote:
Look at the first block of data 0x040000 to 0x05FF7F. Is this not part of the parameter section? Then the other blocks are a mix of temp locations for the flash data and the microprocessor? If I'm right, big if. The RSA protected blocks is a little more complicated. |
|
Appreciate
0
|
12-07-2016, 12:11 PM | #1114 |
Major General
3987
Rep 7,212
Posts |
|
Appreciate
1
Taskmaster2475.50 |
12-07-2016, 12:23 PM | #1115 | |
Major General
3987
Rep 7,212
Posts |
Quote:
Deleting the RSA check is pretty straight forward, what isn't is fooling the RSA check with a modified boot sector. I guess I should study what they did some more and see what I can come up with. |
|
Appreciate
0
|
12-07-2016, 12:28 PM | #1116 | |
Colonel
1002
Rep 2,287
Posts |
Quote:
|
|
Appreciate
0
|
12-07-2016, 12:41 PM | #1117 |
Major General
3987
Rep 7,212
Posts |
it looks like they changed the key reference to the parameter space to me.
actually, I don't think making an 0pa of that file will work - at least not without some more effort, since those are segments the 0pa file doesn't normally cover. |
Appreciate
0
|
12-07-2016, 12:42 PM | #1118 |
Banned
2476
Rep 9,004
Posts |
It just struck me that it WAS your picture lol! Very trustworthy
|
Appreciate
0
|
12-07-2016, 12:46 PM | #1119 |
Major General
3987
Rep 7,212
Posts |
So I am a fool. All this time, none of my files worked - well, duh, the checksum for the program space covers the RSA key range. So, uh, I didn't correct it on any of the files I've tested. Durrrrrrrrr!
Off to try again.. |
Appreciate
0
|
12-07-2016, 05:10 PM | #1120 |
Major General
3987
Rep 7,212
Posts |
It works!
OK, so I'm a dumbass - and it was because I never corrected the checksum in the program space. Durrrrr. Anyway - it definitely worked to use the parameter RSA key & ranges. I set it as 2 segments and zero'd the rest. I need to double check the file I used to create it (was in a hurry on my lunch break) because the 0da write didn't work (stock file did though). I think I just grabbed the wrong file when I made my 0pa. |
Appreciate
1
rjahl1001.50 |
12-07-2016, 05:15 PM | #1121 | |
Colonel
1002
Rep 2,287
Posts |
Quote:
|
|
Appreciate
0
|
12-07-2016, 06:19 PM | #1122 |
Major General
3987
Rep 7,212
Posts |
Ok so I think the reason my modified 0da write didn't work is because I used the wrong file to build my 0pa - it had the RSA key mods but not the RSA delete. :|
it's a comedy of errors.. |
Appreciate
0
|
Bookmarks |
|
|