>_ DevTrendspl

Język

Strona główna

Języki

Sekcje

Frontend Backend Mobilne DevOps AI / ML GameDev Blockchain Systemy wbudowane Bezpieczeństwo
C-plus-plus

Jak zbudować kieszonkowe narzędzie wielofunkcyjne do sygnałów radiowych i NFC samodzielnie

FlopperZiro Logo

Prawdziwy Flipper Zero kosztuje obecnie sporo, a do prostych eksperymentów z domowymi szlabanami, pilotami IR i kartami dostępowymi często potrzebujesz czegoś bardziej otwartego i łatwiejszego do naprawy. Autor projektu FlopperZiro o nazwie użytkownika lraton spojrzał na tę sytuację z ironią, nazywając swoje dzieło "okropną kopią w łamanym angielskim", ale w rzeczywistości zbudował działający prototyp autonomicznego narzędzia wielofunkcyjnego używając łatwo dostępnych płytek z Chin.

FlopperZiro Profile

Co potrafi to DIY urządzenie

Urządzenie obsługuje podstawowy zestaw zadań do eksploracji protokołów radiowych i interakcji z peryferiami. firmware ma już cztery główne działające moduły:

  • Przechwytywanie i powtarzanie na 433 MHz. Odbiornik RXB12 przechwytuje sygnały z pilotów bramowych lub prostych przekaźników, firmware zapisuje zrzuty na karcie pamięci i przesyła je z powrotem przez nadajnik FS1000A.
  • Port podczerwieni. Odbiornik i dioda IR współpracują ze sobą, więc urządzenie odczytuje komendy z domowych pilotów do TV lub klimatyzacji, zapisuje je do plików i odtwarza jednym przyciskiem.
  • NFC i RFID z chipem PN532. Urządzenie może odczytywać standardowe UID tagów i kart, emulować cele oraz wysyłać pakiety APDU. Obsługa ISO14443-B jest nadal w planach, ale do prostych testów funkcjonalności wystarczy.
  • Emulacja klawiatury BadUSB. Mikrokontroler udaje urządzenie HID i wykonuje skrypty w formacie Rubber Ducky bezpośrednio z karty pamięci.

Działa również przeglądarka plików do nawigacji po MicroSD, wskaźnik naładowania baterii oraz moduł sterowania wyświetlaczem.

Co jest w środku tego urządzenia

Główną zaletą FlopperZiro nad złożonymi projektami używającymi specjalizowanych chipów jest dostępność komponentów radiowych. Wszystkie części można łatwo zamówić z marketplace'ów lub znaleźć w pudełku ze starymi modułami Arduino:

  • Mikrokontroler: płytka STM32-L432KC
  • Wyświetlacz: monochromatyczny OLED SSD1306 o rozdzielczości 128x64 pikseli
  • Moduły radiowe: nadajnik FS1000A i odbiornik superheteryczny RXB12 na 433 MHz
  • Moduł NFC: popularny kontroler PN532
  • Pamięć masowa: standardowa osłona TF MicroSD Card Shield
  • Zasilanie: płytka ładująca TP4056 z konwerterem podwyższającym do 5V i bateria LiPo 3,7V
  • Sterowanie: sześć przycisków taktylnych i tranzystor 2N2222A do wzmocnienia diody IR

Obudowę można wydrukować na standardowej drukarce FDM. Autor udostępnił gotowy model 3D na Printables, który ciasno mieści obie wersje PCB i baterię.

FlopperZiro Front

FlopperZiro Back

Pułapki i niuanse firmware'u

Kod źródłowy jest napisany w C++ dla Arduino IDE. To znacząco obniża barierę wejścia, jeśli chcesz napisać własną wtyczkę lub dostosować konkretny protokół do egzotycznego szlabanu.

Ale prostota ma też swoją cenę. Na przykład autor uczciwie ostrzega o zabawnym błędzie: zaraz po wgraniu nowego szkicu przez środowisko Arduino, ekran urządzenia może pozostać ciemny. Problem leży w czasach resetu sprzętowego wyświetlacza SSD1306. Rozwiązanie to otwarcie monitora portu szeregowego w IDE, który inicjuje poprawny programowy restart przez USB.

Kto skorzysta z tego projektu

FlopperZiro nie pretenduje do miana analizatora sygnałów radiowych klasy laboratoryjnej. Nadajnik FS1000A ma skromny zasięg, a antena to tylko kawałek drutu. Mimo to, to doskonałe pole treningowe dla studentów i programistów, którzy chcą zrozumieć, jak działają SPI, I2C, odczytywanie surowych pakietów sub-GHz i protokoły kart inteligentnych, nie wydając dodatkowych pieniędzy.

Schematy i kod źródłowy są dostępne w repozytorium GitHub projektu na licencji GPL-3.0. Zbudowanie go wymaga tylko podstawowych umiejętności lutowania i zainstalowanego Arduino IDE.

Powiązane projekty