Forum: Mikrocontroller und Digitale Elektronik Arduino Pro Mini & W5500 Reset


von martin (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen!

Ich bin gerade dabei, mir eine kleine Platine mit einem Arduino Pro Mini 
und einem W5500 Modul zu machen.
Zusätzlich ist ein RECOM Spannungsregler auf 3V3, eine Klemme für die 
Versorgung und ein Anschluss für 2 Sensoren drauf.

Funktioniert alles eigentlich sehr gut, auch im Dauerbetrieb.

Mein (derzeit einziges) Problem ist, dass der Bootvorgang nicht 
zuverlässig funktioniert.
Manchmal gehts, und manchmal muss ich die Reset Taste drücken. Durch 
drücken der Resettaste startet die Schaltung immer.

Ich hab natürlich schon viel gelesen und gegoogelt, auch hier, aber eine 
Richtige Lösung hab ich nicht gefunden.

Kann mir bitte einer einen Tipp geben, wie ich die Schaltung beim 
Power-On zuverlässig starten kann?

Diagramm des W5500 Moduls, des Arduinos, sowie mein Schaltplan im 
Anhang.

Danke
Martin

von Frickelfritze (Gast)


Lesenswert?

martin schrieb:
> Kann mir bitte einer einen Tipp geben, wie ich die Schaltung beim
> Power-On zuverlässig starten kann?

Ohne deinen Aufbau zu kennen ist das schwer zu sagen.

Eines ist aber sicher: auf dem zweiten Blatt des Schaltplans
kennst du plötzlich das magische Wort "Abblock-Kondensator"
nicht mehr. Sowohl Spannungsregler als auch andere Teilnehmer
werden darunter leiden.

Auch deine Energiequelle gehört zum Schaltplan, wenn die nichts
taugt, dann die ganze Schaltung auch nicht. Die W5500 brauchen
eine ganze Menge Strom!

von martin (Gast)


Lesenswert?

Energiequelle ist ein MeanWell HDR-15-12 (12V/1,25A) welches über einen 
passiven PoE Einspeiser die Spannung auf einem Cat5 Kabel mitüberträgt. 
Die 4 Adern für Versorgung sind auf der Bordseite nicht im RJ Stecker 
aufgelegt sondern gehen auf die +/- Klemme und dann in den RECOM 
Spannungsregler.

Abblockkondensator sagt mir leider nichts. Ich versuche nur, die beiden 
gekauften Platinen auf eine gemeinsame zu bringen/löten, damit ich mir 
die fliegende Verkabelung sparen kann.

Ich bin natürlich auch für jede weitere Anregung zur "Qualität" der 
Schaltung, bzw deren Verbesserung dankbar.

Das Problem mit dem nicht starten der Schaltung habe ich jedoch auch am 
Labornetzteil wenn direkt versorgt.

von Mario M. (thelonging)


Lesenswert?

Ist das auch die 3,3V-Version des Arduinos und ist der "Power Isolation 
Jumper SJ1" getrennt?
Tritt das Problem nur im Zusammenhang mit dem W5500-Modul auf oder auch 
nur mit dem Arduino und einem "Blinkprogramm"?

von martin (Gast)


Lesenswert?

Ja, ist die 3V3 Version und ja, tritt nur mit dem W5500 auf.
Ich bin auf das Problem auch schon öfter im Internet gestossen, es hat 
nur niemand eine ordentliche Lösung gehabt.

Anscheinend hilft, den Reset bei Power-On etwas länger LOW zu halten, 
aber wie geht das? Dann würden doch beide Module resetted wenn die 
Versorgung stabil ist, oder?

von Michael U. (amiga)


Lesenswert?

Hallo,

hast Du mal einfach im Sketch im setup();am Anfang ein delay(2000); oder 
so eingefügt? Ich habe irgendwie den Verdacht, daß die Module nach 
Poweron ziemlich lange brauchen, bis sie ansprechbar sind.

Gruß aus Berlin
Michael

von Mario M. (thelonging)


Lesenswert?

Bei den W5100-Shields gab es teilweise das Problem, dass der 
Reset-Impuls vom Arduino zu kurz war. Als schnellen Hack soll man 100nF 
parallel zum Resetknopf des Ethernet-Shields löten, was das Problem 
behebt. Vielleicht hilft das beim W5500 auch.

P.S.: Ich sehe gerade, dass Dein Ethernet-Shield gar keinen eigenen 
Reset-Knopf hat. Dann müsstest Du den extra Kondensator parallel zu 
C3(?) löten. Oder besser noch den Reset-Eingang des Shields auf einen 
Portpin vom Arduino legen und softwaremäßig einen Reset erzeugen.

: Bearbeitet durch User
von martin (Gast)


Lesenswert?

danke, ich werde das mit dem Resetpin an einen Ausgang versuchen und 
dann den Kondensator.

von Mario M. (thelonging)


Lesenswert?

Probier auch das von Michael vorgeschlagene delay(2000);

von martin (Gast)


Lesenswert?

vielen Dank Mario!

Das mit dem resetten vom W5500 über Applikation funktioniert.

Drei Fragen bleiben offen:

- da der Resetpin ja über den Widerstand auf 3V3 hängt, muss ich mir 
über den Strom, der über den digitalen Pin fließt, wenn dieser HIGH ist, 
keine Sorgen machen, oder?


- Kann mir bitte jemand sagen, was ich am RECOM DC/DC Konverter bzw. 
generell bei meiner Schaltung hinzufügen sollte, damit das Ganze in 
Ordnung ist?

- Kann ich die I2C Pullups am Arduino board bestücken (Nähe A4&A5 sind 
Lötpads vorhanden, oder sollen die zum Sensor. (Am I2C hängt ein BME280)

Danke!

von Mario M. (thelonging)


Lesenswert?

1) Bei High fließt kein Strom. Du kannst aber zwischen Arduino und W5500 
einen 100 Ohm Angstwiderstand einbauen, damit der Strom beim Umschalten 
auf Low begrenzt wird. Der Arduino muss dabei ja den Reset-Kondensator 
des W5500 entladen.

2) Im Datenblatt der Recom-Wandler kann ich nichts darüber finden, dass 
Kondensatoren an den Anschlüssen vergeschrieben sind. Also sollte es 
auch ohne funktionieren.

3) Wenn das Kabel zum Sensor nicht übermäßig lang ist, spielt die 
Position der Terminierung keine Rolle. Üblicherweise wird der Master 
terminiert.

von Marco H. (damarco)


Lesenswert?

https://telefab.fr/lab/media/datasheet/w5500_ds_v105e_141111.pdf

der Impuls muss min 500µS lang sein und der w5500 braucht 1ms bis der 
PLL gelockt ist. Also tatsächlich etwas delay einbauen ;)

Ich habe damals 2ms eingebaut, das hat immer funktioniert. Zumal auch 
die PHY etwas braucht er sie den link erkennt.

Etwas Obacht mit der Stromversorgung, das Modul sieht relativ viel 
Strom..

: Bearbeitet durch User
von martin (Gast)


Lesenswert?

Der Schaltregler den ich gewählt habe, sollte aber reichen, oder?
https://at.rs-online.com/web/p/products/7773291/

Muss ich den noch extern beschalten? Wie gesagt, die 12V kommen von 
einem MeanWell Hutschienennetzteil

Mein handgelöteter Aufbau funktioniert und es wird auch nix wärmer als 
lauwarm...

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.