Ding mit Licht – MQTT-Test 2: Passt!

Die Hardware passt nun auch!

… oder wurde passend gemacht!

Der erste Test verlief nicht sonderlich erfolgreich. Zunächst habe ich nur einen Kanal aufgelötet und dort einen 100W-Scheinwerfer angeschlossen. Als ich die Platine an das Netz angeschlossen hatte, gab es zumindest schon mal keinen Knall. Ich sah anhand der blauen Status-LED auf dem D1-Mini, dass eine Verbindung zu meinem Broker hergestellt wurde. Also habe ich den ersten Kanal angesteuert und tatsächlich, der Scheinwerfer ging an. Auch diesmal kam es nicht zu einem Knall – aber zu Rauchentwicklung auf der Platine.

Not-Aus!

Bei der Untersuchung fand ich die beiden Widerstände, die zwischen Netz-Spannung und Optokoppler verlötet sind, arg angegrillt. Ich habe genau gesucht, konnte aber keinen Fehler finden. Also habe ich, weil ich den Test weiter fahren wollte, den 100W-Scheinwerfer gegen einen 7W-LED-Spot getauscht. Dieser ließ sich schalten und die Platine fing auch nicht an zu rauchen.

Fehlschlag 1

Ich bestückte die restlichen vier Kanäle und begab mich erneut ans Testen. Diesmal zeigte mir die blaue LED allerdings keine Aktivität. Dafür leuchteten alle Lampen, bis auf Kanal 1. Es zeigte sich, dass ich bei der Belegung der GPIOs nicht aufgepasst habe. Ich habe den 5. Kanal an D8 des D1-Mini gelegt. Dieser ist verbunden mit GPIO15. Und wenn dieser beim Einschalten low ist, bootet der ESP8266 nicht. Der Durchgang hat dann wohl genau das bewirkt.

Um weiter testen zu können, habe ich kurzerhand die Leitung von Port 5 an D8 durchtrennt.

Fehlschlag 2

Jetzt hat der ESP8266 wieder eine Verbindung aufgebaut, nur ließen sich keine Lampen schalten, bis auf die an Port 1

Untersuchung

Beim Messen der Leitungen ist es mir dann aufgefallen! Die Ports ließen sich nicht schalten, weil ich von der falschen Leitung den Trigger des Triacs ansteuerte. Denkfehler! Warum aber funktionierte es dann auf Port 1? Weil diese Leitung – warum auch immer – keinen Durchgang hatte. Alle Platinen haben auf dieser Leitung keinen Durchgang. Es ist also ein Fertigungsfehler. Das erklärt dann auch, warum die Widerstände so heiß wurden – der Strom nahm den falschen Weg!

Brücken bauen und Schneisen schlagen!

Ich habe also diese Platine genommen und zur Sicherheit die Leiterbahn vom Optokoppler zum Triac grob mechanisch getrennt. Dann habe ich eine Drahtbrücke von der richtigen Leitung aus gelegt und anschließend getestet. Der erste Kanal ließ sich – wie vorher auch schon – schalten. Die Korrektur hat also zumindest nichts schlimmer gemacht. Also habe ich den Test mit dem 100W-Scheinwerfer wiederholt. Und siehe da: Er ließ sich schalten und nichts fing an zu qualmen.

Nach ein paar Minuten habe ich die Platine vom Netz genommen und sofort alle Teile des ersten Kanals abgetastet. Nichts! Keine spürbare Wärmeentwicklung.

Spätschicht!Die zweite Platine mit den Modifikationen.

Ich hätte nicht schlafen können, ohne mit einer weiteren Platine zu testen, ob ich sie mit den o. g. Anpassungen vollständig nutzen kann. Also habe ich eine weitere Platine zunächst grob bearbeitet, damit die falschen Leiterbahnen keine Probleme mehr bereiten und dann die Brücken verlötet.

Brücken auf der RückseiteFür den fünften Kanal habe ich den Vorwiderstand selbst als Brücke zum Anschluß D6 vom D1-Mini genutzt. Der noch nicht genutzte Expansionsport hat sich dazu angeboten.

Und es funktioniert!

Mit großer innerer Spannung übergab ich die Platine der Netzspannung. Kein Knall! Kein Spot leuchtete unaufgefordert auf! Gut soweit! Die Verbindung wurde auch hergestellt. Und dann …

Hier ist das Ergebnis im Video:

Es funktioniert also! Großartig! Jetzt geht es weiter!

Nächste Schritte

Als nächstes muss ich meinen Raspberry-MQTT-Broker einrichten und mich dann um eine Firmware kümmern, die sich für mein Projekt eignet. Das, was der Switch zur Zeit macht, folgt aus ziemlich plumper, statischer Programmierung. Es sollte ja auch nur zeigen, ob die Hardware passt.

Die Firmware benötigt einen Satz an Basisbefehlen, den alle meine zukünftigen Entwicklungen verstehen, sowie Funktionen, die variable Anweisungen verarbeiten können. Und was ganz besonders wichtig ist, die Firmware muss in der Lage sein, sich OTA updaten zu lassen. Wenn so ein Teil einmal eingebaut ist, will man es schließlich nicht jedesmal ausbauen, wenn man eine neue Idee hat und ein Update benötigt.

Nicht weniger wichtig sind Web-Funktionen, die es erlauben die Geräte auch dann anzusteuern, wenn der Broker vielleicht „nicht abkömmlich“ ist.

Und vieles, vieles mehr! Das alles sollte ich in der Schublade haben, bevor ich mich an den praktischen Einsatz und die Weiterentwicklung der Hardware mache.

Ich werde hier berichten…

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.