Sonoff 4-Kanal CH4 - flashen mit Tasmota und in Fhem einbinden

Begonnen von moonsorrox, 19 November 2017, 14:20:43

Vorheriges Thema - Nächstes Thema

moonsorrox

hat schon jemand hier mit der Tasmota Firmware einen 4-Kanal Switch geflasht und in Fhem eingebunden.
Ich bekomme die Tage einen und habe bisher nur den Basic geflasht.

Evtl. geht das ja mit der gleichen Einstellung und der Switch wird dann nur auf der Weboberfläche der Tasmota Firmware auf 4 Kanal umgestellt.
Ich benutze dazu die Atom Software unter Windows.
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

Blauhorn

Hallo moonsorrox,

ich habe jetzt Einige von den Geräten erfolgreich in FHEM eingebunden und steuere damit die Heizkreise meiner Fußbodenheizung.
Kompliliert und geflasht habe ich mit der Arduino -IDE erstmalig, danach geht das recht sauber auch über OTA.

Das Modul stellst du in der sonoff.h ein, standardmäßig steht dort "SONOFF_BASIC" drin, für die 4CH muss dort "SONOFF_4CH" rein.
Ich habe auch die WLAN-Zugangsdaten und MQTT-Server immer gleich in die user_config mit reingeschrieben.

Gruß vom Blauhorn
1xBananaPi; 1x FB7490; 1xCUL433; 1x CC2530+CC2591; OpenMiLight-Gateway; 1xHMUART; HM-LC-Sw4-DR; Sonoff* mit TASMOTA, LEDController; MySensors; zigbee2mqtt;

moonsorrox

#2
Hallo und vielen Dank, ich hatte ganz vergessen das ich hier im Fhem Forum auch einiges geschrieben habe und auch gefragt.... ;)

Mittlerweile habe ich einige Erfahrung gesammelt und auch schon erfolgreich mehrere Basic, 1x 4CH 1x Dual und einmal S20 geflasht.
Ich nutze dazu Atom mit einigen Plugins.
Was z.B. nicht funktioniert ist z.B. ein erneutes flashen mit einer anderen IP wenn man das nicht vorher schon eingetragen hat, die alte IP bleibt in jedem Fall erhalten.

Dafür gibt es aber die Konsole und die ist ein mächtiges Teil hier kann man wohl einiges machen, ich habe bisher nur die IP verändert.

Und das geht folgender massen
Zitatsavedata 1   <enter>      # dauerhaftes Speichern aktivieren
ipaddress1 10.0.0.xxx   <enter>      # die gewünschte IP-Nummer eingeben,
   
# 3-5 Sekunden warten - kann auch länger sein, ich hab den Weg zum Sicherungskasten oder zur Steckdose nicht gemessen  ;) und dann   
# den Strom vom Sonoff nehmen und nach ca. 3 Sekunden wieder auflegen   
# nun ist auch schon im Browser die neue IP-Adresse aktuell
# nun nochmal in die Console gehen und dann eingeben   
   
savedata 0    <enter>      # das dauerhafte Speichern deaktivieren

funktioniert super und es gibt sicher noch viele andere Parameter die man verändern kann.

Das mit der Fußbodenheizung interessiert mich und sicher auch andere, welche Geräte und was hast du da alles gemacht. Kannst ja mal im Heizungssteuerung/Raumklima Unterforum etwas dazu schreiben und hier verlinken, wenn du es noch nicht gemacht hast.
Normalerweise ist das bei einer FBHeizung nicht nötig da die sowieso sehr träge ist, meine läuft schon 20 Jahre nur über die Kesselsteuerung, aber die Eurola von Viessman gibt es ja nicht mehr.
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

Blauhorn

Ja, das mit der Fußbodenheizung habe ich über das PWM und PWMR-Modul gelöst. Ich baue mir dazu gerade eine Einzelraumsteuerung für alle Räume auf.

Ist sehr gut hier https://forum.fhem.de/index.php/topic,41399.0.html beschrieben.

Die Sonoffs habe ich dafür als Aktoren benutzt, um die thermoelektrischen Stellantriebe an und aus zu schalten.
Die Temperatur-Istwerte ziehe ich mir pro Raum von Funkthermometern, hatte bislang einfache von Pearl, aber die sind nicht sehr verlässlich im Betrieb. Nun bin ich dazu übergegangen, mir mehrere Mysensor-Funkthermometer zu bauen, das lässt sich gut an.

Die Wunschtemperaturen in den einzelnen Räumen schalte ich im Moment noch per Hand über die Fhemweg-Oberfläche, da fehlt mir jetzt noch ein geeignetes Bedienelement. Im Zweifel kommt ein einfaches Tablet an die Wand, von wo aus das dann eingestellt wird.

Gruß vom Blauhorn
1xBananaPi; 1x FB7490; 1xCUL433; 1x CC2530+CC2591; OpenMiLight-Gateway; 1xHMUART; HM-LC-Sw4-DR; Sonoff* mit TASMOTA, LEDController; MySensors; zigbee2mqtt;

noxx

Hallo

habe die Tasmota auf meinem 4CH installiert, wie habt ihr den in FHEM nun eingebunden?

Gruß

noxx

hier noch bilder. bekomme es nicht hin alle 4 einzeln zu schalten

RAW:
defmod huehnerstall MQTT_DEVICE
attr huehnerstall IODev myBroker
attr huehnerstall devStateIcon ON:rc_GREEN:OFF OFF:rc_RED:ON
attr huehnerstall icon hue_filled_br30
attr huehnerstall publishSet ON OFF cmnd/TestSwitch/POWER
attr huehnerstall room MQTT
attr huehnerstall stateFormat transmission-state
attr huehnerstall subscribeReading_Licht stat/huehnerstall/POWER
attr huehnerstall subscribeReading_Sensor tele/huehnerstall/SENSOR
attr huehnerstall subscribeReading_Status stat/huehnerstall/STATUS
attr huehnerstall webCmd ON:OFF

setstate huehnerstall incoming publish received
setstate huehnerstall 2017-12-25 16:49:38 Sensor {"Time":"2017-12-25T16:49:39", "DS18x20":{"DS1":{"Type":"DS18B20", "Address":"28FF9ABC7115022A", "Temperature":8.7}}, "TempUnit":"C"}
setstate huehnerstall 2017-12-25 16:45:53 state OFF
setstate huehnerstall 2017-12-25 16:49:38 transmission-state incoming publish received

michad

#6
Schau mal ins wiki

Du musst es als 4 getrennte Geräte eintragen :

define Sonoff_ch1 MQTT_DEVICE
attr Sonoff_ch1 IODev myBroker
attr Sonoff_ch1 alias Sonoff CH1
attr Sonoff_ch1 devStateIcon on:rc_GREEN:off off:rc_RED:on
attr Sonoff_ch1 eventMap ON:on OFF:off ON:Ein OFF:Aus
attr Sonoff_ch1 group Toröffner
attr Sonoff_ch1 icon light_ceiling
attr Sonoff_ch1 publishSet ON OFF cmnd/sonoffch4/POWER1
attr Sonoff_ch1 stateFormat Power
attr Sonoff_ch1 subscribeReading_Power tele/sonoffch4/POWER1
attr Sonoff_ch1 subscribeReading_state cmnd/sonoffch4/POWER1
attr Sonoff_ch1 webCmd Ein:Aus

define Sonoff_ch2 MQTT_DEVICE
attr Sonoff_ch2 IODev myBroker
attr Sonoff_ch2 alias Sonoff CH2
attr Sonoff_ch2 devStateIcon on:rc_GREEN:off off:rc_RED:on
attr Sonoff_ch2 eventMap ON:on OFF:off ON:Ein OFF:Aus
attr Sonoff_ch2 group Toröffner
attr Sonoff_ch2 icon light_ceiling
attr Sonoff_ch2 publishSet ON OFF cmnd/sonoffch4/POWER2
attr Sonoff_ch2 stateFormat Power
attr Sonoff_ch2 subscribeReading_Power tele/sonoffch4/POWER2
attr Sonoff_ch2 subscribeReading_state cmnd/sonoffch4/POWER2
attr Sonoff_ch2 webCmd Ein:Aus

usw.

wobei ich "attr Sonoff_ch1 subscribeReading_Power tele/sonoffch4/POWER1"
durch "attr Sonoff_ch1 subscribeReading_Power stat/sonoffch4/POWER1"

geändert hatte

Gruß Micha

noxx

Danke, ich gucke mir das an. Sind die Einstellungen MQTT in Sonoff richtig?

Gesendet von meinem WAS-LX1A mit Tapatalk


noxx

Habs nunmal probiert, aber der Sonoff reagiert nicht, Fhem zeigt den falschen Status

define Sonoff_ch1 MQTT_DEVICE
attr Sonoff_ch1 IODev myBroker
attr Sonoff_ch1 alias Sonoff CH1
attr Sonoff_ch1 devStateIcon on:rc_GREEN:off off:rc_RED:on
attr Sonoff_ch1 eventMap ON:on OFF:off ON:Ein OFF:Aus
attr Sonoff_ch1 group Toröffner
attr Sonoff_ch1 icon light_ceiling
attr Sonoff_ch1 publishSet ON OFF cmnd/sonoffch4/POWER1
attr Sonoff_ch1 stateFormat Power
attr Sonoff_ch1 subscribeReading_Power stat/sonoffch4/POWER1
attr Sonoff_ch1 subscribeReading_state cmnd/sonoffch4/POWER1
attr Sonoff_ch1 webCmd Ein:Aus

define Sonoff_ch2 MQTT_DEVICE
attr Sonoff_ch2 IODev myBroker
attr Sonoff_ch2 alias Sonoff CH2
attr Sonoff_ch2 devStateIcon on:rc_GREEN:off off:rc_RED:on
attr Sonoff_ch2 eventMap ON:on OFF:off ON:Ein OFF:Aus
attr Sonoff_ch2 group Toröffner
attr Sonoff_ch2 icon light_ceiling
attr Sonoff_ch2 publishSet ON OFF cmnd/sonoffch4/POWER2
attr Sonoff_ch2 stateFormat Power
attr Sonoff_ch2 subscribeReading_Power stat/sonoffch4/POWER2
attr Sonoff_ch2 subscribeReading_state cmnd/sonoffch4/POWER2
attr Sonoff_ch2 webCmd Ein:Aus


Console Sonoff:
08:09:53 MQTT: tele/huehnerstall/STATE = {"Time":"2017-12-26T08:09:53", "Uptime":16, "Vcc":3.255, "POWER1":"ON", "POWER2":"OFF", "POWER3":"OFF", "POWER4":"OFF", "Wifi":{"AP":2, "SSID":"myhome2_AP", "RSSI":28, "APMac":"F8:1A:67:3D:F2:81"}}
08:09:53 MQTT: tele/huehnerstall/SENSOR = {"Time":"2017-12-26T08:09:53", "DS18x20":{"DS1":{"Type":"DS18B20", "Address":"28FF9ABC7115022A", "Temperature":6.4}}, "TempUnit":"C"}
08:14:53 MQTT: tele/huehnerstall/STATE = {"Time":"2017-12-26T08:14:53", "Uptime":16, "Vcc":3.255, "POWER1":"ON", "POWER2":"OFF", "POWER3":"OFF", "POWER4":"OFF", "Wifi":{"AP":2, "SSID":"myhome2_AP", "RSSI":26, "APMac":"F8:1A:67:3D:F2:81"}}
08:14:53 MQTT: tele/huehnerstall/SENSOR = {"Time":"2017-12-26T08:14:53", "DS18x20":{"DS1":{"Type":"DS18B20", "Address":"28FF9ABC7115022A", "Temperature":6.4}}, "TempUnit":"C"}
08:19:53 MQTT: tele/huehnerstall/STATE = {"Time":"2017-12-26T08:19:53", "Uptime":16, "Vcc":3.256, "POWER1":"ON", "POWER2":"OFF", "POWER3":"OFF", "POWER4":"OFF", "Wifi":{"AP":2, "SSID":"myhome2_AP", "RSSI":42, "APMac":"F8:1A:67:3D:F2:81"}}
08:19:53 MQTT: tele/huehnerstall/SENSOR = {"Time":"2017-12-26T08:19:53", "DS18x20":{"DS1":{"Type":"DS18B20", "Address":"28FF9ABC7115022A", "Temperature":6.4}}, "TempUnit":"C"}
08:24:53 MQTT: tele/huehnerstall/STATE = {"Time":"2017-12-26T08:24:53", "Uptime":16, "Vcc":3.256, "POWER1":"ON", "POWER2":"OFF", "POWER3":"OFF", "POWER4":"OFF", "Wifi":{"AP":2, "SSID":"myhome2_AP", "RSSI":26, "APMac":"F8:1A:67:3D:F2:81"}}
08:24:53 MQTT: tele/huehnerstall/SENSOR = {"Time":"2017-12-26T08:24:53", "DS18x20":{"DS1":{"Type":"DS18B20", "Address":"28FF9ABC7115022A", "Temperature":6.4}}, "TempUnit":"C"}
08:29:53 MQTT: tele/huehnerstall/STATE = {"Time":"2017-12-26T08:29:53", "Uptime":16, "Vcc":3.255, "POWER1":"ON", "POWER2":"OFF", "POWER3":"OFF", "POWER4":"OFF", "Wifi":{"AP":2, "SSID":"myhome2_AP", "RSSI":34, "APMac":"F8:1A:67:3D:F2:81"}}
08:29:53 MQTT: tele/huehnerstall/SENSOR = {"Time":"2017-12-26T08:29:53", "DS18x20":{"DS1":{"Type":"DS18B20", "Address":"28FF9ABC7115022A", "Temperature":6.5}}, "TempUnit":"C"}
08:34:53 MQTT: tele/huehnerstall/STATE = {"Time":"2017-12-26T08:34:53", "Uptime":16, "Vcc":3.256, "POWER1":"ON", "POWER2":"OFF", "POWER3":"OFF", "POWER4":"OFF", "Wifi":{"AP":2, "SSID":"myhome2_AP", "RSSI":40, "APMac":"F8:1A:67:3D:F2:81"}}
08:34:53 MQTT: tele/huehnerstall/SENSOR = {"Time":"2017-12-26T08:34:53", "DS18x20":{"DS1":{"Type":"DS18B20", "Address":"28FF9ABC7115022A", "Temperature":6.5}}, "TempUnit":"C"}
08:39:53 MQTT: tele/huehnerstall/STATE = {"Time":"2017-12-26T08:39:53", "Uptime":16, "Vcc":3.255, "POWER1":"ON", "POWER2":"OFF", "POWER3":"OFF", "POWER4":"OFF", "Wifi":{"AP":2, "SSID":"myhome2_AP", "RSSI":34, "APMac":"F8:1A:67:3D:F2:81"}}
08:39:53 MQTT: tele/huehnerstall/SENSOR = {"Time":"2017-12-26T08:39:53", "DS18x20":{"DS1":{"Type":"DS18B20", "Address":"28FF9ABC7115022A", "Temperature":6.6}}, "TempUnit":"C"}
08:44:53 MQTT: tele/huehnerstall/STATE = {"Time":"2017-12-26T08:44:53", "Uptime":16, "Vcc":3.256, "POWER1":"ON", "POWER2":"OFF", "POWER3":"OFF", "POWER4":"OFF", "Wifi":{"AP":2, "SSID":"myhome2_AP", "RSSI":34, "APMac":"F8:1A:67:3D:F2:81"}}
08:44:53 MQTT: tele/huehnerstall/SENSOR = {"Time":"2017-12-26T08:44:53", "DS18x20":{"DS1":{"Type":"DS18B20", "Address":"28FF9ABC7115022A", "Temperature":6.6}}, "TempUnit":"C"}
08:49:53 MQTT: tele/huehnerstall/STATE = {"Time":"2017-12-26T08:49:53", "Uptime":16, "Vcc":3.256, "POWER1":"ON", "POWER2":"OFF", "POWER3":"OFF", "POWER4":"OFF", "Wifi":{"AP":2, "SSID":"myhome2_AP", "RSSI":40, "APMac":"F8:1A:67:3D:F2:81"}}
08:49:53 MQTT: tele/huehnerstall/SENSOR = {"Time":"2017-12-26T08:49:53", "DS18x20":{"DS1":{"Type":"DS18B20", "Address":"28FF9ABC7115022A", "Temperature":6.6}}, "TempUnit":"C"}
08:54:55 MQTT: tele/huehnerstall/STATE = {"Time":"2017-12-26T08:54:55", "Uptime":16, "Vcc":3.256, "POWER1":"ON", "POWER2":"OFF", "POWER3":"OFF", "POWER4":"OFF", "Wifi":{"AP":2, "SSID":"myhome2_AP", "RSSI":34, "APMac":"F8:1A:67:3D:F2:81"}}
08:54:55 MQTT: tele/huehnerstall/SENSOR = {"Time":"2017-12-26T08:54:55", "DS18x20":{"DS1":{"Type":"DS18B20", "Address":"28FF9ABC7115022A", "Temperature":6.6}}, "TempUnit":"C"}



michad

Moin,

nach dem Schalten übers Sonoff Web sollte dein Consolen Inhalt in etwa so aussehen :

09:39:57 MQT: tele/Sonoff_4CH1/STATUS = {"Zeit":"2017-12-26T09:39:57", "Laufzeit":16, "VCC":3.186, "POWER1":"OFF", "POWER2":"ON", "POWER3":"OFF", "POWER4":"OFF", "WLAN":{"AP":1, "SSID":"Fritz", "RSSI":100, "APMac":"78:8A:20:2A:80:EA"}}
09:40:35 MQT: stat/Sonoff_4CH1/ERGEBNIS = {"POWER4":"ON"}
09:40:35 MQT: stat/Sonoff_4CH1/POWER4 = ON

09:40:36 MQT: tele/Sonoff_4CH1/STATUS = {"Zeit":"2017-12-26T09:40:36", "Laufzeit":16, "VCC":3.186, "POWER1":"OFF", "POWER2":"ON", "POWER3":"OFF", "POWER4":"ON", "WLAN":{"AP":1, "SSID":"Fritz", "RSSI":100, "APMac":"78:8A:20:2A:80:EA"}}

poste davon mal den Inhalt

Gruß Micha



noxx

hallo

sieht so aus:


09:59:01 MQTT: stat/huehnerstall/RESULT = {"POWER1":"ON"}
09:59:01 MQTT: stat/huehnerstall/POWER1 = ON
09:59:02 MQTT: stat/huehnerstall/RESULT = {"POWER2":"ON"}
09:59:02 MQTT: stat/huehnerstall/POWER2 = ON
10:00:11 MQTT: stat/huehnerstall/RESULT = {"POWER2":"OFF"}
10:00:11 MQTT: stat/huehnerstall/POWER2 = OFF
10:00:13 MQTT: stat/huehnerstall/RESULT = {"POWER1":"OFF"}
10:00:13 MQTT: stat/huehnerstall/POWER1 = OFF

noxx

#11
fehler gefunden

define Sonoff_ch1 MQTT_DEVICE
attr Sonoff_ch1 IODev myBroker
attr Sonoff_ch1 alias Sonoff CH1
attr Sonoff_ch1 devStateIcon on:rc_GREEN:off off:rc_RED:on
attr Sonoff_ch1 eventMap ON:on OFF:off ON:Ein OFF:Aus
attr Sonoff_ch1 group Toröffner
attr Sonoff_ch1 icon light_ceiling
attr Sonoff_ch1 publishSet ON OFF cmnd/huehnerstall/POWER1
attr Sonoff_ch1 stateFormat Power
attr Sonoff_ch1 subscribeReading_Power stat/huehnerstall/POWER1
attr Sonoff_ch1 subscribeReading_state cmnd/huehnerstall/POWER1
attr Sonoff_ch1 webCmd Ein:Aus



Ein Frage noch, wie bekomme ich die Temperatur in FHEM rein?


EDIT:

define Sonoff_Temp MQTT_DEVICE
attr Sonoff_Temp IODev myBroker
attr Sonoff_Temp group Hühnerstall
attr Sonoff_Temp icon temperature
attr Sonoff_Temp room MQTT
attr Sonoff_Temp stateFormat {sprintf("Temperatur: %.1f Grad", ReadingsVal($name,"Temperature",0))}
attr Sonoff_Temp subscribeReading_Sensor tele/huehnerstall/SENSOR



michad

irgendwo 

define ej3 expandJSON Sonoff.*:.*:.{.*}

einfügen, das zerlegt das tele/huehnerstall/Sensor in einzelne readings

Gruß Micha

Ronny78m

Kann mir jemand helfen?
Ich möchte einen 1 Channel Inching /Self-Locking WiFi Wireless Switch 5V 12V flashen,
irgendwie soll da RXTX wo anders sein, BITTE HILFE...