27 February

[Flipper Zero] отказываемся от Raspberry Pi, делаем собственную плату с нуля. Поиск правильного WiFi чипа

Information SecurityWireless technologiesManufacture and development of electronics


Flipper Zero — проект карманного мультитула для хакеров в формфакторе тамагочи, который я разрабатываю с друзьями. Предыдущий пост [1].

Много всего произошло с момента первого поста про флиппер. Мы усердно работали все это время и проект претерпел радикальные изменения. Главная новость в том, что мы решили полностью отказаться от Raspberry Pi Zero и делать свою плату с нуля на базе чипа i.MX6. Это значительно усложняет разработку и полностью меняет всю концепцию, но я уверен, что оно того стоит.

Также мы до сих пор не нашли правильный WiFi чипсет, который поддерживает все нужные функции для WiFi-атак, при этом поддерживает диапазон 5Ghz и не устарел на 15 лет. Поэтому я приглашаю всех поучаствовать в нашем исследовании.

В статье я расскажу, почему мы приняли такое решение, на каком этапе находится проект, текущие задачи, и как можно принять участие.


Чем плох Raspberry Pi Zero



Я лично обожаю Raspberry Pi, но в процессе разработки оказалось, что он просасывает по многим причинам. Самая банальная — его тупо нельзя купить. Даже большие дистрибьютеры имеют в наличии не более пары сотен штук rpi0, а магазины вроде Adafruit и Sparkfun продают не более 1 штуки в руки. Да, есть несколько заводов, которые производят rpi0 по лицензии от Raspberry Pi Foundation, но они тоже не могут отгрузить партии по 3-5 тысяч штук. Выглядит это так, что rpi0 продается по цене на грани себестоимости и больше направлен на популяризацию платформы.

Вот основные причины отказа от rpi0


  • Невозможно купить в большом количестве. Заводы вроде Farnell предлагают покупать Compute Module. Китайцы с Alibaba врут про наличие больших объемов, когда речь заходит о реальной партии то сливаются. Всем, кто будет писать, что мы плохо искали, попробуйте договориться с кем-то о покупке 5 тысяч штук, так чтобы вам выслали счет на оплату.
  • Мало интерфейсов.
  • Старый процессор BCM2835, который использовался еще в первой версии rpi. Горячий и не очень энергоэффективный.
  • Нет управления питанием, нельзя отправить плату в сон.
  • Устаревший встроенный WiFi.
  • и много других причин.

Сама Raspberry Pi Foundation для таких задач предлагает использовать RPi Compute Module. Это плата в формфакторе SO-DIMM модуля (как оперативная память в ноутбуках), которая вставляется в материнскую плату. Этот вариант нам не подходит, так как сильно увеличивает размеры устройства.

Raspberry Pi Compute Module — плата в формфакторе SO-DIMM модуля для установки в свое устройство

Тогда мы начали смотреть на разные SoM-ы (System on Module), привлекательнее всего выглядели модули на основе i.MX6. Все наши поиски описаны в теме на форуме Raspberry Pi Zero Alternatives. Но нужно иметь в виду, что не все компании будут готовы с вами работать при объемах даже 3-5 тысяч штук в год. Например, израильская Variscite просто перестала отвечать нам, когда узнала планируемые объемы закупок. Судя по всему, им не интересно только продавать SoM-ы без дополнительных услуг в виде поддержки и интеграции. Отдельно хочу отметить русского разработчика Starterkit.ru, которые делают очень интересные устройства, вроде SK-iMX6ULL-NANO. Их почти невозможно нагуглить, и я бы не узнал об их существовании, если бы не рассказали знакомые.

В итоге сравнив все варианты и прикинув экономику, мы приняли трудное решение делать свой SoM с нуля специально для Флиппера на основе чипа i.MX6 ULZ. Это одноядерный Cortex-A7 с частотой 900 MHz с почти такой же производительностью как rpi0, при этом он почти холодный под нагрузкой, в то время как rpi0 раскаляется как печка.
Делая свою плату с нуля, у нас появилась полная свобода в расположении элементов на плате из-за чего мы рассчитываем получить более компактное устройство. i.MX6 ULZ это урезанная версия i.MX6 ULL без некоторых интерфейсов и видеоядра, поэтому для разработки мы используем девборду MCIMX6ULL-EVK с чипом i.MX6 ULL, просто не используя часть интерфейсов. Эта плата, кстати, поддерживается mainline ядром linux, поэтому на ней загружается Kali Linux с ядром из пакетов.

Вот как выглядит флиппер без одежды в данный момент:


Правильный WiFi


Взлом WiFi одна из главных фич Флиппера, поэтому крайне важно выбрать правильный WiFi-чипсет, который будет поддерживать все нужны функции: инъекцию пакетов и мониторный режим. При этом уметь диапазон 5GHz и современные стандарты вроде 802.11ac. К сожалению, таких чипов сходу найти не удалось

Китайский SiP модуль (system in package) Apmak AP6255 на базе BCM43456

Сейчас мы рассматриваем несколько кандидатов, но все из них требуют допиливания и пока неизвестно какой лучше выбрать. Поэтому я очень прошу всех, кто разбирается в похеке WiFi, присоедениться к нашему поиску здесь: Wi-Fi chip with SPI/SDIO interface that supports monitoring and packet injection

Основные кандидаты:



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


Что уже готово




Вся часть, за которую отвечает STM32 уже работает: 433Mhz, iButton, чтение-эмуляция 125kHz.
Механическая часть, кнопки, корпус, разъемы, компоновка сейчас в активной разработке, на видео и фотографиях ниже устаревший корпус, в новых версиях джойстик будет больше.

На видео простая демонстрация открытия шлагбаума с помощью реплея сигнала пульта.





FAQ



Как купить?


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

Это законно?


Это инструмент для исследований. Все его компоненты можно купить по отдельности в магазине. Если встроить WiFi адаптер и 433MHz трансмиттер в маленький корпус и добавить туда экранчик, он не станет от этого более незаконным. Устройство не подпадает под определение спец. средства или прибора для негласного сбора информации. Незаконным может быть ТОЛЬКО его использование с целью нанесения ущерба или для незаконных действий. Иначе говоря, я могу делать ножи любой формы и из любого металла, ответственность за использование моих ножей лежит на вас.

Как задонатить?


В данный момент вы можете поддержать меня лично небольшими пожертвованиями на еду через Patreon. Регулярные пожертвования в виде 1$ намного лучше, чем большая сумма за раз, потому что позволяют прогнозировать наперед.



Все заметки по проекту я публикую в свой Telegram-канал @zhovner_hub.
Tags:flipperzeroflipper zeroimx6ulzimx6ullBCM2835raspberry pi zeroBCM43456BCM4345взлом wifi433mhzcc1101cc1111AP6255AP6256code grabber
Hubs: Information Security Wireless technologies Manufacture and development of electronics
+121
39.8k 199
Comments 97
Ads