WiFi Schaltuhr mit PCF8574 und 8-fach Relais

  • Hallo Ballernacken

    Habe die 8fach Wifi relaiskarte für meine Zwecke mit Hilfe von dreamshader zum laufen bekommen.

    Für die Relaiskarte habe ich mir eine Platine (siehe Beitrag 7) entworfen.

    Diese kann direkt flächenbündig auf gesteckt werden.

    Auf dieser Platine wurde nur am Ausgang des AMS1117 ein 16V/100μF gesetzt.

    Dieses reicht völlig aus und die Platine funktioniert bestens.

    Bei Fragen einfach melden.

    Anbei eine Anleitung .

  • Hi Dreamshader,

    Nachdem ich die Hardware endlich mal zusammen löten konnte (Viel zu viel Arbeit im Moment), kann ich mich endlich um den Softwareteil kümmern. Nur bin ich dabei auf mehrere Probleme gestoßen. Die meisten konnte ich selbst lösen, jetzt hänge ich aber. Vielleicht hast Du ja eine Idee wo das Problem liegt. Hier die Fehlermeldung beim kompilieren:

  • Servus BallerNacken ,

    hm ... da muss ich mal schauen, was das sein könnte.

    Das könnte mit der Version der IDE bzw. des ESP-Package zusammenhängen. Ich hab' hier noch die 2.3.0 des ESP-Supports installiert.

    Da werd' ich mal updaten ... kann aber ein bisschen dauern ...

    Aber vielleicht hat ja ein anderer unserer ESP-Freund hier schon die Lösung parat.

    ciao,

    -ds-

  • Schnellschuss-Lösung: nutz die 1.8.3 der IDE und die Version 2.3.0 des ESP-Package ...

    Das sollte dann funktionieren.

    Ich hab' grad meine IDE von 1.8.3 auf 1.8.5 hochgezogen und siehe da: es gibt ein neues ESP-Support Package ( -> 2.4.0 )

    Mal sehen ...

    ciao,

    -ds-

  • So, Ich habe mal die von Dir entsprechenden Versionen für die IDE und das ESP Package installiert. Die Fehler sind weg, allerdings bekomme ich nun andere. Bei denen habe ich das Gefühl, dass ich irgendwo vergessen habe Einträge zu editieren oder zu erstellen?

    Die Fehler nun sind:

  • Servus,

    was mich da jetzt irritiert: einmal zeigt er den Fehler für ESP8266_WIFI_TimerRelais:2565: und einmal für sketch_jan12a:6: ... :conf:

    Als wenn Du zwei sketches zusammen compilierst ....

    cu,

    -ds-

  • So, jetzt muss ich doch nochmal einen längeren Text verfassen. Denn so richtig will das Ganze leider noch nicht funktionieren. Oder ich verstehe gewisse Teile noch nicht ganz und mache dementsprechend Fehler. Also einmal von vorne:

    Ich habe die folgenden Teile hier:

    4-fach-Relais: https://www.amazon.de/Pixnor-4-Kanal-DC-Modul-Relaiskarte-Optokoppler-Arduino-Wie-gezeigt/dp/B00M8XJ71U?tag=psblog-21 [Anzeige]

    PCF8574: https://www.amazon.de/WINGONEER-PCF8574-Erweiterungsplatine-Expander-Auswertungs-Entwicklungs-Modul/dp/B06W564ZSD?tag=psblog-21 [Anzeige]

    ESP 8266-01: https://www.amazon.de/AZDelivery-esp8266-Raspberry-Mikrocontroller-ESP8266-01/dp/B074RL7YR3/ref=sr_1_5?s=ce-de&ie=UTF8&qid=1516464240&sr=1-5&keywords=esp8266+01&tag=psblog-21 [Anzeige]

    DC-DC Converter: https://www.amazon.de/AMS1117-3-3V-Converter-Stromspannungsregler-Stromversorgung-TE109/dp/B00SR4FC0E/ref=sr_1_1?s=ce-de&ie=UTF8&qid=1516464317&sr=1-1&keywords=DC+%2F+DC+3.3V+AMS1117-3.3V&tag=psblog-21 [Anzeige]

    Ansonsten noch Buchsenleisten und Jumperkabel.

    Nun habe ich alles so verkabelt wie in dem Schaltbild im Link im ersten Post dieses Threads angegeben.

    Schließe ich alles über den "RS232 Connector" TX, RX und GND an meinen Laptop an, versorge alles mit 5V und schließe den Jumper zum Programmieren des ESP, funktioniert dies auch.

    Ich habe den Sketch von Dreamshader heruntergeladen und nachdem ich sämtliche Bibliotheken (dsEeprom, PCF8574, SimpleLog, Time, Timezone und ESP8266) wie angegeben "installiert" habe, konnte ich den Sketch auch kompilieren und hochladen. Die Details für mein WLAN habe ich natürlich eingesetzt und auch die Server IP habe ich entsprechend meinem Heimnetzwerk angepasst.

    Nach dem hochladen des Sketches auf den ESP ist dieser auch nach sehr kurzer Zeit an meinem Router angemeldet und ich kann mich per vorher eingestellter IP und Port 8080 auf das Webinterface verbinden.

    Ändere ich dort nun den Schaltzustand eines der Relais, passiert gar nichts. Es regt sich nichts, weder das irgendwelche LEDs auf dem Relais Board angehen, noch das man das Relais schalten hört.

    Muss an das Relais eine Last angeschlossen sein, damit dies funktioniert? Denn zum Testen habe ich an das Board nichts angeschlossen außer die 5V Quelle auf den VCC Pin, GND auf GND Pin und vom PCF8574 PIN P0 kommend auf den IN1 Pin des Relais Boards. Ich habe das Gefühl das genau hier irgendwas falsch läuft. Allerdings werde ich aus anderen Tutorials die ich bei Google gefunden habe, nicht schlauer.

    Ein weiteres Problem ist der ESP an sich. Wie gesagt connected er sich nach dem uploaden des Sketches mit dem WLAN. Allerdings wird der Jumper ja nur verwendet, um GPIO0 des ESP auf GND zu schalten und somit das Programmieren zu ermöglichen. Schalte ich nach dem Kompilieren und hochladen des Sketches alles, entferne den RS232 - USB vom Laptop und die Verbindung zwischen GPIO0 und GND (Da ich ja nicht weiter programmieren will), schließe die Stromversorgung wieder an, meldet sich der ESP nie wieder an. Erst wenn ich den RS232-USB wieder anschließe und den Jumper schließe, funktioniert es wieder. Aber auch nur nachdem ich den Sketch erneut hochgeladen habe.

    Ich habe keine Ahnung wo ich Fehler mache, aber irgendwo mache ich definitiv welche. Vielleicht könnt ihr bzw speziell Dreamshader mir ja nochmal helfen. Eigentlich sollte ich sowas hinbekommen. Bin aber am Ende meines Lateins. Mit Spannung ist alles entsprechend korrekt versorgt, das habe ich nachgemessen.

    Dann noch zwei grundsätzliche Fragen:

    1) Leuchten die LEDs der entsprechenden Relais nur wenn diese geschaltet wurden? Und ansonsten gar keine?

    2) Auf welcher Seite wird der verlinkte PCF8574 überhaupt verkabelt? Ich habe alles an die linke Seite angesteckt (wenn man es quer vor sich hat und die gelbe Stiftleiste oben ist).

    Vielen Dank schon mal wer bis hier gelesen hat und vielleicht auch helfen kann/möchte.

    BallerNacken

  • Servus BallerNacken ,

    kurz vorab:

    1) Leuchten die LEDs der entsprechenden Relais nur wenn diese geschaltet wurden? Und ansonsten gar keine?

    das kann ich Dir nicht beantworten. Es gibt verschiedene Ausführungen gerade von diesen Relais-Platinen, die äusserlich genau gleich aussehen.

    Am besten probieren ...

    2) Auf welcher Seite wird der verlinkte PCF8574 überhaupt verkabelt? Ich habe alles an die linke Seite angesteckt (wenn man es quer vor sich hat und die gelbe Stiftleiste oben ist).

    Also die Verschaltung des PCF sollte im Link des Eingangspost zu finden sein -> http://esp8266-server.de/8-I2C-WiFi-Relais.html

    Zum Rest: gib' mir ein bisschen Zeit zum Nachdenken ;)

    cu,

    -ds-

  • Bei mir leuchtet nur die entsprechende Led wenn ein Relais geschaltet wird.

    Der Anschluss des PCF ist richtig (Linke Seite).

    Nutze zwar diese Wifi Schaltuhr nicht mehr.

    Habe diese aber soeben nochmal angeschlossen.

  • Servus,

    ... Dir ist klar, dass Du für den Schaltvorgang auf Speichern klicken musst?

    Für das Problem mit der "deleted function" ab dem aktuellsten ESP-Pack hab' ich auch eine Lösung ...

    cu,

    -ds-

    Ja das ist mir bewusst. Die schaltung sollte eigentlich auch komplett richtig sein. Ich habe das Gefühl das ich irgendwo bei der Software noch einen Fehler gemacht habe. Ich sitze gerade an meinem Pi und spiele da mit anderem Kram rum. Werde aber nachher nochmal schauen, ob ich einen Fehler finden kann.

  • Ich muss den Thread leider nochmal aktivieren. Komme zu selten zum basteln, um das alles zeitnah zu behandeln. Der ESp macht nun keine Probleme mehr und meldet sich zuverlässig im WLan an. Lag an einer zu schlechten Stromversorgung, obwohl das empholene NT von 5V, 1A genutzt wurde.

    Nun schalten die Relais aber immer noch nicht. Egal ob ich manuell oder per Zeit schalte, es passiert nichts. Verbinde ich am ganz normal VCC zu 5V, GND zu ground und dann einen der input pins auf Ground, schaltet das Relais. Mit dem PCF8574 funktioniert es allerdings nicht. Ich habe im sketch RELAIS_OFF als HIGH und als LOW getestet. RELAIS_ON natürlich entsprechend andersrum.

    Wie ich den LOG aktivieren weiß ich leider nicht so wirklich. Hatte einfach sowas wie

    Code
    #define DO_LOG true

    versucht. Mit dem Ergebniss von unmengen an Fehlern beim Kompilieren.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!