Hello guys,
Based on what tjwasiak said on post no #21 and some other findings, I have finally figured out how to properly rescale my cluster.
Long story short: I had 1/2 FIS on my octavia mk1 with bad LCD so I decided to swap from Superb 1 with full FIS. After some immo issues i got it right. But I found out that I had speedometer too low - from 0-60 it showed about 5km/h lower, and from 60-end 10km/h lower. On the other side, old octavia cluster was showing a bit too high (5 more 0-80, 10 more 80-end). And we can all agree, that lowered values are far more dangerous than higher values right?
So I needed to tune it.
So I read my "new" superb cluster again. I copied my speedo scale (tacho was already done) and k-value from old cluster and it resulted as predicted - I had the same, bit higher valueas as old octavia cluster
But, as an engineer, It wasn't enough for me - as I have learned how to properly modify dump
.
I took a protractor, measured angles between single 5km/h indicators on both ranges (0-120, 120-240), calculated proper values for speedo stepper motor for specified (my custom) speed values (as tjwasiak said, you have to determine your k-value right in order to have good speed readings), and put it into dump.
As the result, I have only 3km/h higher than GPS on whole 0-240 speed range, which is great because I still have that small "overspeed" error margin, which helps me mentally
This error can be caused by some k-value uncertainty (resulted from wheel diameter uncertainty), angle measuring error (because photo of speedo was took a bit off proper front angle) and other like dividing reminders in calculations.
My setup is as follows:
Old Octavia cluster (seems type VWK501): 1J0 920 9(xx B) - not sure which it was but I will check and edit.
New, swapped Superb cluster (seems type VWK503): 3U0 920 941 A
In [] brackets I will put addresses in octavia cluster. Remember, I'm giving here my actual, custom values. Addresses from octavia's cluster are just in case someone would want to copy from octavia's cluster. You won't find values I show here in octavia's cluster (except k-value)
.
k-value: 3480 (this value is copied from octavia's cluster), Originally it was 4182 (as far as I remember). Address 0x192 [0x150]
speedo x-axis: 0050 00A0 01E0 0500 0780 07D0 0B40 0F00 (for 3, 10, 30, 80, 120, 125, 180, 240 km/h). From address 0x258 [0x220]
speedo y-axis: 0065 00CA 0260 0655 0980 09C7 0CD8 1030. From 0x268 [0x230]
BUT THERE ARE TWO THINGS YOU NEED TO BE AWARE OF!!!
First. After switch ignition ON, speedo shows 5km/h (even with engine off). This could be (probably) because speedo stepper starts not from 0, but from first value in x-axis. That's why (I guess) original x-axis starts from about 1,5km/h. You know, it will be set about 1 degree up, so it is unnoticable. I will do the same, and set first value of x-axis to 1km/h (and proper first value of y-axix accordingly) and check this out. Nevertheless, all remainding speed readings are ok. Checked with GPS.
Second. Unfortunately, as tjwasiak said, there will be def error on cluster. And that's probably because of checksum error, caused by modyfing k-value. I deduced (correct me if I'm wrong) that speedo (and tacho) scales are not checksum protected. And k-value is. To get rid of def error, you can recode your cluster with the same value, but unfortunately it will force returning your k-value to previous, and that will crash this whole idea, because everything here is based on assumpion that k-value is correct
. And the reason why this will happen, is that cluster coding last digit sets k-value
You are lucky, if for some reason you can choose from some values during coding (on ovtavia's cluster I was able to choose four as I remember), unfortunately I wasn't on superb's cluster. I am able only to set XXXX5 as my last coding digit, which results in going back to 4182 k-value
. To fix this properly, you would need to know how checksums are calculated in VDO clusters (probably some kind of CRC) and also where to put it in eeprom. And unfortunately I have no idea for both
BUT!!!. If you don't need to change k-value, you are home. I had to change it, because I swapped cluster from different car and beside that, it was diesel, and I have 1.8t
If your k-value stays the same, I guess there won't be a checksum error and even if it will appear, you can recode with the same coding, because it won't change your k-value
Does anyone know how to calculate checksums and where to put them?