Браво, Сами!
Това е супер ценно инфо, както и EGS52 i EGS53 файловете.
Не знаех, че ползват два байта за кодването на предавателното число, още повече, че са 31ви и 32ри и се четат наобратно .
Posted 07 October 2021 - 08:31
Браво, Сами!
Това е супер ценно инфо, както и EGS52 i EGS53 файловете.
Не знаех, че ползват два байта за кодването на предавателното число, още повече, че са 31ви и 32ри и се четат наобратно .
Posted 07 October 2021 - 10:55
Байтовете не се четат наобратно. Само чексумата се пише наобратно.
Реално FE 0B - конвертирано от hex на little endian 16 bit integer е 3070. Което се чете като 3070/1000 = 3.07
C6 0C - конвертирано от hex на little endian 16 bit integer е 3270. Което се чете като 3270/1000 = 3.27
А чексумата се смята като сметнеш чексумата на 1 до 40 байт. И после го напишеш в байт 41 и 42 обаче наобртно. Както ти беше писал ако ползваш директно калкулатор в CRC-16-IBM, Reversed, Big Endian. тогава си го пишеш както е.
Аз обаче ползвах един CRC-16 ARC калкулатор където на af40 чексумата е 0х8435. Обаче в байт 41 пиша 0x35 и в байт 42 пиша 0x84. От тук идва reversed.
А ти с EGS52 или EGS53 си? Защото при EGS53 се променя байт 28 за активиране на ръчен режим и агилити режим.
EGS52
[Байт 30]
Бит 2: Режим "C-S"
Бит 3: Режим "M"
Бит 4: Режим "А"
EGS53
[Байт 28]
Бит 2: Режим "C-S"
Бит 3: Режим "M"
Бит 4: Режим "А"
Ето примерно af40 с ръчен режим на EGS52 трябва да е така:
Байт 30 е 04
04 = 0100 втория бит е 1 режим C-S
05 = 0101 четвъртия бит е 1 - добавен агилити
06 = 0110 третия бит е 1 - добавен M ръчен режим
07 = 0111 активирани всички режими
Сега сменяме байт 30 на 05
61 66 34 30 01 00 00 0D 00 04 14 07 0C 0C 00 01 01 01 00 00 00 01 00 00 00 82 00 00 1B 05 FE 0B E8 03 E8 03 CB 07 20 00
Пресмятаме чексумата в CRC-16-IBM, Reversed, Big Endian = 31 78 и ето ти целия стринг който би трябвало да ти активира агилити режим.
61 66 34 30 01 00 00 0D 00 04 14 07 0C 0C 00 01 01 01 00 00 00 01 00 00 00 82 00 00 1B 05 FE 0B E8 03 E8 03 CB 07 20 00 31 78
Пиши кой стринг ти пробва което не стана да видим дали правилно си пресметнал.
Posted 07 October 2021 - 12:30
А случайно да знаеш байт 37 и 38 какво кодват ?
AF40 и AF42 имат 3 байта разлика, 4ти, 37-ми и 38-ми
Дали не са обороти, или е въртящ момент, пак Big Endian, AF42 задържа малко по-високи обороти.
Аз гледах на един грузинец някакво видео за "агалити" , той твърди че трябвало да се кодне на 14, но явно е в грешка. В никой фабричен стринг няма 14 на байт 30. А и с тогъл-битовете няма как да се получи
0, 1, 3, 4, 5, 7, 48, 0C, 0D, 0E, 4C - това са фабричните
Posted 07 October 2021 - 14:09
Реално кодировката започва от 5ти байт. Първите 4 байта са ти HEX -> ASCII кода. AF40 или AF41. Затова виждаш разлика в четвърти байт.
Байт 37 и 38 са били размера на колелото в милиметри.
CB 07 конвертирано little endian 16 bit integer е 1995 (mm)
11 08 конвертирано little endian 16 bit integer е 2065 (mm)
Posted 07 October 2021 - 15:05
Интересно, че и в моторното ЕКУ има кодировки за размер на гумите. Там са коднати като 2040мм.
Реалният размер при мен е 225/55/16, колкото дават по каталог, което е 2052мм.
2062 определено е по-близо до 2065, отколкото 1995, освен ако не гледаме rolling radius.
Хора, не слагайте някакви крейзи размери гуми ако не искате да имате проблем с кодировките на мотор и кутия
Posted 07 October 2021 - 15:44
Нямам идея но ето една снимка.
Posted 08 October 2021 - 08:20
Сами, още веднъж супер ценна информация.
Другите байтове не бих ги пипал засега, въпреки че TQ Lookup curve звучи интересно
Posted 15 September 2022 - 13:19
Само са спомена, че успях да пусна Agility Mode на EGS52. На upshift не забелязвам особена промяна, но на downshift сменя по-рано, не чака хубаво да се измъчи мотора.
Байт 30 се сменя на 14, тъй като се ползва целия байт, а не само нибъл.
Първият бит е за 4-матик, после има един празен, след това е този за Manual Mode, след това за Agility, после е C-S, и накрая са три празни. И всичко това се пише наобратно.
00000100 = 4 = C-S
00010100 = 14 = A, C-S
00011100 = 1C = A, M, C-S
съответно ако е 4-матик:
00000101 = 5 = C-S, 4-matic
00010101 = 15 = A, C-S, 4-matic
00011101 = 1D = A, C-S, 4-matic
Последните два байта от дългия кодинг стринг са чексума, CRC-16, написана наобратно.
При мен 35 84 трябваше да се смени на 61 44
Edited by Subsonic, 15 September 2022 - 13:27 .
0 members, 1 guests, 0 anonymous users