Avc lan toyota распиновка

Обновлено: 06.07.2024

Регистрируясь на данном ресурсе Вы соглашаетесь с действующими Правилами форума и обязуетесь их соблюдать.
Незнание правил не освобождает Вас от наказания за их нарушение!

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

110. Работа климата без головного устройства. Статья. 0

Предлагаю вниманию общественности решение одного японца касательно того, как запустить климат в 110 кузове без головного устройства не выдергивая плат. На мой взгляд самое интересное, правильное, красивое и технологичное решение вопроса. В силу того что статья содержит большие фотки выкладываю на iFolder .

ВАЗ 2109 (1994), ВАЗ 21099 (1997), Chaser GX100 BEAMS (1998), Mark II JZX110 Grande G (2001), Camry V50 Prestige+ (2012)



ifk120
Полезная статья, интересно, кто-нить из клубней пробовал такую штуку сделать.

KЯAM
дак ты и попробуй, как раз заморочился же музыкой




ifk120
Как обычно ты вовремя. полезная фича. Надо пробовать, уже скоро должен ставить 2 дин мафон.



We-BEER
Залезу блин не туда куда-нить
Всё есть только карман осталось забрать.

KЯAM
там даже если бухой полезешь напортачить сложно, резюк меж двух проводов прикрутить дело не хитрое



ifk120
Как обычно ты вовремя. полезная фича. Надо пробовать, уже скоро должен ставить 2 дин мафон.

ВАЗ 2109 (1994), ВАЗ 21099 (1997), Chaser GX100 BEAMS (1998), Mark II JZX110 Grande G (2001), Camry V50 Prestige+ (2012)


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


выдергиваем штекер и режем пару проводов 9 и 10 (зеленый с серой полосой и голубой с серой полосой)


паяем/прикручиваем на эти провода резистор на 120 Ом.


подключаем получившийся девайс к мультику, смотрим чтобы нигде ничего не коротило, и включаем. о чудо! климат работает


фото девайса покрупней


на мультике перестанут работать некий аудио сервис тест, это видимо единственный минус метода. да и нужен ли этот аудио тест, если аудио как такового нет.

на самом деле можно ничего не резать и не паять, достаточно просто воткнуть резистор в фишку между нужными проводами.

В этой статье — PHY, Transport, и доставка пакетов до хост-девайса, которую наконец-то удалось проверить на реальной родной голове приуса.

Быстро сказка сказывается, да не быстро дело делается. Сегодня продолжаю затяжной проект по переделке медиасистемы в Prius, начатый 2 года назад.

На самом деле — адаптер USB-AVC физически собран достаточно давно, и пакеты принимать он тоже научился намного раньше. Но у меня были сомнения относительно его поведения на реальной шине, а проверить возможности не было, т.к. тащить и подключать в машину конструкцию ноут+отладчик+плата — просто не было ни времени, ни желания.

Но случилось так, что доблестные дорожные службы, так тщательно спонсируемые мной во время прохождения ТО, забыли починить тормоза в МАЗе, и моему приусу пришлось вырабатывать дополнительное тормозное усилие для уборочной техники.

Ну, а пока он стоит в покраске, я снял с него голову, и проверил PHY-часть схемы.


Итак, с самого начала. Копаясь в интернете на предмет адаптеров к AVC-LAN, я очень часто видел решения, похожие на вот такое. И в обсуждении нередко проскакивают вот такие комментарии:

Честно говоря не очень хорошо работает, точнее не со всеми головами хорошо работает.

Пока идеально читается шина на какой-то старинной магнитоле со Spacio 99 года.

Я изначально настроен принципиально против того, чтобы делать «как нибудь», и решения с конструктивно заложенной нестабильностью меня не устраивают.
Будем повторять путь реверс-инженеринга шины. Поехали.

Первым делом, подключаемся к шине на живом авто, и снимаем осциллограммы:



Начало пачки.



Биты где-то в середине, крупнее.



Что-то очень похожее на ACK.

Чуть подробнее про эту странную ступеньку — ниже.

Скрины осциллограмм делал уже из сохраненных данных, во время снятия не сразу обратил внимание на диапазон по напряжению, в котором снимал данные. А когда обратил — пришлось спускаться в машину еще раз, чтобы убедиться, что из ума не выжил. Да-да, размах дифференциальной шины — всего лишь 200мВ (. ).

Дальше идем в даташит на применяемый коллегами ST485, и видим там следующее:


Вот, собственно, и нашелся корень всех бед, из-за которых приходится играться с резисторами, и молить канифольных богов, чтобы преобразователь заработал на конкретной машине. Работать рядом с пороговыми значениями — зло. Но еще интереснее то, что для AVC-LAN, которая по физике своей — клон какой-то IE-Bus от NEC — по своей спецификации (ссылка будет чуть дальше) считает активным состоянием напряжение выше 120мВ, при том, что ST485 имеет право считать все, что меньше 200мВ — нулем. Ну, то есть, если из-за производственных отклонений ST485 будет иметь пороговый уровень чуть ниже, а на шине для запаса появится чуть выше нормы (допускается до 6-ти вольт), то, конечно, ST485 сможет принять такой сигнал. И эти производственные неточности — единственное, что заставляет устройства с ST485 в составе иногда работать. Разумеется, закладывать такое счастье в разработку мы не будем.

Второе имеющееся решение на базе того же ST485 и операционного усилителя мне не понравилось обилием компонентов. Ну, в 21-м же веке живем, в конце концов.

Решение:
Для AVC-LAN существуют специальные преобразователи. Но мне не удалось достать их по приемлемой для этого девайса цене. На помощь снова пришел братский Китай, где была обнаружена HA12240FP, у которой разница напряжений для восприятия лог. «1» по даташиту составляет 80..110 мВ. Это позволит нашей шине выставить активный уровень с почти двукратным запасом. Устраивает.

Рожаем схему на упомянутом в первой части STM32F103:



UPD: Схема рождалась в спешке, в ней — ошибка. Питание драйверов шины нужно заводить от 5В. Если так, как на схеме — у них повышается диф. порог, и принимаются не все пакеты.

Все просто до примитивизма, думаю, в описании не нуждается. За исключением, разве что, того факта, что выбор ног для RX1/2 — не случаен, и первая версия схемы потребовала «доработки напильником», чтобы завести сигналы на входы захвата/сравнения, ибо именно его я хочу использовать для измерения длины импульса. Альтернативные решения — поллинг и прерывание по изменению состояния проигрывают по точности и сложности программной реализации. Плюс — хотелось бы параллельного приема минимум с двух линий (в «голове» их — вообще три), а при совпадении фронтов на двух можно попрощаться с мыслью о сколь-нибудь приемлемой точности, если не использовать захват/сравнение.

Дальнейший разбор данных в пакет хорошо расписан тут. Но, учитывая, что ссылки — штука непостоянная, вкратце повторюсь здесь:


  • Шина дифференциальная, тут пишут про трактовку уровней лог. «1» при <20mV, лог. «0» — >110mV.
  • Длина бита — 40мкс, первые 20 мкс — всегда «0», последние 7 мкс — всегда «1», посредине — значение бита.

ну и светофорчик:




Печатная плата вышла несколько неудачно, и не потому, что не получился QR-код в шелкографии. В ней есть ошибка в схеме (на схеме выше я ее уже исправил) в части выбора ног для RX, и разведено три драйвера линии. В процессе написания и отладки программы я понял, что хорошо, если удастся запустить устойчиво хотя бы два. Да больше и не нужно.

Что ж… девайс получился простым и эффективным, при этом конструктивная проблема с несоответствием уровней решена.

Штатная магнитола Toyota 86120-33700 (Устанавливалась в Toyota Camry ACV30)

Штатная магнитола Toyota 86120-33700 (Устанавливалась в Toyota Camry ACV30)

На тыльной стороне магнитолы имеется несколько различных разъемов.

Разъем CN701 служит для подключения питания магнитолы, подключения акустики (перед, зад), управления автоматической или активной радио антенны, вход для сигнала габаритов (подсветки).

Для эмуляции чейнджера будем использовать Arduino mini и следующую схему подключения:

Схема подключения Arduino к шине данных AVC-LAN

Схема подключения Arduino к шине данных AVC-LAN

Код для эмулятор на моей странице GitHub. Код я использовал готовый, только как выяснилось он расчитан на микроконтроллер работающий на частоте 8 МГц, а у меня Arduino mini с кварцем на 16 Мгц. В коде я подправил тайминги, изменил прескаллер таймера, точности подсчета времени импульсов вполне хватает для уверенного распознавания и управления по протоколу AVC LAN.

Аудио выход нашего ИЗ имеет Небалансный (несимметричный, линейный) сигнал, он передаётся по двум проводникам: один проводник — информационный, другой — земля. Это обязательное и достаточное условие для протекания электрического тока по замкнутой цепи. Данный способ передачи сигналов отличается исключительной простотой реализации, однако не способен противостоять помехам на физическом уровне.

А аудио вход на магнитоле балансный.

Балансный сигнал использует для передачи три проводника: два информационных (прямой и инверсный) и одну землю. Электрический импеданс информационных проводников по отношению к земле сбалансирован (то есть равен), что нашло отражение в названии. Сигналы по двум информационным проводникам балансной линии передаются в противофазе с равной амплитудой относительно земли.

Приёмник балансного сигнала вычитает из прямого сигнала инверсный, в результате помехи, синфазно наведённые на такую линию, вычитаются, а полезный сигнал увеличивается по амплитуде в два раза. Существенное отличие балансной линии от обычной дифференциальной пары — в обязательном наличии земляного проводника и соблюдении равных импедансов пар «плюс—земля» и «минус—земля», что, во-первых, сохраняет равные амплитуды прямого и инверсного сигнала на всём протяжении линии и на входе приёмника, во-вторых, позволяет применять дополнительные методы контроля и исправлений искажений сигнала.

Для согласования аудио выхода ИЗ с входом магнитолы потребуется вот такая или подобная схема построенная на операционных усилителях.

В этот раз изготавливать и ждать платы из Китая не захотелось. Изготовил платы для усилителя методом пленочного фоторезиста и травлением в хлорном железе.

Собрал Arduino и усилитель в один корпус:

Так как штатного разъема CN702 нету, подпаялся к нему и вывел на проводе, около 0.5 метра разъем DB9. Это так же и для удобства модернизации устройства, не придется каждый раз снимать магнитолу чтобы его подключить. В качестве модернизации можно предложить использования Bluetooth модуля, придется немного доработать прошивку и можно будет управлять аудиопроигрывателем подключенным по Bluetooth непосредственно с магнитолы или кнопок на рулевом колесе. Так же можно передавать номер проигрываемого трека, время и текст на дисплей магнитолы.

Устройство в сборе

Устройство в сборе

AVC-Lan адаптер на arduino

Итак как и обещал выкладываю схему.


В схему добавлен ключ для управления AZ-FM
Вот схема и разведенная печатная плата в формате Eagle
Вложение 6663
Прошивка
Вложение 6665
Прошивку распаковываем в каталог arduino-0016. Если до уже были какие-то версии прошивки нужно удалить объектные файлы
C:\arduino-0016\hardware\libraries\AVCLanDrv\AVCLanDrv.o
C:\arduino-0016\hardware\libraries\BuffSerial\BuffSerial.o

После пары месяцев испытаний, поездки на море, можно писать об успешном завершении написании прошивки.

Платы:
1. AVCLAN_ST485
Плата на базе arduino и драйвера на микросхеме ST485
Вложение 9652
Схема и разведенная плата в формате Eagle во вложении. Схема также содержит ключ для управления адаптером AZ-FM
Вложение 9653

2. AVCLAN_PCA82C250
Плата на базе arduno и драйвера на микросхеме PCA82C250
Вложение 9654
Схема и разведенная плата в формате Eagle во вложении. Я поленился рисовать на ней ключ для AZ-FM. Желающие могут его скопировать из предыдущей схемы и прописать команды для и его инициализации и работы в config.h
Вложение 9655

3. AVCLAN_MINI_PCA82C250
Плата avclan-mini в которой перепаян кварц на 16МГц и заменен микропроцессор на ATMega168 (в теории должно работать и с ATMega8, но с бутлоадером уже не помещается, только если программаторам заливать прошивку). Так же для этого варианта пришлось снизить скорость com-порта до 115200. Бутлоадер я взял от ардуино, только поправил его чуток, т.к. светодиод на плате находится на другой ноге.

4. AVCLAN_RESISTOR
Плата на базе arduino и драйвера на 4х резисторах.
Вложение 9656
Схема в формате Eagle во вложении. Честно говоря, этот вариант теоретический, в железе я его не собирал.
Вложение 9657

Я собрал и опробовал с 1 по 3 варианты плат. Мне больше понравился вариации на микросхеме PCA82C250 (потому как сразу заработал на большинстве голов) вариант на микросхеме ST485 иногда требовал подбора номинала резисторов R2, R3, R6
В машине у меня сейчас работает перепрошитый вариант на avclan-mini. У друга, который делал прошивку с навигацией на ST485.

Собственно прошивка.
Вложение 9658
Прошивка для arduino-018 распаковываем архив в папку с ардуино. Выставляем тип платы в файле sketchbook\libraries\AVCLanDrv\config.h
Компилируем и заливаем.

Весь софт можно взять от AVCLan-mini

Я собрал вот такую платку, она у меня совместно с нарульным пультом JVC эмулирует небольшую клавиатуру. И теперь с этого пульта, я могу не только переключать треки в центрефуге и изменять масштаб в гармине, но и регулировать громкость головы (даже когда она играет свое собственное радио)

Читайте также: