Toyota Nation Forum banner

1 - 20 of 26 Posts

·
Speedkar99 on YouTube
2003 Camry
Joined
·
1,892 Posts
Discussion Starter #1 (Edited)
Video:


Introduction

Here’s how to reprogram your digital odometer to read whatever mileage you want. It great for cluster swaps, as in my case I swapped a Lexus ES300 cluster into my Toyota Solara.

Many cars store digital odometer values on the instrument cluster itself. It’s stored on a little chip on the speedometer circuit board; it’s called an EEPROM chip, usually of the 93C46, 93C56 or 93C66 variety.
Once you get access to the chip by opening the cluster, it can be de-soldered and either swapped or reprogrammed.

I have gone through extensive testing and decoded the chip to present the following procedure. I’ve worked with Camry, Solara and ES300 clusters which are all interchangeable, but the procedure should be the same for many, many cars that use a similar chip setup, with only the programming differing.

Legal Stuff
It’s perfectly okay to change your odometer reading by yourself. However, it is illegal to roll back or misrepresent the mileage without disclosing to a potential purchaser of your vehicle that the odometer has been tampered with. Keep clean.

References

http://www.rs25.com/forums/f105/t105267-diy-reprogram-odometer-your-swapped-dash.html

Tools and parts needed:

· Screwdrivers
· Soldering iron, solder and a de-soldering pump
· Computer with Windows XP and serial port
· 8 pin DIP socket
· Serial programmer
o Breadboard
o Hookup wire
o Female serial port header
o 5V from computer power supply
o 4.7K ohm resistors
o 5V zener diodes
o Wire strippers
· Serial programming software (PonyProg freeware)
· A spare instrument cluster in case you screw up

A full write up with more detailed pictures of the Lexus ES300 cluster can be found here:

http://www.clublexus.com/forums/es300-and-es330/740730-diy-odometer-reprogramming.html

The Camry cluster is easier to take apart to access the chip, here are a few pictures.

Disassembly

The ES300 cluster I got from the junkyard now reads 629,209 km.



For more information on how I did the retrofit to my Solara, see this video,


And you can read more of the write-up here:

https://www.toyotanation.com/forum/...exus-es300-instrument-cluster-conversion.html

First thing is to remove the cluster from the vehicle.

Here’s a quick video illustrating the procedure:




Flip it over and remove these tabs to take off the clear and black bezel.





Then you should be left with something like this. Note: You don’t need to take off the needles in order to get access to the odometer chip.



Then remove these 5 screws from the back that hold the speedometer unit to the main casing.



Speedometer / odometer board will just pop right out.



Here’s what the chip looks like on the PCB once you turn it over. It’s a 93C46 EEPROM chip.



De-solder the chip. Use the de-soldering pump to suck away excess solder on the joint, but be careful not to damage the solder pads, as you’ll need to re-solder to those.



Here’s the chip de-soldered from the board.





A DIP socket was soldered in to provide quick swapping of chips when testing various programs.



The next stage is to connect the EEPROM chip to the computer for reprogramming. A serial programmer can be bought off eBay, or you could build one yourself for a couple of cents.

Here’s the original schematic, which included a voltage regulator, which drew 5V directly from the serial port.




It didn’t work for us, so we opted to take 5V from the computer’s power supply. There shouldn’t be an issue with this, since the grounds are common.



Here’s my home-made serial programmer, as basic as it gets.



Here’s my hacked connection to the serial port, because I ordered the wrong serial port header.



Here’s a pin-out of the serial port for the connections.



Once the chip is connected and powered on, open up your serial programming software. I used PonyProg, which is a freeware that can read information from the serial port. It can be downloaded here: http://www.lancos.com/prog.html

First start with a calibration under the options menu, and then go to setup.



Set the I/O to Serial, select the COM port, and leave everything else unchecked.



Then go to device, select, microwire eeprom and select your chip type. The Camry/ ES300/ Corolla of this vintage all use the 9346.



Click the top left hand icon to read data from the device. You’ll be presented with a dump of what’s in the EEPROM chip.

The odometer readings are stored in lines 00 and 10 for these cars. As indicated below, it’s coded in hexadecimal, in a cluster of four digits, repeated three times. These are the values we have to edit. There are sometimes little symbols on the right hand side of the dump that tend to point to the last digit/ data that was changed, which can give a clue when trying to decode these chips.



If you can obtain a copy of TachSoft software, it can vastly help with the decoding process, and determining what kind of chip you have.





Decoding
In the example above, the odometer read 629,209 km. The hex values in the addresses sited above read 6D FA FF 9D. As it turns out, each of those hex digits correspond to a digit on the odometer readout by means of an inverted hex. The inverted hex is essentially 0-9, then A-F, backward as noted in this lookup table.



The first digit “6” corresponds to the thousandths column, the second digit “D” corresponds to the hundredths column, the third digit “F” corresponds to the tenths column, the middle three digits are unknown, the seventh digit “9” corresponds to the one-hundred-thousandths column and the eighth digit corresponds to the ten-thousandths column.

I haven’t yet figured out what controls the ones column, but I don’t think it matters as much as changing the first 5 columns.

If we take the inverse of each hex digit using the lookup table, put these together, you can see how the code forms the odometer reading, 629,20x km.

I made an excel sheet to calculate all the inverted hex values when I type in my desired mileage.



In my case, the desired reading is 265,650km, which corresponds to A9 AF FF D9. I need to replace the hex values in each of the three spots it’s repeated in the EEPROM code. Click edit, then Edit Buffer Enable in PonyProg to enable editing. Good idea if you saved the original chip dump in case something gets messed up during editing.



Then click the second top left button to write the new edited file to the chip. Then click Edit, Verify to verify the write was successful.



Done with the programming! Disconnect the circuit and place the chip in the correct orientation on the DIP socket on the odometer circuit board.



Reinstallation
Pretty much the reverse as taking it apart.
Replace the speedometer board into the gauge housing and screw in the 5 screws at the back of the cluster.



Replace the black bezel and wipe it from all finger-prints.



Replace the clear cover.



Reinstall the gauge cluster into the vehicle.



Turn on the vehicle and check to make sure all the gauges work. Note my new mileage reading, 265K km, which is correct for my vehicle.

Take a test drive and make sure all the gauges including the odometer works properly.




Now you can sit back and enjoy your corrected mileage reading without being flagged come inspection time.
 

·
2001 Camry XLE 1MZ-FE
2001 Camry XLE
Joined
·
1,656 Posts
This has to be one of the best write-ups ever. Very detailed, and very well done. :thumbsup::thumbsup:

How on earth did you ever figure this all out. Way over my head, that's for sure.

Great job, well done.
 
  • Like
Reactions: speedkar9

·
Registered
Joined
·
5,344 Posts
Wow great job! Wish I could have known this back when I did my trans swap and new engine...too bad it's been through inspections a few times now and already flagged once.
 
  • Like
Reactions: speedkar9

·
TN Pussy Man
Camry
Joined
·
13,302 Posts
Awesome write up! It def takes a lot of different skills to figure something out like this.
 
  • Like
Reactions: speedkar9

·
Speedkar99 on YouTube
2003 Camry
Joined
·
1,892 Posts
Discussion Starter #5
Thanks all.

How on earth did you ever figure this all out. Way over my head, that's for sure.
I followed the link in the reference who did a similar procedure on Subaru clusters. I researched and didn't find it done for Toyota, and having done a cluster swap I was motivated to investigate if the odometer can be reprogrammed.

Once I did my background research, with the help of some junkyard clusters and my electronically savy brother, we figured out the programming. It took a few tries but we finally nailed it, with the help of the TachoSoft software.

Since there are quite a few people swapping clusters, I decided to document the process in detail in an easy to follow manner. It wasn't meant to be over-your-head but more of an instructional means for one to follow along and do this at home. The process isn't that hard, all you really need is a soldering iron and a few cents for resistors and zener diodes. :thumbsup:
 

·
Super Moderator
Various Toyotas
Joined
·
5,457 Posts
Wow, great DIY!

I wonder if this will work on a 9th generation Corolla ('03 - '08)? The issue with that Corolla is that Toyota designed the odometer to max-out at 300K. I'm at 263K right now and am wondering what I can do once it freezes at 300K (or maybe 299,999). I want my odometer to reflect the true and actual mileage of my Corolla after 300K. At the very least I'd like to be able to set it to Zero the second it gets to 300K, if I can't force it to start counting above 300K.

Anybody know anything about this particular issue?
 

·
Registered
Joined
·
1,050 Posts
Wouldn't it been easier to just swap the EEPROM chips to get your mileage correct?
I am assuming that the old EEPROM chip was still working.
 

·
Speedkar99 on YouTube
2003 Camry
Joined
·
1,892 Posts
Discussion Starter #8
I wonder if this will work on a 9th generation Corolla ('03 - '08)? The issue with that Corolla is that Toyota designed the odometer to max-out at 300K.
I've read about this issue in the thread on the Corolla forums.

If you willing to delve into the details of the remaining contents of the EEPROM chip, you could probably correct the issue.

To answer your question, the 9th Gen Corolla uses an EEPROM chip (its unclear if its the 93C46 or 93C56). The programming will differ slightly, but once you tackle that, you need to edit the fields and replace them with "F" hex characters to reset it all to zero.

Wouldn't it been easier to just swap the EEPROM chips to get your mileage correct?
I swapped to the ES300 cluster, then drove for 6 months, so the mileage from the old EEPROM wouldn't have accounted for the 10K I put on the car during that time. But yes, if your swapping clusters, you can swap EEPROM chips at the same time to negate the need for reprogramming.
 

·
Registered
1999 Camry S/wagon
Joined
·
168 Posts
Would you disclose to a potential buyer (if you sell) that you swapped the cluster from Lexus ES300 to a Toyota Solara?


OR if the original odometer was not working would you do the same process or replace with a new odometer with zero miles on it, keeping receipts and old odometer for legal proof.
 

·
Registered
Joined
·
575 Posts
Nice tutorial, I'm wondering if it could have been possible to program it in-circuit, without desoldering the EPROM? Heat and static electricity doesn't play well but adding a socket saves the need to solder it a 2nd time.

I guess make sure your soldering tip is hot to minimize the amount of time needed to melt the solder (and thus reducing the risk of heating up the chip and damage it)
 

·
Registered
Joined
·
26 Posts
Nice tutorial, I'm wondering if it could have been possible to program it in-circuit, without desoldering the EPROM? Heat and static electricity doesn't play well but adding a socket saves the need to solder it a 2nd time.

I guess make sure your soldering tip is hot to minimize the amount of time needed to melt the solder (and thus reducing the risk of heating up the chip and damage it)
Yes I was able to do it.
 

·
Registered
Joined
·
26 Posts
How? If I may ask?

I had a serial cable and cut off one side and use the side to pc. The cut end I striped off about 4 inches of the serial cable cover and solider to pin 1 to 4

once it's soldier to the chip cut about 2 inches from wires connected from pin 1 to 3 and solder the 4k7 and the 5v1 cathode end to the wire from chip. You can join the other end of the 5v1 together to the ground. The 3 4k7 other end goes back to the other side color you cut previously.

pin 8 on the chip i use the other wire to connect to PC 5v

pin 5 on the chip i use the same wire connect to the serial pin 5 and connected to the zener (ground)

using speedkar9 diagrams

from serial to chip:
3 to 1 (4k7 between)
6&7 to 2 (4k7 between)
4 to 3 (4k7 between)
8 to 4
5 to ground (5 on chip& the 3 zener doides)

I use heat shrink on all the wires
 

·
Speedkar99 on YouTube
2003 Camry
Joined
·
1,892 Posts
Discussion Starter #16
Thats great, so onboard chip programming works.

Did you do all that soldering on the odometer board itself, or on a breadboard and then to the odo board?
 

·
Registered
Joined
·
5 Posts
Swapping from US to Can

Hi all,

Just thought I'd revive this old thread with a few new questions as I'm attempting to do this procedure on my own vehicle. I just bought a used 05 Vibe originally from the US (I'm in Canada) and I pulled a cluster from an 05 Matrix (Canadian). Yes I know this is a Toyota forum, but there's more knowledge here than over there (heck even the guys over there are linking posts from here). I'm hoping speedkar9 is still active here or someone else might have some insight into this, so here goes:

1. At first glance, I can't find an EEPROM chip on the matrix/vibe cluster. Anyone can point me in the right direction? (I honestly haven't looked at it very thoroughly yet, I'll admit)

2. If I wanted to try zzyzzx's suggestion of simply swapping out the chip from the other cluster, how would this work since one is in Miles and the other in KMs? Is that information kept in the chip or elsewhere? Would the cluster automatically convert the values for me?

These next questions aren't odometer related, but still in the spirit of programming:

3. Does anyone know how to change the outside temperature reading from F to C?

4. My Vibe is AWD and the cluster I pulled came off a FWD matrix. The AWD models have a 45L fuel tank and the FWD models have a 50L tank. When I did a quick swap of the clusters to check function and mileage, I'm pretty sure I noticed a difference in the fuel gauge (likely because of the different programming for different size tanks), any idea if this can be changed?

Lastly, if anyone knows of any other possible problem I might encounter with this cluster swap that I might not be thinking of, feel free to let me know.

Thanks!
 

·
Speedkar99 on YouTube
2003 Camry
Joined
·
1,892 Posts
Discussion Starter #18
I'm hoping speedkar9 is still active here or someone else might have some insight into this,
I'm here.

The EEPROM chip is usually buried inside the cluster, near the odometer screen or near the speedometer because they're on the same circuit internally. You will have to open it up and look for an 8 pin black chip. It might be a surface mount chip (smaller than the one I had), so desoldering might be a bit tedious and you might be better off using a chip clip.

Now I can't comment on the miles and kilometers because I haven't swapped between the two. I assume now you want the car to read in kilometers so what you can do is compare the odometer dumps between the two to see if there's a certain HEX character in the program that differs (once you've decoded the odometer and trip counters). Otherwise just reprogram the Matrix kilometers to the correct converted Vibe mileage and keep it on the same cluster.

As for the fuel gauge, I believe its electronically a potentiometer. The gauge picks up the resistance reading from the potentiometer and presents that as a position on the dial. For the Matrix gauge to work, you'd need the fuel sender unit from the Matrix's tank or vise versa. Alternatively you could try changing the motor behind the fuel gauge needle from the Vibe cluster to the Matrix cluster, or experiment with adding a resistor in the line to make the gauge more accurate.
 

·
Registered
Joined
·
5 Posts
The EEPROM chip is usually buried inside the cluster
Found it, it was actually pretty obvious (I knew I should have looked better before posting, duh!)

Otherwise just reprogram the Matrix kilometers to the correct converted Vibe mileage and keep it on the same cluster.
I'll probably just give that a try. Do you happen to know if the calculation for distance is in the cluster? What I mean is that after I reprogram the metric cluster and put it in, will 1Km on the cluster be 1Km of actual distance, or is that calculation done elsewhere in the car and 1Km on the cluster be 1Mile in reality?

Alternatively you could try changing the motor behind the fuel gauge needle from the Vibe cluster to the Matrix cluster, or experiment with adding a resistor in the line to make the gauge more accurate.
I was thinking the same thing, swapping the gauge needle was my first thought, but I wasn't sure if it was the right idea. I'll probably end up pulling the Vibe cluster and putting them side by side to compare. With any luck I'll find a different part number between the gauges which will set any doubts aside.

Thanks for all the input! I'll be trying this whole procedure in the near future and I'll make sure to report back with my results.

:grin:
 

·
Registered
Joined
·
5 Posts
So here I am going through my things and checking what I need to buy to do this procedure and I pull out my old old laptop only to realize it doesn't have a Serial port (I figured it was old enough that it might have one). Has anyone experimented with USB to Serial converters? Any idea if it would work for a procedure like this?
 
1 - 20 of 26 Posts
Top