NefMoto

Technical => Flashing and Chipping => Topic started by: setzi62 on March 10, 2011, 04:47:59 AM



Title: ME7Check: Checksum checker for ME7
Post by: setzi62 on March 10, 2011, 04:47:59 AM
Here's a tool to verify if the checksums are fine in a ME7 image.
You can use it for quick checking before flashing, to avoid
"bad checksum - car won't start"-problem after your first trip.
Or just verify the files you post have really fixed checksums (seems
like plugins sometimes not run as intended  ;)).

P.S. it's a command line tool.
Call it from a command window, e.g. cmd.exe or a cygwin shell.
If called without arguments you will see the usage:
C:\Program Files\ME7\bin>ME7Check.exe
ME7Check v1.08 (c) mki, 06/2004-04/2011
Usage: ME7Check <bin-file>

170311: updated, fixed bootrom checks
190411: updated, fixed handling of ecus with unused boot sector in flash
030811: updated:
Added RSA signature checking (for ecus containing a signature).
Added some output further specifying the fault class(es) found:
  - Romsys checksum failure(s) found
  - Program checksum failure(s) found
  - Page checksum failure(s) found
  - RSA signature failure found
  - Data area checksum failure(s) found
  - Overall checksum failure found      
The last one (overall checksum) seems to be more of cosmetical nature.
Is often not fixed in giac files, which are nevertheless running without problems.

260911, updated V1.11:
better (flexible) recognition of checksum ranges and toleration of some APR hacks.
-> allows to check correctly more images

160512, updated V1.12:
recognition of wrong filesize: 1MB file, 512kB ecu and vice versa -> give better information about this


Title: Re: Checksum checker for ME7
Post by: judeisnotobscure on March 10, 2011, 12:20:10 PM
I can't wait to check this out when I get home from work.


Title: Re: Checksum checker for ME7
Post by: nyet on March 10, 2011, 12:46:29 PM
Here's a tool to verify if the checksums are fine in a ME7 image.
You can use it for quick checking before flashing, to avoid
"bad checksum - car won't start"-problem after your first trip.
Or just verify the files you post have really fixed checksums (seems
like plugins sometimes not run as intended  ;)).

P.S. it's a command line tool, md5sum=f3364c3152ff93f5917a68b9a7c0475.


do you have source? I'd like to port it to other platforms.

ME7Sum checker/corrector, with source code:

http://github.com/nyetwurk/ME7Sum/


Title: Re: Checksum checker for ME7
Post by: ElementalVoid on March 10, 2011, 12:48:29 PM
FYI, this runs under Wine.


Title: Re: Checksum checker for ME7
Post by: Matt Danger on March 10, 2011, 02:03:43 PM
Tested and works as described on XP.


Title: Re: Checksum checker for ME7
Post by: judeisnotobscure on March 10, 2011, 02:49:59 PM
when i open the app on windows 7 it closes right away.


Title: Re: Checksum checker for ME7
Post by: Tony@NefMoto on March 10, 2011, 02:57:32 PM
when i open the app on windows 7 it closes right away.

Are you running from the command line?


Title: Re: Checksum checker for ME7
Post by: AmIdYfReAk on March 10, 2011, 03:38:21 PM
runs great in W7 64-bit,

going to make some changes and see how it fairs out.


Title: Re: Checksum checker for ME7
Post by: judeisnotobscure on March 10, 2011, 03:45:55 PM
Are you running from the command line?
no. could you provide a brief descriprion of how to do that.
i know how to open cmd.  just not sure how to run a program from there.

thanks


Title: Re: Checksum checker for ME7
Post by: Matt Danger on March 10, 2011, 05:23:55 PM
could you provide a brief descriprion of how to do that.

- To make things simple place both ME7Check.exe and the .bin file you want to verify in your home directory. For XP that will be C:\Documents and Settings\yourusername

- Open the Windows Command Prompt program (Start > Run > cmd). By default the shell will locate you in your home directory (at least on XP).

- Execute ME7Check by running: ME7Check.exe nameofyourfile.bin


Title: Re: Checksum checker for ME7
Post by: judeisnotobscure on March 10, 2011, 06:09:11 PM
Thanks


Title: Re: Checksum checker for ME7
Post by: setzi62 on March 11, 2011, 03:59:19 AM
do you have source? I'd like to port it to other platforms.
I am working with Linux and with cygwin under Windows (excellent environment if you are
used to work with GNU tools). I use MinGW to avoid dependency on the cygwin library.
Have no clue about windows programming, therefore my programs are just command line
tools, to be used in a shell window.  Sorry for all Mouse-click-windows users.
If you need a linux version, I have added it to the first post.


Title: Re: Checksum checker for ME7
Post by: nyet on March 11, 2011, 12:23:57 PM

I am working with Linux and with cygwin under Windows (excellent environment if you are
used to work with GNU tools).

I agree. cygwin makes Windows almost usable for things other than games.

btw any chance you'd post the source? I'll set up a git/svn repo if you like :)

This community really needs people willing to collaborate and publish code.



Title: Re: Checksum checker for ME7
Post by: julex on March 11, 2011, 05:04:13 PM
Yes, stand alone executable is all good and so on but what we really need is a plug in for tunerpro for exmaple.


Title: Re: Checksum checker for ME7
Post by: kls on March 11, 2011, 07:59:14 PM
Very cool! Would you be willing to update it to include ME7.1.1 from the Audi TT, VW R32 etc? I can supply stock flash files.


Title: Re: Checksum checker for ME7
Post by: setzi62 on March 14, 2011, 07:34:32 AM
btw any chance you'd post the source? I'll set up a git/svn repo if you like :)

This community really needs people willing to collaborate and publish code.
Well, I think I always like and try to collaborate and help other users here in the forum.
I would prefer to provide solutions on request but keep sources, at least for the moment.
Hope you don't get me wrong.

Yes, stand alone executable is all good and so on but what we really need is a plug in for tunerpro for exmaple.
A plugin for tunerpro is already available, links can be found in other threads.
This tool's purpose was only to provide a quick way to verify that checksums have been
really updated. Some people complained it is not easy to see status with plugins when
they don't provide a clear display. Here you just get a clear OK/NotOK status, nothing more.

Very cool! Would you be willing to update it to include ME7.1.1 from the Audi TT, VW R32 etc? I can supply stock flash files.
It should already be supporting ME7.1.1, at least the few images I have were using the
same checksum mechanisms as ME7.1/ME7.5.


Title: Re: Checksum checker for ME7
Post by: nyet on March 14, 2011, 10:32:09 AM

I would prefer to provide solutions on request but keep sources, at least for the moment.


Depending on your goals, there are different ways of publishing code such that you stay protected, btw.

In any case, any chance you can document the checksum mechanism? Or post psuedo code? Obviously, anything I end up with I will publish.


Title: Re: Checksum checker for ME7
Post by: kls on March 14, 2011, 06:43:26 PM


Very cool! Would you be willing to update it to include ME7.1.1 from the Audi TT, VW R32 etc? I can supply stock flash files.
It should already be supporting ME7.1.1, at least the few images I have were using the
same checksum mechanisms as ME7.1/ME7.5.



I believe ME7.1.1 has a slightly different checksum routine. I tried the program with known good files and it reported they had bad checksums.


Title: Re: Checksum checker for ME7
Post by: phila_dot on March 14, 2011, 08:43:32 PM
Great little tool. Thanks again for your contributions.


Title: Re: Checksum checker for ME7
Post by: setzi62 on March 15, 2011, 10:23:13 AM
I believe ME7.1.1 has a slightly different checksum routine. I tried the program with known good files and it reported they had bad checksums.
I found a small deviation for some ME7.1.1 images, now they were working fine.
Hope this was the only difference to make it run for your images. Updated the files in first post.


Title: Re: Checksum checker for ME7
Post by: kls on March 15, 2011, 10:34:39 PM
Sweet, thanks for the update. My stock ME7.1.1 files all checkout as fine. I do have a tuned file which shows as bad but is 100% confirmed working.


Title: Re: Checksum checker for ME7
Post by: setzi62 on March 16, 2011, 03:12:13 AM
If it is possible for you to send me the concerned file for checking, I will find out.
Hard to say what is wrong in this case without looking into ecu's code.


Title: Re: Checksum checker for ME7
Post by: setzi62 on March 17, 2011, 05:34:02 AM
Sweet, thanks for the update. My stock ME7.1.1 files all checkout as fine. I do have a tuned file which shows as bad but is 100% confirmed working.
One more update to handle this was made. Waiting for the next flaw ...


Title: Re: Checksum checker for ME7
Post by: ElementalVoid on March 18, 2011, 04:32:29 PM
Any chance you could cross compile for ARM? (gnu target: arm-linux-gnueabi)

I've got a Buffalo Linkstation Duo (arm5) running Debian Squeeze. I'm thinking about setting up an SCM (undecided on Git, SVN, other) and want to setup a hook (client/server/both) that will check the bin and reject the commit if the checksums are not updated.

I'm aware that binary diffs are handled better with SVN, but I like having a full clone handy with Git. Has anyone used an SCM to manage binary files before? If so, maybe you've had better luck with another system?


Title: Re: Checksum checker for ME7
Post by: Tony@NefMoto on March 18, 2011, 05:05:50 PM
I am a Windows guy running a forum full of Linux people.  ;D


Title: Re: Checksum checker for ME7
Post by: nyet on March 18, 2011, 05:32:00 PM
{geekery}

I'd kill for somebody to actually release source code :)


Title: Re: Checksum checker for ME7
Post by: eliotroyano on March 23, 2011, 09:19:45 PM
Great thread!!!!   :)


Title: Re: Checksum checker for ME7
Post by: Matt Danger on March 24, 2011, 11:18:17 AM
{geekery}

I'd kill for somebody to actually release source code :)

x2


Title: Re: Checksum checker for ME7
Post by: nyet on March 24, 2011, 01:28:28 PM
Has anyone used an SCM to manage binary files before? If so, maybe you've had better luck with another system?

If i find i *really* need to maintain a binary in an SCM, I try to find a process by which i can generate that binary using some sort of text-based instructions, which CAN be maintained in a sane fashion.

For example, start with a stock binary, and come up with a document that can describe (in plain text - e.g. table tag, offset, value difference, etc) the changes you wish to make to it.. make a tool that can apply those changes, and just keep the change document in the SCM.

Anything else is foolishness IMO, since the diffs will never make any sense.


Title: Re: Checksum checker for ME7
Post by: setzi62 on March 25, 2011, 02:42:12 AM
Any chance you could cross compile for ARM? (gnu target: arm-linux-gnueabi)
Try if this works for you.


Title: Re: Checksum checker for ME7
Post by: ElementalVoid on March 25, 2011, 03:45:15 PM
Any chance you could cross compile for ARM? (gnu target: arm-linux-gnueabi)
Try if this works for you.

Works great. Thanks. (both the statically and dynamically linked versions work)


Title: Re: Checksum checker for ME7
Post by: ElementalVoid on March 25, 2011, 03:50:46 PM
Has anyone used an SCM to manage binary files before? If so, maybe you've had better luck with another system?

If i find i *really* need to maintain a binary in an SCM, I try to find a process by which i can generate that binary using some sort of text-based instructions, which CAN be maintained in a sane fashion.

For example, start with a stock binary, and come up with a document that can describe (in plain text - e.g. table tag, offset, value difference, etc) the changes you wish to make to it.. make a tool that can apply those changes, and just keep the change document in the SCM.

Anything else is foolishness IMO, since the diffs will never make any sense.

For the most part, I agree. Binary diffs are useless. However what I'm mostly interested in is a better way of managing the bins, logs, etc. for each revision I make to the map and to be able to store a comment on that whole set of data explaining what I did/changed and why. That would entail changes to the tune just from log runs as well as changes to the tune due to vehicle modifications. That way I could look back over time and see what changes I made to the tune to compensate for vehicle mods.

I definitely thought about a system like you're describing. My initial thought was to keep it simple and use the offsets for the maps to dump them as hex (or even to apply the conversions and calculations on them) before committing. With Git I could do that in an automated fashion using pre-commit client side hooks.

However, I'm not at the moment interested in taking the time to do that. I'd go the simple route and just dump the entire binary in with a good set of comments.

Thanks so much for your take on this, I'm sure at some point I'll eventually get around to writing something like that. When/if I do I'll be sure to let you (all) know.


Title: Re: Checksum checker for ME7
Post by: nyet on March 25, 2011, 03:55:08 PM
However what I'm mostly interested in is a better way of managing the bins, logs, etc. for each revision I make to the map and to be able to store a comment on that whole set of data explaining what I did/changed and why. That would entail changes to the tune just from log runs as well as changes to the tune due to vehicle modifications. That way I could look back over time and see what changes I made to the tune to compensate for vehicle mods.

IMO, if you don't need to worry about useful diffs or merging, any SCM is as good as another for just revision tracking of binaries :)

I agree that tracking revisions alone is a great reason to use an SCM...


Title: Re: Checksum checker for ME7
Post by: phila_dot on March 26, 2011, 08:47:54 PM
This is not a big deal, but when I check the attached bin I get some interesting results. I am not sure if it is the bin or the checker and I can't even remember where I got this bin from. What caught my attention was the VAG part number. This is an original bin that I have in my files. Is this file not for a 2001 S4?

=================================================
me7check v1.05 (c) mki, 06/2004-10/2010
Checking file 8D0907551L_0261206562_1037352815.bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = embedded in CPU, asume 05.12/05.32
-> EPK = 42/1/ME7.1/5/6005.01//X22kb/Dstf1o/101299/
-> Contents of ECUID data table:
   - '0261206562'         (SSECUHN)
   - '1037352815'         (SSECUSN)
   - '4B0907551L  '       (VAG part number)
   - '0004'               (VAG sw number)
   - '2.7l V6/5VT     '   (engine id)

-> No errors found. File is OK.   *********************


Edit : I am an idiot.


Title: Re: Checksum checker for ME7
Post by: Tony@NefMoto on March 28, 2011, 05:40:28 PM
Setzi, can you share some info on how you find all of the information in the bin and how you locate the checksums?


Title: Re: Checksum checker for ME7
Post by: setzi62 on March 29, 2011, 09:33:53 AM
Hard to get to a point, but in general, you have to analyze the code of the image to find all the information  :P.
At first step you have to (manually) disassemble the code of different images, then find
what is similar between all images.  After this, you can determine matching patterns to
locate the code/tables you want to find in any image.
Since there are only two bootrom main streams used on ME7, you can find some
addresses which get used in all images. For example, there is a pointer variable in RAM
at E242/E244 for the 05.XX bootroms which is set to point to the ecu identification table
in flash. If you locate the code where this pointer gets set, you can extract the table address
out of the code, for example:
82'0224: E6F41E2F       MOV     R4, #ECUIdentificationDataTable ; == 81'AF1E
82'0228: E6F50602       MOV     R5, #0206h (81'8000)
82'022C: F6F442E2       MOV     [ptr-ECUIdentificationDataTable], R4   
82'0230: F6F544E2       MOV     [00E244h], R5
Then you can parse the table and extract the identification strings, here is an excerpt of this table:
ECUIdentificationDataTable:
81'AF1E: 0000   DW      0000h                   ; len = 0, tag = 00
; [90] = VIN
81'AF20: 0000   DW      0000h                   ; ptr = NULL
81'AF22: 0000   DW      0000h
; [91] = VMECUHN
81'AF24: 0600   DW      0006h                   ; len=0, tag = 06 (ascii)
81'AF26: 0000   DW      0000h                   ; ptr = NULL
81'AF28: 0000   DW      0000h
; [92] = SSECUHN
81'AF2A: 060A   DW      0A06h                   ; len = 10, tag = 06 (ascii)
81'AF2C: B203   DW      03B2h                   ; ptr = 81'83B2 (string_SSECUHN)
81'AF2E: 0602   DW      0206h
; [93] = SSECUHVN
81'AF30: 0000   DW      0000h
81'AF32: 0000   DW      0000h
81'AF34: 0000   DW      0000h
; [94] = SSECUSN
81'AF36: 060A   DW      0A06h                   ; len = 10, tag = 06 (ascii)
81'AF38: BC03   DW      03BCh                   ; ptr = 81'83BC (string_SSECUSN)
81'AF3A: 0602   DW      0206h
....
For checksums it is basically the same. Partly there are fixed memory locations to look at
in all images or there are fixed patterns which you can search to find them.
For the data checksums you need to locate the checksumming function and then look into
the code to find out which type of checksum algorithm is done and which memory ranges are used.
At least I found the ranges only embedded in the code.  A table-based method as brought up in the thread
http://www.nefariousmotorsports.com/forum/index.ph/topic,353.msg2216.html#msg2216
I could not find in the code.


Title: Re: Checksum checker for ME7
Post by: julex on May 06, 2011, 08:43:06 PM
can you let me know offsets for all checksums in 8d0907551M S4 M-box file so that I can set up them as known maps in Tunerpro. I am trying to compare bins and some of the regions I suspect to be checksums but I am not sure.

PM me if possible,

Thanks.


Title: Re: Checksum checker for ME7
Post by: setzi62 on May 09, 2011, 01:19:39 AM
Hi Julex,

I looked up the addresses of the M-box, checksums are located at following fileoffsets:
0x08038 - 0x0803F
0x1B9B0 - 0x1B9B3
0x1FBB2 - 0x1FFD1
0x7A866 - 0x7A875
0xFFFE0 - 0xFFFE7


Title: Re: Checksum checker for ME7
Post by: julex on May 09, 2011, 07:21:44 AM
Hi Julex,

I looked up the addresses of the M-box, checksums are located at following fileoffsets:
0x08038 - 0x0803F
0x1B9B0 - 0x1B9B3
0x1FBB2 - 0x1FFD1
0x7A866 - 0x7A875
0xFFFE0 - 0xFFFE7


Thank you!


Title: Re: Checksum checker for ME7
Post by: ElementalVoid on May 09, 2011, 08:33:05 AM
Great idea, this will make it much easier to distinguish hidden changes like shifted maps. But, aren't there about 70 checksums on the 1Mb flashes? That's what I recall from other series of posts and from my conversation with MTX Electronics when I bought their plugin.


Title: Re: Checksum checker for ME7
Post by: mtx-electronics on May 09, 2011, 11:14:31 AM
Yes, normally on 1MB files there are slightly more then 70 checksums but on this file I can only find very few... I have no idea where all the checksum locations are in this file because my automatic checksum search routines can't find them.


Title: Re: Checksum checker for ME7
Post by: julex on May 09, 2011, 11:34:59 AM
Next epic question. Using IDA, what a correct entry point for M-box?


Title: Re: Checksum checker for ME7
Post by: setzi62 on May 10, 2011, 12:55:03 AM
All checksums are contained in the memory ranges that I posted.
Some of the memory ranges contain multiple checksums, therefore
there are only five different ranges for all the checksums.

Regarding disassembly using IDA, there are some threads in Reverse Engineering
handling this. Tony described settings of addresses and DPP registers in
http://www.nefariousmotorsports.com/forum/index.php/topic,35.msg976.html#msg976

As bootrom file you can also use this file that Tony posted once
http://www.nefariousmotorsports.com/forum/index.php?action=dlattach;topic=198.0;attach=214
or you take the first 32kB of an 1.8T flash file which shows bootrom version = 05.12 in ME7Check.
This is a copy of the bootrom file, you load it with address 0x000000, the flash file with adress 0x800000.
Processor starts working at address 0 in bootrom after reset.
But I don't think you can give just one start address and then IDA automatically detects all
code sections. Lot's of the code gets called via pointers found in data sections.


Title: Re: Checksum checker for ME7
Post by: ElementalVoid on May 20, 2011, 12:20:04 AM
Hi Julex,

I looked up the addresses of the M-box, checksums are located at following fileoffsets:
0x08038 - 0x0803F
0x1B9B0 - 0x1B9B3
0x1FBB2 - 0x1FFD1
0x7A866 - 0x7A875
0xFFFE0 - 0xFFFE7

XDF with these locations defined is attached. Thanks for the info!


Title: Re: Checksum checker for ME7
Post by: hot2trot on May 22, 2011, 02:07:40 PM
Hi setzi62 ,

Think I must be an Idiot !
I have all the files in my home directory but when i run the ME7Check tool in cmd "ME7Check.exe nameofmyfile.bin" It lists the version 1.08 and date and the next command line Usage: ME7Check <bin-file> and thats it !
There is no info about the bin file i wish to  check.

Please advise,
Cheers


Title: Re: Checksum checker for ME7
Post by: setzi62 on May 24, 2011, 02:34:14 AM
Hi setzi62 ,

Think I must be an Idiot !
I have all the files in my home directory but when i run the ME7Check tool in cmd "ME7Check.exe nameofmyfile.bin" It lists the version 1.08 and date and the next command line Usage: ME7Check <bin-file> and thats it !
There is no info about the bin file i wish to  check.

Please advise,
Cheers
Check if nameofmyfile.bin contains spaces inside. If that is the case, you have to put
double quotes(") around the filename, e.g.:  ME7Check.exe "Name of my file.bin"


Title: Re: Checksum checker for ME7
Post by: hot2trot on May 25, 2011, 08:55:21 AM
Hi  setzi62 ,

 Works a treat  !!!

Your hard work is much appreciated,

Thank you


Title: Re: Checksum checker for ME7
Post by: cordobe1 on July 04, 2011, 04:55:11 PM
Hi!

TNKS A LOT for Share!!!

I compare these 3 files and three were equal, this means that I can exchange files between these three cars?
(http://img718.imageshack.us/img718/5654/checksumgti.jpg)

Which of all lines is the line of CHECKSUM?  :o

Tnnnkss!!!



Title: Re: Checksum checker for ME7
Post by: cordobe1 on July 04, 2011, 05:09:53 PM
I add one more file to the comparison between the other 3 files .-

C:\check>me7check.exe boraarieloem.bin
==============================================================================
me7check v1.08 (c) mki, 06/2004-04/2011
Checking file boraarieloem.bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = 05.12
-> EPK = 42/1/ME7.5/120/4013.01//24B/Dst03o/240102/
-> Contents of ECUID data table:
   - '0261207789'         (SSECUHN)
   - '1037363625'         (SSECUSN)
   - '06A906032KP '       (VAG part number)
   - '0203'               (VAG sw number)
   - '1.8L R4/5VT     '   (engine id)
-> Contents of ECUID data table:
   - 'HW_MAN004'


-> No errors found. File is OK.   *********************


C:\check>

:S


Title: Re: Checksum checker for ME7
Post by: setzi62 on August 03, 2011, 09:05:38 AM
Edited first post with updated version of the checksum checker:
  - added RSA signature checking (for those containing a signature).
  - added some output further specifying the fault class(es) found.


Title: Re: Checksum checker for ME7
Post by: EuroXs4 on September 04, 2011, 09:37:11 PM
Can someone explain why both of these bins get this result???


Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\Paul>me7check abox.bin
==============================================================================
me7check v1.08 (c) mki, 06/2004-04/2011
Checking file abox.bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = 00.00 (UNKNOWN)!!        ** NOT OK **
-> EPK string was not found                   ** NOT OK **
-> ECUID data table not found                 ** NOT OK **
-> file not recognized as ME7, stopping analysis

C:\Documents and Settings\Paul>me7check stage1.bin
==============================================================================
me7check v1.08 (c) mki, 06/2004-04/2011
Checking file stage1.bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = 00.00 (UNKNOWN)!!        ** NOT OK **
-> EPK string was not found                   ** NOT OK **
-> ECUID data table not found                 ** NOT OK **
-> file not recognized as ME7, stopping analysis



Title: Re: Checksum checker for ME7
Post by: Tony@NefMoto on September 05, 2011, 12:10:06 PM
Can someone explain why both of these bins get this result???

Is it possible that both bin files you checked are corrupt because they weren't read properly?


Title: Re: Checksum checker for ME7
Post by: setzi62 on September 27, 2011, 12:44:34 AM
I have updated the first post with a new version V1.11:
better (flexible) recognition of checksum ranges and toleration of some APR hacks.
-> allows to check correctly more images


Title: Re: Checksum checker for ME7
Post by: infinkc on October 05, 2011, 12:45:34 PM
I have attached a program i wrote to quickly check the checksums in Windows instead of going to the prompt each time.

It got cumbersome to always type out all the file names and ones that i named very long so i decided to make it easier.

So to use it:

Copy the program to the same directory as the ME7Check executable file.

Just double click the Easychecksum executable.

It will prompt you to input the file or name.

Simply drag the bin file into the Command window.

Once the path is pasted in the window, press Enter.

The program will run the program setzi62 wrote.

Thanks setzi62 for the great program, just wanted to make it easier to use in a windows based environment.



Title: Re: Checksum checker for ME7
Post by: nyet on October 05, 2011, 01:14:23 PM
If you are a hacker type, you can also install cygwin, so you can use bash instead of the atrocious cmd.exe.

bash supports command line completion, just like in a real OS (unix).. not like the toy "cmd.exe"


Title: Re: Checksum checker for ME7
Post by: iznogoud on October 23, 2011, 07:35:29 PM
Nice jobs guys. Been away for too long and I am happy to see progress has been made.

I second all requests for open code. I second command-line support.

Subscribed.


Title: Re: Checksum checker for ME7
Post by: vtraudt on November 22, 2011, 02:35:26 PM
could you provide a brief descriprion of how to do that.

- To make things simple place both ME7Check.exe and the .bin file you want to verify in your home directory. For XP that will be C:\Documents and Settings\yourusername

- Open the Windows Command Prompt program (Start > Run > cmd). By default the shell will locate you in your home directory (at least on XP).

- Execute ME7Check by running: ME7Check.exe nameofyourfile.bin

What is supposed to happen then?
Program ran through, then "Microsoft Windows version 6.1..."

Does it mine: OK? (what would happen if NOT ok)?

Also: found the exe in the first listed zip. In order to stay updated, what to do with the other files?
Just download and extract into the directory where the exe is?


Title: Re: Checksum checker for ME7
Post by: Tonino on November 30, 2011, 07:44:22 AM
Hi to all, this is my first post,
I came across this site looking for checksum calculator and i download the software but don't work.
My system is W7 32bit, is any better solutions,
I have all the required tools  just need the calculation software, ME 7.1.1  are very unstable, and allot work to bring back to life.
Solder job  require more  work but at the end never fails
Best to all
Tonino


Title: Re: Checksum checker for ME7
Post by: vtraudt on November 30, 2011, 08:25:57 AM
I got it to work on W7 32 bit.

IIRC:

Make sure to download all the files listed and put in one directory.
Navigate in COMMAND PROMPT to that directory.
Enter: at the command prompt:

me7check binfilename.bin

Output example from my first try:

C:\Users\VTR\Documents\Privat\Cars\Allroad tunes>me7check lstage1.bin
==============================================================================
me7check v1.08 (c) mki, 06/2004-04/2011
Checking file lstage1.bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = embedded in CPU, asume 05.12/05.32
-> EPK = 40/1/ME7.1/5/6005.01//22m/DstD1o/110700//
-> Contents of ECUID data table:
   - '0261207004'         (SSECUHN)
   - '1037354145'         (SSECUSN)
   - '8D0907551L  '       (VAG part number)
   - '0001'               (VAG sw number)
   - '2.7l V6/5VT     '   (engine id)
-> Contents of ECUID data table:
   - 'HW_MAN004'

-> No errors found. File is OK.   *********************



Title: Re: Checksum checker for ME7
Post by: Tonino on December 01, 2011, 06:22:17 AM
Thanks, i try again and see if i get better resoults.
I did figure out how to repair this ecus no problem.
Best
Tonino


Title: Re: Checksum checker for ME7
Post by: prj on February 15, 2012, 11:47:07 AM
What's the license on this?

Or in other words. Would you get pissed at me, if I hook this?
I guess I can for my own use, but there is probably a reason you did not want to print the checksums?


Title: Re: Checksum checker for ME7
Post by: UrbanAssaultar on February 18, 2012, 02:14:49 AM
I used this tool and I found an error with the .bin file I modified, I have attached the original and the modified .bin, where do I go from here to find the flaws?

==============================================================================
ME7Check v1.11 (c) mki, 06/2004-07/2011
Checking file C:\4Z7907551S-EGTSAIDELETE.bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = 06.02
-> EPK = 42/1/ME7.1.1/5/6030.03//25A/Dst47o/090403//
-> Contents of ECUID data table:
   - '0261208288'         (SSECUHN)
   - '1037367582'         (SSECUSN)
   - '4Z7907551S  '       (VAG part number)
   - '0010'               (VAG sw number)
   - '2.7L V6/5VT    '    (engine id)
-> Contents of ECUID data table:
   - 'HW_MAN004'


Page checksum failure(s) found
RSA signature failure found
Data area checksum failure(s) found
-> Found 4 errors!!!   *******************************


==============================================================================
ME7Check v1.11 (c) mki, 06/2004-07/2011
Checking file 4Z7907551S Stock.bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = 06.02
-> EPK = 42/1/ME7.1.1/5/6030.03//25A/Dst47o/090403//
-> Contents of ECUID data table:
   - '0261208288'         (SSECUHN)
   - '1037367582'         (SSECUSN)
   - '4Z7907551S  '       (VAG part number)
   - '0010'               (VAG sw number)
   - '2.7L V6/5VT    '    (engine id)
-> Contents of ECUID data table:
   - 'HW_MAN004'


-> No errors found. File is OK.   *********************



Title: Re: Checksum checker for ME7
Post by: carlossus on February 18, 2012, 02:30:31 AM
http://www.nefariousmotorsports.com/wiki/index.php/Checksums



Title: Re: Checksum checker for ME7
Post by: e_pacman on February 26, 2012, 06:48:46 AM
Edited first post with updated version of the checksum checker:
  - added RSA signature checking (for those containing a signature).
  - added some output further specifying the fault class(es) found.

I get this error in ME7Check (after using TunerPro with checksum plugin):


ME7Check v1.11 (c) mki, 06/2004-07/2011
Checking file hack_07_checksum_igen.bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = 05.12
-> EPK = 41/1/ME7.5/51/4019.02//24C/Dst03o/030702/
-> Contents of ECUID data table:
   - '0261208115'         (SSECUHN)
   - '1037366379'         (SSECUSN)
   - '06A906032MJ '       (VAG part number)
   - '0003'               (VAG sw number)
   - '1.8L R4/5VT     '   (engine id)
-> Contents of ECUID data table:
   - 'HW_MAN004'


RSA signature failure found
-> Found 1 error!!!   *******************************

I guess I shouldn't try to flash this file, but how do I solve this problem? I thought the checksum plugin would handle all the checksums?


Title: Re: Checksum checker for ME7
Post by: SteveAR on March 27, 2012, 05:36:39 PM
Can someone tell me if only the main engine management memory has checksums or does the immo/vin EEPROM on the back of the ECU also have checksums?   Reason I ask is because I ran this checksum checker on several BINs I had pulled from my 8 pin EEPROM and it produced an error related to the length/size of the file.  So I figured it might be just for engine management code?

I opened a file that someone attached to a earlier post and it's WAY longer than the .BIN's that I have.


Title: Re: Checksum checker for ME7
Post by: setzi62 on March 29, 2012, 08:12:24 AM
The ME7Check is for the FLASH image which has 512kB or 1MB size.

The EEPROM is 512Bytes, it also contains some checksums but is not
handled by ME7Check.
See http://nefariousmotorsports.com/forum/index.php?topic=362.msg2286#msg2286
and here http://nefariousmotorsports.com/forum/index.php?topic=1727.msg16589#msg16589
where Julex posted a program to fix eeprom checksums.


Title: Re: Checksum checker for ME7
Post by: SteveAR on March 29, 2012, 09:00:15 AM
Thanks for the feedback!

So since the EEPROM also has checksums, I would imagine that when you use VCDS to go in and change the soft coding (E.G. TIP to 6MT) it must also take care of the checksums as well?  And also why when you change (increase by 1)  x0012 & 0022 to diable IMMO you must also change (decrease by 1) 1E/1F to keep the checksums from getting boogered up?


Title: Re: Checksum checker for ME7
Post by: SteveAR on March 29, 2012, 05:58:53 PM
Any chance of a extended description/use of your EEPROM checksum guide? I don't consider myself a stupid guy but I'm having hard time making anything of it.  I have a .BIN file which I pulled from my ECM with the ME7_95040 utility.  I opened this .bin in TunerPro and I see 32 lines (00-1F0) each with 16 hex values per line.  This makes sense to be the 32 pages and 16bytes per page? (512 bytes total)   I'm getting lost with the reference to the table/descriptor word/bitmask and how to extract that info.


Title: Re: Checksum checker for ME7
Post by: setzi62 on April 02, 2012, 04:48:17 AM
You should just use the eeprom checksum program of Julex to get
checksums in your eeprom fixed after having done some changes.
No more need to fiddle araound with descriptor bitmasks  :)


Title: Re: Checksum checker for ME7
Post by: julex on April 02, 2012, 06:33:23 AM
You should just use the eeprom checksum program of Julex to get
checksums in your eeprom fixed after having done some changes.
No more need to fiddle araound with descriptor bitmasks  :)

Thanks for that document. IT made writing the utility an actual pleasure.


Title: Re: Checksum checker for ME7
Post by: SteveAR on April 03, 2012, 02:31:50 PM
You should just use the eeprom checksum program of Julex to get
checksums in your eeprom fixed after having done some changes.
No more need to fiddle araound with descriptor bitmasks  :)
ok, thanks anyway. I'm aware of his utility and have already used it.  I was more interested for my own understanding.  I will keep plugging away at it.


Title: Re: Checksum checker for ME7
Post by: julex on April 04, 2012, 07:34:01 AM
ok, thanks anyway. I'm aware of his utility and have already used it.  I was more interested for my own understanding.  I will keep plugging away at it.

descriptor table is an additional 32 words table that describes how a particular page is composed. Setzi yanked it out of ECU code and pointed out bits relevant to checksum calculation. If you're not sure how a bit mask works, you should really do a quick google on that, that's programming 101 :)



Title: Re: Checksum checker for ME7
Post by: erroob0977 on April 04, 2012, 11:01:06 AM
I have a stock 4z7907551R bin file that is showing a RSA signature failure, I have successfuly flashed and ran the car with this file (and cycled the ignition several times with no problems).

I'd appreciate it if someone could take a look at this and give me any input on what might be happening. I'm hesitant to use this as a base file for my tune with this error showing up.

Thanks


Title: Re: Checksum checker for ME7
Post by: setzi62 on April 11, 2012, 01:15:51 PM
Some people have reported that it doesn't matter if the RSA signature is not corrected,
which matches with your observations.
I guess this image is not an original one, otherwise the RSA signature should match the data space.
If you don't trust in your image, you should post it in the Checksum update requests thread
and get the signature fixed.


Title: Re: Checksum checker for ME7
Post by: erroob0977 on April 12, 2012, 07:45:48 AM
Alright, thanks Setzi - and thanks for the great tool!

Since it's not causing problems, I'm not gonna worry about it. A spare ECU is always in the trunk just in case.


Title: Re: Checksum checker for ME7
Post by: fletchUK on April 26, 2012, 09:42:08 AM
Excellent software thanks

Col


Title: Re: Checksum checker for ME7
Post by: vwmaniac on May 07, 2012, 05:03:04 PM
iam having the same issue as the previous gentlemen with the R32 ecu except that i have 12v VR6 me7.1 ecu's here is amanual 021906018R and automatic 021906018Q, thank you in advance for any update that will check/correct these file. im looking forward to running a tune for NOS in a MK3 with fully function ME7 ECU!


Title: Re: Checksum checker for ME7
Post by: setzi62 on May 28, 2012, 02:11:22 PM
iam having the same issue as the previous gentlemen with the R32 ecu except that i have 12v VR6 me7.1 ecu's here is amanual 021906018R and automatic 021906018Q, thank you in advance for any update that will check/correct these file. im looking forward to running a tune for NOS in a MK3 with fully function ME7 ECU!

These images are OK, only problem is that the files are 1MB, while the ECU just has 512kB!
Cut off the trailing 512kB and it will check fine.
I will provide an update for the ME7Checker to catch this situation and provide a more useful information.


Title: Re: Checksum checker for ME7
Post by: setzi62 on May 28, 2012, 02:16:06 PM
Updated first post with V1.12:
recognize wring filesize: 1MB file, ecu 512kB and give better information about this.


Title: Re: Checksum checker for ME7
Post by: AndiS4 on May 29, 2012, 05:05:37 AM
So did I understand it right, that I just have to Ceck the first 512kb on 1024kb files? Does this work on all ME7 1024kb files?
Do I have to check the second half aswell?



Title: Re: Checksum checker for ME7
Post by: vwmaniac on June 02, 2012, 08:04:36 PM
Oh i see, thank you very much, i just finished the ME7.1 install on our 98 jetta vr6 so i can now creat a file for the motor trans setup i have put together for it.


Title: Re: Checksum checker for ME7
Post by: Nottingham on August 18, 2012, 01:18:36 PM
"Warning: modified all_param_start = 808000 found at 808030"

This is because of APR shuffling?


Title: Re: Checksum checker for ME7
Post by: Skibum513 on January 13, 2013, 09:07:03 PM
So I ran a bin through the MTX plugin to correct it (disabled the sai for emissions) However the check is still showing one error? running the 1.11 version and not sure if my mtx plugin is wrong or what has anyone had this happen befor?


Title: Re: ME7Check: Checksum checker for ME7
Post by: rufusgti on March 26, 2013, 12:24:32 AM
Hi guys!
 :(  It's only works for VAG files. I have a VOLVO S60T5 (2001 ,ME7.0)and didn't work!
File not recognized as ME7 ,stopping analysis .....this tell me ME7Check.exe with my bin file.


Title: Re: ME7Check: Checksum checker for ME7
Post by: player on April 30, 2013, 02:02:31 PM
yes..this tool is strict for VAG me 7 usage!


Title: Re: ME7Check: Checksum checker for ME7
Post by: fknbrkn on August 01, 2013, 05:14:19 AM
easy using with tunerPro to check currently opened BIN:

(http://i49.fastpic.ru/big/2013/0801/90/579af94a1f8a26babeecf9f4a0ea2190.png) (http://fastpic.ru/)


Title: Re: ME7Check: Checksum checker for ME7
Post by: Lost on February 13, 2014, 01:09:10 PM
What does Romsys checksum failure(s) found mean and how can I get rid of it?

My file is 8D0907551K



Title: Re: ME7Check: Checksum checker for ME7
Post by: nyet on February 13, 2014, 01:19:56 PM
What does Romsys checksum failure(s) found mean and how can I get rid of it?

My file is 8D0907551K



Unfortunately, it is a known limitation of ME7Sum, and nobody has figured out how to fix it yet.

http://nefariousmotorsports.com/forum/index.php?topic=3347.msg32324#msg32324


Title: Re: ME7Check: Checksum checker for ME7
Post by: Lost on February 13, 2014, 01:37:15 PM
Than I am stuck!

I got my Mtx licence for the checksum correction Tunerpro plugin.
Everything is correctly installed.
When I edit my file in Tunerpro and save .bin.
I get the massage that "no correction has been made. Are you sure you edited your file?"
And for sure, if I re- open my saved file, non of my Changes has taken Place. Like i did not touched it.

What is all the about?

I am using it on Windows 7 home 64.


Title: Re: ME7Check: Checksum checker for ME7
Post by: AARDQ on February 13, 2014, 03:25:31 PM
Than I am stuck!

I got my Mtx licence for the checksum correction Tunerpro plugin.
Everything is correctly installed.
When I edit my file in Tunerpro and save .bin.
I get the massage that "no correction has been made. Are you sure you edited your file?"
And for sure, if I re- open my saved file, non of my Changes has taken Place. Like i did not touched it.

What is all the about?

I am using it on Windows 7 home 64.


You need to save the changes you made first in the modified table or scalar, then save the file.  Good possibility, anyway.


Title: Re: ME7Check: Checksum checker for ME7
Post by: phila_dot on February 13, 2014, 04:31:22 PM
I remember people having problems with changes not saving when the XDF header was not setup properly.


Title: Re: ME7Check: Checksum checker for ME7
Post by: Lost on February 13, 2014, 10:31:28 PM
You need to save the changes you made first in the modified table or scalar, then save the file.  Good possibility, anyway.

It must be something i am doing wrong.
I should be able to edit my file, with or without checksum.
I am pretty sure i save the table first, couse i get massage, table has been edited. Will u save the changes.
then i hit save bin as. But no changes has been saved.
Am i right?


Title: Re: ME7Check: Checksum checker for ME7
Post by: Lost on February 13, 2014, 10:32:47 PM
I remember people having problems with changes not saving when the XDF header was not setup properly.

Ok, how should it be setup?


Title: Re: ME7Check: Checksum checker for ME7
Post by: Lost on February 13, 2014, 10:46:58 PM
Done

It was .BIN size in XDF header info.
Changed from 0000 - 100000
Works perfectly!!


Title: Re: ME7Check: Checksum checker for ME7
Post by: mx450 on May 27, 2014, 10:04:03 PM
I got a original file from audi a4, it is indeed original file. but always got checksum error especially the RSA part.

Any idea?
original attached.



--------------------------------------------------------------------


ME7Check v1.12 (c) mki, 06/2004-05/2012
Checking file D:\8E0909518AC.v0002_ORI.bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = 06.02
-> EPK = 40/1/ME7.5/5/4016.32//24F/Dst02o/190702//
-> Contents of ECUID data table:
   - '0261207936'         (SSECUHN)
   - '1037366448'         (SSECUSN)
   - '8E0909518AC '       (VAG part number)
   - '0002'               (VAG sw number)
   - '1.8L R4/5VT    '    (engine id)
-> Contents of ECUID data table:
   - 'HW_MAN004'

Reading out of flash space at address FFFFFF7A
Reading out of flash space at address FFFFFF7B
Wrong RSA key size (0), expected 1024                 ** NOT OK **
Reading out of flash space at address FFFFFF7C
Reading out of flash space at address FFFFFF7D
Reading out of flash space at address FFFFFF7E

<skipped................................................................>
<skipped................................................................>
<skipped................................................................>
<skipped................................................................>
<skipped................................................................>
<skipped................................................................>

Reading out of flash space at address FFFFFFFE
Reading out of flash space at address FFFFFFFF
rsa: signature too large for modulus

RSA signature failure found
-> Found 2 errors!!!   *******************************





Title: Re: ME7Check: Checksum checker for ME7
Post by: Kenmaira on July 03, 2014, 02:04:30 PM
So I've been trying to use this tool to check a bin, however as soon as I type in everything into the command prompt, it flashes open a second cmd window and closes instantly. Is this normal?


Title: Re: ME7Check: Checksum checker for ME7
Post by: SB_GLI on July 03, 2014, 03:17:29 PM
VisualME7Logger has a Checksum Validation screen to make this easier on you.


Title: Re: ME7Check: Checksum checker for ME7
Post by: b4A4nowA6 on September 02, 2014, 11:55:02 AM
VisualME7Logger has a Checksum Validation screen to make this easier on you.
Thanks for the tip.. I tried VisualME7Logger and I still can not perform the operation correctly.  Is there a specific ME7check that i shold be using in conjucntion?   I am on a windows 7? system


Title: Re: ME7Check: Checksum checker for ME7
Post by: Bi-turbo on September 03, 2014, 01:28:38 AM
I'm struggling to checksum 032HN bin from Octavia VRS 1.8t

Saying it cant open file or words to that effect


Title: Re: ME7Check: Checksum checker for ME7
Post by: b4A4nowA6 on September 03, 2014, 10:43:21 AM
VisualME7Logger has a Checksum Validation screen to make this easier on you.
Thanks. I got i figured out i think!


Title: Re: ME7Check: Checksum checker for ME7
Post by: Bi-turbo on September 08, 2014, 07:07:42 AM
I'm struggling to checksum 032HN bin from Octavia VRS 1.8t

Saying it cant open file or words to that effect

Got this further along but it wont fully complete, saying one incorrectable error??


Title: Re:
Post by: slimwadey on September 08, 2014, 10:09:57 AM
Which version are you using?  the latest version checked my VRS hn file ok


Title: Re:
Post by: Bi-turbo on September 08, 2014, 11:48:47 PM
Which version are you using?  the latest version checked my VRS hn file ok

Unsure, ill check later, which is the newest update, quite a few to chose from on the 1st post...


Title: Re: ME7Check: Checksum checker for ME7
Post by: Bi-turbo on September 09, 2014, 04:09:34 AM
The one im using is

ME7Tool <v0.0.5>

Whats is the newest version??


Title: ME7Check: Checksum checker for ME7
Post by: slimwadey on September 11, 2014, 03:54:31 PM
Are you talking about me7 check ?
If so the latest version is
280512, updated V1.12:
Found here http://nefariousmotorsports.com/forum/index.php?topic=447.0 (http://nefariousmotorsports.com/forum/index.php?topic=447.0)


Title: Re: ME7Check: Checksum checker for ME7
Post by: Bi-turbo on September 15, 2014, 12:11:53 AM
Thanks


Title: Re: ME7Check: Checksum checker for ME7
Post by: kruftindustries on November 01, 2014, 05:28:45 AM
Works Great! Thanks!

==============================================================================
ME7Check v1.12 (c) mki, 06/2004-05/2012
Checking file Audi_A4_B5_AWM.bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = 05.12
-> EPK = 40/1/ME7.5/5/4012.01//24b/Dst01o/110700//
-> Contents of ECUID data table:
   - '0261207216'         (SSECUHN)
   - '1037360101'         (SSECUSN)
   - '4B0906018CH '       (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.   *********************


Title: Re: ME7Check: Checksum checker for ME7
Post by: digitalhippie on December 09, 2014, 06:31:32 AM
I have a ME7.1.1 file that I read from the ECU and me7check claims it fails checksum.  Is this a bad read?  Or a bug?


Title: Re: ME7Check: Checksum checker for ME7
Post by: nyet on December 09, 2014, 11:08:39 AM
Probably bad RSA sig

Post the error, also the output of ME7Sum


Title: Re: ME7Check: Checksum checker for ME7
Post by: digitalhippie on December 09, 2014, 02:41:38 PM
==============================================================================
me7check v1.12 (c) mki, 06/2004-05/2012
Checking file yuri\orig_4D0907560AF.bin (size=1048576)
Reading Version Strings...
-> Bootrom Version = 06.02
-> EPK = 42/1/ME7.1.1/5/8001.02//23h/Dst0Go/310700//
-> Contents of ECUID data table:
   - '0261206844'         (SSECUHN)
   - '1037360174'         (SSECUSN)
   - '4D0907560AF '       (VAG part number)
   - '0004'               (VAG sw number)
   - '4.2l V8/5V      '   (engine id)
-> Contents of ECUID data table:
   - 'HW_MAN004'

Page checksum failure(s) found
Overall checksum failure found
-> Found 2 errors!!!   *******************************



ME7Tool (v0.0.5) [ Management tool for Bosch ME7.x firmwares]
Inspiration from Andy Whittaker's tools and information
Written by 360trev and nyet [BSD License Open Source].

Processed 19 elements with 17 issues
Processed 6 elements with 6 issues

Attemping to open firmware file 'yuri\orig_4D0907560AF.bin'
├╛ Opening 'yuri\orig_4D0907560AF.bin' file
├╛ Getting length of 'yuri\orig_4D0907560AF.bin' file
├╛ Allocating buffer of 1048576 bytes
├╛ Reading file to buffer
├╛ Validating size correct 1048576=1048576
├╛ Closing file

Step #1: Reading main ROM CRC...
 Searching for main ROM CRC pre block...OK
 Searching for main ROM CRC blocks...OK
 Searching for main ROM CRC offsets...OK
 0) Adr: 0x0183F0-0x0183F9                      CalcCRC: E4B29542
 1) Adr: 0x010002-0x013FFE @967da CRC: 62384178 CalcCRC: 62384178(r)  CRC OK
 2) Adr: 0x014252-0x017F4E @967e0 CRC: A00C1BE9 CalcCRC: A00C1BE9(r)  CRC OK
 3) Adr: 0x018192-0x01FBDC                      CalcCRC: 73EDEAD4(r)
 4) Adr: 0x026A00-0x02FFFC @967e6 CRC: 55CEE7C0 CalcCRC: 55CEE7C0(r)  CRC OK

Step #2: Reading main ROM checksum...
 Searching for main ROM checksum...OK
 ROM Checksum Block Offset Table @1ec66 [16 bytes]:
 1) Adr: 0x000000-0x00FBFF
 2) Adr: 0x00FC00-0x01FFFF  MAP REGION SKIPPED, NOT PART OF MAIN CHECKSUM
 3) Adr: 0x020000-0x0FFFFF
 @fffe0 Chksum : 0x3B45F98A CalcChk: 0x3B3C9FD9 ** NOT OK **

Step #3: Reading Multipoint Checksum Block...
 Searching for multipoint block descriptors...OK
 1) <1fbfe>  Adr: 0x000000-0x003FFF Chk: 0x0E59D5C8 CalcChk: 0x0E59D5C8  OK
 2) <1fc0e>  Adr: 0x004000-0x007FFF Chk: 0x1077FB35 CalcChk: 0x1077FB35  OK
 3) <1fc1e>  Adr: 0x008000-0x00BFFF Chk: 0x0F958ADE CalcChk: 0x0F958ADE  OK
 4) <1fc2e>  Adr: 0x00C000-0x00FBFF Chk: 0x17554405 CalcChk: 0x17554405  OK
 5) <1fc3e>  Adr: 0x010000-0x013FFF Chk: 0x0778F2BD CalcChk: 0x0778F2BD  OK
 6) <1fc4e>  Adr: 0x014000-0x017F4F Chk: 0x0C6DB60B CalcChk: 0x0C6DB60B  OK
 7) <1fc5e>  Adr: 0x018190-0x01BFFF Chk: 0x0681F04A CalcChk: 0x0681F04A  OK
 8) <1fc6e>  Adr: 0x01C000-0x01FFFF Chk: 0x0793E97F CalcChk: 0x0793E97F  OK
 9) <1fc7e>  Adr: 0x020000-0x023FFF Chk: 0x155E8AD6 CalcChk: 0x155E8AD6  OK
10) <1fc8e>  Adr: 0x024000-0x027FFF Chk: 0x1527E542 CalcChk: 0x1527E542  OK
11) <1fc9e>  Adr: 0x028000-0x02BFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
12) <1fcae>  Adr: 0x02C000-0x02FFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
13) <1fcbe>  Adr: 0x030000-0x033FFF Chk: 0x144E2ADE CalcChk: 0x144E2ADE  OK
14) <1fcce>  Adr: 0x034000-0x037FFF Chk: 0x0ED2968C CalcChk: 0x0ED2968C  OK
15) <1fcde>  Adr: 0x038000-0x03BFFF Chk: 0x0F9DCECF CalcChk: 0x0F9DCECF  OK
16) <1fcee>  Adr: 0x03C000-0x03FFFF Chk: 0x0F6D7B5F CalcChk: 0x0F6D7B5F  OK
17) <1fcfe>  Adr: 0x040000-0x043FFF Chk: 0x0F777775 CalcChk: 0x0F777775  OK
18) <1fd0e>  Adr: 0x044000-0x047FFF Chk: 0x0E48713D CalcChk: 0x0E48713D  OK
19) <1fd1e>  Adr: 0x048000-0x04BFFF Chk: 0x0FF7767C CalcChk: 0x0FF7767C  OK
20) <1fd2e>  Adr: 0x04C000-0x04FFFF Chk: 0x107F2531 CalcChk: 0x107F2531  OK
21) <1fd3e>  Adr: 0x050000-0x053FFF Chk: 0x0EAA25F2 CalcChk: 0x0EAA25F2  OK
22) <1fd4e>  Adr: 0x054000-0x057FFF Chk: 0x0F08B3F5 CalcChk: 0x0F08B3F5  OK
23) <1fd5e>  Adr: 0x058000-0x05BFFF Chk: 0x0F2EE5A7 CalcChk: 0x0F2EE5A7  OK
24) <1fd6e>  Adr: 0x05C000-0x05FFFF Chk: 0x105606E9 CalcChk: 0x105606E9  OK
25) <1fd7e>  Adr: 0x060000-0x063FFF Chk: 0x1177AADA CalcChk: 0x1177AADA  OK
26) <1fd8e>  Adr: 0x064000-0x067FFF Chk: 0x11C2903A CalcChk: 0x11B93689 ** NOT O
K **
27) <1fd9e>  Adr: 0x068000-0x06BFFF Chk: 0x0FAD80F9 CalcChk: 0x0FAD80F9  OK
28) <1fdae>  Adr: 0x06C000-0x06FFFF Chk: 0x1079CA45 CalcChk: 0x1079CA45  OK
29) <1fdbe>  Adr: 0x070000-0x073FFF Chk: 0x0DD8A5C2 CalcChk: 0x0DD8A5C2  OK
30) <1fdce>  Adr: 0x074000-0x077FFF Chk: 0x0D83B7CC CalcChk: 0x0D83B7CC  OK
31) <1fdde>  Adr: 0x078000-0x07BFFF Chk: 0x10494A5E CalcChk: 0x10494A5E  OK
32) <1fdee>  Adr: 0x07C000-0x07FFFF Chk: 0x0FFB5A5F CalcChk: 0x0FFB5A5F  OK
33) <1fdfe>  Adr: 0x080000-0x083FFF Chk: 0x0FED6005 CalcChk: 0x0FED6005  OK
34) <1fe0e>  Adr: 0x084000-0x087FFF Chk: 0x0E1B5C09 CalcChk: 0x0E1B5C09  OK
35) <1fe1e>  Adr: 0x088000-0x08BFFF Chk: 0x0E515A83 CalcChk: 0x0E515A83  OK
36) <1fe2e>  Adr: 0x08C000-0x08FBFF Chk: 0x0E7EF9D2 CalcChk: 0x0E7EF9D2  OK
37) <1fe3e>  Adr: 0x090000-0x093FFF Chk: 0x0FB9129F CalcChk: 0x0FB9129F  OK
38) <1fe4e>  Adr: 0x094000-0x097FFF Chk: 0x11C99259 CalcChk: 0x11C99259  OK
39) <1fe5e>  Adr: 0x098190-0x09BFFF Chk: 0x0F15C999 CalcChk: 0x0F15C999  OK
40) <1fe6e>  Adr: 0x09C000-0x09FFFF Chk: 0x0F138982 CalcChk: 0x0F138982  OK
41) <1fe7e>  Adr: 0x0A0000-0x0A3FFF Chk: 0x0F553515 CalcChk: 0x0F553515  OK
42) <1fe8e>  Adr: 0x0A4000-0x0A7FFF Chk: 0x10FE7E91 CalcChk: 0x10FE7E91  OK
43) <1fe9e>  Adr: 0x0A8000-0x0ABFFF Chk: 0x12121D93 CalcChk: 0x12121D93  OK
44) <1feae>  Adr: 0x0AC000-0x0AFFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
45) <1febe>  Adr: 0x0B0000-0x0B3FFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
46) <1fece>  Adr: 0x0B4000-0x0B7FFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
47) <1fede>  Adr: 0x0B8000-0x0BBFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
48) <1feee>  Adr: 0x0BC000-0x0BFFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
49) <1fefe>  Adr: 0x0C0000-0x0C3FFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
50) <1ff0e>  Adr: 0x0C4000-0x0C7FFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
51) <1ff1e>  Adr: 0x0C8000-0x0CBFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
52) <1ff2e>  Adr: 0x0CC000-0x0CFFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
53) <1ff3e>  Adr: 0x0D0000-0x0D3FFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
54) <1ff4e>  Adr: 0x0D4000-0x0D7FFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
55) <1ff5e>  Adr: 0x0D8000-0x0DBFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
56) <1ff6e>  Adr: 0x0DC000-0x0DFFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
57) <1ff7e>  Adr: 0x0E0000-0x0E3FFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
58) <1ff8e>  Adr: 0x0E4000-0x0E7FFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
59) <1ff9e>  Adr: 0x0E8000-0x0EBFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
60) <1ffae>  Adr: 0x0EC000-0x0EFFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
61) <1ffbe>  Adr: 0x0F0000-0x0F3FFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
62) <1ffce>  Adr: 0x0F4000-0x0F7FFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
63) <1ffde>  Adr: 0x0F8000-0x0FBFFF Chk: 0x1FFFE000 CalcChk: 0x1FFFE000  OK
64) <1ffee>  Adr: 0x0FC000-0x0FFFFF Chk: 0x1FFDE002 CalcChk: 0x1FFDE002  OK
[64 x <16> = 1024 bytes]

*** DONE! 0/2 errors corrected in yuri\orig_4D0907560AF.bin! ***


Title: Re: ME7Check: Checksum checker for ME7
Post by: nyet on December 09, 2014, 02:51:13 PM
You have a VERY old version of ME7Sum.


Title: Re: ME7Check: Checksum checker for ME7
Post by: digitalhippie on December 09, 2014, 03:07:21 PM
Sorry, updated

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 'yuri\orig_4D0907560AF.bin'

Step #1: Reading ROM info ..
 Searching for EPK signature...OK
 Searching for ECUID table...OK
 EPK         : '42/1/ME7.1.1/5/8001.02//23h/Dst0Go/310700//'
 Part Number : '4D0907560AF '
 Engine ID   : '4.2l V8/5V      '
 SW Version  : '0004'
 HW Number   : '0261206844'
 SW Number   : '1037360174'

Step #2: Reading ROMSYS ..
 Startup section: word[0x008000]+word[0x00FFFE]
 @008038 Add=0x00F30F CalcAdd=0x00F30F  ADD OK
 Program pages: 8k page first+last in 0x0000-0xFFFF and 0x20000-0xFFFFF
 @00803c Add=0xA272CE CalcAdd=0xA272CE  ADD OK
 All param page: word[0x010000]+word[0x01FFFE]
 @01b95e 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) 0x0183F0-0x0183F9                      CalcCRC: E4B29542
 1) 0x010002-0x013FFE @967da CRC: 62384178 CalcCRC: 62384178(r) CRC OK
 2) 0x014252-0x017F4E @967e0 CRC: A00C1BE9 CalcCRC: A00C1BE9(r) CRC OK
 3) 0x018192-0x01FBDC                      CalcCRC: 73EDEAD4(r)
 4) 0x026A00-0x02FFFC @967e6 CRC: 55CEE7C0 CalcCRC: 55CEE7C0(r) CRC OK

Step #6: Reading Main Program Checksums ..
 Searching for main program checksum..OK
 ROM Checksum Block Offset Table @1ec66 [16 bytes]:
 1) 0x000000-0x00FBFF CalcChk: 45BC9FE0
    0x00FC00-0x01FFFF CalcChk: 24BA2C1E CalcCRC: 42187B3C SKIPPED
 2) 0x020000-0x0FFFFF
    <fffe0>  Chk: 3B45F98A CalcChk: 3B3C9FD9 ** NOT OK **

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: 0E59D5C8 Boot: (whitelisted) OK
 2) <1fbee>  0x004000-0x007FFF Chk: 1077FB35 Boot: (whitelisted) OK
 3) <1fbfe>  0x000000-0x003FFF Chk: 0E59D5C8 CalcChk: 0E59D5C8 OK
 4) <1fc0e>  0x004000-0x007FFF Chk: 1077FB35 CalcChk: 1077FB35 OK
28) <1fd8e>  0x064000-0x067FFF Chk: 11C2903A CalcChk: 11B93689 ** NOT OK **
 Multipoint #2: [66 blocks x <16> = 1056 bytes]

*** Found 71 checksums in yuri\orig_4D0907560AF.bin

*** WARNING! 2/2 uncorrected error(s) in yuri\orig_4D0907560AF.bin! ***


Title: Re: ME7Check: Checksum checker for ME7
Post by: nyet on December 09, 2014, 03:10:11 PM
Yup. Definitely checksum errors. Not sure why you haven't seen any DTCs but perhaps checksum checking is disabled in that file.

You can try correcting the file and writing it back, but if it is working, I don't see a good reason to mess with it.


Title: Re: ME7Check: Checksum checker for ME7
Post by: digitalhippie on December 09, 2014, 03:11:13 PM
Well I do have to make some changes.  Coding out SAI/Rear-O2.  So I guess I'll try to correct all of the checksum errors.  Thanks


Title: Re: ME7Check: Checksum checker for ME7
Post by: igo300 on February 21, 2015, 04:04:38 PM
What does Romsys checksum failure(s) found mean and how can I get rid of it?

My file is 8D0907551K



Just wondering if there has been any update on this checksum error


Title: Re: ME7Check: Checksum checker for ME7
Post by: nyet on February 21, 2015, 11:16:50 PM
Just wondering if there has been any update on this checksum error

the latest version of me7sum should have no issues


Title: Re: ME7Check: Checksum checker for ME7
Post by: igo300 on February 22, 2015, 02:05:33 PM
the latest version of me7sum should have no issues

Tried v1.03 but still getting "Romsys checksum failure(s) found
-> Found 1 error !!!    ****************"



Title: Re: ME7Check: Checksum checker for ME7
Post by: igo300 on February 25, 2015, 05:13:39 AM
Tried v1.03 but still getting "Romsys checksum failure(s) found
-> Found 1 error !!!    ****************"



ECUFix got it sorted
Thanks Andy


Title: Re: ME7Check: Checksum checker for ME7
Post by: nyet on February 25, 2015, 10:32:34 AM
ECUFix got it sorted
Thanks Andy

Please post the bins.. i'd like to properly fix ME7Sum if that is the issue.


Title: Re: ME7Check: Checksum checker for ME7
Post by: acab on April 16, 2015, 02:44:55 PM
Its possible add support of ME7.01?

D:\Volvo>ME7Check.exe 0261208289.hex
==============================================================================
ME7Check v1.12 (c) mki, 06/2004-05/2012
Checking file 0261208289.hex (size=1048576)
Reading Version Strings...
-> Bootrom Version = 44.44 (UNKNOWN)!!        ** NOT OK **
-> EPK = 45/1/ME701/19///70195G6/70195G6/140504114927/..
-> ECUID data table not found                 ** NOT OK **
-> file not recognized as ME7, stopping analysis


Title: Re: ME7Check: Checksum checker for ME7
Post by: FreeRideSkier on June 02, 2016, 11:19:30 AM
Works fine on Win10 64bit!

Use the Windows+R key to get the Run dialogue box, then enter CMD to open the command window.

Then navigate to your folder using :

cd C:\Users\myname\Documents\myfolder


To run type ME7Check.exe follwed by your .bin file name:

C:\Users\myname\Documents\myfolder>ME7Check.exe mybinapx.bin

The report should look like this:

==============================================================================
ME7Check v1.08 (c) mki, 06/2004-04/2011
Checking file mybinapx.bin (size=524288)
Reading Version Strings...
-> Bootrom Version = 05.12
-> EPK = 42/1/ME7.5/5/4018.10//F19x6/Dst02o/101299/
-> Contents of ECUID data table:
   - '0261206797'         (SSECUHN)
   - '1037354094'         (SSECUSN)
   - '8L0906018N  '       (VAG part number)
   - '0002'               (VAG sw number)
   - '1.8L R4/5VT         '   (engine id)
-> Contents of ECUID data table:
   - 'HW_MAN004'

-> No errors found. File is OK.   *********************

I hope this helps...


Title: Re: ME7Check: Checksum checker for ME7
Post by: SteveAR on February 20, 2017, 04:56:50 PM
Is this tool designed to check CS's in any BIN file?   I just used some of the other tools available on this site to download BIN/image from my EEPROM.   I used this checker tool on both a un-touched version of this BIN and a VIN-modified version of the BIN. Then on another stock EEPROM dump BIN.  I got errors (xxx.bin has not correct length 0x200 and 0x400.  expecting 0x80000 and 0x100000)     The tool (94050tool) has CS correction built in, but I was just trying to see if it had worked.  Is this tool only meant for the main flash? (not sure the correct term for it)  I'm guessing based on the memory sizes it was expecting to see it's only for CS correction on the main flash.
Thanks!


Title: Re: ME7Check: Checksum checker for ME7
Post by: nyet on February 20, 2017, 05:30:45 PM
Yes. Main flash, not EEPROM.


Title: Re: ME7Check: Checksum checker for ME7
Post by: Khendal on April 18, 2017, 04:27:17 PM
Hello... after do a Me7Check, and Me7sum with 9/9 error corrected ... i re-check the file and it says Romsys checksum error... if i re-sum the checksummed file the error disappear...but...is it correct ? The car will start up ? Or i need to find another way to check and sum ?

These are the screens:


Title: Re: ME7Check: Checksum checker for ME7
Post by: Khendal on April 18, 2017, 04:31:43 PM
This is the file checksummed the second time and re-checked... seems be all fine...but is it safe ? :)


Title: Re: ME7Check: Checksum checker for ME7
Post by: nyet on April 18, 2017, 09:18:09 PM
https://github.com/nyetwurk/ME7Sum/issues/7


Title: Re: ME7Check: Checksum checker for ME7
Post by: Khendal on April 19, 2017, 12:42:50 AM
https://github.com/nyetwurk/ME7Sum/issues/7

So this means :
Quote
Checksum corrections that affect previously checked areas do not cause the previously checked area to be checksummed again.

Work around is to run ME7Sum two or more times (iteratively) on successive "fixed" files.

It's right what i have done... i can use the file in securely :)

Thank you very much Nyet.


Title: Re: ME7Check: Checksum checker for ME7
Post by: 323toslow on January 12, 2019, 04:01:52 PM
I know this is an old thread but I am hoping someone could help me clarify a couple of things.
I am working on a TunerPro definition for my ecu (‘04 Passat AWM).

What is the line EPK in me7check all about, what does it mean?
In me7check, is SSECUHN & SSECUSN just the bosch “acronym” for hardware number and serial number?


Title: Re: ME7Check: Checksum checker for ME7
Post by: nyet on January 13, 2019, 09:24:04 PM
I know this is an old thread but I am hoping someone could help me clarify a couple of things.
I am working on a TunerPro definition for my ecu (‘04 Passat AWM).

What is the line EPK in me7check all about, what does it mean?
In me7check, is SSECUHN & SSECUSN just the bosch “acronym” for hardware number and serial number?

Hint
SSECUHN & SSECUSN


Title: Re: ME7Check: Checksum checker for ME7
Post by: 323toslow on January 15, 2019, 10:06:52 AM
Hint
SSECUHN & SSECUSN
Got it.
Any chance you would hint at what the values after EPK are all about?