mishapost Опубликовано 2 июня, 2017 Поделиться Опубликовано 2 июня, 2017 Для этого есть подробный мануал на процессор в 1000 стр. Но опять же, считаю, что надо связаться с туареговодами, они это дело копают уже около 2х лет. И наверняка к чему-то пришли. Как минимум у них есть опыт с программатором и процессором похожим. А также есть программатор.Ок. Я с Вами согласен, что за два года - те люди определенно достигли каких-то успехов. Связаться с ними можно, возможно они что-то и подскажут.Но давайте посмотрит на задачу с другой стороны: Наша цель сделать софтинку, в которой нужно выбрать опцию(поставить галочку) и сгенерить дамп. Автор темы уже дошел до того, что все это хранится в первых 4 строках по 10 бит. И я лично считаю, что достичь этой цели можно - если иметь хорошее количество дампов. Также в личной переписке с автором темы, мы поняли, что CRC может быть несколько (Об этом в теме не указывалось) и отличается она какой-то разницей в 64,32,16. Ссылка на комментарий Поделиться на другие сайты Поделиться
Slava46 Опубликовано 2 июня, 2017 Поделиться Опубликовано 2 июня, 2017 Да я ж не спорю, но одним из методов достижения этой цели является поиск алгоритма расчета в дампе с процессора.Просто угадывать алгоритм мне видится задачей сложнее, учитывая, что уже есть люди, которые имеют программатор и опыт.Тем более суммы CRC им тоже надо было рассчитывать, о чем они пишут на форуме. Ссылка на комментарий Поделиться на другие сайты Поделиться
sk00444 Опубликовано 2 июня, 2017 Поделиться Опубликовано 2 июня, 2017 (изменено) Скину те дампы, которые у меня недалеко лежат, другие ещё найду позже, так-же приложу.Всё с указанием номера приборки. Дампы как от приборок с цветным дисплеем, так и от дорестайла (думаю в них может применяться похожий алгоритм)Файлы такого типа приложить к сообщению нельзя, поэтому даю ссылки на Яндекс.Диск 85000VA000 - Японская приборка STI тахо до 9тыс. - ССЫЛКА85000VA040 - США STI 2015г. тахо до 8тыс. - ССЫЛКА85000VA520 - США WRX CVT 2016г. - ССЫЛКА 85000SG590 - РФ Forester 2l CVT 2013г. - ССЫЛКА85013FJ220 - РФ XV 2014г. 2l CVT - ССЫЛКА На компе найду потом ещё дампы + В ближайшее время могу снять дампы с ещё двух WRX приборок с разными номерами, одной европейской STI, европейского Леворга и Канадской XV 2016 года.... но это через недельку не раньше. Изменено 2 июня, 2017 пользователем sk00444 Ссылка на комментарий Поделиться на другие сайты Поделиться
Slava46 Опубликовано 2 июня, 2017 Поделиться Опубликовано 2 июня, 2017 (изменено) Просто какой смысл гадать и спорить, пока не связались с людьми и не узнали что они конкретно сделали и чего добились.А так же можно ли наш процессор считать этим программатором. Если что в Москве есть приборки, программатор и люди. А как это сделать я думаю решим. P.S. Попробовать составить базу CRC конечно надо. Но надо учитывать, что алгоритм можно высчитывать неизвестно сколько, даже имея эти данные. Изменено 2 июня, 2017 пользователем Slava46 Ссылка на комментарий Поделиться на другие сайты Поделиться
Slava46 Опубликовано 2 июня, 2017 Поделиться Опубликовано 2 июня, 2017 У меня вопрос.Когда меняют пробег из калькулятора, откуда берется нужный CRC новый? Ссылка на комментарий Поделиться на другие сайты Поделиться
mishapost Опубликовано 2 июня, 2017 Поделиться Опубликовано 2 июня, 2017 У меня вопрос.Когда меняют пробег из калькулятора, откуда берется нужный CRC новый?Там походу CRC вообще не нужен, туда можно записать что угодно - и приборка в ошибку не падает Ссылка на комментарий Поделиться на другие сайты Поделиться
Texas Опубликовано 2 июня, 2017 Поделиться Опубликовано 2 июня, 2017 Кстати про пробег...когда прописывал пробег по калькулятору одометра - то вставив сгенерировванный пробег в строки 1A0 и 1B0, приборка потом показывает не совсем то что забивалось. разница была на 10-15км больше того пробега, который я прописал. Не знаю с чем это связанно... Ссылка на комментарий Поделиться на другие сайты Поделиться
sk00444 Опубликовано 2 июня, 2017 Поделиться Опубликовано 2 июня, 2017 @Texas, Там небольшой разбег есть при прописывании пробега, но у меня было либо точно, бил +/- 2-8 кмс чем связано, где-то писали, но я думаю что это не критичная разница и я не стал разбираться ))) Ссылка на комментарий Поделиться на другие сайты Поделиться
mishapost Опубликовано 2 июня, 2017 Поделиться Опубликовано 2 июня, 2017 (изменено) Кстати про пробег...когда прописывал пробег по калькулятору одометра - то вставив сгенерировванный пробег в строки 1A0 и 1B0, приборка потом показывает не совсем то что забивалось. разница была на 10-15км больше того пробега, который я прописал. Не знаю с чем это связанно...связано это с тем, что в приборку записывается показания кратные 16 или 32 (точно это не помню). И это на всех автомобилях так Точно не уверен почему так сделано, но предположения такие:Летите Вы по автобану на скорости 240 км\ч и Ваша приборка то и дело переписывает показания, а скорость записи медленная и не успев записать одно значение, как надо начинать писать другое . Изменено 2 июня, 2017 пользователем mishapost Ссылка на комментарий Поделиться на другие сайты Поделиться
Omega_KZ Опубликовано 2 июня, 2017 Автор Поделиться Опубликовано 2 июня, 2017 Я уже занимался собирательством дампов. Насобирал от разных WRX. если честно то толку ноль. В каждом дампе имеем по 4 интересующих нас строки, в каждой строке 8 байт данных и 2 байта CRC. итого с 4 дампов можно насобирать 16 строк с данными и CRC.Могу сюда выложить в столбик кучу строк по 10 байт. Но мне кажется это смысла не несет. Хотя может кто-то башковитый и подберет алгоритм расчета и сможет проверить на этих строках.Буду за компом скину сюда строки с разных дампов. Хочу внести немного ясности.Имеем строку с данными:00-00-00-00-00-00-00-00 CRC = FF-FF Что подтверждает теорию о том что при расчете к итоговому результату применяется функция NOT.Сделано это для того, чтобы понять сдох чип памяти или нет. Так-как при мертвом чипе считаются все байты 00 или FF. И если чип мертв то и CRC считается как 00, и панель поймет что в данных ошибка.С применением функции NOT, можно предположить что все параметры действительно равны 00, и панель этой поймет при CRC =FF-FF и запускается в нормальном режиме. Что имеем еще:Если в данных присутствует всего 1 или 2 байта то CRC всегда равна их сумме с применением NOT. То есть как и в примере из шапки темы:B1-4E-00-00-00-00-00-00 CRC = 00-00, так как (B1+4E) = FF, далее делаем NOT(FF) и получаем 00.Идем дальше, начинаем переставлять байт 4E в другие позиции.B1-00-4E-00-00-00-00-00 CRC = 00-00;B1-00-00-4E-00-00-00-00 CRC = 00-00B1-00-00-00-4E-00-00-00 CRC = 00-00;B1-00-00-00-00-4E-00-00 CRC = 00-00;B1-00-00-00-00-00-4E-00 CRC = 00-00;B1-00-00-00-00-00-00-4E CRC = 00-00; Как видно, CRC остается неизменным, как будто в формуле используется простое сложение байт. Но это не так, потому что для строки:B1-27-27-00-00-00-00-00 CRC = 0E-00;Хотя казалось бы если сложить B1+27+27 то получим FF, как и в первом примере, и CRC по идее должен быть равен 00-00. Дальше больше.Берем нашу строку:B1-27-27-00-00-00-00-00 CRC = 0E-00;И начинаем перемешать 3-й байт "27" в разные позиции.B1-27-00-27-00-00-00-00 CRC = 0E-00; - Панель не запускается. Точнее запускается но с ошибкой.B1-27-00-00-27-00-00-00 CRC = 0E-00; - Панель запускается.B1-27-00-00-00-27-00-00 CRC = 0E-00;- Панель не запускается.B1-27-00-00-00-00-27-00 CRC = 0E-00; - Панель запускается.B1-27-00-00-00-00-00-27 CRC = 0E-00;- Панель не запускается. Исходя из этого могу предположить, что положение байт играет свою роль, но какую пока не понял.Причем менять группы по 2 байта можно местами, и это не приводит к сбоям. Например:27-00-B1-27-00-00-00-00 CRC = 0E-00;- Панель запускается.27-00-00-00-B1-27-00-00 CRC = 0E-00;- Панель запускается.27-00-00-00-00-00-B1-27 CRC = 0E-00;- Панель запускается. Скорее всего вычисления происходят над группой байт (по 2 байта). Причем положение байт в группе как-то влияет на расчет CRC.Но есть одна неувязка, почему тогда в первом варианте "B1-4E-00-00-00-00-00-00 CRC = 00-00" положение байта 4E никак не повлияло на расчет CRC? Ссылка на комментарий Поделиться на другие сайты Поделиться
mishapost Опубликовано 2 июня, 2017 Поделиться Опубликовано 2 июня, 2017 (изменено) Omega_KZ,проверьте пожалуйста на своем стенде вот эти строки:A0 2D 88 2C 07 03 F3 02 23 64 = AB AFA0 2D 88 2C 07 03 F3 02 23 64 = A3 AF Эти строки взяты из дампов, что выше ссылки даны. Вот еще интересное нашел:6A 42 BA AA DE E6 E8 13 = 14 506A 42 AA AA DE E6 E8 13 = 14 50 Изменено 2 июня, 2017 пользователем mishapost Ссылка на комментарий Поделиться на другие сайты Поделиться
mishapost Опубликовано 2 июня, 2017 Поделиться Опубликовано 2 июня, 2017 из поста выше вот с этими строками ошибся, зацепил лишнюю группу:A0 2D 88 2C 07 03 F3 02 23 64 = AB AFA0 2D 88 2C 07 03 F3 02 23 64 = A3 AF А нижние строки интересно бы проверить Ссылка на комментарий Поделиться на другие сайты Поделиться
Omega_KZ Опубликовано 3 июня, 2017 Автор Поделиться Опубликовано 3 июня, 2017 Вот еще интересное нашел:6A 42 BA AA DE E6 E8 13 = 14 506A 42 AA AA DE E6 E8 13 = 14 50 С обеими строками запустилось.Странно что у них CRC одинаковый. Ссылка на комментарий Поделиться на другие сайты Поделиться
Omega_KZ Опубликовано 3 июня, 2017 Автор Поделиться Опубликовано 3 июня, 2017 В прошлом сообшении ошибочка вышла. Перепроверил свои записи, и еще раз раз протестировал на панели. Дальше больше...начинаем перемешать 3-й байт "27" в разные позиции.B1-27-00-27-00-00-00-00 CRC = 0E-00; - Панель не запускается.B1-27-00-00-27-00-00-00 CRC = 0E-00; - Панель запускается.B1-27-00-00-00-27-00-00 CRC = 0E-00;- Панель не запускается.B1-27-00-00-00-00-27-00 CRC = 0E-00; - Панель запускается.B1-27-00-00-00-00-00-27 CRC = 0E-00;- Панель не запускается. По факту:B1-27-00-27-00-00-00-00 CRC = 0E-00; - Панель запускается.B1-27-00-00-27-00-00-00 CRC = 0E-00; - Панель запускается.B1-27-00-00-00-27-00-00 CRC = 0E-00;- Панель запускается.B1-27-00-00-00-00-27-00 CRC = 0E-00; - Панель запускается.B1-27-00-00-00-00-00-27 CRC = 0E-00;- Панель запускается. Попутно провел еще несколько тестов.B1-27-27-00-00-00-00-00 CRC = 0E-00; - Панель запускается.00-B1-27-27-00-00-00-00 CRC = 0E-00; - Панель запускается.00-00-B1-27-27-00-00-00 CRC = 0E-00; - Панель запускается.00-00-00-B1-27-27-00-00 CRC = 0E-00; - Панель запускается.00-00-00-00-B1-27-27-00 CRC = 0E-00; - Панель запускается.00-00-00-00-00-B1-27-27 CRC = 0E-00; - Панель запускается. Пробуем переставить байты местами.B1-27-27-00-00-00-00-00 CRC = 0E-00; - Панель запускается.27-27-B1-00-00-00-00-00 CRC = 0E-00; - Панель запускается.27-B1-27-00-00-00-00-00 CRC = 0E-00; - Панель запускается.27-00-27-00-B1-00-00-00 CRC = 0E-00; - Панель запускается.27-00-00-00-27-00-00-B1 CRC = 0E-00; - Панель запускается. Исходя из этого опыта получается, что положение байт в строке никак не влияет на конечный расчет CRC. Теперь попробуем взять не придуманную строку, а строку из панели и проделать то-же самое с этой строкой. 6A-36-AA-AA-D9-E6-E8-13 CRC = 67-70 - Панель запускается. (так как это родная строка без изменения) Меняем местами байты внутри групп.36-6A-AA-AA-D9-E6-E8-13 CRC = 67-70 - Панель запускается.36-6A-AA-AA-E6-D9-E8-13 CRC = 67-70 - Панель запускается.36-6A-AA-AA-E6-D9-13-E8 CRC = 67-70 - Панель не запускается.36-6A-AA-AA-D9-E6-13-E8 CRC = 67-70 - Панель не запускается. (откатил "E6-D9" обратно как было на "D9-E6") 6A-36-AA-AA-D9-E6-13-E8 CRC = 67-70 - Панель не запускается. (дополнительно откатил "36-6A" обратно как было на "6A-36") По этой строке панель не запускается только если менять местами последние 2 байта. Причем похоже на то что эти байты отвечают за какой-то параметр, и меняя их местами панель не запускается по причине некорректности именно параметра а на CRC Меняем местами группы байт.6A-36-AA-AA-D9-E6-E8-13 CRC = 67-70 - Родная строка без изменений AA-AA-6A-36-D9-E6-E8-13 CRC = 67-70 - Панель запускается.6A-36-D9-E6-AA-AA-E8-13 CRC = 67-70 - Панель не запускается.6A-36-AA-AA-E8-13-D9-E6 CRC = 67-70 - Панель не запускается.D9-E6-AA-AA-6A-36-E8-13 CRC = 67-70 - Панель не запускается.E8-13-AA-AA-D9-E6-6A-36 CRC = 67-70 - Панель не запускается.AA-AA-6A-36-E8-13-D9-E6 CRC = 67-70 - Панель не запускается. Как видим с заменой групп местами панель не запускается, за исключением единственного варианта. Тут может быть несколько причин, либо некорректное CRC либо панель не воспринимает эти параметры как правельные. Решил проверить что будет если навести в строке полный хаос.6A-36-AA-AA-D9-E6-E8-13 CRC = 67-70 - Родная строка без изменений AA-6A-AA-36-E6-D9-E8-13 CRC = 67-70 - Панель запускается.13-E8-AA-36-E6-D9-6A-AA CRC = 67-70 - Панель запускается. Похоже что CRC рассчитывается просто линейно, сложением байт поочередно, причем конечное CRC как-то зависит от количества байт в строке. Я думаю что проводить эксперименты лучше с простой строкой типа:B1-27-27-00-00-00-00-00 CRC = 0E-00;Так как это сводит к минимум возможные не запуски панели по причине корявых параметров. Ссылка на комментарий Поделиться на другие сайты Поделиться
Omega_KZ Опубликовано 3 июня, 2017 Автор Поделиться Опубликовано 3 июня, 2017 Продолжая эксперименты со строкой:B1-27-27-00-00-00-00-00 CRC = 0E-00; Попробуем изменить байты так чтобы их сумма осталась прежней FF, но чтобы их количество и позиции не изменилось. Например изменим строку следующим образом:9A-3E-27-00-00-00-00-00 CRC = 0E-00; (B1 отнимаем 17, а к 27 прибавляем 17), как видно сумма осталась неизменной и равна FF. 9A-3E-27-00-00-00-00-00 CRC = 0E-00; - Панель не запускается.9A-27-3E-00-00-00-00-00 CRC = 0E-00; - Панель не запускается. Эксперимент не удался.. Ок. оставим первый байт неизменным, и попробуем поменять 2-й и 3-йB1-27-27-00-00-00-00-00 CRC = 0E-00; - Первоначальная рабочая строка.B1-10-3E-00-00-00-00-00 CRC = 0E-00; - Панель не запускается.B1-17-37-00-00-00-00-00 CRC = 0E-00; - Панель не запускается.B1-1F-2F-00-00-00-00-00 CRC = 0E-00 - Панель не запускается. Пока на этом остановился. Надо поразмыслить над дальнейшим направлением. Может взять строку по проще, например 01-01. Ссылка на комментарий Поделиться на другие сайты Поделиться
Omega_KZ Опубликовано 3 июня, 2017 Автор Поделиться Опубликовано 3 июня, 2017 (изменено) Собственно пока не разобрались с CRC, решил немного поковыряться в параметрах первой строки. За одно еще раз убедился в том, что в первой строке хранятся основные параметры работы панели. Имеем первую строку:6A 36 AA AA D9 E6 E8 13; CRC= 67 70Дисплей: ---------------------------------------------------------------------------Меняем:36 6A AA AA D9 E6 E8 13; CRC= 67 70Дисплей:Как видно из картинки, появилась опция EyeSight, Расход стал в km/l(как в Японии), но язык при этом сохранился. ---------------------------------------------------------------------------Меняем:6A 36 AA AA E6 D9 E8 13; CRC= 67 70Дисплей:Появилась опция С.DIFF, При этом показания передач вообще пропали. Даже рамки нет. --------------------------------------------------------------------------- Меняем (на этот раз в двух местах):36 6A AA AA E6 D9 E8 13; CRC= 67 70Дисплей:Появилась опция С.DIFF, Так-же как и стоило ожидать появилась еще и EyeSight. Как и в первом варианте замены расход стал km/l ---------------------------------------------------------------------------Меняем:6A AA 36 AA E6 D9 E8 13; CRC= 67 70Дисплей:Появилась опция С.DIFF, Показания расхода остались прежними, рамка текущей передачи присутствует. --------------------------------------------------------------------------- Так-же попытался менять параметры таким-же способов во 2-й и 3-й строке. Визуальных изменений на дисплее не происходит. Панель либо запускается либо нет.4-я строка дампа вообще никак на работу панели не влияет, там главное чтобы CRC был верный. Именно над 4-й строкой я и провожу все эксперементы по подбору алгоритма CRC, так как вероятность того что параметры неверные и из-за этого панель не запускается очень минимальна. Изменено 3 июня, 2017 пользователем Omega_KZ Ссылка на комментарий Поделиться на другие сайты Поделиться
mishapost Опубликовано 3 июня, 2017 Поделиться Опубликовано 3 июня, 2017 Похоже что CRC рассчитывается просто линейно, сложением байт поочередно, причем конечное CRC как-то зависит от количества байт в строке.Лично у меня возникло предположение, что CRC не складывается, а является какой-то битовой маской к каждому биту Ссылка на комментарий Поделиться на другие сайты Поделиться
Omega_KZ Опубликовано 3 июня, 2017 Автор Поделиться Опубликовано 3 июня, 2017 @mishapost,Лично у меня возникло предположение, что CRC не складывается, а является какой-то битовой маской к каждому битуВозможно вы правы. Я несмогу высчитать. Если у Вас есть примеры которые вы хотите проверить, я готов загнать их в панель для тестов. Ссылка на комментарий Поделиться на другие сайты Поделиться
mishapost Опубликовано 3 июня, 2017 Поделиться Опубликовано 3 июня, 2017 (изменено) @mishapost,Возможно вы правы. Я несмогу высчитать. Если у Вас есть примеры которые вы хотите проверить, я готов загнать их в панель для тестов.Пока конкретных идей к сожалению нет. Кстати, сделайте пожалуйста скрин приборки с полностью чистой флехой Изменено 3 июня, 2017 пользователем mishapost Ссылка на комментарий Поделиться на другие сайты Поделиться
Omega_KZ Опубликовано 3 июня, 2017 Автор Поделиться Опубликовано 3 июня, 2017 Пока эксперементировал с дампами, удалось запустить приборку на китайском языке. Незнал что он там есть. Ссылка на комментарий Поделиться на другие сайты Поделиться
mishapost Опубликовано 3 июня, 2017 Поделиться Опубликовано 3 июня, 2017 Пока эксперементировал с дампами, удалось запустить приборку на китайском языке. Незнал что он там есть.Снял сейчас свою приборку - загнал в нее дам от xv(который выше давали, поправил иммо только) - пошел поставил разницы никакой не заметил. Все вроде точно также функционирует. Снял еще раз приборку в первых 4 группах по 10 байт, поизменял от байды данные(не FF или 00, а именно хрень всякую типа B9) - далее поставил приборку в авто. Приборка запустилась: на экране eyesight моргает постоянно, махания стрелок не было, картинки при открытой двери тоже, стрелки приборов лежат мертвым грузом на нуле. Работают только не которые лампочки (ручник, фары). Сообственно к Вам вопрос: что Вы понимаете под: панель не запустилась? На экране ничего нет? Ссылка на комментарий Поделиться на другие сайты Поделиться
Omega_KZ Опубликовано 3 июня, 2017 Автор Поделиться Опубликовано 3 июня, 2017 Приборка запустилась: на экране eyesight моргает постоянно, махания стрелок не было, картинки при открытой двери тоже, стрелки приборов лежат мертвымВот такую ракцию приборки я и понимаю пот тем что она не запустилась.Это что то типо аворийного режима. Приборка запускается на Японском языке, расход в км/л, стрелки не отрабатывают тест, и по центру поргает eyesight. Значка си драйв тоже нет. Ссылка на комментарий Поделиться на другие сайты Поделиться
Omega_KZ Опубликовано 3 июня, 2017 Автор Поделиться Опубликовано 3 июня, 2017 Работают только не которые лампочки (ручник, фары). Эти лаипочки напрямую подключены к входам на приборке и не управляются ЦП прибори. По этому и работают. Ссылка на комментарий Поделиться на другие сайты Поделиться
mishapost Опубликовано 3 июня, 2017 Поделиться Опубликовано 3 июня, 2017 Но дав питание на столе - как определить стрелки? Или сугубо - японский и значок eyesight? Я вот хочу поэксперементировать с дампами и понять чем они отличаются.Сейчас залил к себе дамп по ссылке выше - покатаюсь посмотрю в чем разница. Пока ничего не заметил, хотя первые строки отличаются, но не значительно Ссылка на комментарий Поделиться на другие сайты Поделиться
mishapost Опубликовано 3 июня, 2017 Поделиться Опубликовано 3 июня, 2017 Надо вашу строку b1-27-27 влить и на авто поставить. Попозже займусь этим Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения