Как выглядит тестирование электроники Flipper Zero

tc3w911qz_bnbmhaewezyrh_uk0.jpeg

Flipper Zero — проект карманного мультитула для хакеров в формфакторе тамагочи, который мы разрабатываем. Предыдущие посты [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16]

Электронику и корпуса для Flipper Zero производят на разных заводах в Китае. Сегодня мы перемещаемся на фабрику где производят электронику, и посмотрим как выглядит автоматическое электронное тестирование отдельных плат Флиппера.

На больших объемах производства электроники всегда есть брак. Какой-то процент плат может тупо не работать, на других может быть маленький едва заметный дефект, вроде ухудшенных характеристик приема-передачи. Важно, чтобы бракованные Флипперы не уехали пользователям. Для этого на производстве все компоненты проходят два этапа тестирования: электрическое тестирование каждой платы по отдельности и потом тестирование всего устройства в сборе.

В статье мы разберем первый этап — автоматическое электронное тестирование отдельных плат Flipper Zero.

Как производятся платы Flipper Zero

7_ts6mzo3g9mssr3stimmig_ydc.png

Флиппер состоит из 4 плат

  • NFC_RFID — на этой плате находятся компоненты RFID 125 kHz и NFC 13,56 MHz
  • Main PCB — основная плата на которой находится микроконтроллер STM32, дисплей, модуль Sub-1 GHz и кнопки
  • iButton Infrared PCB — имеет пого-пины для контактов iButton, пъезо-динамик и модуль приемника и передатчика ИК
  • Антенная плата — комбинированная двухдиапазонная антенна для 125 kHz и 13,56 MHz, которая прижимается к NFC_RFID плате

Каждая плата производится отдельно и тестируется отдельно. Сначала производится голая печатная плата. Это слои текстолита и медной фольги, на которой вытравливаются сигнальные дорожки и контактные площадки. Слои текстолита склеиваются между собой, а контактные дорожки соединяются между слоями с помощью переходных отверстий. Самая сложная плата флиппера это Main, на ней размещен микроконтроллер STM32, дисплей и кнопки — она состоит из 6 слоев!

zc_hssgpekanhice0ofy2oxiynw.jpeg
Голые печатные платы Main PCB
pq0cg5lwwv4ounak16i4hhpfiwm.jpeg
Main PCB крупным планом

778cg9t91anjhaie-2y-unbrwr0.jpeg
Голые печатные платы NFC_RFID без смонтированных компонентов

xovd8amqzju4ikz7u4g6fkltvyg.jpeg
Голые печатные платы iButton

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

На этом шаге выявляются дефекты изготовления, например в нашем случае неправильное вскрытие паяльной маски на Main плате. Место под BGA компонент было полностью без маски, а это сильно увеличивает шанс получить перемычку, то есть слипшиеся между собой контакты.

jxjam6neuoekl5zavwqyhhqhrc0.jpeg
Дефект печатной платы, неправильное вскрытие маски на BGA площадке. Между падами нет краски, что повышает риск получить слипшиеся контакты при пайке

Когда качество печатных плат удовлетворяет нашим требованиями, они переходят на следующий шаг — монтаж компонентов. Платы загружаются в SMT (Surface Mount Technology) машину где происходит автоматическое расставление компонентов. Этот процесс еще называют pick-and-place. Машина акуумным манипулятором захватывает компонент и ставит его на плату.

0hqf7bh_by0s15tnkwdcdlmzmzw.jpeg
Настройка SMT мишны, на экране виден ИК-диод на плате iButton

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

bfudkf5x371xgi8za9_z_n3bxv0.jpeg
Платы NFC_RFID после финального монтажа компонентов
djxluhhlqntsg0emoa--pvmrfzs.jpeg
Отдельная плата NFC_RFID вырезанная из текстолита

После монтажа платы вырезаются из текстолита и упаковываются в пластиковые антистатичные лотки. На этом этапе мы еще не знаем работают эти платы или нет. В каждой партии наверняка есть какие-то бракованные экземляры. Дальше партия уходит на электрическое тестирование.

f4vtijftbngdhotmaiy61061msu.jpeg
Готовые NFC платы в ожидании первого этапа тестирования
wjndkdetoujyc1m-5zi2n_-hz-g.jpeg
Готовые NFC платы в ожидании первого этапа тестирования

lsy-ihmolmwkq_g1yidbxv42nou.jpeg
Готовые iButton платы

Как выглядит электрическое тестирование


ir9eircsvefebmn58m6v-w1lcbu.jpeg
Схематическое изображение тестового стенда: иголки подключены к тестировочной плате, плата подключена к компьютеру, который загружает результаты тестов в базу данных

Под каждую плату Флиппера разрабатывается тестировочный стенд, на сленге его называют «тестовая джига» или «джиг».

Состав тестовой джиги:

  • Оснастка под конкретную плату с пружинными контактами (Bed of nails). Состоит из оправы по форме платы, механизма прижима платы (красная ручка сверху).
  • Управляющая плата к которой подключаются все пруженные контакты. Эту плату, как и прошивку к ней, мы разработали с нуля на базе микроконтроллера STM32. Для простоты, в плату вставляется готовый модуль black pill на STM32F4.
  • Компьютер на котором запускается софт для тестирования. Набор тестов для каждой платы свой, как и софт.
  • База данных куда отправляются все результаты тестирования.

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

ocrryd7uuerlgcs0is9szl9dttg.jpeg
Тестовые станции для всех 4 плат Flipper Zero: Основная плата, NFC+RFID плата, iButton+ИК плата, Антенная плата и тестовая станция для устройства в сборе.

6yfmaejmzcd0jggp0iexwq76wh4.jpeg
Внутренности тестовой станции NFC_RFID

i39dlla6e3e8vi4t8ovpnvdwce0.jpeg
Плата тестовой станции NFC

wewd5ldzh5bk3cyeai9-ffueftq.jpeg
Тестирование NFC плат на стенде

Специально для тестов на каждой плате Флиппера выведены контактные площадки (test pads) куда упираются пружинные контакты. Через них подается питание на устройство и происходит общение с электроникой на плате.

Процесс тестирования выглядит так:

1. Плата руками вставляется в тестовую «джигу» и прижимается сверху
2. Подпружиненные иголки упираются в тестовые пады на плате
3. Прогоняются автоматические тесты
4. На выходе тест говорит PASS или FAIL
5. Все что не прошло тестирование уходит на анализ

jutqvekxrb5cnp-hfqrn3zij3hk.jpeg
Оснастка для NFC платы с пружинными контактами. Плата зажимается в оснастке и запускаются тесты.


Видео: подпружиненные иголки подключаются к тестовым площадкам на плате

Результаты тестирования каждой платы сохраняются в базу данных, чтобы потом, по серийному номеру платы можно было понять как она прошла тесты, когда была произведена, и из какой партии на ней смонтированы компоненты. Это важно для поиска каких-либо системных проблем.

bgk7uwwpjb6kuyapvkjwz2m191y.jpeg

Действия оператора тестирования в итоге сводятся к нажатию одной кнопки и наблюдению за выводом на экране. Он увидит либо Pass, если тест успешный, либо Fail. Его задача отложить бракованные платы отдельно.
tmc7d1pimxjjiv3j_eo8sjib4do.jpeg

Зачем нужны тесты отдельных плат


Зачем тестировать каждую плату по отдельности, если можно собрать устройство целиком и потом все функции уже в сборе на готовом устройстве?
Сборка — это конвейерный процесс. При отлаженном производстве, каждое следующее звено конвейера должно проверять, что получает от предыдущего. Когда в получаемых элементах есть системный брак, то нужно исследовать ситуацию и предпринимать действия по улучшению процесса на предыдущем звене. Если этого не делать, то существенный процент собранных устройств будет иметь проблемы неизвестного происхождения.

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

evpfugqami-hmd8x0zkm96dqbly.jpeg
Дефект пайки BGA компонента, две точки слиплилсь в одну. Выявлено автоматическим тестированием.

Например, реальная ситуация: один из 3 ИК диодов не был запаян до конца. Эта проблема сразу же отлавливается на первых тестах, по наличию неправильного сопротивления на тестовых площадках. Но если бы такая плата ушла в готовое устройство, тесты готового устройства в сборе показали бы только низкую излучаемую мощность ИК-передатчика. И тогда бы пришлось угадывать почему это произошло: проблемы с подключением шлейфов, проблемы с просадкой питания и т.д.

ivee33jh5tpox2schvg0ehnlx6s.jpeg
Дефект выловленный на тесте — не запаян ИК диод

Схематика тестовых плат

Внутри каждой тестовой станции стоит специально разработанная под нее плата со своей прошивкой. В качестве мозгов мы использовали готовые модули Black Pill. Ниже вы можете посмотреть исходники этих плат, через интерактивный вьювер Altium. В нем доступна схематика, сами чертежи плат и 3D модели, прямо на странице хабра!

Main PCB Testing Station



Кликабельно

NFC_RFID PCB Testing station



Кликабельно

iButton PCB Testing station



Кликабельно

Наши соцсети


-ugemgewme2u1uidkqgvcifmcrk.pngВсе обновления по проекту первым делом публикуются в Telegeram-канале @zhovner_hub
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Предзаказ Flipper Zero


Сейчас запущено производство первой партии Flipper Zero для бекеров заказавших устройство на Kickstarter. Вторая партия будет доступна для покупки осенью 2021. Вы можете зарезервировать устройство из второй партии заранее здесь https://shop.flipperzero.one/ Это важно для нас, чтобы более точно прогнозировать объемы производства.
ewupejepxbdmndit3y3bb9ksink.jpeg

© Habrahabr.ru