[GELÖST] 34_ESPEasy.pm, NodeMCU, PCF8574

Begonnen von MarkBinary, 20 November 2016, 15:35:03

Vorheriges Thema - Nächstes Thema

MarkBinary

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?

MarkBinary

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..?!

dev0

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.

MarkBinary

Ich habe doch die espbridge eingerichtet
Und dann die esp devices.
Welches Modul ist es denn dann? :-\

dev0

Du hast eine Bridge eingericht, ok. Aber Dein Code oben aus Dummies nutzt nicht das ESPEasy Modul, weder zum Senden noch zum Empfangen.

MarkBinary

Ich hatte es auch per
set <NAME> pcfgpio 71 1
probiert.
Gleiches verhalten.
Das aktuelle define ist der letzte "erfolglose" versuch

Reinhart

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
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

MarkBinary

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