Браво, Сами!
Това е супер ценно инфо, както и EGS52 i EGS53 файловете.
Не знаех, че ползват два байта за кодването на предавателното число, още повече, че са 31ви и 32ри и се четат наобратно .
Публикувано 07 октомври 2021 - 08:31
Браво, Сами!
Това е супер ценно инфо, както и EGS52 i EGS53 файловете.
Не знаех, че ползват два байта за кодването на предавателното число, още повече, че са 31ви и 32ри и се четат наобратно .
Публикувано 07 октомври 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
Пиши кой стринг ти пробва което не стана да видим дали правилно си пресметнал.
Публикувано 07 октомври 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 - това са фабричните
Публикувано 07 октомври 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)
Публикувано 07 октомври 2021 - 15:05
Интересно, че и в моторното ЕКУ има кодировки за размер на гумите. Там са коднати като 2040мм.
Реалният размер при мен е 225/55/16, колкото дават по каталог, което е 2052мм.
2062 определено е по-близо до 2065, отколкото 1995, освен ако не гледаме rolling radius.
Хора, не слагайте някакви крейзи размери гуми ако не искате да имате проблем с кодировките на мотор и кутия
Публикувано 07 октомври 2021 - 15:44
Нямам идея но ето една снимка.
Публикувано 08 октомври 2021 - 08:20
Сами, още веднъж супер ценна информация.
Другите байтове не бих ги пипал засега, въпреки че TQ Lookup curve звучи интересно
Публикувано 15 септември 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
Този пост е редактиран от Subsonic: 15 септември 2022 - 13:27
0 потребители, 2 гости, 0 анонимни