PGMFI Logo
Library> ManualChecksum Destinations: Home | Library | Change Log | Index
Search | Go

There are two ways to fix a checksum error. The first is to change the program of the ROM in such a way that the checksum routine is disabled / removed. Learn to code if you want to do this.

If you are content to workaround the checksum procedure, keep reading. The checksum in all OBD0 /1 ROMs is 8 bit - meaning it will vary from 0 to 255. (00-FF hex)

To figure out what the checkum is, you need to do a 8-bit Check Sum over the file. I believe the PM6 cares about the area from 0000-4FFF. Most OBD1 ECUs care about the whole ROM. I believe winhex can calculate this, and you can also get a utility called check8? from http://www.keil.com. This will work nicely too...

Anyways, lets say you run the checksum program and you get a checksum of A3 (hex). Subtract A3 from FF:

FF -A3 = 5C

Now find a "FF" somewhere in the range the ECU is using for checksum. It's best to look for a block of "FF"s as that generally indicates unused ROM space. Change the FF to whatever the result of your subtraction is. Voila. Checksum fixed.

Revision: r1.1 - 19 Feb 2004 - 23:25 GMT - blundar { Edit | Attach | History | More }
Copyright © 2002-present by the contributing authors. All material on this collaboration platform is the property of the
contributing authors, and is covered by the Non-Commercial Share-Alike License unless explicitly stated otherwise.
Ideas, requests, problems regarding the PGMFI TWiki?? E-Mail the WikiAdmin
Site Designed By: Digital Fusion   Need a website?