Исправление аппаратных ошибок на серийных изделиях
Приветствую, Хабр!
В этой статье я приведу пример того, как достаточно эстетично можно исправлять ошибки, допущенные при разработке устройств. Идея у меня возникла после того, как я вносил некоторые изменения в Nintendo Switch, если вы понимаете, о чем я. В случае с консолью все относительно просто, так как наборы для доработки можно приобрести.
Для начала предыстория о Nintendo Switch. В интернете есть множество видео-инструкций «как», «что» и «для чего». Я объясню только смысл. На известном всем сайте можно купить набор гибких плат. Одна из них выглядит так:
Рис. 1. Гибкая плата для Nintendo Switch (нижняя часть картинки)
В верхней части картинки материнская плата самой консоли. Ниже наша гибкая плата. Она имеет странную форму, несколько вырезов и контактных площадок. Если мы положим одну плату на другую (вторую на первую), то получится примерно следующее:
Рис. 2. Main + гибкая плата
Весь смысл данной конструкции — взять сигналы от main платы и использовать их для своих целей. Как я писал ранее, гибких плат несколько. На второй плате есть и компоненты, например микроконтроллер. Именно для его питания на гибкой плате сделан вырез под два конденсатора с падами для пайки (помечено как 3.3V). Также сделаны несколько вырезов под резисторы — это сигналы. Точка пайки рядом с процессором — это вообще testpoint, который нужно зачистить от лака перед пайкой. То есть мы позиционируем плату и паяем необходимые точки. Идея и исполнение меня поразили!
Отступление окончено.
Как-то давно я исправлял ошибку в футпринте на микроконтроллер (напутал что-то с размерами). Было спаяно две довольно сложные платы с несколькими BGA на каждой, все завелось, а вот микроконтроллер не встал. Сделал переходную плату между неправильным корпусом микросхемы и правильным.
Рис. 3. Переходная плата для микроконтроллера
На эту платку запаял микроконтроллер, а весь этот бутерброд уже на основную плату. Кстати — это тоже один из вариантов, когда дешевле проще заказать переходную плату, чем утилизировать уже запаянные. Это был не релиз, а только макет для запуска, поэтому проблем не возникло.
Конечно, косяков лучше не допускать, но как быть, если проблема была найдена только на серии устройств? Естественно, что в следующей итерации платы все проблемы будут устранены, но как быть со спаянными?
Рис. 4. Нет, так мы делать не будем! (легендарное фото из интернета)
Мне не единожды попадались платы серийных устройств, на которых кинуты проводники. Ниже на фото как раз такой пример. Плата с такими доработками стоит в Ethernet свитче. Забыли сделать подтяжки 4.7к — не беда.
Рис. 5. Плата с заводскими доработками
Так вот, о главном. Возникла необходимость корректно сделать доработку на одной из разработанных плат. Было выпущено несколько образцов, которые должны пойти на тесты заказчикам, сроки поджимают, а компоненты уже быстро не купить (платы переделать и заказать не долго). Ошибки были найдены и устранены таким способом, чтобы протестировать устройство. На маленькой платке я разместил свои компоненты (которые забыл поставить на плату) и проводами все соединил. Работает, но заказчикам в таком виде отдавать нельзя.
Рис. 6. Плата с доработками «на коленках»
И тут я вспомнил про Nintendo Switch. У меня есть несколько точек на плате, откуда нужно взять сигналы и подвести их к другим точкам платы. Если быть более точным, то мне нужно питание 5В, GND, сигнал с уровнем 3,3В и выдать его без инверсии с уровнем 5В.
Рис. 7. Точки на плате, куда мне нужно припаиваться
Схему сделал на двух транзисторах. При разработке платы необходимо учитывать не только места для пайки, но и конфигурацию выводов, которые паять не нужно, а также все, что стоит рядом. Нужно понимать, что отверстия на переходной плате должны быть большего диаметра, чтобы учесть припой на контактах основной платы.
Рис. 8. Переходные платы
После того, как плата спаяна, накладываем ее поверх основной.
Рис. 9. Переходная плата поверх основной
Все подошло. Можно паять.
Рис. 10. Запаянная переходная плата
Если сравнивать фотографию 6 и 10, то результат выглядит прилично. Первые десять устройств выглядят так, на остальных ошибки устранены.
Не допускайте ошибок на своих платах. Ну или качественно их исправляйте!
Спасибо за внимание и успехов!