Suzuki ATV Forum banner
1 - 19 of 19 Posts

· Registered
Joined
·
8 Posts
Discussion Starter · #1 ·
Greetings,

Although this is my first post I did a lot of research on this and other forums before buying a used 2006 King Quad. I purchased one that had a ERR code on the trip odometers. I decided to attempt a fix before buying a new display.

A little background on myself. I am an electrical engineer with a masters in engine design. I wrote engine management software for a marine engine company. So after seeing the issue and putting a lot of thought into it I thought maybe I could at least figure out how to prevent it.

I wanted to post my findings and what I did to fix it so others will at least understand to some level what is happening. I disassembled the display all the way down to the PCB and tried to identify some of the components. There is a little 8-pin chip on there. I couldn't read the markings on it but based on the circuitry around I did determined it to be an I2C EEPROM chip. So I de-soldered it and put it an EEPROM reader. I was correct. It is a simple 1k bit EEPROM chip. Regardless of the manufacturer the pin out and communication protocol is the same on almost all of these little things. So I purchased a Microchip 25AA01, programed it with the value I pulled from the factory one, and powered everything back up. Same problem. But it did work the same otherwise which told me I could move on to mapping out what all the parameters did.

I hooked up an oscilloscope and monitored what addresses the factory system was searching for on keyup and found it reads the following address ranges and through some experiments found out what some of them do. (note these are hex values)

0x00-0x0F:
The kmh/mph setting is stored at address 0. Screwing these up also affects the fuel gauge. Byte 0 gets written immediately after changing the setting by holding both buttons. The last two bytes 0x0E and 0x0F affect the top speed the display will show.

0x10-0x17:
These also affect the fuel gauge. I suspect there is a lookup table in here. They likely use this same software on other ATVs and calibrate it here. It is read but never written.

0x20-0x25:
This is the main odometer storage. Setting the values to 0,0,0,0,0,FF changed the reading to 0. It also gets written about every 1 mile or at keyoff. The number stored in here appears to be a counter so the main display processor is doing some math to convert this count to distance. This is likely the best solution since it must handle both miles and kilometers.

0x28-0x2D:
This is trip A and is more or less the same as the odometer.

0x30-0x35:
This is trip B and works the same.

0x38-0x3D:
This is the engine hours. Once again its a counter of some sort and is not stored as actual hours. The display converts it.

0x40-0x58:
The first byte, 40, contains some value used to calculate speed. Likely pulses per distance. I know setting it to 0 causes the speedometer to quit working and setting it to FF causes it to display way to fast. The rest of these bytes are unknown. I suspect trouble codes from the engine ECU might be stored here.


So, what is the odometer failure? Each of the four counters (Odometer, A,B,hours) uses a 6-byte number where the last one or two bytes are a CRC check. Or a checksum of some sort. I haven't figured that out yet. On a key off these parameters get written and while being written they are VERY susceptible to corruption due to voltage issues.

So, the reason any of these display ERR is because the data stored on the EEPROM does not pass the CRC check. When this happens they no longer assume the data can be trusted and display ERR.

I know this is not much of a solution but I still wanted to explain what is happening. I was able to load the "new" values into mine and get all the meters back to 0. So it is essentially what you get after paying big $$$ for a new display. In the near future I would like to help others fix their unit but I need someone to volunteer one first.

Some other things that might be useful info:
-There is a header on the circuit board for programming this chip. It is likely clamped into a fixture at the factory and data "burned" into this chip based on the specific application.
-The EEPROM on mine was not actually broken. Just has bad values in it. I was able to reflash it using this header so there was no need to de-solder anything.
-The I2C bus runs at 40kHz. Slow for I2C but still the entire write cycle is around 4 ms.

That's all I have for now. I hope someone finds this information useful. And if anyone has a bad display laying around and would be willing to let me borrow it please let me know. I would like fix these for people for really need verify a few things.

Aaron
 

· Registered
Joined
·
69 Posts
AWESOME!! I have toyed writing to EEPROMS but not on the level you are at!! that's for sure.
I would love to hear more on your progress in finding its true counts for all it's possibles functions and maybe some optional NMEA, Standards bus info to a gps or optional displays etc.
Nice project Aaron!
 

· Registered
Joined
·
12 Posts
Most times the err message xomes up due to a sudden voltage spike due to using a car charger to charge battery while still hooked to quad or even jump starting quad with an automobile, if ur charging battery its best to unhook ur battery leads on a king quad
 

· Registered
Joined
·
8 Posts
Discussion Starter · #4 ·
The signals going into the display are pretty simple. Neutral, Reverse, L, H, 4WD, Diff Lock switch, Diff lock button, key power, battery power and ground are all easy. The speed signal is just a +12V square wave and the fuel is a simple voltage. There is a serial line from the main ecu too but I didn't look into it. It wouldn't be too much to make a custom display and incorporate GPS, tilt sensors, etc.

As far as EEPROM mapping...I got lucky because the 4 counters were pretty obvious because of the way they were grouped. Now that its fixed I just want to ride the hell out of it for a while :). Maybe in the future do some cool projects.
 

· Registered
Joined
·
744 Posts
This thread is getting surprisingly little traction, for what it offers. Plenty of disappointed king quad owners have found the ERR message on their display instead of a speedometer/odometer and the only traditional answer has been replacing the pod or at least the pod's innards.
 

· Registered
Joined
·
8 Posts
Discussion Starter · #8 ·
Yeah, I thought the same thing. I assume this would be a big hit. But then again, I have gained a lot of knowledge and diagnosed a lot of issues by reading without posting. Glad someone found it helpful.

You basically did what I did except my EEPROM programmer was not working so I put the EE contents into a PIC32MX starter kit and wrote a little program that would power up, move the parameters over, and shutdown.

Great video!
 

· Registered
Joined
·
102 Posts
Post is interesting, but might be a bit beyond what some people can do themselves and perhaps that's why little traction. I haven't used an EEPROM burner in years myself, and I am guessing 25 years. Hardly ever even use a scope anymore, but have one. Every darn thing I work on nowadays is just loaded from a laptop or a small bit of code I write myself (less and less of the latter).

Sheesh, perhaps I should get into digging at things again like you. Sounds like you had 'eureka' fun!
 

· Registered
Joined
·
8 Posts
Discussion Starter · #10 ·
Rotten, you are probably right.

If there was enough interest I would have just burned a bunch of EEPROMs so people could solder the fixed one on. Also, its likely they fixed it as a running change to the so if you buy a service part today it might not have the issue.
 

· Registered
Joined
·
102 Posts
If you are talking about selling eeproms, that's another issue. I was talking about people burning their own. If I had that issue and someone like yourself had eeproms burned, for sure that is the route I would go for a few $$. But I am going to guess most people just mount a GPS on the handles. Still a very good thread, so don't feel dismissed for doing excellent work. It will be dug up as folks run into the issue. I did learn the point of caution when charging the battery with a car charger - will have to keep it in mind.
 

· Registered
Joined
·
1 Posts
Bring this back to the top to see if Wardski is still around, i would love to get an eeprom programmed as my odometer just started the ERR error, Does anyone know if the mileage is still being recorded to the eeprom, the reason I ask is my KQ 700 is a 2006 with less than 2000km on it, my last log on the oil change was 1874km and I haven't used it any except around the yard for yard work so I would like to have this working as I'm thinking about selling it and getting a side by side, so without the actual KMs on it working it's my word that it's true KMS and I know if I was buying one and someone told me that I may be a bit leary.

Thanks
 

· Registered
Joined
·
3 Posts
Hey guys, I took the video down. Ill try to repost it. I was able to clear all values back to zero i believe, but had issue later on in the week with it. I ended up buying a used cluster on ebay. It was listed for my make and year but was slightly different. the circuit board was different and the plastic housing was a different shape (ever so slightly different, still fits and looks good but is definately a different cluster. It may have been listed wrong (from a newer bike perhaps) but it means there are several generations of cluster. the "newer" style is plug and play, and the circuit board is built differently. I was going to record the values from a working IC and put them on my original one to see if it works.

This may work for most folks but it didn't work for me. I may have had a bad IC and not just a glitch.

Ill repost the video to youtube with screenshots. Lets see if we cant crack this one.
 

· Registered
2007 Suzuki King Quad 700
Joined
·
4 Posts
Greetings,

Although this is my first post I did a lot of research on this and other forums before buying a used 2006 King Quad. I purchased one that had a ERR code on the trip odometers. I decided to attempt a fix before buying a new display.

A little background on myself. I am an electrical engineer with a masters in engine design. I wrote engine management software for a marine engine company. So after seeing the issue and putting a lot of thought into it I thought maybe I could at least figure out how to prevent it.

I wanted to post my findings and what I did to fix it so others will at least understand to some level what is happening. I disassembled the display all the way down to the PCB and tried to identify some of the components. There is a little 8-pin chip on there. I couldn't read the markings on it but based on the circuitry around I did determined it to be an I2C EEPROM chip. So I de-soldered it and put it an EEPROM reader. I was correct. It is a simple 1k bit EEPROM chip. Regardless of the manufacturer the pin out and communication protocol is the same on almost all of these little things. So I purchased a Microchip 25AA01, programed it with the value I pulled from the factory one, and powered everything back up. Same problem. But it did work the same otherwise which told me I could move on to mapping out what all the parameters did.

I hooked up an oscilloscope and monitored what addresses the factory system was searching for on keyup and found it reads the following address ranges and through some experiments found out what some of them do. (note these are hex values)

0x00-0x0F:
The kmh/mph setting is stored at address 0. Screwing these up also affects the fuel gauge. Byte 0 gets written immediately after changing the setting by holding both buttons. The last two bytes 0x0E and 0x0F affect the top speed the display will show.

0x10-0x17:
These also affect the fuel gauge. I suspect there is a lookup table in here. They likely use this same software on other ATVs and calibrate it here. It is read but never written.

0x20-0x25:
This is the main odometer storage. Setting the values to 0,0,0,0,0,FF changed the reading to 0. It also gets written about every 1 mile or at keyoff. The number stored in here appears to be a counter so the main display processor is doing some math to convert this count to distance. This is likely the best solution since it must handle both miles and kilometers.

0x28-0x2D:
This is trip A and is more or less the same as the odometer.

0x30-0x35:
This is trip B and works the same.

0x38-0x3D:
This is the engine hours. Once again its a counter of some sort and is not stored as actual hours. The display converts it.

0x40-0x58:
The first byte, 40, contains some value used to calculate speed. Likely pulses per distance. I know setting it to 0 causes the speedometer to quit working and setting it to FF causes it to display way to fast. The rest of these bytes are unknown. I suspect trouble codes from the engine ECU might be stored here.


So, what is the odometer failure? Each of the four counters (Odometer, A,B,hours) uses a 6-byte number where the last one or two bytes are a CRC check. Or a checksum of some sort. I haven't figured that out yet. On a key off these parameters get written and while being written they are VERY susceptible to corruption due to voltage issues.

So, the reason any of these display ERR is because the data stored on the EEPROM does not pass the CRC check. When this happens they no longer assume the data can be trusted and display ERR.

I know this is not much of a solution but I still wanted to explain what is happening. I was able to load the "new" values into mine and get all the meters back to 0. So it is essentially what you get after paying big $$$ for a new display. In the near future I would like to help others fix their unit but I need someone to volunteer one first.

Some other things that might be useful info:
-There is a header on the circuit board for programming this chip. It is likely clamped into a fixture at the factory and data "burned" into this chip based on the specific application.
-The EEPROM on mine was not actually broken. Just has bad values in it. I was able to reflash it using this header so there was no need to de-solder anything.
-The I2C bus runs at 40kHz. Slow for I2C but still the entire write cycle is around 4 ms.

That's all I have for now. I hope someone finds this information useful. And if anyone has a bad display laying around and would be willing to let me borrow it please let me know. I would like fix these for people for really need verify a few things.

Aaron
Did we ever decide on the best fix for this. Mine just started with the err code and I could use some advice. 1st if you do nothing about this what will eventually happens. 2nd, is anyone selling these chip to fix it, I know nothing about the other stuff but could probably solder it back.
Thank ya.
 
1 - 19 of 19 Posts
Top