Hallo zusammen, ich möchte für ein Projekt das WiFi Modul Odin-W262 von UBlox verwenden. Ein Testaufbau mit einem Nucleo Board und dem Eval-Board vom UBlox Modul funktioniert bereits. Dort ist das Modul über die RMII-Schnittstelle angebunden, allerdings mit zwei Phys und einem Ethernet-Kabel dazwischen. Auf der finalen Platine ist das Modul direkt angeschlossen ohne die Phys dazwischen. Weiß jemand, wie ich das Modul initialisiert und angesteuert bekomme? Ich verwende die STM CubeIDE mit CubeMX. Die verwendet den LWIP-Stack. In CubeMX kann man zwischen zwei Phys auswählen. Falls es hilft, das UBlox Modul basiert auf einem ESP32. Ich bin für jede Hilfe dankbar, denn auf Seiten von UBlox finde ich nicht wirklich Infos dazu, lediglich eine fertige Library für mbed. Viele Grüße!
Wenn du das Odin Modul mit RMII benutzt brauchst du eine Art Switch, und vermutlich auch zwei PHY's. Das Odin fungiert dann als Ethernet-WiFi Bridge. Die 2 Chips direkt per RMII verbinden wird nicht gehen, das sind beides Master. IMO ist das unnötig umständlich, teuer und ineffizient, und nur sinnvoll wenn du mehrere Ethernet-Nodes hast, nicht nur den STM32. Du kannst das Odin Modul auch per UART und AT Commands ansteuern. Das ist allerdings auch nicht besonders flexibel/elegant, und lwIP kannst du dann auch nicht nutzen. Am Besten ist es IMO ein WiFi-Modul mit SDIO zu nutzen (da gibt es auch ESP Varianten, oder die ATWILC von Atmel). Dann werden die Ethernet-Frames vom Mikrocontroller über SDIO übertragen und du brauchst keine zusätzlichen Bauteile und du hast die volle Flexibilität von lwIP. Du brauchst die entsprechende Library für das Modul. Noch besser ist es den STM32 ganz wegzulassen und stattdessen alles auf dem ESP32 zu implementieren, aber das geht natürlich nicht immer.
:
Bearbeitet durch User
Niklas G. schrieb: > Die 2 Chips direkt per RMII verbinden wird nicht gehen, das sind > beides Master. Bei RMII gibt es keinen Master, sondern diese Schnittstelle ist symmetrisch. Man muss nur TXD0/1 mit RXD0/1 kreuzen, TX_EN mit RX_DV. Das Taktsignal REFCLK mit 50 MHz wird dann extern erzeugt und mit gleichen Leitungslängen(!) an beide Bausteine angelegt. Das zugehörige MDIO/MCLK wird gar nicht verwendet.
Hallo zusammen, ich wollte nur kurz Rückmeldung geben, falls irgendwer das gleiche vorhat. Niklas G. schrieb: > Wenn du das Odin Modul mit RMII benutzt brauchst du eine Art Switch, und > vermutlich auch zwei PHY's. Das Odin fungiert dann als Ethernet-WiFi > Bridge. Die 2 Chips direkt per RMII verbinden wird nicht gehen, das sind > beides Master. > IMO ist das unnötig umständlich, teuer und ineffizient, und nur sinnvoll > wenn du mehrere Ethernet-Nodes hast, nicht nur den STM32. Der zitierte Text von Niklas ist nämlich kompletter Unsinn. Andreas S. schrieb: > Bei RMII gibt es keinen Master, sondern diese Schnittstelle ist > symmetrisch. Man muss nur TXD0/1 mit RXD0/1 kreuzen, TX_EN mit RX_DV. > Das Taktsignal REFCLK mit 50 MHz wird dann extern erzeugt und mit > gleichen Leitungslängen(!) an beide Bausteine angelegt. > Das zugehörige MDIO/MCLK wird gar nicht verwendet. Die Antwort von Andreas war komplett richtig. Es müssen lediglich die Leitungen gekreuzt werden und im LWIP-Stack die Funktionen vom Phy "überbrückt" werden, es muss kein Register gesetzt werden, sondern lediglich der Verbindungsstatus vom WiFi Modul abgefragt werden. Dann funktioniert es quasi auf Anhieb. Ich wüsste nicht, wieso es "unnötig umständlich, teuer und ineffizient" sein soll, wenn man Funktionen braucht, die ein ESP32 nunmal nicht hat.
Andreas S. schrieb: > Bei RMII gibt es keinen Master, sondern diese Schnittstelle ist > symmetrisch. Ach, das wusste ich nicht. Max W. schrieb: > Der zitierte Text von Niklas ist nämlich kompletter Unsinn. Naja, nicht ganz; auch wenn die RMII-Anbindung doch so einfach ist, ist die Nutzung des Moduls als Bridge etwas "durch die Brust ins Auge". Max W. schrieb: > Ich wüsste nicht, wieso es "unnötig umständlich, teuer und ineffizient" > sein soll Ohne den Switch-IC ist es natürlich nicht mehr wirklich ineffizient. Eine Frage hätte ich da aber: Wie setzt du die Wifi-Daten (SSID, Passwort) vom W262 über das RMII? Über das SDIO-Interface sollte es "direkt" gehen. Laut https://content.u-blox.com/sites/default/files/documents/ShortRange-StandAlone_LineCard_UBX-14003456.pdf enthält das W262 übrigens ein WL1837 und kein ESP32. Kann auch gar nicht, denn es gibt (noch) keinen ESP32 mit 5 GHz.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.