Вчера на PHDays фаззили USB, а тут подъехал мультитул для анализа USB
LUNA:
• FPGA Lattice LFE5U-12F
• SAMD11 МК для конфигурирования ПЛИС, моста USB-UART и реализации сложной логики
• 3 USB-PHY (USB3343)
• 3 разъёма Type-C + 1 разъём Type-A
• 3 свитча питания USB
• 8 МБ RAM для дампов трафика
• 4 МБ флеша для конфигурирования ПЛИС
• 6 светодиодов от ПЛИС и 5 от МК.
Для разработки под Lattice давно есть опен-сорсные тулзы (yosys + arachnepnr/nextpnr); анализ USB будет выполняться опенсорсным ViewSB, а для дебага — FaceDancer (описание конфига USB-девайса в несколько строчек на Python), nMigen (тулбокс для описания железа на Python) и USBProxy (MITM для USB-пакетов). На гитхабе LUNA есть много примеров реализованных девайсов.
Проект уже готов (плата в ревизии r0.2+ позволяет делать всё перечисленное), но на crowdsupply проект с готовыми платами пока даже не запущен. Паяем сами, либо ждём запуска (
https://www.crowdsupply.com/great-scott-gadgets/luna)
Сслк:
https://github.com/greatscottgadgets/luna