>_ DevTrendsfr

Langue

Accueil

Langages

Sections

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarqué Sécurité
C-plus-plus

Comment construire soi-même un multi-outil de poche pour les signaux radio et le NFC

FlopperZiro Logo

Un Flipper Zero complet coûte maintenant une somme considérable, et pour des expériences simples avec des barrières de portail domestiques, des télécommandes IR et des badges d'accès, on veut souvent quelque chose de plus ouvert et plus facile à réparer. L'auteur du projet FlopperZiro avec le nom d'utilisateur lraton a regardé cette situation avec ironie, appelant son œuvre un « horrible copia en inglés roto », mais a en fait construit un prototype fonctionnel d'un multi-outil autonome utilisant des cartes facilement disponibles en provenance de Chine.

FlopperZiro Profile

Ce que ce gadget DIY peut faire

L'appareil gère un ensemble de tâches de base pour explorer les protocoles radio et interagir avec les périphériques. Le firmware dispose déjà de quatre modules principaux fonctionnels :

  • Interception et relecture 433 MHz. Le récepteur RXB12 capte les signaux des télécommandes de portail ou des relais simples, le firmware enregistre les dumps sur la carte mémoire et les retransmet via l'émetteur FS1000A.
  • Port infrarouge. Le récepteur et la LED IR fonctionnent ensemble, permettant à l'appareil de lire les commandes des télécommandes domestiques pour TVs ou climatiseurs, de les enregistrer dans des fichiers et de les rejouer d'une simple pression de bouton.
  • NFC et RFID avec la puce PN532. L'appareil peut lire les UID standards des tags et cartes, émuler des cibles et envoyer des paquets APDU. Le support ISO14443-B est encore en attente, mais pour des tests de fonctionnalités simples, c'est suffisant.
  • Émulation de clavier BadUSB. Le microcontrôleur se fait passer pour un périphérique HID et exécute des scripts au format Rubber Ducky directement depuis la carte mémoire.

Il intègre également un navigateur de fichiers pour naviguer sur la MicroSD, un indicateur de charge de batterie et un module de contrôle de l'affichage.

Ce qu'il y a à l'intérieur de cet appareil

L'avantage principal de FlopperZiro par rapport aux projets complexes utilisant des puces spécialisées est la disponibilité des composants radio. Toutes les pièces peuvent facilement être commandées sur des marketplaces ou trouvées dans une boîte de vieux modules Arduino :

  • Microcontrôleur : carte STM32-L432KC
  • Écran : OLED monochrome SSD1306 avec une résolution de 128x64 pixels
  • Modules radio : émetteur FS1000A et récepteur superhéterodyne RXB12 à 433 MHz
  • Module NFC : contrôleur PN532 populaire
  • Stockage : shield MicroSD TF standard
  • Alimentation : carte de charge TP4056 avec convertisseur élévateur vers 5V et batterie LiPo 3,7V
  • Commandes : six boutons tactiles et un transistor 2N2222A pour l'amplification de la LED IR

Le boîtier peut être imprimé en 3D sur une imprimante FDM standard. L'auteur a partagé un modèle 3D prêt à l'emploi sur Printables qui loge étroitement les deux révisions de PCB et la batterie.

FlopperZiro Front

FlopperZiro Back

Pièges et nuances du firmware

La base de code est écrite en C++ pour l'IDE Arduino. Cela abaisse considérablement la barrière d'entrée si vous avez besoin d'écrire votre propre plugin ou d'ajuster un protocole spécifique pour une barrière de portail exotique.

Mais la simplicité a un revers. Par exemple, l'auteur avertit honnêtement d'un bug amusant : juste après avoir téléchargé un nouveau sketch via l'environnement Arduino, l'écran de l'appareil peut rester noir. Le problème vient des temporisations de reset matériel de l'écran SSD1306. La solution consiste à ouvrir le moniteur série dans l'IDE, ce qui initie un redémarrage logiciel correct via USB.

Qui bénéficiera de ce projet

FlopperZiro ne prétend pas être un analyseur de signaux radio de qualité laboratoire. L'émetteur FS1000A a une portée modeste, et l'antenne n'est qu'un morceau de fil. Néanmoins, c'est un excellent terrain d'entraînement pour les étudiants et développeurs qui veulent comprendre comment fonctionnent SPI, I2C, la lecture brute de paquets sub-GHz et les protocoles de cartes à puce sans dépenser d'argent supplémentaire.

Les schémas et le code source sont disponibles dans le dépôt GitHub du projet sous licence GPL-3.0. Le construire ne nécessite que des compétences de base en soudure et l'IDE Arduino installé.

Projets similaires