what keeps electronic odometer going?

Status
Not open for further replies.
Non Volitile memory of some kind. I'd say an EEPROM would cover this use nicely, or some sort of NVRAM. There is no need for any power to be applied to keep the memory alive in these types of applications.
 
There's a way of counting in binary that only requires one bit to be changed for each count, so less flashing would have to go on.

Gray code. That's it!
 
If you have a 1 megabit (which is a 128kB) EEPROM, and wrote one bit for each mile driven, you have enough room for one million miles. Simply write one bit as each mile is counted out.

I do believe that most of them store the 10ths or 100ths in RAM that will go away when the car battery is disconnected..so in theory, if you've got 25000.5 miles on your car with a digital odometer, you can stop the car and remove the battery, when you put it back in you'll be back at 25000 miles.

EEPROMs can wear out if reflashed (erased) too many times. The way I think it's done, the EEPROM never needs to be reflashed because a reflash (erase) is only necessary to change a 1 to a 0 (or vice-versa; I can't remember which). In fact, I would expect that an EEPROM used in a digital odemeter would not even have the pin used to flash (erase) it.

(When I say "flash" I actually mean "erase"; the flashing process consists of erasing the chip and then writing data on it).
 
1 megabit of EEPROM is expensive, if you are writing 1 mile per bit, then just use a PROM (write once only) should be sufficient.

They wouldn't rewrite the EEPROM every single time because it will wear out way before warranty expired. I suspect a combination of EPROM/RAM is what they used: RAM when engine running, write all the digits to EPROM when engine off (in binary/hex).

Or maybe a RAM/PROM combination, with PROM only storing the miles in 1000s and anything below store in RAM, this way you only need to keep 1k PROM for 1 million miles, way cheaper. But if you change battery, the hundreds mile will be reset (and people may do that intentionally).

I suspect the timing parameter is done the same way, writing it back to EEPROM when engine off, running off RAM when drive.
 
Not that expensive if it's a serial EEPROM. Parallel EEPROMs are quite expensive, though.

Digi-Key sells the Atmel AT24C1024W-10SI-2.7 SL383 for $1.11 in quantity 3000.

And, of course, one could use an EPROM without the erase window (the so-called OTP, one time programmable), since it's possible to change a 1 to a 0 on an EPROM without erasing it (the erasure process changes the 0s to 1s).

Digi-Key sells the Atmel AT27C010-12JI for $1.00 in quantity 300. It's an OTP EPROM (parallel, but I haven't seen any serial EPROMs)
 
You only need 24 bits of memory to store 10 million miles. 9,999,999 miles in decimal is the same as this in binary:

100110001001011001111111

So a single 32-bit memory location would store far more miles than the car would ever move. Counting in binary looks like this:

0 = 0
1 = 1
2 = 10
3 = 11
4 = 100
5 = 101
6 = 110
7 = 111
8 = 1000
9 = 1001
10 = 1010

and so on and so on. You could store 1.6 million miles in 24 bits space. The tenths could be stored separately, but that depends on how the number is defined by the program or the hardware. My guess is they store the odometer and trip meter mileage to NVRAM once per ignition cycle. Modern NVRAM chips can be expected to last about 100,000 writes. 100,000 ignition cycles would take a long time to accumulate.

If voltage is removed from the PCM, there may be enough reserve in capacitors or a small battery to commit the mileage from RAM to NVRAM. The exact circuit probably depends on the manufacturer, but it doesn't take much memory at all to store the mileage. There are plenty of other things to be stored in there as well like learned idle values, transmission shift points, TPS and crank/cam position sensor calibration values, and the list goes on and on.
 
A backup capacitor is more expensive than the OTP EPROMs or serial EEPROMs I mentioned above. A 1 farad, 5.5V "super capacitor" is $3.29 in quantity 500 from Mouser Electronics.

I'd also question the ability of a backup capacitor to supply a stable voltage for writing.

Constantly re-writing the memory means that it can be erased, and that means that someone can modify it (roll back the odometer). It would be more secure to use an OTP EPROM; at least that way, it would be necessary to replace the whole chip to roll the odometer back.

As far as the PCM goes, sensor calibration values that must be programmed in are probably stored in an EEPROM (as is the PCM software itself) but things like fuel trim and such which the PCM "learns" are likely kept in RAM which is backed up from the 12V car battery. No big loss if they get erased. Ford owner's manuals have a section about "relearning the idle" after disconnecting the battery.
 
Status
Not open for further replies.
Back
Top Bottom