Форум по автодиагностике, автосканерам, ремонту, обслуживанию и эксплуатации автомобилей

Форум по автодиагностике, автосканерам, ремонту, обслуживанию и эксплуатации автомобилей (http://autoprogs.ru/index.php)
-   Диагностика VAG (AUDI / Volkswagen / Skoda / Seat) | ремонт электроники (http://autoprogs.ru/forumdisplay.php?f=228)
-   -   VAS 5054 (он же VAS 5054a) (http://autoprogs.ru/showthread.php?t=1180)

lprot 23.09.2019 22:06

Цитата:

Сообщение от veloseeped (Сообщение 858462)
Я смотрел логическим анализатором. Ему не важна скорость, он любые изменения на шине выловит.
Но не суть - помер БТ и помер. А знание "как и почему" пользы для общей темы не несет.

Так может пусть тебе SEG13 рабочий BC417 с правильной прошивкой вышлет?

SEG13 23.09.2019 22:10

Ребята вы решите кому что выслать, могу как рабочую плату с BC417 так и платку с бея.

SerjP 23.09.2019 22:18

Цитата:

Сообщение от lprot (Сообщение 858436)
Проверь пожалуйста еще, что выдает на TX LMX9830 при включении питания. Ну и получает ли он что-то от Infineon. При этих проверках по bluetooth EDICConfigoм не соединяйся. Важно знать надо ли что-то при включении генерировать для Infineon.

Подача питания:
Tx: ничего
Rx: ничего
пробовал раз 5, ничего не приходит. Если конечно скорость LMX9830 верная - при подаче питания сразу 921600 выставляется?

Отключие питания:
Tx: 00
Rx: 00

lprot 23.09.2019 22:25

Цитата:

Сообщение от SerjP (Сообщение 858471)
Подача питания:
Tx: ничего
Rx: ничего
пробовал раз 5, ничего не приходит. Если конечно скорость LMX9830 верная - при подаче питания сразу 921600 выставляется?

Отключие питания:
Tx: 00
Rx: 00

Спасибо за логи, да скорость сразу 921600 и LMX9860 сразу уходит в прозрачный режим и ждет соединения по bluetooth. Так что все норм. Теперь буду думать как сгенерировать UART break...

----------

Цитата:

Сообщение от SEG13 (Сообщение 858465)
Ребята вы решите кому что выслать, могу как рабочую плату с BC417 так и платку с бея.

Мне оригинал AMB2300 не интересен. А с BC417 я б поковырялся...

SEG13 23.09.2019 22:30

lprot,

Хорошо.
Кому AMB2300 с бея? Деньги только за пересылку, а там граммы.

lprot 23.09.2019 23:24

Вложений: 2
С разрешения SEG13, публикую фото его bluetooth модуля на BC417 и делюсь своими соображениями как он работает.

То что в нем кастомная прошивка умеющая обрабатывать LMX9830 команды это наверно понятно всем. Но для реализации приема и посылки UART break на обратной стороне платы использовали 74c00d.

Я предполагаю, что он подключен к двум PIO, на прием и передачу. Соответственно на если на приеме от Infineon какое-то время низкое, на PIO соответственно высокое.

Поэтому вопрос остается открытым, как определять UART break без 74c00d, через PIO...

adolf80 24.09.2019 00:35

Цитата:

Сообщение от SEG13 (Сообщение 858368)
adolf80,Выложил фото с экранами, а потом пишет прислали разобранный.

Я имел ввиду после моего запроса прислали фото без экрана.

----------

Цитата:

Сообщение от SEG13 (Сообщение 858465)
Ребята вы решите кому что выслать, могу как рабочую плату с BC417 так и платку с бея.

а прошивку с 417 сможешь слить? И схему зарисовать?

----------

Цитата:

Сообщение от lprot (Сообщение 858496)

Поэтому вопрос остается открытым, как определять UART break без 74c00d, через PIO...

Я думаю, что без 74 не обойтись. Да и прицепить ее рядом нет никаких проблем. Надо прошивку главное слить).

----------

Цитата:

Сообщение от SEG13 (Сообщение 858477)
lprot,

Хорошо.
Кому AMB2300 с бея? Деньги только за пересылку, а там граммы.

Ну тут либо велосипеду взамен погибшего на экспериментах, либо Николаю, у него тоже один погиб). Я могу и 74 заколхозить) да и платы у меня нет под 2300 на которую его припаивать).

veloseeped 24.09.2019 00:44

Вложений: 2
Цитата:

Сообщение от lprot (Сообщение 858496)
С разрешения SEG13, публикую фото его bluetooth модуля на BC417 и делюсь своими соображениями как он работает.

То что в нем кастомная прошивка умеющая обрабатывать LMX9830 команды это наверно понятно всем. Но для реализации приема и посылки UART break на обратной стороне платы использовали 74c00d.


Эта платка сделана на основе модуля [Ссылки могут видеть только зарегистрированные пользователи. Зарегистрироваться...] от индусов ;-)
В чипе 7400 использовано 2 гейта из 4-х причем включены они последовательно. Видимо китайцам было проще реализовать логику процесса на аппаратном уровне, чем вникать в программную часть этого модуля
Можно попробовать сравнить с более рапростаненными конструктивами BT-модулей, а подключение доп логического гейта легко вызвонить с лонорской платы.

adolf80 24.09.2019 00:59

Цитата:

Сообщение от veloseeped (Сообщение 858507)
Эта платка сделана на основе модуля [Ссылки могут видеть только зарегистрированные пользователи. Зарегистрироваться...]
В чипе 7400 использовано 2 гейта из 4-х причем включены они последовательно. Видимо китайцам было проще реализовать логику процесса на аппаратном уровне, чем вникать в программную часть этого модуля
Можно попробовать сравнить с более рапростаненными конструктивами BT-модулей, а подключение доп логического гейта легко вызвонить с лонорской платы.

мне интересно для чего на остальные 2 гейта единицу на входы подтянули? Что бы было?))))

veloseeped 24.09.2019 01:14

Цитата:

Сообщение от adolf80 (Сообщение 858508)
мне интересно для чего на остальные 2 гейта единицу на входы подтянули? Что бы было?))))

Экономия электроэнергии :smile:
Ну и входа у древней серии 74С КМОП-логики ловят помехи не хуже радиоприемника...

lprot 24.09.2019 05:55

Цитата:

Сообщение от veloseeped (Сообщение 858510)
Экономия электроэнергии :smile:
Ну и входа у древней серии 74С КМОП-логики ловят помехи не хуже радиоприемника...

И все таки с учетом всей вышеприведенной информации и твоими скилсами в коде sys54. Если пропатчить Uart break, чтоб он его не ждал а сразу считал что модуль в командном режиме, можно сделать чисто програмное решение без всяких паек.

На данный момент у меня такой план - запаять rx на pio11, а tx, на pio10. На pio11 повесить функцию piodebounce с интервалом 1мс, длительность 10мс. И по приходу события, переводить pio10 в низкое на 10мс.

veloseeped 24.09.2019 08:16

Цитата:

Сообщение от lprot (Сообщение 858527)
И все таки с учетом всей вышеприведенной информации и твоими скилсами в коде sys54. Если пропатчить Uart break, чтоб он его не ждал а сразу считал что модуль в командном режиме, можно сделать чисто програмное решение без всяких паек.

На данный момент у меня такой план - запаять rx на pio11, а tx, на pio10. На pio11 повесить функцию piodebounce с интервалом 1мс, длительность 10мс. И по приходу события, переводить pio10 в низкое на 10мс.

1. Вариант с подобным патчем ( в данном конкретном случае) это потратить массу времени с негарантированным результатом. Разобрать все (а их более сотни) программные флаги, которые участвуют в подпрограммах обмена между процессором и модулем, чтобы определить их назначение и может быть найти среди них нужные, чтобы повернуть ход программы в нужном направлении по сути титаническая работа.
Не сравнить с трудозатратами по подгонке работы модуля в условиях какой-никакой среды разработки.

2. Что-то паять придется в любом случае. Какая разница припаять пару проводов или мелкий простой чип.
Соединять напрямую между собой PIO концы, запрограммированные как выходы, не очень хорошая идея. CSR не дает точной информации, как аппаратно выполнен этот двунаправленный порт внутри чипа. Поэтому и микруха у китайцев появилась не просто так. Судя по всему таким способом они соорудили схему "ИЛИ по нулям" смешивания сигналов TxD и какого-то PIO, запрограммированного под сигнал BRAKE

adolf80 24.09.2019 08:39

Цитата:

Сообщение от veloseeped (Сообщение 858537)
1. Вариант с подобным патчем ( в данном конкретном случае) это потратить массу времени с негарантированным результатом. Разобрать все (а их более сотни) программные флаги, которые участвуют в подпрограммах обмена между процессором и модулем, чтобы определить их назначение и может быть найти среди них нужные, чтобы повернуть ход программы в нужном направлении по сути титаническая работа.
Не сравнить с трудозатратами по подгонке работы модуля в условиях какой-никакой среды разработки.

2. Что-то паять придется в любом случае. Какая разница припаять пару проводов или мелкий простой чип.
Соединять напрямую между собой PIO концы, запрограммированные как выходы, не очень хорошая идея. CSR не дает точной информации, как аппаратно выполнен этот двунаправленный порт внутри чипа. Поэтому и микруха у китайцев появилась не просто так. Судя по всему таким способом они соорудили схему "ИЛИ по нулям" смешивания сигналов TxD и какого-то PIO, запрограммированного под сигнал BRAKE

Совершенно верно. И скорее всего управление идет
по 2-й ноге чипа 74 ( лог. 1 в режиме транслятора и лог. 0 в режиме брик), а 5-я нога посажена на питание (+), а выход со следующим входом соединен для того, что бы вернуть инвертированный сигнал обратно к прямому.. Нельзя просто так взять и посадить шину UART. Надо сделать точно так же как у китайцев.
lprot
покупай чип 74

veloseeped а почему ИЛИ? Разве там не 2И-НЕ ?
А свой АМБ ты наверное убил статикой.

lprot 24.09.2019 15:30

Цитата:

Сообщение от adolf80 (Сообщение 858541)
покупай чип 74

На BC417 PIO умеют работать как в режиме входа так и в режиме выхода.
Как weak pullup с большим сопротивлением так и strong pullup с маленьким.
Читать как минимум должно получиться.

Ну а с посылкой break, посмотрю сегодня open drain ли у нас TX...

Глянул даташит и собственно:
UART_TX CMOS output, tri-state, with weak internal pull-up UART data output
UART_RX CMOS input with weak internal pull-down UART data input
PIO[11] Bi-directional with programmable strength internal pull-up/down Programmable input/output line
PIO[10] Bi-directional with programmable strength internal pull-up/down Programmable input/output line

adolf80 24.09.2019 16:01

Цитата:

Сообщение от lprot (Сообщение 858672)
На BC417 PIO умеют работать как врежиме входа так и в режиме выхода.
Как weak pullup с большим сопротивлением так и strong pullup с маленьким.
Читать как минимум должно получиться.

Ну а с посылкой break, посмотрю сегодня open drain ли у нас TX...

Ну а что если с выхода тх сигнал завести ( перемычкой ) на свободный порт ( в режиме входа) и прошивкой транслировать его на еще один свободный порт но уже в режиме выхода. И из него уже брать наш ТХ? Тогда с этим выходным портом можно в прошивке делать что угодно.
Пришла команда на выход из прозрачного режима - сбросил этот порт на нужное время и опять его транслируешь.

lprot 24.09.2019 16:49

Цитата:

Сообщение от adolf80 (Сообщение 858680)
Ну а что если с выхода тх сигнал завести ( перемычкой ) на свободный порт ( в режиме входа) и прошивкой транслировать его на еще один свободный порт но уже в режиме выхода. И из него уже брать наш ТХ? Тогда с этим выходным портом можно в прошивке делать что угодно.
Пришла команда на выход из прозрачного режима - сбросил этот порт на нужное время и опять его транслируешь.

Задержка будет больше. Обновил инфу выше. Буду пробовать от простого к сложному...
Идея попробовать сначала weak pull down запараллеленый на TX.

adolf80 24.09.2019 18:24

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

lprot 24.09.2019 20:04

Цитата:

Сообщение от adolf80 (Сообщение 858704)
А как обратно в прозрачный режим переключается модуль и что он должен выдать инфинеону?

Ничего не выдает, так как перед посылкой команды перевода обратно в прозрачный режим, Infineon шлет SET_EVENT_FILTER 02 - требуя докладывать ему только о разрыве соединения при помощи UART break сигнала.

adolf80 24.09.2019 21:18

Ну тогда дело за малым))) надеюсь у тебя все получится))

----------

Цитата:

Сообщение от lprot (Сообщение 858527)
На данный момент у меня такой план - запаять rx на pio11, а tx, на pio10. На pio11 повесить функцию piodebounce с интервалом 1мс, длительность 10мс. И по приходу события, переводить pio10 в низкое на 10мс.

А сразу с rx нельзя принять команду чтобы не использовать pio11? Нужно же правильно принять команду ( в рамках временного пакета и с учётом стартового и стопового бита ) иначе могут быть ложные переходы и тем самым глюки в работе.

lprot 24.09.2019 21:32

Цитата:

Сообщение от adolf80 (Сообщение 858757)
Ну тогда дело за малым))) надеюсь у тебя все получится))

----------


А сразу с rx нельзя принять команду чтобы не использовать pio11? Нужно же правильно принять команду ( в рамках временного пакета и с учётом стартового и стопового бита ) иначе могут быть ложные переходы и тем самым глюки в работе.

Нельзя принять через RX, так как длина низкого сигнала в три раза превышает длину 10бит. И контроллер UART ловит его как ошибку передачи не индицируя сообщением в программу которая выполняется в виртуальной машине.

corvin 29.09.2019 17:58

Вложений: 1
В связи с проблемами по USB (устройство USB не опознано), есть несколько вопросов:
1. на каком месте должен стоять R1 (мне казалось, что на соседнем);
2. какой номинал должен быть у R2, в данном случае 1 МОм;
3. какой номинал должен быть у R3, в данном случае 10 кОм?

AleckNW 29.09.2019 18:04

Цитата:

Сообщение от corvin (Сообщение 859948)
В связи с проблемами по USB, есть несколько вопросов.

Это резисторы. )))

corvin 29.09.2019 19:14

:smile: это точно.

veloseeped 29.09.2019 20:01

Цитата:

Сообщение от corvin (Сообщение 859948)
1. на каком месте должен стоять R1 (мне казалось, что на соседнем);

У меня на такой же плате стоит правее (по картинке), номиналы резисторов такие же.
По-моему расположение резистора R1 не влияет на работоспособность. Этот резистор подтяжка ножки WR. Но эта ножка в конфигурации прибора не используется (это для DMA режима)
На плаьах с ISP1181 в другом корпусе этот резюк стоит и так и сяк, и обе платы при этом по USB рабочие.

corvin 29.09.2019 20:51

Я кажется понял, что с этой платой. Разогнул ее и USB заработал. Попробую пропаять ISP1181. R1 верну на прежнее место.
На другом типе платы (видимо где и так и сяк), если WR подтянуть не к земле, а к плюсу USB перестает работать, а также R2=0 Ом, R3=1 кОм.

AleckNW 29.09.2019 21:12

R1 расположение пофиг
R2 0
R3 1 кОм
на той что под рукой, если не выпаивать

lprot 30.09.2019 01:06

Благодаря логам любезно предоставленным SerjP и бесконечного числа экспериментов с таймаутами и протоколами LMX9830 и SYS54, мне наконец удалось реализовать вход в параметры в EDICConfig, функцию Reset to defaults, изменение параметров энергосбережения и динамика, чисто программным путем (без использования каких либо микросхем, диодов и т.п.)

Впереди еще реализация функций сохранения изменений PIN, bluetooth имени и security mode, но это дело техники.

Для полного счастья (читайте феншуя) не хватает разобраться с PG6.
Как я уже сообщал ранее, я запаял перемычку между PG6 infineon и PIO9. PIO9 я запрограммировал держать низкий уровень на PG6 Infineon до того момента, как установлено соединение по bluetooth (при этом светодиод мигает с интервалом раз в секунду). Когда соединение установлено, я устанавливаю PIO9 в 3В (светодиод горит постоянно).

Если перемычку не паять, на PG6 всегда высокий уровень и Infineon считает что соединение всегда установлено (всегда горит светодиод). Соответственно он не может уйти в спящий режим даже если его включить в настройках.

Управление PG6 как бы решает задачу спящего режима, но вот незадача, если я при разрыве соединения устанавливаю PG6 в низкое состояние и пробую сразу повторно соединиться (открыть порт bluetooth), установить соединение не удается (завершается ошибкой, не удалось открыть COM порт).
Если сделать еще одну попытку, порт открывается отлично. Но!
EDICConfig когда записывает параметры, делает это в несколько действий:
1. Открывает порт, считывает текущие параметры и закрывает порт
2. Открывает порт, записывает текущие параметры, закрывает порт
3. Открывает порт и читает текущие параметры еще раз

и вот если я управляю PIO9 (держу его при дисконнекте в низком состоянии), EDICConfig не удается повторно соединиться (п.3), а так как повтора попытки в нем нет, он или подвисает или выдает ошибку.

Если я не управляю PIO9, проблем с повторным соединением после закрытия и открытия порта bluetooth нет. Но естественно все время горит светодиод и не работает спящий режим.

Следовательно у меня вопрос к владельцам оригинала:
1. При подаче питания через OBD2 разъем (если по bluetooth еще не соединялись), какое напряжение на PG6?
2. Начинает ли мигать светодиод сразу же если закрыть компорт? Для проверки этого, необходимо открыть порт bluetooth например в том же HTerm или RealTerm, послать hex байты f0 f1 f2 f3 (без перевода строки). Светодиод должен гореть постоянно). Закрыть COM порт и проследить за светодиодом.

veloseeped 30.09.2019 08:00

Цитата:

Сообщение от lprot (Сообщение 860059)
Впереди еще реализация функций сохранения изменений PIN, bluetooth имени, но это дело техники.

Это врядли удастся, без доработки прошивки прибора.
Почему? Да просто операции через ACS0 порт, куда подключается ВТ, позволяют записывать ячейки eeрrom ТОЛЬКО по адресам [33...37] и CSM [7F].
Остальные ячейки недоступны для записи.

lprot 30.09.2019 12:16

Цитата:

Сообщение от veloseeped (Сообщение 860081)
Это врядли удастся, без доработки прошивки прибора.
Почему? Да просто операции через ACS0 порт, куда подключается ВТ, позволяют записывать ячейки eeрrom ТОЛЬКО по адресам [33...37] и CSM [7F].
Остальные ячейки недоступны для записи.

Удастся, эти настройки хранятся в модуле блютуз.

veloseeped 30.09.2019 13:58

Цитата:

Сообщение от lprot (Сообщение 860135)
Удастся, эти настройки хранятся в модуле блютуз.

Вот только одно большое но..
Если эти настройки не совпадут с теми, что хранятся в еепроме прибора работать система откажется.

lprot 30.09.2019 14:41

Цитата:

Сообщение от veloseeped (Сообщение 860158)
Вот только одно большое но..
Если эти настройки не совпадут с теми, что хранятся в еепроме прибора работать система откажется.

Возможно мы говорим о разных вещах. Я имею ввиду настройки имени и пина блютуза, которые можно менять в EDICConfig.

Он дает возможность сменить имя VAS5054 на что угодно, но запрещает менять серийник и угловые скобки. Пин он меняет вообще без проблем. Там есть искуственное ограничение длины, но это не важно.

Все это передается и принимается по RX, TX, RTS, CTS, GND. Больше никакие контакты в это не участвуют.

veloseeped 30.09.2019 14:50

Цитата:

Сообщение от lprot (Сообщение 860167)
Возможно мы говорим о разных вещах. Я имею ввиду настройки имени и пина блютуза, которые можно менять в EDICConfig.

Даже если это так, то в чем практический смысл этого действия.
Что б было?



Цитата:

Сообщение от lprot (Сообщение 860167)
Он дает возможность сменить имя VAS5054 на что угодно, но запрещает менять серийник и угловые скобки. Пин он меняет вообще без проблем. Там есть искуственное ограничение длины, но это не важно.

Ага, а программа в процессоре проверяет этот PIN и если он не совпадает с серийником, хранящемся в еепроме прибора тут же меняет его на прописанный там.

На то в программе инфинеона заложены команды get/write local name и set fixed pin

lprot 30.09.2019 15:02

Цитата:

Сообщение от veloseeped (Сообщение 860174)
На то в программе инфинеона заложены команды get/write local name и set fixed pin

Это команды LMX9830...

veloseeped 30.09.2019 15:22

Цитата:

Сообщение от lprot (Сообщение 860180)
Это команды LMX9830...

Естественно. И что это меняет ?
XC161 легко доберется до всего и поправит, все "левые" настройки EDICconf только с "другой" стороны модуля.

adolf80 30.09.2019 23:35

Цитата:

Сообщение от veloseeped (Сообщение 860174)
Даже если это так, то в чем практический смысл этого действия.
Что б было?

Велосипед а как же " по фен-шую"?))))
Тут дело принципа. Что бы работало как в оригинале.

lprot 01.10.2019 01:35

Вложений: 2
Цитата:

Сообщение от veloseeped (Сообщение 860187)
Естественно. И что это меняет ?
XC161 легко доберется до всего и поправит, все "левые" настройки EDICconf только с "другой" стороны модуля.

Установил "левые" настройки имени, пин кода и security режима. Делал это из командного режима AT+CONF, так как запись из EDIC пока не реализовал (чтение уже я сделал). После изменения, EDIC успешно получил их от sys54, который в свою очередь получил их от моей прошивки.

После этого я изменил "Enable PowerOff" и успешно записал и применил в EDIC. Закрыл, повторно открыл и настройки считались. Таким образом sys54 ничего не исправил, а принял что ему дали.

veloseeped 01.10.2019 09:34

Цитата:

Сообщение от lprot (Сообщение 860446)
После этого я изменил "Enable PowerOff" и успешно записал и применил в EDIC. Закрыл, повторно открыл и настройки считались. Таким образом sys54 ничего не исправил, а принял что ему дали.

Ну хорошо, допустим вы поменяли название устройства в радиоканале.
И что дальше?
Имеем полный логический "бардак":smile:.
В радиоканале видим устройство с одним названием типа "фен-шуй", а в PDU и Одисах как было 5054 и тот же серийник, так все и остается.

Вопрос "в чем практическая выгода и удобство от реализации возможности, переименовать устройство в радиоканале?" так и остался не раскрыт.

lprot 01.10.2019 09:54

Цитата:

Сообщение от veloseeped (Сообщение 860478)
Ну хорошо, допустим вы поменяли название устройства в радиоканале.
И что дальше?
Имеем полный логический "бардак":smile:.
В радиоканале видим устройство с одним названием типа "фен-шуй", а в PDU и Одисах как было 5054 и тот же серийник, так все и остается.

Вопрос "в чем практическая выгода и удобство от реализации возможности, переименовать устройство в радиоканале?" так и остался не раскрыт.

Так и должно быть, в одисе отображается реальный тип адаптера, но имя и пин, могут быть любые. Для понимания какой из адаптеров ты видишь в блютуз окружении. Потому как представь себе большую техстанцию где несколько инженеров работают с одисами. Соответственно они назовут свои адаптеры так как им удобно. Вот и все, нет тут никакой непонятки или магии :)

veloseeped 01.10.2019 10:11

Цитата:

Сообщение от lprot (Сообщение 860481)
Потому как представь себе большую техстанцию где несколько инженеров работают с одисами. Соответственно они назовут свои адаптеры так как им удобно. Вот и все, нет тут никакой непонятки или магии :)

С трудом могу представить наличие подобной станции среди индивидуальных владельцев китайских клонов 5054 :biggrin1:
А на легальной станции все адаптеры будут со своими серйниками - этого достаточно, чтобы отличить один от другого.

autoreload17 01.10.2019 10:29

"по фен-шую" - это когда 5054 оригинал:thumbup:


Текущее время: 15:30. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод:
zCarot
Автодиагностика и автосканеры.