Hello.
I did changes in my stock ECU 4B0906018DF (I changed some addreeses for Launch Control)
The
ori file is calculated OK:
c:\me7>ME7Check.exe "4B0906018DF.ori"
===================================================
ME7Check v1.12 (c) mki, 06/2004-05/2012
Checking file 4B0906018DF.ori (size=1048576)
Reading Version Strings...
-> Bootrom Version = 05.12
-> EPK = 40/1/ME7.5/5/4016.31//24b/Dst01o/220301//
-> Contents of ECUID data table:
- '0261207639' (SSECUHN)
- '1037362361' (SSECUSN)
- '4B0906018DF ' (VAG part number)
- '0001' (VAG sw number)
- '1.8L R4/5VT ' (engine id)
-> Contents of ECUID data table:
- 'HW_MAN004'
-> No errors found. File is OK. *****************
c:\me7>me7sum.exe "4B0906018DF.ori"
ME7Tool (v1.0.3) [Management tool for Bosch ME7.x firmwares]
Inspiration from Andy Whittaker's tools and information.
Written by 360trev and nyet [BSD License Open Source].
Attempting to open firmware file '4B0906018DF.ori'
Step #1: Reading ROM info ..
Searching for EPK signature...OK
Searching for ECUID table...OK
EPK : '40/1/ME7.5/5/4016.31//24b/Dst01o/220301//'
Part Number : '4B0906018DF '
Engine ID : '1.8L R4/5VT '
SW Version : '0001'
HW Number : '0261207639'
SW Number : '1037362361'
Step #2: Reading ROMSYS ..
Startup section: word[0x008000]+word[0x00FFFE]
@008038 Add=0x00A8B5 CalcAdd=0x00A8B5 ADD OK
Program pages: 8k page first+last in 0x0000-0xFFFF and 0x20000-0xFFFFF
@00803c Add=0x9E5489 CalcAdd=0x9E5489 ADD OK
All param page: word[0x010000]+word[0x01FFFE]
@01befa Add=0x00971D CalcAdd=0x00971D ADD OK
Step #3: Reading RSA signatures ..
Searching for RSA offset #0...missing
Searching for RSA offset #1...missing
Step #4: Finding CRC table(s) ..
Searching for CRC table(s)...OK
CRC table(s) OK
Step #5: Reading Main Data Checksums ..
Searching for main data CRC pre block...OK
Searching for main data CRC/csum blocks...OK
Searching for main data CRC offsets...OK
Searching for main data checksum offsets...missing
Main CRCs:
0) 0x0183BC-0x0183C5 CalcCRC: 244E4C69
1) 0x010002-0x013FFE @90000 CRC: 89F323B6 CalcCRC: 89F323B6(r) CRC OK
2) 0x014252-0x017F4E @90006 CRC: 22D8898C CalcCRC: 22D8898C(r) CRC OK
3) 0x018192-0x01FBDC CalcCRC: 5CE05A9E(r)
4) 0x026A00-0x02FFFC @9000c CRC: 1E247AAF CalcCRC: 1E247AAF(r) CRC OK
Step #6: Reading Main Program Checksums ..
Searching for main program checksum..OK
ROM Checksum Block Offset Table @1fbc8 [16 bytes]:
1) 0x000000-0x00FBFF CalcChk: 48D08844
0x00FC00-0x01FFFF CalcChk: 23A9215B CalcCRC: D55E5E30 SKIPPED
2) 0x020000-0x0FFFFF
<fffe0> Chk: 3E128447 CalcChk: 3E128447 OK (i)
Step #7: Reading Multipoint Checksum Blocks ..
Searching for multipoint block descriptor #1...missing
Searching for multipoint block descriptor #2...OK
1) <1fbde> 0x000000-0x003FFF Chk: 0FA0F5CF Boot: (whitelisted) OK
2) <1fbee> 0x004000-0x007FFF Chk: 0F4716B3 Boot: (whitelisted) OK
3) <1fbfe> 0x000000-0x003FFF Chk: 0FA0F5CF CalcChk: 0FA0F5CF OK
4) <1fc0e> 0x004000-0x007FFF Chk: 0F4716B3 CalcChk: 0F4716B3 OK
Multipoint #2: [66 blocks x <16> = 1056 bytes]
*** Found 71 checksums in 4B0906018DF.ori
*** DONE! 0 error(s) in 4B0906018DF.ori! ***
I did modify it (
4B0906018DF(lc).bin). Then tried to calculate checksum:
c:\me7>me7sum.exe "4B0906018DF(lc).bin" "4B0906018DF(lcandsum).bin"
ME7Tool (v1.0.3) [Management tool for Bosch ME7.x firmwares]
Inspiration from Andy Whittaker's tools and information.
Written by 360trev and nyet [BSD License Open Source].
Attempting to open firmware file '4B0906018DF(lc).bin'
Step #1: Reading ROM info ..
Searching for EPK signature...OK
Searching for ECUID table...OK
EPK : '40/1/ME7.5/5/4016.31//24b/Dst01o/220301//'
Part Number : '4B0906018DF '
Engine ID : '1.8L R4/5VT '
SW Version : '0001'
HW Number : '0261207639'
SW Number : '1037362361'
Step #2: Reading ROMSYS ..
Startup section: word[0x008000]+word[0x00FFFE]
@008038 Add=0x00A8B5 CalcAdd=0x00A8B5 ADD OK
Program pages: 8k page first+last in 0x0000-0xFFFF and 0x20000-0xFFFFF
@00803c Add=0x9E5489 CalcAdd=0x9E5489 ADD OK
All param page: word[0x010000]+word[0x01FFFE]
@01befa Add=0x00971D CalcAdd=0x00971D ADD OK
Step #3: Reading RSA signatures ..
Searching for RSA offset #0...missing
Searching for RSA offset #1...missing
Step #4: Finding CRC table(s) ..
Searching for CRC table(s)...OK
CRC table(s) OK
Step #5: Reading Main Data Checksums ..
Searching for main data CRC pre block...OK
Searching for main data CRC/csum blocks...OK
Searching for main data CRC offsets...OK
Searching for main data checksum offsets...missing
Main CRCs:
0) 0x0183BC-0x0183C5 CalcCRC: 244E4C69
1) 0x010002-0x013FFE @90000 CRC: 89F323B6 CalcCRC: BCAC1792(r) ** FIXED **
2) 0x014252-0x017F4E @90006 CRC: 22D8898C CalcCRC: C1F09246(r) ** FIXED **
3) 0x018192-0x01FBDC CalcCRC: AC535AA3(r)
4) 0x026A00-0x02FFFC @9000c CRC: 1E247AAF CalcCRC: E49DFC8E(r) ** FIXED **
Step #6: Reading Main Program Checksums ..
Searching for main program checksum..OK
ROM Checksum Block Offset Table @1fbc8 [16 bytes]:
1) 0x000000-0x00FBFF CalcChk: 48D08844
0x00FC00-0x01FFFF CalcChk: 23A7FC14 CalcCRC: C0958A50 SKIPPED
2) 0x020000-0x0FFFFF
<fffe0> Chk: 3E128447 CalcChk: 3E149B06 ** FIXED **
Step #7: Reading Multipoint Checksum Blocks ..
Searching for multipoint block descriptor #1...missing
Searching for multipoint block descriptor #2...OK
1) <1fbde> 0x000000-0x003FFF Chk: 0FA0F5CF Boot: (whitelisted) OK
2) <1fbee> 0x004000-0x007FFF Chk: 0F4716B3 Boot: (whitelisted) OK
3) <1fbfe> 0x000000-0x003FFF Chk: 0FA0F5CF CalcChk: 0FA0F5CF OK
4) <1fc0e> 0x004000-0x007FFF Chk: 0F4716B3 CalcChk: 0F4716B3 OK
Multipoint #2: [66 blocks x <16> = 1056 bytes]
*** Found 71 checksums in 4B0906018DF(lc).bin
Attempting to output corrected firmware file '4B0906018DF(lcandsum).bin'
├╛ Opening '4B0906018DF(lcandsum).bin' file for writing
├╛ Writing to file
├╛ Validating size correct 1048576=1048576
├╛ All OK, closing file
*** DONE! 8/8 error(s) in 4B0906018DF(lc).bin corrected in 4B0906018DF(lcandsum)
.bin! ***
Looks good. But this file can not calculated:
c:\me7>ME7Check.exe "4B0906018DF(lcandsum).bin"
======================================================
ME7Check v1.12 (c) mki, 06/2004-05/2012
Checking file 4B0906018DF(lcandsum).bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = 05.12
-> EPK = 40/1/ME7.5/5/4016.31//24b/Dst01o/220301//
-> Contents of ECUID data table:
- '0261207639' (SSECUHN)
- '1037362361' (SSECUSN)
- '4B0906018DF ' (VAG part number)
- '0001' (VAG sw number)
- '1.8L R4/5VT ' (engine id)
-> Contents of ECUID data table:
- 'HW_MAN004'
Romsys checksum failure(s) found
-> Found 1 error!!! *******************************
c:\me7>me7sum.exe "4B0906018DF(lcandsum).bin"
ME7Tool (v1.0.3) [Management tool for Bosch ME7.x firmwares]
Inspiration from Andy Whittaker's tools and information.
Written by 360trev and nyet [BSD License Open Source].
Attempting to open firmware file '4B0906018DF(lcandsum).bin'
Step #1: Reading ROM info ..
Searching for EPK signature...OK
Searching for ECUID table...OK
EPK : '40/1/ME7.5/5/4016.31//24b/Dst01o/220301//'
Part Number : '4B0906018DF '
Engine ID : '1.8L R4/5VT '
SW Version : '0001'
HW Number : '0261207639'
SW Number : '1037362361'
Step #2: Reading ROMSYS ..
Startup section: word[0x008000]+word[0x00FFFE]
@008038 Add=0x00A8B5 CalcAdd=0x00A8B5 ADD OK
Program pages: 8k page first+last in 0x0000-0xFFFF and 0x20000-0xFFFFF
@00803c Add=0x9E4865 CalcAdd=0x9E5489 ** NOT OK **
All param page: word[0x010000]+word[0x01FFFE]
@01befa Add=0x00971D CalcAdd=0x00971D ADD OK
Step #3: Reading RSA signatures ..
Searching for RSA offset #0...missing
Searching for RSA offset #1...missing
Step #4: Finding CRC table(s) ..
Searching for CRC table(s)...OK
CRC table(s) OK
Step #5: Reading Main Data Checksums ..
Searching for main data CRC pre block...OK
Searching for main data CRC/csum blocks...OK
Searching for main data CRC offsets...OK
Searching for main data checksum offsets...missing
Main CRCs:
0) 0x0183BC-0x0183C5 CalcCRC: 244E4C69
1) 0x010002-0x013FFE @90000 CRC: BCAC1792 CalcCRC: BCAC1792(r) CRC OK
2) 0x014252-0x017F4E @90006 CRC: C1F09246 CalcCRC: C1F09246(r) CRC OK
3) 0x018192-0x01FBDC CalcCRC: AC535AA3(r)
4) 0x026A00-0x02FFFC @9000c CRC: E49DFC8E CalcCRC: E49DFC8E(r) CRC OK
Step #6: Reading Main Program Checksums ..
Searching for main program checksum..OK
ROM Checksum Block Offset Table @1fbc8 [16 bytes]:
1) 0x000000-0x00FBFF CalcChk: 48D08844
0x00FC00-0x01FFFF CalcChk: 23A7FC14 CalcCRC: B454C5FE SKIPPED
2) 0x020000-0x0FFFFF
<fffe0> Chk: 3E149B06 CalcChk: 3E149B06 OK (i)
Step #7: Reading Multipoint Checksum Blocks ..
Searching for multipoint block descriptor #1...missing
Searching for multipoint block descriptor #2...OK
1) <1fbde> 0x000000-0x003FFF Chk: 0FA0F5CF Boot: (whitelisted) OK
2) <1fbee> 0x004000-0x007FFF Chk: 0F4716B3 Boot: (whitelisted) OK
3) <1fbfe> 0x000000-0x003FFF Chk: 0FA0F5CF CalcChk: 0FA0F5CF OK
4) <1fc0e> 0x004000-0x007FFF Chk: 0F4716B3 CalcChk: 0F4716B3 OK
Multipoint #2: [66 blocks x <16> = 1056 bytes]
*** Found 71 checksums in 4B0906018DF(lcandsum).bin
*** WARNING! 1/1 uncorrected error(s) in 4B0906018DF(lcandsum).bin! ***
Any help with it?
Looks like a bug in me7sum. You can run the file through me7sum again, it should fix it.
I'll look into why it requires being run twice.