FHEM Forum

Verschiedenes => Bastelecke => ESP Familie => Thema gestartet von: MarkBinary am 20 November 2016, 15:35:03

Titel: [GELÖST] 34_ESPEasy.pm, NodeMCU, PCF8574
Beitrag von: MarkBinary am 20 November 2016, 15:35:03
Hallo zusammen.
Ich nutze ein NodeMCU mit ESP Easy (4096_145_RC6). Daran habe ich unter anderem ein i2c Portexpander mit PCF8754 Chip angeschlossen.

define knob1 dummy
attr knob1 room ESPEasy
attr knob1 setList on off
define ESP_Knob1 DOIF ([knob1] eq "on") ({system ("wget -O /dev/null -q http://192.168.123.70/control?cmd=pcfgpio,71,1")}) DOELSEIF ([knob1] eq "off") ({system ("wget -O /dev/null -q http://192.168.123.70/control?cmd=pcfgpio,71,0")})
attr ESP_Knob1 room ESPEasy

define knob2 dummy
attr knob2 room ESPEasy
attr knob2 setList on off
define ESP_Knob2 DOIF ([knob2] eq "on") ({system ("wget -O /dev/null -q http://192.168.123.70/control?cmd=pcfgpio,72,1")}) DOELSEIF ([knob2] eq "off") ({system ("wget -O /dev/null -q http://192.168.123.70/control?cmd=pcfgpio,72,0")})
attr ESP_Knob2 room ESPEasy


Wenn ich  nun aber die an den Pins angeschlossenen LEDs schalte, lassen sie sich auch einschalten.
Aber..!
Egal welche ich nun ausschalte, es gehen BEIDE AUS, obwohl der jeweils andere Dummy und somit das DOIF das 2te CMD beinhaltet.

Woran kann das liegen?
Titel: Antw:34_ESPEasy.pm, NodeMCU, PCF8754
Beitrag von: MarkBinary am 21 November 2016, 09:40:04
Das lässt mir ja keine Ruhe.
Ich habe es mit dem "wget" jetzt auch über die Windows Power Shell versucht.

Gleiches verhalten.
Anbei sende ich mal einen Schaltplan und ein Bild meines Steckbretts.

Vlt. hat jemand ja eine andere Idee, woran es liegen könnte.
Ich glaube schon fast, das die ESP-Easy Firmware ne macke hat, bzw. das Waveshare PCF Modul.

Gibts es ne möglichkeit, den Fehler einzukreisen?
Nächste Idee wäre ein anderes Modul mit MQTT zu nutzen..?!
Titel: Antw:34_ESPEasy.pm, NodeMCU, PCF8754
Beitrag von: dev0 am 21 November 2016, 10:11:44
Das in der Überschrift erwähnte Modul 34_ESPEasy.pm benutzt Du überhaupt nicht. Vmtl. nutzt Du das ESPEasy Controller Plugin FHEM-HTTP und connectest auf einem FHEMWEB Port um Daten in Richtung FHEM zu senden. Das hat nichts mit 34_ESPEasy.pm zu tun. Auch das Senden an den ESP über einen system command hat nichts mit dem ESPEasy Modul zu tun.

Das Verhalten deutet auf ein fehlerhaftes PCF8574 Plugin hin. MQTT wird dann aber auch nichts daran ändern, es sei denn, dass das ESP Plugin die Daten über MQTT anders auswertet, habe es mit jetzt aber nicht angesehen. Du könntest noch eine andere I2C Adresse testen, bspw. 0x20 um die Ports mit 1-8 anzusprechen.

Sonst, schau in den Code oder wende Dich an den Entwickler des Plugins.
Titel: Antw:34_ESPEasy.pm, NodeMCU, PCF8754
Beitrag von: MarkBinary am 21 November 2016, 11:07:04
Ich habe doch die espbridge eingerichtet
Und dann die esp devices.
Welches Modul ist es denn dann? :-\
Titel: Antw:34_ESPEasy.pm, NodeMCU, PCF8754
Beitrag von: dev0 am 21 November 2016, 12:17:03
Du hast eine Bridge eingericht, ok. Aber Dein Code oben aus Dummies nutzt nicht das ESPEasy Modul, weder zum Senden noch zum Empfangen.
Titel: Antw:34_ESPEasy.pm, NodeMCU, PCF8754
Beitrag von: MarkBinary am 21 November 2016, 13:25:04
Ich hatte es auch per
set <NAME> pcfgpio 71 1
probiert.
Gleiches verhalten.
Das aktuelle define ist der letzte "erfolglose" versuch
Titel: Antw:34_ESPEasy.pm, NodeMCU, PCF8754
Beitrag von: Reinhart am 21 November 2016, 21:03:03
ich vermute du hast im ESPEasy nicht auf das Protokoll "FHEM HTTP" gestellt, denn sonst würdest du bei aktivierter ESPEasy-Bridge (define espBridge ESPEasy bridge 8383) deine aktivierten Devices ja automatisch angelegt bekommen. dev0 versucht dir das ja schon die ganze Zeit zu sagen das das nicht aktiv ist. Die Bridge unter Fhem hilft nur, wenn auch der Device "Fhem" spricht.

LG
Titel: Antw:[GELÖST] 34_ESPEasy.pm, NodeMCU, PCF8754
Beitrag von: MarkBinary am 22 November 2016, 20:47:02
Fehler gefunden und behoben.
Es hatte NICHTS mit dem Modul, mit FHEM, ESPEasy oder der Syntax der Befehle zu tun.

Es war der elektrische Aufbau.

In diesem Artikel steht es prima beschrieben, sodass ich ihn hier euch verlinke.
http://www.mikrocontroller.net/articles/Port-Expander_PCF8574#Anwendung (http://www.mikrocontroller.net/articles/Port-Expander_PCF8574#Anwendung)