[HowTo] Sonoff - 230V Relais mit ESP8266

Begonnen von gloob, 27 Juni 2016, 14:52:17

Vorheriges Thema - Nächstes Thema

Reinhart

#120
Zitat von: JoWiemann am 20 Oktober 2016, 07:15:00
Itead hat bereits Bereitschaft gezeigt ESPEasy für die Implementation des Wattmerers zu unterstützen.

das habe ich auch schon gelesen und würde mich sehr freuen wenn diese kostengünstige (9,50.- €) Leistungsmessung dann in Fhem nutzbar wäre. Außerdem ist der sonoff Pow dann die ideale Ergänzung zum sonoff Switch wie hier diskutiert.

Habe mir den Schaltplan angesehen und festgestellt, das Signal für die Leistung kommt ja von dem "Voltage to Frequency Converter" HLW8012 (Pin6+7) und wird dem ESP8266 direkt auf SCL und PWM1 zugeführt. Was mir hierbei unklar ist, wie denn ESPEASY die Frequenz weiter verarbeiten kann, bzw. ob hier nicht erst ein neuer Device programmiert werden muss. Auf jeden Fall geht's, denn Itead kann es ja auch mit ihrer Software.

Ich habe mir schon einen bestellt und freue mich schon auf erste Ergebnisse.

https://www.itead.cc/wiki/images/5/52/Sonoff_POW_Schematic.pdf

Schön wenn Itead hier Bereitschaft zeigt, kann ja nur in ihrem Interesse sein und so haben beide Seiten was davon.

LG
Reinhart
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Klaus0815


bitbiter

Hallo,

was halten die Experten hier im Forum davon? Bin zufällig darüber gestolpert. Ich finde es unheimlich interessant und preiswert:

https://www.openhardware.io/view/101/Wall-Socket-Insertable-Node#tabs-instructions

Gruss
Alex
Raspi mit Homematic-CCU, KeyMatic mit FB, HM-SEC-MDIR-2, HM-Sec-Sco, HM-MOD-RPI-PCB, 2x LCGW m. CUL868 / CUL433. == BananaPi mit fhem + SSD, MAX! FK und TS, Cube read-only (demn. Umstieg --> CUL), mehrere TFA/LC Sensoren, Milight Controller + Bulbs, Revolt, ECO Taster, Home-Easy, ESP8266 etc....

JoWiemann

Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

JoWiemann

Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

Reinhart

sehr schön, das ging ja schneller als erwartet, danke für die Info!

PS: ich habe mich heute einmal aufgerafft und habe einen Wiki Eintrag über sonoff-switch erstellt. Entgegen der Meinung einiger anderer Anwender, halte ich Wiki Einträge immer noch für sinnvoll, wenn es auch etwas Arbeit bedeutet.

http://www.fhemwiki.de/wiki/Sonoff

LG
Reinhart
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

AxelSchweiss

Super Danke
Das ist ja Idiotensicher geschrieben ... dann krieg ich das bestimmt auch hin  :)

dev0

#127
Im Wiki empfinde ich die ESPEasy Device Konfiguration als etwas ungeschickt. Dadurch, dass die 'device names' für den Taster und das Relais unterschiedlich sind, werden 2 FHEM Devices angelegt. Effizienter wäre es die beiden ESP Devices identisch zu benamsen.

Edit:
Wenn man sich selbst um STATE (stateFormat) kümmert, dann sollte man das Attribut setState auf 0 setzen, da state In diesem Fall überflüssig ist und dann unnötige Events erzeugt.

bitbiter

Also, wenn ICH das hinbekomme (sobald die Dinger da sind), DANN ist es idiotensicher! ;)

Great Job!

Gruss
Alex
Raspi mit Homematic-CCU, KeyMatic mit FB, HM-SEC-MDIR-2, HM-Sec-Sco, HM-MOD-RPI-PCB, 2x LCGW m. CUL868 / CUL433. == BananaPi mit fhem + SSD, MAX! FK und TS, Cube read-only (demn. Umstieg --> CUL), mehrere TFA/LC Sensoren, Milight Controller + Bulbs, Revolt, ECO Taster, Home-Easy, ESP8266 etc....

Reinhart

Zitat von: dev0 am 20 Oktober 2016, 21:35:55
Im Wiki empfinde ich die ESPEasy Device Konfiguration als etwas ungeschickt. Dadurch, dass die 'device names' für den Taster und das Relais unterschiedlich sind, werden 2 FHEM Devices angelegt. Effizienter wäre es die beiden ESP Devices identisch zu benamsen.

Besten Dank für deine konstruktive Kritik!
Ich habe die vorgeschlagenen Verbesserungen ausgetestet und die entsprechenden Kapitel im Wiki korrigiert. Ebenso wurden die Devices nach deinem Musterschema benannt (gleiche Device Namen) und die Bilder neu hochgeladen. Die Rules musste ich jedoch noch etwas anpassen, da dein Vorschlag nur bei jedem 2 Tastendruck reagiert ('on PUMP#Key do' funktioniert dann auch beim ersten mal drücken am sonoff).

LG
Reinhart
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

dev0

Zitat von: Reinhart am 21 Oktober 2016, 11:38:05
Die Rules musste ich jedoch noch etwas anpassen, da dein Vorschlag nur bei jedem 2 Tastendruck reagiert
Könnte an dem verwendeten "Push Button Active Low" liegen. Egal...

SusisStrolch

Der ESPEasy Ruleprozessor (v140) kommt leider nicht damit klar, wenn mehrere Devices mit gleichem Namen existieren.
Synology DS1515+, 16GB RAM, 4x 6TB WD-Red
- Docker (FHEM), MariaDB, MariaDB10, Surveillance Station
Gateways: LCG miniCUL433, LCG miniCUL868, AVR-X4000, VU-Solo SE, Kodi
ESP8266: ESPEasy (S0-Counter, Temp/Hum), Sonoff TH, Sonoff 4ch

dev0

#132
Da ich den Code zu den Rules noch nicht gelesen habe, kann ich Wechselwirkungen nicht ausschließen. Bei mir funktioniert es aber, genau so, auf mehreren Devices mit R140_RC3.

Bei Reinhart anscheinend auch:
Zitat von: Reinhart am 21 Oktober 2016, 11:38:05
Ich habe die vorgeschlagenen Verbesserungen ausgetestet und die entsprechenden Kapitel im Wiki korrigiert.

EDIT: Hier die entsprechende Config und Rules:
http://esp-ke-pump/json:

{"System":{
"Build": 140,
"Unit": 5,
"Uptime": 4,
"Free RAM": 25600
},
"Sensors":[
{
"TaskName": "PUMP",
"Relay": 0.00
},
{
"TaskName": "PUMP",
"Led": 1.00
},
{
"TaskName": "PUMP",
"Key": 1.00
},
{
"TaskName": "PUMP",
"RSSI": -65.00
}
]}


Rules:

on PUMP#Key=1 do
  if [PUMP#Relay]=1
    gpio,12,0
  else
    gpio,12,1
  endif
endon
on PUMP#Relay do
  if [PUMP#Relay]=1
    gpio,13,0
  else
    gpio,13,1
  endif
endon

SusisStrolch

(Ist das ein Tippfehler, das Du im "On PUMP#Key" den Status von "PUMP#Relay" prüfst?)

Einfach mal "for the files" - das Problem ist ja eher bei der ESPEasy Firmware angesiedelt.

button: Switch Input, type: Switch, button type: Push Button Active Low
relay: Switch Input, type: Switch, button type: Normal Switch

Hier meine Rule:

on System#Boot do
  gpio,12,0
  gpio,13,1
endon

on Switch#button do
  gpio,12,[Switch#button]
endon

on Switch#relay do
  if [Switch#relay] = 1
    gpio,13,0
  else
    gpio,13,1
  endif
endon


Und hier das Log:
Oct 21 18:03:21 EVENT: System#Boot
Oct 21 18:03:21 ACT  : gpio,12,0
Oct 21 18:03:21 SW   : GPIO 12 Set to 0
Oct 21 18:03:21 ACT  : gpio,13,1
Oct 21 18:03:21 SW   : GPIO 13 Set to 1

# Push sonoff Button (Ein)
Oct 21 18:03:42 SW   : State 0
Oct 21 18:03:42 EVENT: Switch#button=0.00
Oct 21 18:03:42 ACT  : gpio,12,1
Oct 21 18:03:42 SW   : GPIO 12 Set to 1
Oct 21 18:03:42 /fhem?cmd=setreading%20sonoff-01%20button%200

# Rule trigger via Relais (-> On)
Oct 21 18:03:43 SW   : State 1
Oct 21 18:03:43 EVENT: Switch#relay=1.00
Oct 21 18:03:43 ACT  : gpio,13,1
Oct 21 18:03:43 SW   : GPIO 13 Set to 1
Oct 21 18:03:44 /fhem?cmd=setreading%20sonoff-01%20relay%201

# Push sonoff Button (Aus)
Oct 21 18:04:07 SW   : State 1
Oct 21 18:04:07 EVENT: Switch#button=1.00
Oct 21 18:04:07 ACT  : gpio,12,0
Oct 21 18:04:07 SW   : GPIO 12 Set to 0
Oct 21 18:04:07 /fhem?cmd=setreading%20sonoff-01%20button%201

# Rule trigger via Relais (-> Off)
Oct 21 18:04:08 SW   : State 0
Oct 21 18:04:08 EVENT: Switch#relay=0.00
Oct 21 18:04:08 SW   : GPIO 13 Set to 1
Oct 21 18:04:09 /fhem?cmd=setreading%20sonoff-01%20relay%200


Effekt ist, das die LED nie toggled (logisch, da in "Rule trigger via Relais (-> Off)" gar keine ACTion generiert wird).

Verwende ich hingegen unterschiedliche Devicenamen, so funktioniert das - sprich die LED wird von der Rule korrekt ein/ausgeschaltet.
Synology DS1515+, 16GB RAM, 4x 6TB WD-Red
- Docker (FHEM), MariaDB, MariaDB10, Surveillance Station
Gateways: LCG miniCUL433, LCG miniCUL868, AVR-X4000, VU-Solo SE, Kodi
ESP8266: ESPEasy (S0-Counter, Temp/Hum), Sonoff TH, Sonoff 4ch

dev0

Zitat von: SusisStrolch am 21 Oktober 2016, 18:24:21
(Ist das ein Tippfehler, das Du im "On PUMP#Key" den Status von "PUMP#Relay" prüfst?)
...
Verwende ich hingegen unterschiedliche Devicenamen, so funktioniert das - sprich die LED wird von der Rule korrekt ein/ausgeschaltet.
Nein, kein Tippfehler, copy&paste.
Wie schon geschrieben: mit oben gezeigter rule funktioniert es bei mir.