Forum: Mikrocontroller und Digitale Elektronik M5Stack(esp32) + LAN-Modul (w5500) + MAC RAW lesen


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Torsten (Gast)


Lesenswert?

Hallo Zusammen!

Ich würde gerne mit einem M5Stack (ESP32) mit LAN-Modul(w5500) 
CDP-Pakete (Cisco Discovery Protocol) lesen und die relevanten Infos auf 
dem Display darstellen.

Funktionierende Beispiele für M5Stack (ESP32) mit LAN-Modul(w5500) habe 
ich wie Sand am Meer gefunden, jedoch nutzen diese allesamt Layer3 und 4 
(IP+TCP bzw. IP+UDP).

CDP arbeitet jedoch auf Layer2 also wie reine ARP-Broadcasts.
Hierzu muss man wohl einen Socket im MAC RAW Mode öffnen, um an diese 
Pakete zu kommen.

Beispiele, die den W5x00 in diesem Modus nutzen, finde ich nur auf 
Atmega-Basis. Dazu kommt ein riesiges Wirrwarr an Ethernet-Libraries für 
Arduino. Inkompatibilitäten zu bestimmten Arduino-IDE Versionen. 
Libraries, die nicht alle Befehle kennen, die ich in den Beispielen 
sehe. Etc...

Erstes Ziel wäre jetzt für mich alle Pakete als Roh-Daten zu empfangen, 
bzw. die an die Ethernet-Multicast-Adresse (01-00-0C-CC-CC-CC) geschickt 
werden.

Kann mir da jemand helfen?

Viele Grüße,
Torsten

von Torsten (Gast)


Lesenswert?

Habe das Problem gelöst. Falls jemand das selbe Problem hat:
Beispielcode von hier
https://github.com/njh/W5500MacRaw

folgende Änderungen waren nötig:

Ersetze jedes mr durch mra und MR durch MRA. Die Konstante MR bzw. mr 
wird bereits durch die ESP-Bibliothek verwendet.

CS-Pin angeben:
Wiznet5500 w5500; --> Wiznet5500 w5500(26);

Danke fürs Lesen!

VG,
Torsten

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.