Dann musst Du auf das kommende Release von SmartHomeNG warten
Ankündigung
Einklappen
Keine Ankündigung bisher.
Welche Heizkörperthermostate mit SmartHomeNG
Einklappen
X
-
Wenn Du im Backend die Plugin Seite aufrufst und auf die Zeile mit dem homematic Plugin klickst, werden die Details dazu eingeblendet. Dort siehst Du welche Item Attribute das Plugin implementiert (3 Stück).
Wenn Du dann das Icon am rechten Ende der Plugin Zeile anklickst, gelangst Du in das Web Interface des Plugins. Dort hast Du 3 Reiter. Im 3. Reiter siehst Du die HomeMaticIP Devices, die an der CCU2 angelernt sind. Wenn Du dort auf die Zeile eines Devices klickst, siehst Du die Details, welche Features implementiert sind. Der jeweilige Name muss dann als HM Function für das Item konfiguriert werden (zusammen mit der HM Adress. Der HM Channel muss normalerweise nicht konfiguriert werden.Viele Grüße
Martin
There is no cloud. It's only someone else's computer.
Kommentar
-
Letztendlich habe ich mich dann doch für Homematic entschieden.
Heizkörperventile Typ HM-CC-RT-DN, Fensterkontakte HM-Sec-SCo, Wandthermostat HM-TC-IT-WM-W-EU und einer CCU2-Zentrale.
Die Installation und Projektierung waren relativ einfach und schnell erledigt und an Funktionen ist alles das dabei, was ich benötige. Automatik-Programme, Sperrfunktionen und Temperaturbegrenzungen, Reaktion auf offene Fenster und besonders wichtig die einfache Bedienung durch die Gäste.
Bei der Anbindung an SmarthomeNG habe ich aber noch ein Problem:
Ich kann über SH zwar die Temperatur über SET_TEMPERATUR vorgeben, das Umschalten der Betriebsarten wie Automatk/Hand/Boost bekomme ich nicht hin.
Ob ich nun ein bool-Wert (False / True) sende oder ein num-Wert (0 / 1) an z.B. AUTO_MODE, ich bekomme immer eine Fehlermeldung:
ERROR CP Server Thread-26 HMGeneric.setValue: AUTO_MODE on OEQ2089584:4 Exception: <Fault -1: 'Failure'>
Im Plugin finde ich folgende Bemerkung zum Thermostat:
"AUTO_MODE (action), MANU_MODE (float 4.5-30.5), BOOST_MODE (action), COMFORT_MODE (action), LOWERING_MODE (action)"
Aber auch wenn ich ein num-Wert an MANU_MODE sende bekomme ich den Fehler zurück.
Das Backend zeigt z.B. für dieses Thermostat folgendes an:
Wie bekomme ich es hin, die Betriebsart von SH zu ändern?ACTIONNODE {'BOOST_MODE': [4], 'COMFORT_MODE': [4], 'LOWERING_MODE': [4], 'AUTO_MODE': [4], 'MANU_MODE': [4]} ATTRIBUTENODE {'CONTROL_MODE': [4], 'RSSI_PEER': [0], 'BATTERY_STATE': [4], 'VALVE_STATE': [4]} SENSORNODE {'ACTUAL_TEMPERATURE': [4]} WRITENODE {'SET_TEMPERATURE': [4]}
Und noch eine grundsätzliche Frage: Wie oft findet der Abgleich zwischen SH und der CCU2 statt?
Ist es alle 20 Sekunden (sleep(20)) ?
You do not have permission to view this gallery.
This gallery has 1 photos.Gruß
ElektroRudi
............kann,.muß aber net....
Kommentar
-
Wie sind denn die Items definiert?
Der Abgleich findet sofort statt.
Ausgehend: Wenn ein Item verändert wird, wird über das Plugin der Wert sofort an die CCU2 ausgegeben.
Eingehend: Wenn wich ein Wert ändert, sendet die CCU2 einen RFC Call der vom Plugin sofort verarbeitet wird. Da die CCU2 von sich aus sendet, muss kein Polling stattfinden.
Ps: Ein sleep(20) wäre für SmartHomeNG tödlich, weil der betreffende Thread dann für 20 Sekunden angehalten und nichts mehr tun würde.Viele Grüße
Martin
There is no cloud. It's only someone else's computer.
Kommentar
-
Hier ein Auszug aus der Item-Definition:
Code:homematic: fewo: wohnzimmer: heizung: wandthermostat: temperatur: type: num visu_acl: ro hm_address: OEQ0762777 # hm_channel: 1 hm_function: ACTUAL_TEMPERATURE luftfeuchte: type: num visu_acl: ro hm_address: OEQ0762777 # hm_channel: 1 hm_function: ACTUAL_HUMIDITY solltemperatur: type: num visu_acl: rw hm_address: OEQ0762777 # hm_channel: 1 hm_function: SET_TEMPERATURE auto: type: bool visu_acl: rw hm_address: OEQ0762777 # hm_channel: 1 hm_function: AUTO_MODE hand: type: bool visu_acl: rw hm_address: OEQ0762777 # hm_channel: 1 hm_function: MANU_MODE komfort: type: bool visu_acl: rw hm_address: OEQ0762777 # hm_channel: 1 hm_function: COMFORT_MODE abgesenkt: type: bool visu_acl: rw hm_address: OEQ0762777 # hm_channel: 1 hm_function: LOWERING_MODE boost: type: bool visu_acl: rw hm_address: OEQ0762777 # hm_channel: 1 hm_function: BOOST_MODE batterie: type: num visu_acl: ro hm_address: OEQ0762777 # hm_channel: 1 hm_function: BATTERY_STATE rssi: type: num visu_acl: ro hm_address: OEQ0762777 # hm_channel: 1 hm_function: RSSI_PEER control: # 0-Auto, 1-Hand, 3-Boost type: num visu_acl: rw hm_address: OEQ0762777 # hm_channel: 1 hm_function: CONTROL_MODE fenster_nord: status: # 0-geschlossen, 1-offen type: bool visu_acl: ro hm_address: OEQ1559490 hm_function: STATE batterie: type: num visu_acl: ro hm_address: OEQ1559490 hm_function: LOWBAT fehler: type: num visu_acl: ro hm_address: OEQ1559490 hm_function: ERROR rssi: type: num visu_acl: ro hm_address: OEQ1559490 hm_function: RSSI_PEER
Code:if self.connected: # TO DO: sleep besser lösen! sleep(20) # self.logger.warning("Plugin '{}': self.hm.devices".format(self.hm.devices)) if self.hm.devices.get(self.hm_id,{}) == {}: self.logger.error("{}: Connection to ccu failed".format(self.get_fullname())) # self._init_complete = False # stop the thread that got created by initializing pyhomematic # self.hm.stop() # return
Zuletzt geändert von ElektroRudi; 18.10.2018, 19:00.Gruß
ElektroRudi
............kann,.muß aber net....
Kommentar
-
der Teil-Screenshot aus dem Webinterface den Du gepostet hat, zeigt, dass das HM Device die Werte auf Channel 4 sendet/erwartet. Dann solltest Du in den Items auf jeden Fall erstmal statt dem aus-kommentierten (da Channel 1 der Standard ist)
Code:# hm_channel: 1
den Channel auf 4 setzen:
Code:hm_channel: 4
Viele Grüße
Martin
There is no cloud. It's only someone else's computer.
Kommentar
-
Hallo Msinn,
ich greife das Thema mal auf, bei mir funktioniert das mit dem schreibenden Zugriff auf die Solltemperatur für ein Wandthermostat (HM-TC-IT-WM-W-EU) leider auch nicht. Lesen klappt wunderbar, ebenfalls der direkt schreibende Zugriff auf den Aktor (Switch Powermeter - HM-ES-PMSw1-Pl-DN-R1).
Ich habe das Raumthermostat an einer Funksteckdose hängen um eine 1kW Elektroheizung zu betreiben - wie man sieht im Badezimmer :-)
Items und der Output vom Plugin siehe unten.
Danke für die Unterstützung.
Gruß
Tommi
Code:%YAML 1.1 --- bad: thermostat: isttemperatur: type: num hm_address: OEQ057XXXX hm_channel: 2 hm_function: ACTUAL_TEMPERATURE sqlite: 'yes' solltemperatur: type: num hm_address: OEQ057XXXX hm_channel: 2 hm_function: SET_TEMPERATURE sqlite: 'yes' luftfeuchte: type: num hm_address: OEQ057XXXX hm_channel: 2 hm_function: ACTUAL_HUMIDITY sqlite: 'yes' auto: type: bool hm_address: OEQ057XXXX hm_channel: 2 hm_function: AUTO_MODE hand: type: bool hm_address: OEQ057XXXX hm_channel: 2 hm_function: MANU_MODE komfort: type: bool hm_address: OEQ057XXXX hm_channel: 2 hm_function: COMFORT_MODE abgesenkt: type: bool visu_acl: rw hm_address: OEQ057XXXX # hm_channel: 1 hm_function: LOWERING_MODE boost: type: bool hm_address: OEQ057XXXX hm_channel: 2 hm_function: BOOST_MODE batterie: type: num visu_acl: ro hm_address: OEQ057XXXX hm_channel: 2 hm_function: BATTERY_STATE rssi: type: num visu_acl: ro hm_address: OEQ057XXXX hm_channel: 0 hm_function: RSSI_PEER control: # 0-Auto, 1-Hand, 3-Boost type: num visu_acl: rw hm_address: OEQ057XXXX hm_channel: 2 hm_function: CONTROL_MODE heizung: type: bool hm_address: OEQ057XXXX hm_channel: 1 hm_function: STATE leistung: type: num hm_address: OEQ057XXXX hm_channel: 2 hm_function: POWER enforce_updates: true sqlite: 'yes' on_change: - ..status = 1 if value > 200 else 0 status: type: bool sqlite: 'yes'
Code:[TABLE] [TR] [TD]OEQ057XXXX[/TD] [TD]OEQ057XXXX[/TD] [TD]HM-TC-IT-WM-W-EU[/TD] [TD]ThermostatWall[/TD] [TD]1.3[/TD] [TD]22[/TD] [TD]None[/TD] [TD] [/TD] [/TR] [TR] [TD="colspan: 10"] [TABLE] [TR] [/TR] [TR] [TD]ACTIONNODE[/TD] [TD]{'BOOST_MODE': [2], 'MANU_MODE': [2], 'LOWERING_MODE': [2], 'AUTO_MODE': [2], 'COMFORT_MODE': [2]}[/TD] [/TR] [TR] [TD]ATTRIBUTENODE[/TD] [TD]{'RSSI_PEER': [0], 'BATTERY_STATE': [2], 'CONTROL_MODE': [2]}[/TD] [/TR] [TR] [TD]SENSORNODE[/TD] [TD]{'HUMIDITY': [1], 'TEMPERATURE': [1], 'ACTUAL_HUMIDITY': [2], 'ACTUAL_TEMPERATURE': [2]}[/TD] [/TR] [TR] [TD]WRITENODE[/TD] [TD]{'SET_TEMPERATURE': [2]}[/TD] [/TR] [/TABLE] [/TD] [/TR] [/TABLE]
Kommentar
-
Ich kann das nicht testen, da ich den Raumthermostaten nicht habe. Die Item Definition sieht erstmal ok aus.
Evtl. ist der Thermostat in pyhomematic nicht vollständig implementiert. Ich muss bei Gelegenheit mal in den Sourcecode des pyhomematic Projektes schauen. Leider sind dort nicht immer alle Funktionen eines Hoematic Devices implementiert, sondern zum Teil nur die Gängigen.Viele Grüße
Martin
There is no cloud. It's only someone else's computer.
Kommentar
Kommentar