Eurotonics Spirit +Conbee2 +FHEM+Alexa

Begonnen von mister, 30 November 2020, 18:26:42

Vorheriges Thema - Nächstes Thema

Bubbles71

Hallo,

ich habe es auch nicht geschafft, das Thermostat selbst in Alexa einzubinden. Aber über einen Umweg (dummy + notify) ist es mir gelungen:

Dummy als generic Device Type mit desired-temp eingerichtet, damit Alexa das Device als Thermostat erkennt

define d_Heizung_DG_AZ dummy
attr d_Heizung_DG_AZ alexaName Heizung Arbeitszimmer
attr d_Heizung_DG_AZ genericDeviceType thermostat
attr d_Heizung_DG_AZ readingList desired-temp
attr d_Heizung_DG_AZ room AlexaRoom
attr d_Heizung_DG_AZ setList desired-temp
attr d_Heizung_DG_AZ stateFormat desired-temp
attr d_Heizung_DG_AZ widgetOverride desired-temp:16,16.5,17,17.5,18,18.5,19,19.5,20,20.5,21,21.5,22


Notify, um das eigentliche Thermostat zu steuern:

define nt_Thermostat_DG_AZ_Zig notify d_Heizung_DG_AZ:desired-temp.* {
my $soll = ReadingsVal("d_Heizung_DG_AZ","desired-temp",14);
fhem("set Thermostat_DG_AZ_Zig heatsetpoint $soll");
}


Ein wenig von hinten durch die Brust... aber es funktioniert und war in der Umsetzung schneller, als das hombridge Mapping in Kombination mit Alexa zu verstehen.

LG,

Roland



mister

Ich habe die Lösung selbst gefunden:
Es muss noch ein homebridgeMapping gemacht werden:
TargetTemperature=heatsetpoint::heatsetpoint,minValue=16,maxValue=30,minStep=0.5

Ich hab nur noch keine Lösung wie ich die Heuzung "Aus" Schalte

Beta-User

Zitat von: mister am 01 Dezember 2020, 23:28:43
Ich habe die Lösung selbst gefunden:
Es muss noch ein homebridgeMapping gemacht werden:
TargetTemperature=heatsetpoint::heatsetpoint,minValue=16,maxValue=30,minStep=0.5

Ich hab nur noch keine Lösung wie ich die Heuzung "Aus" Schalte
:) qed...

Ich versuche mal, meine rudimentären Kenntnisse hier breitzutreten:

- Das mit der Sprachsteuerung klappt dann automatisch, wenn "gute" Readingnamen verwendet werden. Ist das - wie hier - nicht der Fall, braucht man eben die Angabe des "genericType" und der Readings. Betr. Heizungen ist da u.a. auch hier (und drumrum) was zu finden: https://forum.fhem.de/index.php/topic,97989.msg1099201.html#msg1099201

- Da ist auch zu lesen, dass es für den "Betriebsmodus" vermutlich ein eigenes Mapping braucht ("mode"). Wie man das konkret umsetzt: K.A.. Würde tippen, dass man evtl. mit einem eventMap weiterkommen könnte. Da solltest du dich aber ggf. nochmal intensiver einlesen, es gibt da mehrere Formen, und eventuell brauchst du was komplexes.

Zitat von: mister am 01 Dezember 2020, 18:09:09
Ich sollte mal genauer gucken
es gibt auch hierführ ein attrtaplate
...jein...
Wenn diese attrTemplate für dich direkt nützlich gewesen wären, hätte ich dir das schon verraten - schau mal, wer der Maintainer von denen ist...
Zum Verständnis: Der in der fraglichen Datei enthaltene Satz von attrTemplate ist eigentlich eher für den "intenen Gebrauch" gedacht und daher für die User gar nicht direkt sichtbar.
Man kann die verwenden, wenn man weiß, was man tut und die Sprachsteuerungsfähigkeit nachrüsten will, aber Zielgruppe sind eigentlich die Maintainer der "normalen" attrTemplate-Files (=für huedevice.template Shojo, siehe auch https://forum.fhem.de/index.php/topic,101829.html).

Du könntest daher allen künftigen Nutzern des Spirit@HUEDevice helfen, indem du Shojo (in dem betreffenden Thread) einen Vorschlag zur Ergänzung machst, der ein Sprachsteuerungs-attrTemplate aufruft ;) . Hier müßte dann wohl das komplette mapping mit übergeben werden, wie in speechcontrol_gdt_and_mapping beschrieben:
Zitat
set xy attrTemplate speechcontrol_gdt_and_mapping GENERICDEVTYPE=contact HOMEBRIDGEMAPPING= "ContactSensorState=state,values=closed:CONTACT_DETECTED;;open:CONTACT_NOT_DETECTED"
Macht m.E. bereits jetzt Sinn, aber super wäre es natürlich, wenn du das mit dem Mode auch noch hinbiegen könntest (oder den (getesteten!) Vorschlag in dem Thread einkippst und dann mit Verweis auf hier um Hilfe für das "mode"-Thema fragst ;) . So hätten alle was davon...)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

mister

Ok, danke für deine Ausführungen. Ich habe noch etwas anderes festgestellt. Wenn ich alexa bitte auf werte unterhalb 16 grad zu stellen, wird immer 16 grad eingestellt und sie antwortet mit "ist auf 16 grad gestellt"
Kann sich da jemand einen reim draus machen.

Hängt das vllt mit der configList zusammen:

/mode (.*)/:{"mode":"$1"}
/heatsetpoint (.*)/:perl:{'{"heatsetpoint":' . $VALUE1 * 100 . '}'}
/displayflipped (.*)/:{"displayflipped": $1 }
lock:{"locked": true }
unlock:{"locked": false }

Beta-User

 ;D ...eher mit der von dir für die Sprachsteuerung angegebenen Untergrenze:
minValue=16,
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

mister

Ja richtig hab ich auch schon gesehen ich trottel ;D