Давно хотел написать по этой теме, но не было времени сесть и систематизировать изученное. На англоязычных форумах эту тему давно разобрали и обсудили, а у нас только отдельные электрики “передают тайные знания в устной форме за магарыч”, без попыток понять как оно на самом деле работает. Особенно много вопросов у владельцев американских машин.
BCM
Большинством “сложных” функций света на платформе MQB управляет блок BCM (индекс 09 - Central Electronics в бортовой сети, J519 на электрических схемах). Каналов света около 30, они хаотично раскиданы по трем разъемам (A, B, C). Все они видны в адаптациях блока под общими названиями Leuchte…. (Собственно, “Лампа” на немецком.)
В названиях зашифровано расположение и тип выхода, например: “Leuchte30FR LC72“ раскладывается на: [Канал 30], предназначенный для [FR] (что бы это ни значило, сокращения сумрачных немецких гениев), лампочка/потребитель размещен в кузове c левой стороны [L], выход расположен в разъеме [С], пин [72]. Нас в принципе интересуют только последняя часть “C72”, для понимания где искать провод.
Список полей каждого канала управления выглядит так:
Leuchte30FR LC72
Lasttyp - тип подключенной к этому каналу лампы. (Как обычно все на немецком.) Любой канал может быть переключен на зажигание лампы абсолютно любого типа. Смотрите только на толщину проводов и пинов. Для удобства нашел таблицу:
Lampendefektbitposition и Fehlerort mittleres Byte DTC-DFCC - два поля с указанием битов, используемых для проверки наличия и работоспособности ламп. Это диагностическая информация, которая передается по BAP шине. Нашел таблицу соответствий только для Golf 7:
Дальше начинается самое интересное, программирование работы ламп.
Lichtfunktion A, B, C, D, E, F, G, H - функции лампы в бортовой сети. Включаются при наступлении некоего события извне. Каждая лампа может выполнять одновременно 8 (!) действий. Возникновение нового события перекрывает текущее, функция H имеет наивысший приоритет. Использование больше двух в живых машинах я не видел, но разработчики заложились от души.
Dimmwert AB, CD, EF, GH - максимальная яркость диммера лампы. Тут разработчики склеили функции в группы по две, видимо какое-то ограничение железки. Со значениями есть нюанс. Для некоторых типов ламп максимум - 100, для некоторых (больших, фары) - 127. Лампы интерьерной подсветки могут управляться из MMI/MIB и по умолчанию имеют яркость 100. При установке значения 127 - они перестают реагировать на диммирование (крутилку) в интерфейсе, работает только вкл/выкл, и действительно, горят ярче своего обычного максимума. При установке значения 126 - верхний предел яркости выше, и диммирование сохраняется.
Значения выше 127 для этого поля не принимаются. В отличие от всех остальных, оно - 7 битное, блок обнуляет восьмой бит.
Dimming Direction CD, EF, GH - направление диммирования, maximize/minimize. Тоже пары на две функции. Для функций A и B оно не задается, по умолчанию всегда вверх (особенности железки?).
Lichtansteuerung HD AB - зависимость от дверей, always/only_if_closed, функция работает всегда / только с закрытыми. Опять видимо из-за железячных ограничений поле присутствует только у пары AB.
Распихивая по A, B, C, D… разные функции и устанавливая разные максимумы на парах AB, CD… для одной лампы можно добиться кучи всяких веселых штук. Так реализовано перемигивание поворотник и ДХО, включение ПТФ на поворотах, перемигивание половинок задних поворотников, зажигание подсветки ног на 100% при открытых дверях и возвращение к значению выставленному в MMI при закрытых и много-много других штук. Тот же принцип с американскими фарами, находим каналы отвечающие за конкретную лампочку и выставляем им реакцию на нужные (европейские) функции.
Комментарии
temp temp