NEWS
Test Adapter lovelace v0.2.x
-
@magiczoom Versuch es mal so:
type: 'custom:button-card' entity: sensor.kontakt_haustuere name: Terasse Rechts label: | [[[ if (entity.state == true) return "geöffnet"; else return "geschlossen"; ]]] layout: icon_name_state2nd show_state: false show_name: true show_label: true icon: 'mdi:door-closed' styles: label: - font-size: small - font-style: italic - color: '#a1a1a1'
Den Graph musst dir selber anschauen
-
Hallo,
bin gerade beim Umsteigen von Iqontrol auf Lovelace und schaff es irgendwie nicht, einen virtuellen Schalter zu triggern:
{ "_id": "javascript.0.VirtuelleSchalter.Rollos_zentral_Ab", "type": "state", "common": { "name": "Rollos_zentral_Ab", "role": "", "type": "number", "desc": "Manuell erzeugt", "unit": "", "min": 0, "max": 1, "def": 0, "read": true, "write": true, "custom": { "iqontrol.0": { "enabled": true, "readonly": false, "invert": false, "confirm": false, "pincode": "", "unit": "", "unit_zero": "", "unit_one": "", "min": 0, "max": 1, "step": "", "type": "number", "role": "switch", "targetValueId": "" }, "lovelace.0": { "enabled": true, "entity": "switch", "name": "VirtuelleSchalterRolloszentralAb" } } }, "native": {}, "from": "system.adapter.cloud.0", "user": "system.user.admin", "ts": 1579173581906, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
Einstellung in Lovelace:
type: horizontal-stack title: Rollos Wohnzimmer cards: - type: entity-button tap_action: toggle action: switch.VirtuelleSchalterRolloszentralAuf show_icon: true show_name: true entity: switch.VirtuelleSchalterRolloszentralAuf name: Zentral auf icon: 'mdi:toggle-switch-off' - type: entity-button tap_action: toggle action: switch.VirtuelleSchalterRolloszentralAb show_icon: true show_name: true entity: switch.VirtuelleSchalterRolloszentralAb name: Zentral zu icon: 'mdi:toggle-switch-off'
-
@Johannes-Bauerstatter
Ich glaube du machst es zu kompliziert. Mach das mit der "tap_action" usw mal alles weg.. bei mir sieht das z.B. so aus:
Da ist außer dem grafischen schnickschnak nur das entity eingetragen. Wenn man drauf tabt wird getoggelt und der status wird mit blau/gelb des icons angezeigt.
(ok, bei mir haben die states auch boolean = true/false als typ, warum nimmst du hier 0/1? Sollte aber so auch gehen). -
@fd_samdi Hammer! Funktioniert hervorragend, vielen Dank!
-
Hi zusammen,
ich hab da ein Problem mit dem Adapter in Kombination mit meinen Thermostaten: Sowohl mit der internen, als auch mit dem simple_thermostat Card bekomme ich leider keine Steuerung meine Heizung im Adapter hin. Ich habe den Datenpunkt, der die Temperatur steuert als climate zu Lovelace als Entity hinzugefügt. Setze ich nuntype: thermostat entity: climate.Thermostat_im_Wohnzimmer_heating_setpnt_current name: Thermostat im Wohnzimmer
als Card in Lovelace, bekomme ich eine leere Karte angezeigt.
Benutze ichtype: 'custom:simple-thermostat' entity: climate.Thermostat_im_Wohnzimmer_heating_setpnt_current name: Heizung im Wohnzimmer step_size: 0.5 sensors: - entity: climate.Thermostat_im_Wohnzimmer_local_temp name: Aktuelle Temperatur
wird mir zumindest die Karte mit der aktuellen Temperatur angezeigt, aber schalten lässt sich dann auch nix.
Versuche ich bei N/A die Buttons zu drücken, bekomme ich folgende Meldung im Log:
lovelace.0 2020-02-02 17:43:28.450 warn (6896) Cannot find attribute temperature in climate.Thermostat_im_Wohnzimmer_heating_setpnt_current lovelace.0 2020-02-02 17:41:29.477 warn (6896) Unknown entity: undefined
Wird irgendjemand daraus schlau und kann mir vielleicht erklären, was genau ich falsch eingerichtet hab?
Danke schon Mal!
-
@Tictactoo Hmm... damit kenne ich mich gerade gar nicht aus, trotzdem ein paar Möglichkeiten:
-
Start lovelace neu, ab und an kommt bei mir auch was durcheinander
-
Wähl mal den entity-Namen kürzer (unwahrscheinlich, aber wer weiß ^^)
-
Du hast sowohl limate.Thermostat_im_Wohnzimmer_heating_setpnt_current als auch climate.Thermostat_im_Wohnzimmer_local_temp als entity?
-
wenn mich nicht alles täuscht, erkennt doch der type-detector den Thermostat? D.h. entities wieder rauswerfen, dem kompletten Thermostat-Datenpunkt einen Raum und eine Funktion hinzufügen, dann sollte doch lovelace das automatisch als Thermostat erkennen.
Aber wie gesagt, mit Thermostate fehlt mir die Erfahrung.
-
-
@fd_samdi Danke für deine Antwort! Hier mal kurz meine Antworten dazu:
- Hab ich mehrfach gemacht. Half leider nix.
- Hatte testweise auch schon nur "Test1" und "Test2" als Namen, brachte auch nix.
- Ja, local_temp ist die gemessene Temperatur am Thermostat, heating_setpnt_current ist die gewünschte Temperatur.
- Das hat es auch erkannt, in der Tat, wenn ich es aber als Entity auswähle, zeigt es mir nur den Wert von local_temp an und man kann leider nix schalten...
-
@Tictactoo
Dann zeig doch mal die attribute bzw. guck sie dir an. Ein Thermostat kann nach aktuellem code die folgenden Attribute erhalten: current_temperature, temperature. -
@Garfonso So sehen die States aus.
-
@Tictactoo ich habs grad nicht vor Augen aber value.temperature ist ja die Rolle. Die kann man ja ändern.
heating_setpnt_current ist die Soll-Temperatur.
local_temp ist die Ist-Temperatur.Die Frage ist, wie ist es mit den Attributen. Wenn current_temperature die IST-Temperatur ist, dann würde ich die Rolle von local_temp von value.temperature auf value.current_temperature ändern
und die Rollen von heating_setpnt_occupied, heating_setpnt_unoccupied und local_temp_calibration auf irgendwas anderes, ich denk das checkt der Type_Detector auch nicht wenn zu oft value.temperature vorkommt.
UND natürlich die Zuweisung der Datenpunkte zu lovelace auch wieder rauswerfen.
@Garfonso Soweit steig ich leider noch nicht durch was dein Code und was der Type-Detector erkennt. Wenn ich da rein schaue: https://github.com/algar42/ioBroker.type-detector/blob/master/index.js müsste es ja zwei Rollen level.temperature und value.temperature geben. Wo kommt das Attribut current_temperature her, oder hat das nichts mit der Rolle sondern mit dem Attribut-Namen selber zu tun?
Dann würde ich die Rolle von heating_setpnt_current von value.temperature auf level.temperature ändern und oben mein ganzes Geschwätz verwerfen.
-
@Tictactoo
das sind die ioBroker states. Ich meinte die (Homeassistant) Attribute, die Lovelace erkennt -> instanzen -> lovelace -> "Entitäten" tab (letzter Tab), auf "Attribute anzeigen" klicken und dann in der Tabelle den automatisch generierten Eintrag (manuell geht das leider (noch) nicht mit mehreren attributen) für das Thermostat mal anzeigen. -
@Garfonso Oh sry, dass war mir net ganz klar. Es scheint, als würde er einen anderen State als temperature erkennen. Vermutlich zeigt er deshalb nix?
-
@Garfonso Danke. Hab´s anscheinend zu kompliziert gemacht. Funktioniert wie du beschrieben hast.
-
@magiczoom
Hey,konntest du das mit dem Hintergrund lösen?
Ich habe jetzt die 1.0.9 drauf und leider den gleichen FehlerViele Grüße!
-
@Tictactoo said in Test Adapter lovelace v0.2.x:
@Garfonso Oh sry, dass war mir net ganz klar. Es scheint, als würde er einen anderen State als temperature erkennen. Vermutlich zeigt er deshalb nix?
Naja, er hat ja auch ziemlich viele zur Auswahl, da wundert mich das kaum... wie soll er da den richtigen erkennen? Versuch mal die Rollen zu ändern so dass es nur zwei mit einer Role mit "temperatur" im Namen gibt und derjenige zum einstellen "write": true hat und der für die anzeige der aktuellen Temperatur "write": false hat. Dann "müsste" er die Attribute richtig füllen (siehe auch hier: https://github.com/ioBroker/ioBroker.type-detector/blob/master/index.js#L300 -> da muss man allerdings regExp lesen können ).
@fd_samdi said in Test Adapter lovelace v0.2.x:
@Garfonso Soweit steig ich leider noch nicht durch was dein Code und was der Type-Detector erkennt. Wenn ich da rein schaue: https://github.com/algar42/ioBroker.type-detector/blob/master/index.js müsste es ja zwei Rollen level.temperature und value.temperature geben. Wo kommt das Attribut current_temperature her, oder hat das nichts mit der Rolle sondern mit dem Attribut-Namen selber zu tun?
Dann würde ich die Rolle von heating_setpnt_current von value.temperature auf level.temperature ändern und oben mein ganzes Geschwätz verwerfen.
Hehe. Das ist nicht "mein Code", zum größten Teil. Ich hab nur das Licht erkennen gebaut (für Licht mit mehr als Dimmer). Aber ich hab es mittlerweile halbwegs durchschaut. Also was passiert ist, dass der type-detector nach den Regeln, die du verlinkt hast Gruppen von States baut. Also z.B. für das Thermostat ein State sucht mit dem man eine Temperatur setzen kann (role enthält "temperature" und der State ist Schreibbar), den nennt er dann "SET". Dann gibt es noch Optional States die die Temperatur anzeigen ("temperature" in Rolle und nur lesbar) (heißt "ACTUAL"), Luftfeuchtigkeit (HUMIDITY) usw... -> damit kann dann der Lovelace Adapter überlegen, wie er die states in die Attribute einsortiert. Für das thermostat passiert das hier: https://github.com/ioBroker/ioBroker.lovelace/blob/master/lib/server.js#L1892 -> da werden dann die Zuordnung SET -> temperature und ACTUAL -> current_temperature gemacht.
Der Name der Attribute kommt dabei aus Lovelace/Homeassistant selber, das kann man in der Homeassistant Dokumentation (für das Thermostat wäre da offensichtlich auch noch Luft nach oben, Light wird mittlerweile recht viel unterstützt) nachlesen -> wir wollen ja nicht Lovelace hier komplett selber nachbauen, sondern den Code da von Homeassistant wieder verwenden. Daher lohnt es sich, wenn man sicher ist, dass die attribute stimmen, bei Problemen / Merkwürdigkeiten dann auch nach Tips für Lovelace/Homeassistant zu googeln. (Wobei die Implementation der Attribute natürlich auch noch nicht perfekt ist).
Also es ist ein zweistufiger Process, zuerst erkennet der type-detector Geräte und sortiert die States standarisiert ein (oder versucht sein bestes das zu erreichen) und danach verknüpft der Lovelace Adapter diese erkannten States mit Attributen. Dabei ist, soweit ich das hier beobachte, das größte Problem, das der Type-Detector die Geräte "richtig" erkennt.
Es gibt übrigens den devices-Adapter, wenn man den installiert, bekommt man rechts im Admin einen neuen Geräte-Eintrag und darunter kann man die Geräte, so wie der Typedetector sie erkennt, zusammen klicken (also die Ids für SET, ACTUAL, HUMIDITY usw. im Fall des thermostats aus der Liste der IDs frei auswählen und da im Grunde auch aus verschiedenen Geräten was basteln und damit wird dann in alias.0 ein Gerät erstellt -> damit könnte man die Problem des Detectors auch umgehen @Tictactoo - wäre in deinem Fall ggf. auch eine Lösung, wenn du nicht die Rollen umstellen willst -> dann Raum & Funktion beim Gerät in alias.0 einstellen und beim anderen weg).
-
@Garfonso Danke fürs reinfuchsen. Nach der Änderung der Rollen hats geklappt. Leider gehen so Sachen wie das mit dem Boost auch net. Wenn ich es richtig lese, dann wohl, weil da eine Nummer erwartet wird, und bei mir ist ein ein boolean? Evtl. muss ich mich da mal genauer mit auseinandersetzen und das Skript für mich etwas anpassen, da auch meine Aqara-BWM nicht vom Motion Pattern erkannt werden.
-
@allgrind said in Test Adapter lovelace v0.2.x:
@magiczoom
Hey,konntest du das mit dem Hintergrund lösen?
Ich habe jetzt die 1.0.9 drauf und leider den gleichen FehlerViele Grüße!
Ich habe auch Probleme mit dem Hintergrund gehabt, wurde einfach nicht angezeigt.
Das war bei mir die Lösung :#Background image lovelace-background: 'center / cover no-repeat url("/cards/wall.jpg") fixed'
Hab nur diese Zeichen ' vor center und hinter fixed gesetzt.
Probiere es mal.Viele Grüße
-
@poyo sagte in Test Adapter lovelace v0.2.x:
@allgrind said in Test Adapter lovelace v0.2.x:
@magiczoom
Hey,konntest du das mit dem Hintergrund lösen?
Ich habe jetzt die 1.0.9 drauf und leider den gleichen FehlerViele Grüße!
Ich habe auch Probleme mit dem Hintergrund gehabt, wurde einfach nicht angezeigt.
Das war bei mir die Lösung :#Background image lovelace-background: 'center / cover no-repeat url("/cards/wall.jpg") fixed'
Hab nur diese Zeichen ' vor center und hinter fixed gesetzt.
Probiere es mal.Viele Grüße
Genau das ist es, vielen Dank
-
Hi, erstmal vielen Dank an alle die Hier Ihre Erfahrung austauschen, hat mich wirklich motiviert meine vis neu aufzubauen
Bei mir funktioniert alles soweit wie gewünscht, nur leider das wetter von accuweather nicht.
Was Ich bereits gemacht habe:
- wie hier weiter oben beschrieben -> Summary (unter den Objekten des AccuAdapters)
Wetter - enum.functions.weather
Any - enum.rooms.any
sind die Zuordnungen bei Raum und Funktion
zusätzlich habe ich die index.js aktualisiert von:
https://raw.githubusercontent.com/algar42/ioBroker.type-detector/master/index.js
unter:
/opt/iobroker/node_modules/iobroker.type-detector/index.jsnur taucht bei mir unter Entitäten leider nichts auf
hat jemand noch einen Vorschlag ? - wie hier weiter oben beschrieben -> Summary (unter den Objekten des AccuAdapters)
-
@Tictactoo said in Test Adapter lovelace v0.2.x:
@Garfonso Danke fürs reinfuchsen. Nach der Änderung der Rollen hats geklappt. Leider gehen so Sachen wie das mit dem Boost auch net. Wenn ich es richtig lese, dann wohl, weil da eine Nummer erwartet wird, und bei mir ist ein ein boolean? Evtl. muss ich mich da mal genauer mit auseinandersetzen und das Skript für mich etwas anpassen, da auch meine Aqara-BWM nicht vom Motion Pattern erkannt werden.
Auch für number <-> boolean konvertierung kannst du aliase nehmen. Das oder ein eigenes skript würde ich schon eher empfehlen als am type-detector bei dir privat rumzubasteln, weil der dann ja bei jeder änderung überschrieben wird.