Po kilku godzinach spędzonych na rożnych forach i w aucie przy modyfikacjach licznika, wrzucam opis struktury EEPROMU liczników 919 z immo2 - bez CAN.
Mapa Eepromu:
Opis Komórek:
0x036 - 0x045: Przebieg (Odometer)
0x053:Zmiana Tonu Dźwięku Ostrzeżeń (Zamieniamy tą wartość na dowolna np FF, AA albo jaka nam przyjdzie do głowy w zakresie 0-F)
0x055 - 0x058: Wartość Kodowania Licznika
0x059: Adaptacja, Kanał 3, Wartość Adaptacji Wskazań Spalania - domyślnie 64 HEX = 100% (zakres adaptacji 85 -115%,ale we wsadzie można wpisać dowolnie)
0x05A: Prawdopodobnie Adaptacja Wskaźnika Paliwa - domyślnie 80 HEX = 128
0x05C: Adaptacja, Kanał 5, Przypomnienie o wymianie oleju, Max dystans: 0F HEX = 15 - 15.000 km
0x05D: Adaptacja, Kanał 6, Przypomnienie 1 = INSP01, Max Dystans: 1E HEX = 30 - 30.000 km
0x05E: Adaptacja, Kanał 7, Przypomnienie 2 = INSP02, Max Czas: 24 HEX = 36 - 360 dni
0x05F: Adaptacja, Kanał 10, Przypomnienie o wymianie oleju = INSP OIL, Dystans: 0F HEX = 15 - 15.000 km
0x060: Adaptacja, Kanał 11, Przypomnienie 1 = INSP01, Dystans: 1E = 30 - 30.000 km
0x061: Adaptacja, Kanał 12, Przypomnienie 2 = INSP02, Czas: 24 HEX = 36 DEC - 360 dni
0x092 - 0x093: K-Value, Distance Impulse Identifier, Ilość impulsów ze skrzynki na 1 km. W Audi jest stały, ale w VW zależy od kodowania licznika. Np ostatnia liczba w kodowaniu licznika golfa 4 to 2 co odpowiada C80D = 3528 Impulses/Km. W Audi mamy 770D, czyli 3447 imp/km.
0x094 - 0x095: W licznikach VW powtórzony K-Value
0x09A - 0x0A9: Prędkościomierz - oś x - Skala Prędkościomierza (Speedometer)
0x0AA - 0x0B9: Prędkościomierz - oś y - Wychylenie Silniczka Krokowego (Speedometer)
0x0BA - 0x0C1: Obrotomierz - oś x - Skala Obrotomierza (Tachometer)
0x0C2 - 0x0C9: Obrotomierz - oś y - Wychylenie Silniczka Krokowego (Tachometer)
0x0DA - 0x0E9: Wskaźnik Paliwa - Skala Zbiornika (Fuel Gauge Values for 0, reserve, 1/4, 1/2, 1, 1, 1 )
0x0DA - 0x0E9: Wskaźnik Paliwa - Wychylenie Silniczka Krokowego (Tachometer)
0x106 - 0x111: Temperatura Płynu Chłodzącego - oś x - Skala (Fuel Gauge)
0x112 - 0x11D: Temperatura Płynu Chłodzącego - oś y - Wychylenie Silniczka Krokowego (Fuel Gauge)
0x184 - 0x19B: Tu zapisane są informacje o numerze i wersji licznika/softu, immo.
0x1FA - 0x1FF: PIN licznika powtórzony 3 razy, PIN = 3683
Kilka Ciekawostek Licznikowych:
Liniowy wskaźnik temperatury:
Kopiujemy sobie wartości wskaźnika temp. według powyższych wskazówek lokalizacji komórek:
oś x: 10 04 D0 03 20 03 80 02 E0 01 F0 00
oś y: 28 00 28 00 D8 02 D8 02 B2 04 88 05
Zasada jest taka, że łączymy bajty w słowa i starszy bajt zamieniamy z młodszym miejscami:
Czyli:
oś x: 00F0 01E0 0280 0320 03D0 0410
oś y: 0028 0028 02D8 02D8 04B2 0588
Teraz przeliczamy linijki z HEX na DEC:
oś x: 240 480 640 800 976 1040
oś y: 40 40 728 728 1202 1416
Wklepujemy wartość do Excela i tworzymy wykres liniowy.
Zamieniłem wartości:
728 na 450
728 na 850
450 DEC = 01C2
850 DEC = 0352
Trzeba podmienić te wartości we wsadzie (eepromie), pamiętając o odwróceniu
Ostatecznie podmienilibyśmy na taką linijkę:
28 00 28 00 C2 01 52 03 B2 04 88 05
I cieszymy się liniowym wskazaniem temperatury
Skala Temperatury
Dodatkowo możemy sobie sprawdzić jakiej temperaturze odpowiadają wartości DEC na osi x.
Wystarczy wartości:
240 480 640 800 976 1040
Podzielić przez 8 i mamy wartości w stopniach:
30° 60° 80° 100° 122° 130°
Czyli wskaźnik utrzymuje od 80° do 100° tą samą wartość, silniczek wychyla się na wartość 728 - dlatego mamy komfortowe odczucie, że wskazówka zawsze stoi równo na 90°C
Dodatkowo wpadłem na pewien pomysł
Jeśli się dobrze przyjrzycie przeciągając linie od skrajnych punktów wskaźnika otrzymujemy wycinek 90°.
Dzieląc wartości:
40 40 728 728 1202 1416
Przez 16, otrzymujemy wartości, które odpowiadałyby właśnie kątowi 0-90°
Wychylenie Wskazówki - Temperatura z Czujnika
2° - 30°C
2° - 60°C
45° - 80°C
45° - 100°C
75° - tu powinno być 110°C, wychodzi 122
88° - tu prawie 120°C, wychodzi 130
Można by powiedzieć, że moja koncepcja sprawdza się do wychylenia 45°
W licznikach VW powinno to działać Bo tam skala jest właśnie do 130°C.
Środek to 45°, czyli by się zgadzało ^^
Nie wiem czy tak to jest naprawdę, ale z pewnością pomoże w szukaniu wartości do liniowego wskaźnika Być może to nie mają być stopnie wychylenia ale kroki silniczka krokowego...
Skala Paliwa
To samo można by zrobić ze skalą paliwa.
Najlepiej zobrazuje to ta tabelka:
Czyli:
- oś x dzielimy przez 8 i mamy wartości litrów
- oś y dzielimy przez 16 i mamy wychylenie silniczka krokowego
Tu jak się przyjrzycie stopnie zgadzają się ze stanem paliwa.
Więc można łatwo ustawić sobie poziom rezerwy itp ^^
W nowszych licznikach skala jest reprezentowana nieco inaczej, tym bardziej w VW:
Skala Prędkości
Wystarczy wartości osi x:
0018 0032 0582 0613 0753 09bf 0c22 0f0e HEX
24 50 1410 1555 1875 2495 3106 3854 DEC
Podzielić przez 16, by otrzymać wartości kilometrów.
Widać też, że powyżej 97 km/h, czyli nasze 100 na środku, zmienia się liniowość wykresu.
Co najlepsze, przystawiłem kątomierz do skali prędkościomierza i wyszło mi, że na 97 jest około 125°.
Weźmy oś y naszego prędkościomierza.
12 115 1868 2011 2296 2868 3438 4152
Wartość 2011/16 = 125°
Wychylenie 125° = 97 km/h.
Jak się dobrze przyjrzycie cała skala 0-240 km/h to prawie 270° obrotu...
Weźmy ostatnią wartość osi y. czyli 4152 i podzielmy przez 16.
Daje nam to 259°, czyli 240 km/h...