Forum: Mikrocontroller und Digitale Elektronik Arduino und halbfunktionaler Wiznet W5500


von Benjamin K. (bentschie)


Angehängte Dateien:

Lesenswert?

Hallo,

ich selbst bin Elektroniker, ich schreibe auch etwas Quellecode, kann 
aber nicht behaupten wirklich programieren zu können.
Ich verwende hier in mehreren Aufbauten einen Arduino Nano zusamen mit 
einem Wiznet W5500 in Form des Modules WIZ850IO.
https://docs.wiznet.io/Product/ioModule/WIZ850io

Ich mache eine einfache Kommunikation via TCP um vom PC aus den Nano zu 
steuern, hier konkret die Relais zu schalten und die Rückmeldungen 
einzulesen. Das geht auch meistens aber manchmal auch nicht.
Um den Fehler einzukreisen und meinen Qullecode auszuschließen habe ich 
das Ethernet Beispiel aus der IDE aufgespielt und nur die IP-Adresse 
angepasst.

Nun zum konkreten Problem. Ich habe teilweise den Fall, das ein Ping 
nicht geht, ich aber zeitgleich über TCP Daten zu dem Nano schicken 
kann.
Das verstehe ich nicht?!
Der Ping wird ja direkt im W5500 verarbeitet und der antwortet nicht. 
Aber die Kommunikation durch den W5500 bis zum Nano geht gleichzeitig?

Maßnahmen/Hinweise
- originaler Nano von Arduino.cc (gekauft bei  Mouser)
- mit mehreren Nanos getestet
- WIZ850IO Nachbau "aus dem Internet"
- nachgekaufter originaler WIZ850IO (gekauft bei Mouser)
- Schaltplan im Anhang
- Quellcode im Anhang (Beispiel aus der IDE, minimale Anpassung 
(IP-Adresse)
- verschiedene PCs (Win10)
- Verschiedene Netzwerkkabel
- direkte Netzwerkverbindung zum Windows PC, kein DHCP, kein DNS...
- Spannungsversorgung oszillografiert, ist sehr unauffällig
- Pegel und Verlauf des SPI sehen unauffällig aus
- weitere Details hab ich jetzt weggelassen, ist jetzt eh schon ein 
Textwand


Hat da jemand schon ähnliche Erfahrungen gesammelt, bzw. ein paar 
Stichworte das ich das besser verstehen kann.
Ich erhoffe mir dadurch zu finden, weshalb ich manchmal 
Kommunikationsaussetzer habe.

Danke
----
Benjamin

von Wastl (hartundweichware)


Lesenswert?

Benjamin K. schrieb:
> Schaltplan im Anhang

Wo bitte?

Erster Gedanke:

- Relais machen Störungen
- wenn der W5500 über den Nano versorgt wird, muss man
"schon" aufpassen ob das von der Stromaufnahme her passt.
Daher: Schaltplan bitte.

von Benjamin K. (bentschie)


Angehängte Dateien:

Lesenswert?

Ach Mist, der Anhang fehlt ja doch. Da hab ich wohl mit der zweiten 
Datei die erste wieder rausgeschmissen.

Die Versorgung ist von eigenem externem Netzteil, ca. 20cm Zuleitung, es 
hängt sonst nichts anderes dran.

Ich habe den Schaltplan etwas zusammengeschoben damit das ein wenig 
kompakter ist.
Und auch etwas weggelassen, z.B. wo die Relais hingehen.
Das kann ich hier nicht alles zeigen, das ist auch irrelevant, weil da 
im Moment noch gar nichts dran hängt, außer 3cm Leitung bis zum Stecker.

Ich habe das exakt gleiche Phänomen auch auf einer anderen Platine. Dort 
habe ich eine komplett andere Versorgung mit 5V aus einem Schaltregler, 
von 24V kommend. Ab dem Längsregler NCV1117 ist es dann identisch. Daher 
nehme ich an, das die Versorgung nicht ursächlich ist. Aber Danke für 
den Hinweis, Spannungsversorgung ist immer kritsch zu hinterfragen.

----
Benjamin

: Bearbeitet durch User
von Gerald B. (gerald_b)


Lesenswert?

Gibt es einen Grund, warum du das unbedingt mit dem Wiznet machen 
willst? Als der rauskam gab es noch keine ESPxx basierten 
netzwerkfähigen Controller. Bzw. ein Raspi... Die Wiznet Chips waren 
ziemliche Krücken.
Was man auch machen kann, eine alte PCI Netzwerkkarte nehmen und per WOL 
da ein Relais mit Ausgangstreiber dranklöppeln :-)
Kostet nix, wenn man die LAN-Karte als quasi Schrott hat.
Hab ich mal vor 20 Jahren gamacht. Eine 100 MHz RTLirgendwas. Braucht 
kein Mainboard, sondern am WOL nur ein 5V Netzteil, Netzwerkkabel dran, 
und Magic Packet mit der MAC ID schicken.

von Benjamin K. (bentschie)


Lesenswert?

Gerald B. schrieb:
> Gibt es einen Grund, warum du das unbedingt mit dem Wiznet machen
> willst? Als der rauskam gab es noch keine ESPxx basierten
> netzwerkfähigen Controller. Bzw. ein Raspi... Die Wiznet Chips waren
> ziemliche Krücken.

Der Grund ist, den Nano kenne ich ziemlich gut. Und mit Raspi, also 
Linux und Micropyton oder so, will ich nicht anfangen. Da habe ich so 
viele neue Baustellen. Das schöne an dem Nano ist ja, das der so klein 
und einfach ist.
ESP basiert schaue ich mit an.

----
Benjamin

von Nick (b620ys)


Lesenswert?

Benjamin K. schrieb:
> Ich habe das exakt gleiche Phänomen auch auf einer anderen Platine.

Wenn man mit "W5500 ping fails" googelt, gibt es einige Hinweise die vom 
Muster her auch auf dein Problem hin passen.
Aber weder hab ich Erfahrung mit dem W5500 noch mit Arduinos.

von Wastl (hartundweichware)


Lesenswert?

Benjamin K. schrieb:
> Ich habe das exakt gleiche Phänomen auch auf einer anderen Platine

Du könntest mal den UDP Tester versuchen ob sich dabei ähnliche
Phänomene ergeben:

Beitrag "Re: UDP-Netzwerke(l)n mit kleinen Mikrocontrollern und WizNet W5100/W5500"

Damit kannst du zwar nicht die Datenübertragung für dein
Protkoll überprüfen, aber der W5500 wird voll konfiguriert
ud lässt sich damit auch pingen. Wenn du einen zweiten
Arduino verwendest und ein UDP Beispiel drauf laufen lässt
könntest du auch die UDP Kommunikation testen.

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.