NEWS
Der "ultimative" ioBroker Lovelace Leitfaden/Dokumentation
-
@KNXbroker
Nochmal Danke für die Arbeit.
Ich hab mir jetzt mal angeguckt, was von deinen Beispielen geht.Alles, was Entities ändern soll (
.reload
oder.set_options
oder.update
) geht nicht - reload/upload könnte man ggf. implementieren, set_options eher nicht.
select_next
/select_previous
undincrement
/decrement
sind aktuell nicht implementiert, bestünde da Bedarf? grübelDer Rest sollte gehen.
Was ich auch implementiert habe, beim fummeln mit der mini-media-player Card, ist ein
iobroker_say
. Damit kann man in der mini-media-player card text-to-speach aktivieren, als Plattformiobroker
eintragen und alsentity_id
das entity, was gesetzt werden soll, beispiel:type: 'custom:mini-media-player' entity: media_player.Alexa_Arbeitszimmer tts: platform: iobroker entity_id: input_text.multimedia_Alexa_Arbeitszimmer_Commands_speak
Die entity_id sollte dabei bekannt sein. Domäne ist egal, die wird dann halt auf den Text gesetzt, den man da eintippt. Sinnvoll wäre da das
.speak
Kommando eines Lautsprechers zu nehmen, z.B. -
Als Ergänzung noch: Lovelace geht jetzt auch über die ioBroker Cloud:
Dafür braucht man Fernzugriff über iobroker.pro (nagelt mich bitte nicht fest, ob es auch ohne Abo geht) und den Cloud Adapter.
In der Konfiguration vom Cloud-Adapter muss man noch die gewünschte lovelace-Instanz auswählen. Danach taucht Lovelace in der Oberfläche auf iobroker.pro bei "Anwendungen" auf und ist, nach Einloggen unter der URLhttps://iobroker.pro:4443/lovelace/
erreichbar.Bei der Lovelace Instanz sollte den SSL ausgeschaltet sein. Authorisierung ist ebenfalls nicht notwendig, da die über das ioBroker-Konto gemacht wird.
-
@garfonso sagte in Der "ultimative" ioBroker Lovelace Leitfaden/Dokumentation:
Was ich auch implementiert habe, beim fummeln mit der mini-media-player Card, ist ein
iobroker_say
. Damit kann man in der mini-media-player card text-to-speach aktivieren, als Plattformiobroker
eintragen und alsentity_id
das entity, was gesetzt werden soll, beispiel:type: 'custom:mini-media-player' entity: media_player.Alexa_Arbeitszimmer tts: platform: iobroker entity_id: input_text.multimedia_Alexa_Arbeitszimmer_Commands_speak
Die entity_id sollte dabei bekannt sein. Domäne ist egal, die wird dann halt auf den Text gesetzt, den man da eintippt. Sinnvoll wäre da das
.speak
Kommando eines Lautsprechers zu nehmen, z.B.Das hat 1A funktioniert!
Danke dafür...Ist diese Card auch dafür gemacht, Playlists oder Radiosender auszuwählen oder lediglich zur Anzeige was gerade gespielt wird?
-
@nukleuz sagte in Der "ultimative" ioBroker Lovelace Leitfaden/Dokumentation:
Ist diese Card auch dafür gemacht, Playlists oder Radiosender auszuwählen oder lediglich zur Anzeige was gerade gespielt wird?
Unter HomeAssistant kann man das machen, weiß aber nicht ob es im IOBroker geht. Hier ein Beispiel aus HomeAssistant zur Ansteuerung einer BOSE Soundtouch 20:
type: entities entities: - type: 'custom:mini-media-player' entity: media_player.soundtouch_20 info: scroll hide: icon: true shortcuts: columns: 1 align_text: left buttons: - icon: 'mdi:numeric-1-box' type: playlist name: 'Bayern 1' id: 1 name: BOSE Soundtouch 20 artwork: none sound_mode: full source: full volume_stateless: false group: true
-
Anzeigen tut er schon mal was - nur leider nicht abspielen.
Werde mich später mal damit beschäftigen, was die Card so hergibt.Danke für den Anstoß.
Mal schauen, was da möglich ist ...
Wenn jemand da was mit Alexa und Playlisten und oder Radio -> TuneIn hinbekommen hat wäre ich sehr dankbar.
-
Hallo Garfonso,
ich habe nichts zu dem Thema gefunden.
Gibt es die Möglichkeit Lovelace mit Wischgesten zu bedienen?Ich habe mittlerweile 10 Tabs in Lovelace und auf dem iPhone ist es mühsam vom ersten zum letzten Tab über die Tableiste zu kommen.
Es wäre klasse, wenn man auch über eine Wischgeste nach links oder rechts irgendwo auf dem Bildschirm von Tab zu Tab navigieren könnte.
-
@smarthome20
Hi, hast du das ausprobiert: https://community.home-assistant.io/t/lovelace-swipe-navigation/113806 (oder sowas in der Richtung). Eingebaut gibt es nichts, soweit ich weiß. -
@tirador Hallo, ich versuche mich gerade in Lovelace einzuarbeiten und nutzen deine Anleitung, allerdings habe ich Probleme bei der Erstellung der Entitäten: ich habe den Device-Adapter installiert und dann im Objekt-Tree die Datenpunkte entpsrechend kategorisiert mit Raum und Funktion, allerdings scheint die Erzeugung der entsprechenden Entitäten nicht zu funktionieren, bin mir auch nicht sicher ob es am IOBroker selbst oder am Love-Lace-Adapter liegt.
-
Habe die Geräte manuell angelegt
-
im Objekte-Tree tauchen unter "alias" dann die Datenunkte auf
-
dort habe ich am jeweiligen Knotenpunkt die Zuweisung zu Raum und Funktion gemacht.
-
unter "Aufzählung" taucht dann auch entsprechend etwas auf "Heizung Bad", "Heizung Kind 1"
-
aber im Lovelace-Adapter unter Entitäten gibt es keinen entsprechenden Eintrag
-
Wenn ich in Lovelace "Entitäten neu laden" klicke, dann scheint sich auch nichts zu tun, es scheint keine Aktualisierung zu geben.
Siehe images.
Wäre für jeden Hinweis dankbar.
-
-
Du musst die Heizungen so anlegen, dass alle DPs in einem Ordner sind.
-
@chrisham
Da stimmt was mit den Aliasen nicht.... hast du die mit dem Geräte-Tab so angelegt? Dann haben wir da irgendwo einen Bug in Thermostat... wenn du hinten in der letzten Spalte guckst, siehst du, dass die Geräte keine Zustände haben. Wie sieht es aus, wenn du so ein Gerät nochmal bearbeitest? Taucht der State dann richtig auf unter SET bzw. ACTUAL?Du brauchst da auch nicht unbedingt zwei Geräte anlegen. Du kannst ein Thermostat anlegen, bei SET die Zieltemperatur und bei ACTUAL den Sensor eintragen -> dann legt lovelave dafür auch die passenden entities mit an. Es "sollte" aber auch so gehen, das Thermostat braucht eigentlich nur den SET state und sonst nichts. Hm.
-
@david-g Hmm, evtl. habe ich da etwas falsch gemacht oder falsch verstanden: Ich bin so vorgegangen (bzw. so hatte ich es aus der Anleitung verstanden):
- Geräte-Adapter installiert
- dann im Geräte-Adapter jeweils einen Ordner für ein Gerät angelegt (z.B. "Heizung-Kind-1")
- --> dann legt IOBroker automatisch in Objekte-Tab die Aliasse an, und diese Unterordner - für jeden Datenpunkt (die wohl nicht gewünscht sind werden dabei automatisch angelegt.
- Und dann habe ich jeweils am High-Level-Ordner (also wieder: Heizung-Kind-1) auf dieser Ebene Raum und Funktion zugeordent. So hatte ich die Anleitung verstanden, dass Entitäten bestehend aus mehreren Datenpunkten (ich hätte bei Heizung gerne zusammen: Sollwert, Istwert, Stellwert) nur dann richtig erkannt bzw. erzeugt werden, wenn die kategorisierung für Raum und Funktion jeweils auf Ordner-Ebene für die Datenpunkt-Gruppe erfolgt
Aber scheinbar klappt es mit diesem Vorgehen nicht.
-
@garfonso Nach nochmals bearbeiten ändert sich da nichts. Aber evtl. ist mein Vorgehen hier nicht korrekt. Da du ja schreibst: "ich muss da nicht unbedingt 2 Geräte anlegen..."
--> Das war für mich die Methode, wie ich die Datenpunkte im Objektbaum in dem Alias-Zweig zusammengruppiert bekomme und dann Raum und Funktion für diese Datenpunktgruppe zuweisen kann. (so mein Verständnis gemäß der Anleitung, dass "komplexe" Entitäten mit mehr als einem Datenunkt nur richtig erkannt werden, wenn Raum und Funktion gruppenweise zugeordnet wird. Evtl. benötige ich den Geräte-Adapter aber gar nicht, sondern kann die zusätzliche Gruppierung im Objekte-Tab machen...? Aber wie ginge das? Habe das jeweils nicht gefunden im IOBroker. Und ich möchte nicht den Aufwand spendieren, die Gruppierung in der KNX-ETS zu machen, dann Export und Import usw.... -
@chrisham So, jetzt bin ich nochmals anders rum vorgegangen:
- beginnend mit dem Objektebaum
- dort manuell jeweils ein Verzeichnis pro gewünschtem Gerät erstellt
- dann darunter Alias-Objekte
- diesen dann per Alias-Referenz die orig. Datenpunkte zugeweisen, siehe Bild
- dann auf Ordnerebene Raum und Funktion zugewiesen
Ergebnis:
- im Gerätetab tauch ein Ordner mit diesem Gerät auf, aber keine echte Geräteinstanz, scheint also nicht richtig erkannt zu werden
- und folglich: auch im lovelace adapter gibt es keine entsprechende Entität.
Sorry, vielleicht stelle ich mich zu blöd an....
-
Hm... Ich hab immer noch nicht ganz verstanden, was du machst / vorhast.
Ich würde an deiner Stelle (je nach Umfang deines Heims, aber vermutlich wird das was größer) manuell eine Ordner-Struktur in Alias.0 anlegen. Z.B. einen Ordner für Heizungen generell (und einen für Licht, ....) oder, alternativ, Räume als Oberkategorie. Das ist vermutlich Geschmackssache.
Dann würde ich in dem Ordner Heizungen (oder Kind-1) mit dem Geräte Adapter ein Gerät "Thermostat" anlegen, mit dem Geräteadapter. Dabei dann für den Zustand
SET
den StateHeiz-Kind-1 Temp-SOLL
(äh... wobei, kurze Verständnisfrage: Was ist der Unterschied zwischen "soll" und "stellwert"?) und für den ZustandACTUAL
den StateHeiz-Kind-1 Temp-IST
. Das wäre dann die Heinzung für Kind-1.Zum Verständnis:
der Type-Detector / Geräte Adapter versucht einzelne States aus den Objekten zu "Geräten" zusammen zu fassen. Also hier ein Thermostat bei dem man eine Zieltemperatur einstellen kann und eine aktuelle Temperaturmessung hat (und es gäbe noch ein paar mehr Möglichkeiten: https://github.com/ioBroker/ioBroker.type-detector/blob/master/DEVICES.md#thermostat-thermostat). Das führt dann dazu, dass der Lovelace Adapter weiß, dass die beiden States zusammen gehören und in der Theromstat-Karte die aktuelle Temperatur anzeigen kann und die Zieltemperatur steuern kann.Noch viel wichtiger ist das bei Lampen, die nicht nur an/aus können, sondern noch dimmen, Farbtemperatur, Farbe, ...
Für KNX wirst du an der Stelle für fast alles den Geräte-Adapter brauchen, weil der KNX-Adapter nicht erkennen kann, welche States was machen und wie zusammen gehören (bzw. das nicht tut und nicht gruppiert). (und du kannst mit dem Geräte-Adapter ja auch einen State für Lesen und einen für Schreiben definieren -> das hat man mit KNX ja auch an jeder Ecke.)
(btw: bist du zufrieden mit dem KNX Adapter? Ich hab persönlich nach mehreren Problemen auf openknx gewechselt. Das war etwas Arbeit... daher vielleicht jetzt mal kurz die Alternative angucken. Für mich als selber-Entwickler ist der wichtigste Vorteil, dass openknx open source ist, was der KNX Adapter nicht ist und ich daher nicht selber Dinge reparieren könnte, wenn was nicht passt und irgendwie hat häufiger mal was nicht gepasst... egal...).
Für Geräte, die eh nur ein State sind, brauchst du das im Grunde nicht so machen und kannst überlegen, ob du nicht manuell Lovelace aktivierst. Da musst du dann selber entity-Typ und ggf. Geräteklasse überlegen. Wobei ich, da sich bei KNX durch Umbenennung der Gruppen in KNX auch die IDs ändern, dazu übergegangen bin alles was ich bei KNX hab mit Alias zu versehen, zur Not einfach 1:1. Und mittlerweile hab ich nur noch wenig, was nicht mit Alias ist und hat mir z.B. bei kaputten Zigbee Geräten, auch schon den Austausch sehr vereinfacht.
//Edit:
ich wollte noch kurz ein Beispiel bei mir zeigen (ich hab nur die Hausheizung als Alias / in Lovelace, weil die Einstellung in den Räumen eh nicht viel genutzt wird, weil Fußbodenheizung):
Daher habe ich da tatsächlich nichts im ACTUAL state, dafür hab ich im POWER state stehen, ob gerade der Tag oder der Nachtmodus aktiv ist. Und unten für Maintenance noch States, wo die Heizung Fehler melden würde.Daher hier noch ein vielleicht klareres Beispiel, wo man auch das mit lesen/schreiben sieht:
Eine Lampe mit an/aus (ON), mit Dimmer und Farbtemperatur (TEMPERATURE). Jeweils mit getrennten States für lesen / schreiben. Und wie du oben sehen kannst, ist das bei mir "alias.0.lamps.Esszimmer" -> ich hab einen Ordner "lamps" für alle Lampen und da ist Esszimmer dann ein Gerät von vielen. -
@garfonso
Hallo,
danke für die Ausführungen.
Ja, so wie du es beschreibst ist genau meine Intention: die Geräte erstellen bzw. erstellen lassen die eben etwas komplexer sind, also die sich aus mehr als nur einem Datenpunkt manifestierung. Eben gerade eine Heizung/Thermostat (bestehend aus Sollwert, Istwert, Stellwert). Zu deiner Verständnisfrage: Soll ist die gewünschte Temperatur, die man am Thermostat einstellt, Stellwert ist der Ausgang des Reglers, der dann auf den Aktor geht (bei meinen Heizkreisaktoren ist das ein %-Wert 0....100%).Und genau wie du es beschreibst, habe ich es nun versucht (erstmal beispielhaft an dem einen Beispiel, und ja habe mich bereits damit angefreundet, dass ich für alles nochmals Aliasse anlege. Aber bevor ich das für die gesamt Objektliste mache, möchte ich es an dem einen Beispiel erstmal zum Laufen bringen, also:
1 Datenpunkte gruppieren in einzelne Ordner
2. - dann Räume/Rollen diesen Ordnern zuweisen
3. -> damit dann über Geräte-Adapter die Geräte-Erkennung
4 --> und damit dann in lovelace the visu machenAber Schritt 3. klappt schon nicht, das Gerät wird nicht richtig erkannt
Aber du schreibst: "Dann würde ich in dem Ordner Heizungen (oder Kind-1) mit dem Geräte Adapter ein Gerät "Thermostat" anlegen, mit dem Geräteadapter" --> D.h. ich mache dann zusätzlich auch noch manuell im Geräte-Adapter die Zuweisung des Geräts auf diese gruppierten Datenunkte?Wenn ich das mal geschafft hätte, wäre ich einen Schritt weiter.
zu KNX-Adapter: eigentlich läuft das bisher ohne Probleme, das einzige evtl. verbesserungswürdige wäre, wenn ich aus der ETS heraus einen Update der Datenpunkte machen möchte, dass dieser Diff etwas besser geht, wenn man Datenpunkte umbenennt und wieder importiert, dann erscheinen die doppelt. Aber da habe ich aktuell keinen Bedarf da was zu ändern (never change a running system...)
-
@chrisham
So, ich habe jetzt noch weiter versucht, die Sache zu durchdringen, bin vermutlich einen kleinen Schritt weiter gekommen, aber es gibt immer noch einige Problemchen.Was habe ich gemacht:
- Nochmals die Aliasse für die Datenpunkte (Bsp: Bade-Heizung mit Soll- und Ist-wert als Datenpunkten) angelegt und neu konfiguriert (Raum, Rolle, Typ).
- danach manuell das Gerät im Geräte-Adapter angelegt
- hier dann die Zustände zugewiesen, und hier kam dann das erste Problem: Wenn ich die Alias-Objekte eintrage und Speichern möchte, dann hängt sich der Geräte-Adapter unwiederbringlich auf. Habe das x-mal versucht. Erst als ich wieder auf die originalen Datenobjekte gegangen bin, ließ es sich ordentlich speichern. Ist ja aber wohl nicht der Sinn von Aliassen
- dann zumindest schien das Gerät korrekt (vom Geräteadapter) erkannt worden sein
- dann in den lovelace-Adapter:
- hier nun 2. Problem: der Button "Entität neu laden" zeigt definitiv keine Wirkung, die Einträge ändern sich nicht, das gewünschte Gerät war nicht da, und man nimmt auch keine Reaktion der Weboberfläche wahr.
Erst als ich lovelace neu gestartet habe, tat sich was an den Einträgen: das gewünscht Gerät war nun sichtbar - Aber: nun 3. Problem: das Gerät erscheint in grau (also irgendwie als in-aktiv). und in der lovelace-Oberfläche lässt sich diese Entität auch nicht auswählen.
Ich habs versucht in den Screenshots nochmals zu visualisieren, Ich hoffe es ist nachvollziehbar.
Sorry, dass ich da solche Probleme habe, aber wenn ichs vielleicht einmal geschafft habe und die Pitfalls kenne, dann müsste es hoffentlich klappen... Oder ist evtl. doch irgendwas mit einem der Adapter kaputt....?
-
@chrisham said in Der "ultimative" ioBroker Lovelace Leitfaden/Dokumentation:
Nochmals die Aliasse für die Datenpunkte (Bsp: Bade-Heizung mit Soll- und Ist-wert als Datenpunkten) angelegt und neu konfiguriert (Raum, Rolle, Typ).
danach manuell das Gerät im Geräte-Adapter angelegt
hier dann die Zustände zugewiesen, und hier kam dann das erste Problem: Wenn ich die Alias-Objekte eintrage und Speichern möchte, dann hängt sich der Geräte-Adapter unwiederbringlich auf. Habe das x-mal versucht. Erst als ich wieder auf die originalen Datenobjekte gegangen bin, ließ es sich ordentlich speichern. Ist ja aber wohl nicht der Sinn von AliassenNein, mach das so nicht.
Entweder lässt du den Geräte-Adapter die aliase anlegen (wählst also als Zustände direkt die aus dem KNX Adapter) oder du legst Aliase manuell an. Wenn du die manuell anlegst, solltest du dir halt die Anforderungen an die Zustände angucken und versuchen zu erfüllen und im Geräte-Adapter nur gucken, ob es geklappt hat. Da sollte das Gerät dann als richtiger Typ automatisch auftauchen, wenn alles richtig ist und wenn du auf editieren klickst auch die Zustände richtig verknüpft sein. Nicht das Gerät da nochmal anlegen.
Ich habe das tatsächlich auch alles manuell gemacht (bzw. mit einem eigenen skript), aber damals gab es den Geräte-Adapter noch nicht.
@chrisham said in Der "ultimative" ioBroker Lovelace Leitfaden/Dokumentation:
hier nun 2. Problem: der Button "Entität neu laden" zeigt definitiv keine Wirkung, die Einträge ändern sich nicht, das gewünschte Gerät war nicht da, und man nimmt auch keine Reaktion der Weboberfläche wahr.
Der lädt die auch nur vom Adapter neu -> wenn du die Konfiguration aufmachst, passiert das eh schon. Der hilft nur, wenn du während die Konfiguration offen ist, was an den Objekten änderst.
Mach vielleicht mal das debug log für Lovelace an, dann siehst du, wann er die Objektänderungen verarbeitet.@chrisham said in Der "ultimative" ioBroker Lovelace Leitfaden/Dokumentation:
Aber: nun 3. Problem: das Gerät erscheint in grau (also irgendwie als in-aktiv). und in der lovelace-Oberfläche lässt sich diese Entität auch nicht auswählen.
Nö, grau ist richtig. Grau sind die automatischen Entities. Bei den manuellen kommst du mit einem Klick auf den blauen Knopf direkt zu den Einstellungen. Die gibt es bei den automatischen (so) nicht, daher ist der Knopf grau.
Das sollte so in die UI eingebunden werden können. kopfkratz -
@garfonso Strike, ich denke, das war mein kleiner "Durchbruch", siehe Screenshots.
Sry, wenn ich mich da etwas angestellt habe, hat etwas gedauert, das zusammenspiel zu verstehen.
Aber big thanks für den support, das war wirklich prima!!Jetzt kann ich mich dann an die komplexeren Geräte wagen und vor allem die lovelace-Konfig schön machen..
-
@chrisham Jetzt habe ich doch gleich noch ne Anschlussfrage: ich wollte die Card im Raw-Editor anpassen (Farben), alledings bleibt das ohne wirking:
- theme: Backend-selected
title: Heizung
path: heizung
icon: mdi:thermometer
badges: []
cards:- type: thermostat
entity: climate.Heizung_Bad
name: Bad
style: |
ha-card {
--ha-card-background: "rgba(163, 0, 0, 0.0)";
}
round-slider {
--round-slider-bar-color: #f59042 !important;
}**
- type: thermostat
- theme: Backend-selected
-
@chrisham Und meine nächste Frage (ich weiß ist ziemlich basic für euch...): Ich würde gerne für einen dimmer einen Slider als Widget (Card) einbauen. In der Standard-Auswahl gibt es das nicht, daher über custom-Card,
Also auf Raw-Editor-Ebene, z.B. gemäß:Allerdings kriegt er den nicht angezeigt: "doesn't exist...". Müssen die erst bekannt gemacht / importiert werden?
Siehe screenshots:
Gewünscht:
tatsächlich: