SE4 2022/2023 EC3
Aller à la navigation
Aller à la recherche
Objectifs
Il vous est demandé de :
- concevoir et réaliser un projet LUFA sur la base de la démonstration bas-niveau RNDIS ;
- la cible est l'ATMega8u2 d'un Arduino Uno Rev3 ;
- d'intégrer dans le projet LUFA une micro-pile TCP/IPv4 comportant :
- la gestion des requêtes et des questions ARP,
- la gestion des paquets IPv4, en particulier avec les calculs de sommes de contrôle,
- la gestion des paquets ICMP de type requête et réponse d'écho,
- vous testerez votre projets LUFA à partir d'une machine Linux en lançant un
ping
sur l'adresse IPv4 de l'Arduino UNO ; - pour rendre le test plus visuel vous utilisez les deux LED TX et RX commandées par l'ATMega8u2 :
- une LED pour indiquer la réception de paquets IPv4 destinés à l'ATMega8u2 ;
- une LED pour toute requête d'écho destinée à l'ATMega8u2.
Matériel nécessaire
Le seul matériel nécessaire est un Arduino Uno Rev3.
Travail réalisé
Semaine 1 :
- Recherche d'un Arduino Uno Rev3
- Activation de RNDIS sur Ubuntu 20.04
- Tentative de compréhension de la démo RNDISEthernet dans LUFA.
- Modification du Makefile du programme de démonstration pour l'adapter au matériel.
- Passage de l'Arduino en mode DFU (en connectant la broche RESET de l'ATmega16u2 à la masse)
- Premier téléversement du programme de démonstration RNDISEthernet
(problème de compatibilité avec l'ATmega16u2 ?)avec dfu-programmer, puis rétablissement du firmware d'origine.
Semaine 2 :