SE4 2022/2023 EC3

De wiki-se.plil.fr
Révision datée du 11 juillet 2023 à 19:19 par Khabre (discussion | contributions) (problems ?)
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 :

Documents Rendus