PDA

Просмотр полной версии : BEAN


fyodor_e
09.07.2014, 14:26
Всем привет!

В авто Toyota есть внутренняя шина BEAN, по которой общаются различные компоненты (например, по ней получает информацию панель приборов о том, надо ли зажечь лампочку давления масла или какую температуру ОЖ показать).
Эта шина использовалась в Toyota'x довольно давно. В моем Mark II 2003 г она есть. В совсем свежих машинах вместо нее может использоваться что-то другое (возможно CAN).

Решил я разобраться как эта шина работает и что с нее можно получить.
Сразу оговорка. Вопрос ЗАЧЕМ ЭТО НАДО не задавать :-) Надо и все :-)

Итак, что удалось получить.
В двух приложенных файлах небольшое описание этой шины. Можно понять что к чему.
Японцы описали работу этой шины в стандарте SAE 970297. Добрый человек с форума toymods купил книжку и некоторые страницы выложил здесь https://drive.google.com/folderview?id=0B7FYCjMZX9RtejhDbGRvRGo5RVE&usp=sharing
Из книги можно понять формат пакета и схему приемо/передающего модуля.

Я сделал сниффер для BEAN и смог собрать лог общения по шине.
В логе уже убран Start Bit, и так называемый Staffing Bit (через каждые 5 одинаковых бит вставляется один противоположный по значению бит).
Пакеты правильные. Длина пакета, указанная в первом байте соответствует реальной длине (CRC байт не считается). В конце идет 7e (в двоичном виде это 01111110, т.е. EOM).

Что касается физического уровня, то была срисована схема с платы управления кондиционером. Схема очень похожа на ту, которая приводиться в стандарте SAE (также приложил). Правда попытки собрать ее в ISIS пока не увенчались успехом... Не работает.
Если кто может посоветовать что нужно сделать с этой схемой, чтобы она заработала или посоветовать что-то аналогичное по возможностям - буду признателен!

Приложил схемку с входным и выходным каскадами (BeanRelay1sch.zip). Вход подключен к ноге 10, выход - ноге 7. Все, что не подключено к этим двум ногам можно выкинуть, т.к. не имеет отношения к BEAN.
Входная нога должна поддерживать Interrupt on change

--------------------------------------------------------------------------

Тут же буду выкладывать значения сообщений BEAN, которые удалось "разгадать".
В сообщении присутствуют все поля, начиная с PRI и заканчивая последним байтом данных.
CRC8 и EOM нет.

23 fe d4 30 - включение ламп аккумулятора и масла на приборной панели. Последний байт 20 - аккумулятор, 10 - масло, 30 - оба значка сразу
25 fe 7f 00 10 80 - индикатор открытой двери
25 fe 7f 10 18 80 - то же при включенных габаритах
a4 52 fd 13 38 - температура климат-контроля. 13 = 25 градусов, 14 = 25.5 и т.д. Это информационное сообщение, т.е. оно не меняет установленную температуру.
a8 52 fc a2 44 03 00 00 00 - пикнуть :-) Такой "пик" как при нажатии кнопок управления климат-контролем. Значение 03 может быть любым от 03 до 07. Тональность "пика" от этого не меняется.

GASCHE
14.07.2014, 07:43
Подробно разбираться лень, но исходя из фигуры 3 на 172 странице чем вас не устраивает выходной каскад обычного K-Line адаптера, например того же K + CAN v1.4

kravt74
12.02.2015, 08:02
fyodor_e

Приветствую.
Тоже пытаюсь разобраться с этой шиной.
Не поделишься снифером?

fyodor_e
12.02.2015, 08:52
Схема для прослушивания очень проста - два резистора для делителя напряжения, чтобы согласовать 12В на шине BEAN с 5В микроконтроллера. (приложил). R821 можно выкинуть.

А вот прошивка микроконтроллера - это уже сложнее... Я использую PIC18F4550, который соединен по USB с ПК. Контроллер читает шину BEAN и далее передает в ПК уже саму посылку (без staffing битов)

Прошивку и прогу для ПК прилагаю.
В прошивке есть файл BEAN.c/.h, в которых сосредоточен код чтения BEAN. Отправку по шине BEAN пока тестирую...

Вот здесь пошарен кусок книги про BEAN https://drive.google.com/folderview?id=0B7FYCjMZX9RtejhDbGRvRGo5RVE&usp=sharing
(Ссылка с этого форума http://www.toymods.org.au/forums/tech-conversions/39361-toyota-beans-multiplex-etc-2.html)

kravt74
13.02.2015, 10:32
fyodor_e
Цифровым осцилом поймал посылку, проверил по описанию, вроде так как надо (start бит, длинна, кому, что, data, crc и EOM 7E, Staffing биты само собой.). В конце посылки получатель должен поставить подтверждение (положительный бит) иначе отправитель повторяет посылки.
Для отправки, как я понимаю, нужно считать CRC. Не в курсе как она считается?

fyodor_e
13.02.2015, 10:53
Я пытался понять какой алгоритм расчета CRC, но не сильно долго :-)
Вот здесь http://www.toymods.org.au/forums/tech-conversions/39361-toyota-beans-multiplex-etc-2.html я спрашивал как считать CRC (George пишет, что разобрался).

Пока у меня идея такая.
Я насобирал посылок с BEAN, теперь буду пытаться их отправить на шину сам и смотреть на реакцию :-) Например, у меня на приборной панели все, кроме тахометра и спидометра получает инфу по BEAN. А значит если послать команду включения какой-то лампы, она включиться.
Так можно попробовать понять, состав некоторых команд.

kravt74
13.02.2015, 11:15
по бину идет инфа по
темперу двигателя
зарядка
давление масла
круиз контроль
индикация режимы коробки
PRND2L
в обратном направлении
включение муфты кондея
реле обогрева заднего стекла
подсветка поворота
........
может еще что то, но не все кроме тахо и спида.
Я буду собирать визуальную индикацию битов в посылке (регистры и светодиоды).
Брать одну посылку и смотреть какой бит меняется при смене какого-то параметра.
У меня CROWN 171. Соединяю блоки на столе (моторник, блок управления панелью приборов и саму панель), в тепличных условиях удобней ).

fyodor_e
14.02.2015, 15:25
Дополню следующим.
BEAN - шина, на которой сообщения постоянно повторяются. Вот, например, несколько сообщений, которые я насобирал где-то за 5-10 секунд непрерывного мониторинга.
Первое число - кол-во повторений этого сообщения (в шестнадцатеричном формате). Второе - дубль CRC (это так у меня выводиться), затем само сообщение.

16 f9 18 fe 53 49 49 00 00 00 01 f9 7e 40
14 00 25 fe 7f 00 10 00 00 7e 40
04 0b 25 fe 7f 00 10 80 0b 7e 40
02 7d a5 fe 7f 00 10 80 7d 7e 40
18 0d 23 fe 83 00 0d 7e 40
03 60 04 fe ab 40 00 60 7e 40
14 6b 04 fe ab 40 80 6b 7e 40
10 aa 04 fe ab 62 00 aa 7e 40
04 a1 04 fe ab 62 80 a1 7e 40
01 aa 04 fe af 62 00 aa 7e 40
01 aa 04 fe bb 62 00 aa 7e 40
18 9c 25 fe e1 00 00 00 9c 7e 40

Кстати, нигде нет бита RSP. Это логично, т.к. из трех устройств, которые я смог "расковырять" и которые были подключены к BEAN (это приборная панель, компьютер климат-контроля и блок эл оборудования шасси - ABS), только у климат-контроля были цепи для отправки сообщений на BEAN. У приборной панели и ABS - Только цепи приема

fyodor_e
15.02.2015, 13:55
Вчера дошли руки дописать прошивку для отправки команд по шине BEAN, а сегодня вечером провел эксперимент.
Вот это сообщение
25 fe 7f 00 10 80 0b 7e
зажигает лампу открытой двери на панели приборов (естественно при закрытых дверях)
23 fe d4 30 a6 7e - зажигает сразу лампы аккумулятора и низкого давления масла.
Сообщения надо посылать постоянно, т.к. как только они перестают передаваться, лампочки на панели приборов потухают.

moshina
15.04.2015, 18:13
Товарищи здравствуйте! Очень обрадовался, когда нашел данную тему! Есть задумка подружить ЭБУ двигателя с приборной панелью от другого авто, скорее всего это будет мозг от 171 Маджесты и приборка от Альтеззы, которая скорее всего очень близка по сигналам к приборке от 110 Марка. Так что тема очень актуальна ))

Поделитесь пожалуйста, как продвигаются дела? Получилось более подробно разобраться в структуре передаваемых данных, составить подробную карту сигналов?

fyodor_e
16.04.2015, 04:11
Я подозреваю, что команды BEAN на разных машинах будут одинаковы. Я очень сомневаюсь, что япы заморачивались бы изменением команд. Это потребовало бы замены прошивки во всех блоках, подключенных к BEAN (а это ECU двигателя, приборка, блок упр-я кондиционером, SRS, multiplex, маршрутизатор (если в машине есть телевизор), возможно блок ABS).
Возможно, что разные ECU поддерживают не все команды...

"Разгаданные" коды в первом сообщении.
Дело идет не быстро, т.к. надо сидеть с ноутом в машине, и перебирать экспериментальным путем...

moshina
16.04.2015, 12:10
На практике получается, что команды разные, если подключать ЭБУ от 1UZ (Цельсиор, Маджеста) к BEAN шине Альтезы (двигатель 1G-FE), то большинство сигнальных ламп и приборов не работает. Сто процентов не работает температура двигателя, лампа давления масла, лампа низкого уровня топлива. Также не работает климат, так как блок управления кондиционером не видит температуру, и скорее всего отправляет неправильную команду на включение компрессора. В зависимости от подключаемого ECU двигателя иногда работает индикация выбранной передачи, лампа зарядки АКБ, ну и еще кое что... То есть часть команд совпадает, часть нет, получается что нужно разгадать команды обоих ЭБУ двигателей, а потом перехватывать одни и заменять другими.

kravt74
17.04.2015, 15:27
Так точно, некоторые команды разные. Имеем блоки EFI от Алтеза и Аристо, комплектация рестаил 2JZ-GE 5AT. Подключаем в CROWN JZS171. Получаем что с блока Алтеза и Аристо на приборку проходят все сигналы кроме режимов snow/sport и круиз контроля. Муфта кондюка не сработает, потому что не проходит сигнал с датчика давления фриона (от EFI к боди салона). Но, с EFI Алтеза проходит сигнал температуры за бортом, чего нет с EFI Аристо.
В некоторых EFI применяется BEAN интерфейсная микруха 0990 (не помню буквы). Насколько я понял у нее есть отдельно вход, отдельно выход и собственно вывод на шину. На входе и выходе появляются пакеты одинаковой длинны и с одинаковым периодом. Так же есть вывод строба, появлении которого совпадает с выводом данных на выход. Короче как я понял просто кидаешь на микруху посылку, а она сама размещает ее в шине. Если я не прав поправьте и собственно вопрос, может у кого есть даташит на нее?

se55y
28.05.2015, 19:04
16 f9 18 fe 53 49 49 00 00 00 01 f9 7e 40
14 00 25 fe 7f 00 10 00 00 7e 40
04 0b 25 fe 7f 00 10 80 0b 7e 40
02 7d a5 fe 7f 00 10 80 7d 7e 40
18 0d 23 fe 83 00 0d 7e 40
03 60 04 fe ab 40 00 60 7e 40
14 6b 04 fe ab 40 80 6b 7e 40
10 aa 04 fe ab 62 00 aa 7e 40
04 a1 04 fe ab 62 80 a1 7e 40
01 aa 04 fe af 62 00 aa 7e 40
01 aa 04 fe bb 62 00 aa 7e 40
18 9c 25 fe e1 00 00 00 9c 7e 40

А нет-ли в выделенных строках ошибок? А то они выбиваются из остальных с точки зрения crc

Те, что из приведённого Вами лога - правильнее:
7 0x4 0xfe 0xab 0x62 0x80 0xa1 0x7e
7 0x4 0xfe 0xab 0x40 0x80 0x6b 0x7e

fyodor_e
29.05.2015, 16:22
Очень даже вероятно, что сообщения не правильные в принципе. Судя по тому, что они были приняты всего 1 раз (первый байт), они скорее всего ошибочные и их надо игнорировать
Видимо повредилось вот это сообщение 10 aa 04 fe ab 62 00 aa 7e 40. Оно очень похоже и было передано 10 раз.

se55y
30.05.2015, 07:05
...Видимо повредилось вот это сообщение 10 aa 04 fe ab 62 00 aa 7e 40. Оно очень похоже и было передано 10 раз.

"There are only 10 types of people in the world: those who understand binary, and those who don't." :-)

reveng.exe -w 8 -p 13 -c 04feab6200 -> aa

(vS)
06.06.2015, 14:38
very funny joke ))

se55y
17.06.2015, 12:50
Главное - чтобы fyodor_e шутку на свой счёт не принимал.. Уж он-то в этом силён.

George_R
30.09.2015, 18:36
не густо наковыряли, а так много времени прошло!

(vS)
30.09.2015, 23:18
вы можете радикально исправить положение

George_R
01.10.2015, 18:08
вы можете радикально исправить положение

У пользователя fyodor_e все карты на руках, подсказками снабдил, декодирование у него пошло успешно. Дальше только терпение и труд.

se55y
02.10.2015, 19:33
Делиться, наверное, нарытым никто не торопится...

George_R
06.10.2015, 14:04
Да и что толку если на каждой машине все по сути с нуля надо начинать
Поделюсь вот каким открытием
Пробовал запустить Power/Snow на крауне с 1uz-fe vvti
Добыл блок интеграции родной с этого кузова
Активировал power/snow, вижу, данные изменяются
Нашёл на моторнике MPX, убедился что рабочий
Цепляю блок интеграции - в диагнозе тишина.

При этом в цельсиоре и 20 и 30 кузов все прошло без осложнений
И приборки вполне живо отзываются только начни что-либо им передавать

Пока предположений два
-или моторник ждёт АСК на какие-то пакеты предназначенные другим блокам (и без подтверждения выставляет ошибку по связи МПХ)
-или моторник ждёт специфических пакетов от разных блоков чтобы выставить у себя флаг об их наличии

С тем же цельсиором было по второму варианту - при старте салонного блока МПХ , этот блок выдает некие пакеты которые больше никогда не повторяются. Если моторник их не увидит, то будет игнорировать все последующие данные, поступающие от бодика

se55y
06.10.2015, 17:49
Добыл блок интеграции родной с этого кузоваА точно блок интеграции соответствующий именно твоему моторнику? А то на Прогрессе замечен "фокус" когда MPX-блок подрулевых переключателей должен соответствовать по году выпуска блоку интеграции.. Иначе работает только часть функций, а часть вообще перепутана:
http://forums.drom.ru/toyota-progres-brevis-origin/t1151788149.html#post1124604979

У UZS17# тоже в 2001 был рестайл, может как раз ваш случай:
89030A COMPUTER ASSY, INSTRUMENT PANEL INTEGRATION
89030-30080 (09/1999 - 07/2001)
89030-30081 (08/2001 - 05/2004)

89030-30090 (09/1999 - 07/2001)
89030-30091 (08/2001 - 05/2004)

89030-30100 (09/1999 - 07/2001)
89030-30101 (08/2001 - 05/2004)

89661 COMPUTER, ENGINE CONTROL
89661-3A590 (09/1999 - 07/2001)
89661-3F170 (08/2001 - 05/2004)

Цепляю блок интеграции - в диагнозе тишинасканер не видит BodyECU?

George_R
06.10.2015, 17:55
Нет
Диагноза по моторнику не видит манипуляции с бодиком
Т.е. признаки pwr/snow/els не меняются

se55y
06.10.2015, 18:45
У меня, возможно, в этом-же причина некоторого "затыка" (не хочет показывать THW и TAM)
89030A COMPUTER ASSY, INSTRUMENT PANEL INTEGRATION
89030-51010 (05/1998 - 11/1999)
89030-51020 (12/1999 - 04/2000)
89030-51030 (05/2000 - 03/2001)
89661 COMPUTER, ENGINE CONTROL
89661-51021 (05/1998 - 12/1998)
89661-51022 (01/1999 - 04/2000)
89661-51050 (05/2000 - 10/2000)
89661-51051 (11/2000 - 01/2001)
89661-51130 (02/2001 - 03/2001)
(выделенное на столе)
http://i59.tinypic.com/2ni7kph.jpg

George_R
07.10.2015, 10:26
Если тебе надо только добиться показаний от приборки то она работает гораздо проще, дал команду (периодически) - показала

se55y
07.10.2015, 10:55
Если тебе надо только добиться показаний от приборки то она работает гораздо проще, дал команду (периодически) - показалаэто для MPX-приборки справедливо, а тут своя шина между INSTRUMENT PANEL INTEGRATION и COMBINATION METER. Неожиданно, правда?
http://i61.tinypic.com/x6bmw.jpg

George_R
07.10.2015, 10:59
Т.е. сама по себе приборка отправляет какую-то информацию в блок интеграции и оттуда еще куда-то дальше?

se55y
07.10.2015, 11:20
Т.е. сама по себе приборка отправляет какую-то информацию в блок интеграции и оттуда еще куда-то дальше?по странной прихоти, на приборке сидит кнопка, которая устанавливает одно из трёх возможных расстояний для радарного круиз-контроля.. Как я понимаю, оно через блок интеграции уходит в моторник и связанный с ним (опять какой-то своей шиной) процессор радарного круиза. Больше в эту сторону ходить, кажется, нечему.

George_R
07.10.2015, 11:23
Скорее лазерный круиз, но идею понял. Ну и заморочились они.

se55y
07.10.2015, 11:42
Скорее лазерный круиз, но идею понял. Ну и заморочились они.ИК-лидар там, если уж совсем точным быть

George_R
07.10.2015, 11:44
Так ты его собрался отдельно запустить?

se55y
07.10.2015, 12:25
Так ты его собрался отдельно запустить?нет, это в Волгу с UZ он давно просится :-) В сельсиоровских мозгах, кажется, всё для его внедрения уже есть.

George_R
07.10.2015, 12:28
То есть сам блок круиза и лазер ты уже нашел?

(vS)
07.10.2015, 12:34
а с контролькой разобрались?

se55y
07.10.2015, 12:41
То есть сам блок круиза и лазер ты уже нашел?У меня они с завода стоят, но я еще нашёл, чтобы (если что) на столе подключиться

George_R
07.10.2015, 12:41
конечно, я еще на toymods все обрисовал, берется 8-битная crc на все данные после стартового бита. Какбе вариантов всего 255, я взял и подобрал матлабом

se55y в волге с цельсовским мотором надо "в сезон" фары протирать 1 раз дома, и 1 раз через 15км на работе, за это расстояние они покрываются плотной коркой. Думаю японский ИК лазер не полюбит нашу природу. Круиз обычный у меня и так есть, а для лазерного не хватает абс

se55y
07.10.2015, 12:45
а с контролькой разобрались?
ты не заметил за шуткой ответа на этот вопрос

se55y
17.10.2015, 20:42
BCF STATUS,C
BTFSC INP
BSF STATUS,C
RLF msg+.15,1
RLF TMP,1 ;save STATUS,C
RRF TMP,0
RLF CRC8,1
MOVLW POLY
BTFSC STATUS,C
XORWF CRC8,1
RRF TMP,1 ;restore STATUS,C
RLF msg+.14,1
RLF msg+.13,1
...

(vS)
19.10.2015, 00:27
похоже на ассемблер, что это?

se55y
19.10.2015, 05:21
похоже на ассемблер, что это?
он и есть, в выделенных зелёным строках как раз и идёт расчёт контрольной суммы

(vS)
19.10.2015, 09:07
понял, сильно не вчитывался )

lostman
09.02.2016, 21:30
здравствуйте товариСЧи, если не сложно, может кто выложить или на почту отправить полный лог со стартовыми битами, буду благодарен

md_agent
17.08.2016, 09:15
больше никто не занимался ?

Prosport20
22.10.2016, 13:14
Гении инженерии. Нужна помощь. Я установил на старую 15 будку лексуса автоматический механизм подъёма и подтяжки пятой двери с лексуса 36 будки это Лексус rx330. Суть проблемы этот механизм не работает без сигнала mpx1 мозги находятся в блокировке. Пробывал этот сигнал с родного мультиплекса подключить он не работает. Видимо совсем другой. Подкидываю провод с сигналом с стоящей рядом машины лексуса или Харриса все работает. Что можно сделать с мозгами подъёма пятой двери. Можно ли сделать симулятор сигнала или как то обойти его. Хочется добить до конца кто сможет чем помочь

George_R
22.10.2016, 15:00
если есть доступ к проводу мпх в машине где все работает то можно
пишите в личку

Prosport20
22.10.2016, 15:56
Дело в том что я нахожусь в другом городе. Если у вас есть возможность померить сигнал в вашем городе. Сделать обманку либо прошить мозги пятой двери буду очень благодарен. Мозги могу выслать. Расходы покрою. Уж очень хочется дойти до конца. Схемы литература все есть

Prosport20
22.10.2016, 15:58
Дело в том что я нахожусь в другом городе. Если у вас есть возможность померить сигнал на лексусе или Харриер в вашем городе. Сделать обманку либо прошить мозги пятой двери буду очень благодарен. Мозги могу выслать. Расходы покрою. Уж очень хочется дойти до конца. Схемы литература все есть могу скинуть

George_R
23.10.2016, 02:24
Если есть возможность прислать мозги которые умеют давать нужную команду-можно сделать

D.J.Vova
05.03.2017, 13:35
BEAN протокол бывает по двум отдельным линиям (витая пара TX, RX) ? Обнаружил связь между блоками в первых гибридных авто toyota estima hybryd ahr10, prius nhw11. Там еще can шины не было и используется две независимые шины RX,TX, как в компьютерной сети. Но скорость мала, примерно как у BEAN 4-5 килобита в секунду. Не могу найти описания этого протокола, может есть у кого ?

zelya
21.05.2017, 21:05
нет, это классический полудуплекс по одной линии - один говорит, остальные внимают.
две линии - для надежности - объеденены в кольцо, и этих колец бывает до 3-х, по функционалу, т.е. где все в одном, где один - двигло+приборка+все что к нему, второй - салон, 3-я уже обычно avc-lan мультимудия.

Prosport20
29.05.2017, 20:42
Здравствуйте я снова к вам. По поводу обманки. Дело в том что сигнал MPX формируется со всеми блоками авто в комплексе. Эбу авто,боди блок(в блоке предохранителей)блок кнопок в водительской двери. блок климата. Отдельно выслать могу кроме эбу двигателя и климата. Если поможет конечно. Заодно и обманку для щитка приборов если можно. У ретрика хоря и 2го поколения сигналы MPX разные.

(vS)
30.05.2017, 12:35
а кого обманывать то собрались?

Prosport20
30.05.2017, 19:42
BIAN шину надо обмануть или срастить

(vS)
31.05.2017, 11:52
это как полет на луну, конкретно то что хотите?

Prosport20
31.05.2017, 13:34
Я поставил механизм подъёма и опускания и подтяжки пятой двери на ретро Харриер Открытие и подъёма и закрывание нет. Мозги пятой двери без сигнала MPX не работают. Так как в нем находятся сигналы от КПП Что она на порковке стоит, сигнал с щитка берет что скорость 0 и с центрального замка. Все это общение идёт по бин шине. В ретро Харриер сигналы MPX есть но они видимо другие. Вот надо либо сделать симулятор этиого сигнала. Чтоб дверь заработала. Хотелось и щиток поменять но там тоже все основные показания идут по бин шине.

Prosport20
31.05.2017, 13:37
Может с вами на прямую связаться и обьяснить что к чему?

Markelych
02.02.2018, 02:52
Здравствуйте.
Как-то тема заглохла, а очень хочется продолжения...
Попала ко мне в руки приборка toyota celsior (вроде она же lexus ls430)
Необходимо поставить ее в другую машину (к примеру, ВАЗ...), а стрелки бенза и температуры работают по MPX (BEAN)
Ситуация осложняется тем, что оригинального автомобиля нет, чтоб прочитать коды.
Может есть у кого уже найденные? Видел в инете видео и готовые устройства с посылкой нужных команд, но никто не делится. За деньги не готов покупать, т.к. это для себя и только из спортивного интереса.

Аппаратную часть передатчика понял, собрать смогу. Программную пока не совсем. (программирую на школьном уровне на С++)
Как на С посчитать CRC? (а то асм для меня вообще не понятен)
Как правильно посылать команду? Эти стаффинг биты дополнительные, или просто инвертируется бит из полезного сообщения?
Правильно ли я понял, что важна скорость передачи и количество идущих подряд одинаковых бит определяется по длительности импульса?

Если кто-то поделится готовой схемой и исходниками - буду безумно рад. Спасибо.

Markelych
05.02.2018, 15:01
конечно, я еще на toymods все обрисовал, берется 8-битная crc на все данные после стартового бита. Какбе вариантов всего 255, я взял и подобрал матлабом


George_R, не могли бы Вы помочь какими-нибудь данными?
Пытаюсь подключить на столе приборку Celsior ucf30. С аналоговой частью разобрался, а вот с MPX засада. Планирую ставить в машину без MPX. (Вроде у Вас есть успехи в этом вопросе)

Впервые сталкиваюсь с CRC - многое непонятно.
Попробовал считать всякими стандартными алгоритмами - не получается.
На сколько я понял, нужны CRC polynom и Initial value. Не понимаю, где их брать.
Считать пробовал на примере 23 fe d4 30 a6 7e. Брал значение 23fed430
и пытался получить A6 - это правильно? Я хотя бы на верном пути?

Со staffing битами разобрался - поглядел осцилографом сообщения от приборки.
С физическим уровнем тоже разобрался. Отправляю данные с arduino через k-line адаптер. Пробовал отправлять 23 fe d4 30 a6 7e - включается только значок аккума, без масла.

Подопытного автомобиля, или мозгов нет - это сильно осложняет дело.

Markelych
05.02.2018, 15:25
ты не заметил за шуткой ответа на этот вопрос

И я не заметил. Спасибо)
Только ща увидел


Теперь нужны сами значения пакетов, ибо сниффить мне их негде (есть только приборка)
Хочу попробовать брутфорсом.
А что, если взять сообщение адресованное приборке, и заменить в нем DID на FF (по книге это получается широковещательный запрос)?

Markelych
07.02.2018, 16:36
Я сделяль! :ydance:
Выяснил для себя несколько моментов, которые очень помогли разобраться с приборкой:

CRC-8 на всё, что после стартового бита, poly=0x13, init=0x00
Стаффинг биты добавляются от стартового бита и до CRC включительно
Если после стаффинг бита идут еще 4 таких бита - снова добавляем стаффинг бит
Приоритет не важен для проверки - можно ставить любой
Если данных больше чем нужно - не страшно. Лишние игнорируются.
Многое управляется побитово 1=вкл, 0=выкл. Соответственно, 0xFF=0b11111111=вкл всё.


Из сообщений выше можно догадаться, что DID приборки = 0xFE
Делаем заготовку сообщения вида:
0D FE xx FF FF FF FF FF FF FF FF FF FF FF CRC 7e
MID (xx) перебираем от 0x0 до 0xFF, каждый раз пересчитывая crc, отправляем и наблюдаем за приборкой.
Я делал это с помощью ардуино и выводил текущий MID в Serial

После того, как приборка показала, что она умеет включать, меняем сообщение на
0D FE xx 00 00 00 00 00 00 00 00 00 00 00 CRC 7e
и смотрим что она умеет гасить и на каких MID

Дальше можно разбираться с каждым сообщением индивидуально. (Выбираем MID и меняем data биты по одному)
Почти всё было разгадано за один вечер, без подопытной машины и мозгов.

(vS)
09.02.2018, 07:51
вишь какой молодец ))
особенно, что сюда написал

kostyasha
19.08.2018, 04:20
Прочитал ветку но не понял по итогу на чем адаптеры собираете и какой софт?
Каждый свой Rx/Tx код пишет? Под k-line, резистивный делитель? Ардуины (как в авц-лан адаптерах)?
Надо будет ковыряться с BEAN, ищу с чего собирать.