Сабж NB8607_PCB_MB_V4 попал ко мне с уже заменённым мультом - не включается, не эрегирует на кнопку.
Исходная проблема заключалась в том, что в ноуте сдохла батарея AC14B18J, и тот перестал её заряжать. Не особо запариваясь, в СЦ подкинули две AC14B8K (неподдерживаемые) - одну дохлую, и одну новую, и решили, что раз ничего в поведении не изменилось, то надо бы прошить мульт. Мастер законнектился к мульту, забэкапил его, снял с платы питание, и ушёл искать прошивку. Когда вернулся, и снова запитал плату, повторного коннекта не случилось. Безуспешно попытав счастья несколько раз, мастер, даже не включая плату, решил менять IT8987E. После замены коннекта, ожидаемо, не случилось и с другим мультом =) После этого уже аппарат отправили ко мне.
Сначала хочу отметить, что мастеру стоило отключить программатор от платы, затем подключить заново, подать питание, и коннект был бы успешным - проверено позже на уже восстановленной плате. Вероятно, дело в паразитном питании мульта от прогера. Обесточив плату, не обесточили полностью мульт, ввергнув его в ахтунг и зависливость.
Что же до нового мульта, то он был прошит непонятно чем, и внутренней прошивкой, а также внешней подтяжкой GPG2 к 3.3V сконфигурирован на всасывание прошивки из внешней флешки, которая на плате предусмотрена, но не установлена.
Понимая причину, по которой плата не работает и не коннектится с новым мультом, я сначала посадил на землю GPG2, а когда это не помогло, распаял ей прошитую нужным дампом флешку с подтяжками сигналов 10К на проводках. На проводках, потому что флешки на посадочное место UE2 в корпусе wson 2x3 я никогда и в глаза не видывал. А 10К, потому что есть уже готовая платка с проводками и подтяжками, переделывать было лень.
После этих манипуляций удалось подключиться к мульту, и прошить его. Но, как только я отключал питание и вынимал флешку, плата прикидывалась трупом. А если флешку оставить - коннект возобновлялся, но в мульте был мусор, частично совпадающий с прошивкой. Который с вероятностью 99,9% был результатом всоса прошивки из флешки с кривыми подтяжками. Были бы по 3К, может быть и зашился бы. А была бы флешка и обвяз на плате -
100% бы зашился и ожил. Также это наверняка помогло бы авторам
этой и
этой, и других аналогичных тем с nb8609, и прочими хуакинами. Теперь к решению:
Как некоторым известно, во всех прошивках ITE имеется некая 16-байтная сигнатура примерно такого вида:
A5A5A5A5A5A5A5118512FD5BAA775555
О ней писал и Сергей Вертьянов, и конечно же,
проводил исследования и опыты.
14-й байт в этой сигнатуре является неким счётчиком, содержащим цифру в КБ, которую мульту надо всосать из внешней флешки. В строке A5A5A5A5A5A5A5118512FD5BAA
775555 он равен 119 в десятичной СС. Значит мульт хочет себе 120 КБ кода извне. И пока он этого не получит, никакой активности не покажет, и не отзовётся прогеру, в том числе по i2c.
Решение для тех, кто ещё не окирпичил плату, или у кого флешка на проводах =)
"Обнулить" счётчик в дампе, записав в него 00, и только потом шить. Вот так:
A5A5A5A5A5A5A5118512FD5BAA
005555
Тогда плата не окирпичится, и всё будет волшебно. Это же решение, вероятно, годится для любых плат вообще - обнулять счётчик. В любом прошитом ITE это его нормальное состояние. Кто желает, может на досуге поанализировать чистые дампы ITE, вырезанные из обнов, и б.у. дампы, слитые с плат. Я не первооткрыватель, про счётчик этот встречал упоминания в телеге, а может и на форумах. Просто как-то оно везде без конкретики. Поэтому решил зафиксировать.
Помогло оно и мне. После прошивки мульта "обнулённым" дампом он перестал хотеть флешку, тянуть из неё мусор, и плата зажила.
И на сладкое: В дампе мульта прописаны аккумы, с которыми плата будет работать =)
Вот картинки.
Скрытие отключено:Что бы увидеть скрытое сообщение Вам необходимо зарегистрироваться и войти на форум официально
Тема решена в первом сообщении, но на случай, если кто имеет, что добавить, и захочет это сделать, подержу открытой пару недель. Вернусь из отпуска, закрою.