UI Fragen z.b. einbinden von Heizung Role 201002 oder entfernen aller UI Elemente

Hy,

ich hab da ein kleines Verständnisproblem. In der ansonsten sehr guten Anleitung von @Sim fehlt mir ein Beispiel für komplexere rolen wie ein Heizungsregler

Beim einbinden von Lichtern ist es ja relative einfach. eine variable “state” die der Role zugefügt wird fertig

Bei der Heizung ist das anders. Die Heizung hat verschieden Variablen. Wie weise ich der Role alle notwendigen variablen zu und vor allem woher weiß die Role dann was aktuelle Temperature ist oder was es für eine Soll Temperatur ist oder…:

$message['payload'] = $hg->addVariableToRoom(26,2,"SETPOINT_TEMPERATURE",3);
$message['payload'] = $hg->addRoleToVariable(26,2,"SETPOINT_TEMPERATURE",201002);
$message['payload'] = $hg->addUiElement(26,2,"SETPOINT_TEMPERATURE","Heizung");

Was muss man anders machen? Das ist ja nur ein Teil der role

Die zweite Frage ist was allgemeines.

Gibt es eine Funktion, die alle Ui Elemente entfernt und die role to variable Verbindungen auflöst.
Hab beim erstellen nun ein Paar kleinere Fehler gehabt und nun teilweise 3 mal die gleiche Lampe im Zimmer verlinkt. Würde gerne wieder zurück auf Anfang und mit dem wissen was ich jetzt habe nochmal anfangen.

Gruß
Der Doc

Hallo @dr_snuggles

das Thema würde mich auch interessieren. Bist du derweilen schon zu einer Lösung gekommen?

VG
Sven

Leider nicht komme da Immernoch nicht wirklich zu Rande und irgendwie hab ich noch andere Probleme so das ich aktuell nicht mal den Räumen ihre Lampen zuordnen kann.

Muss aber sagen hab in letzter Zeit wenig gemacht es läuft relativ gut mit der alten Beta der UI.

Aber falls du weiter kommst sag Bescheid vielleicht komme ich auch mal wieder dazu

Ich habe das Kapitel mal im Starterguide ergänzt:

Hier noch ein vergleichbarer Beitrag:

1 Like

Hey,

so hab mich mal wieder damit beschäftigt und siehe da wenn man weiß wie es geht ging die Heizung dann auch ganz einfach.

Nun hab ich nur eine Frage.

Durch das Ich einiges probiert habe gibt es einige Einträge die doppelt und dreifach in der UI sind.

Nun meine Frage gibt es sowas wie auf Werkseinstellungen zurück setzen oder kann ich eine Datei ändern oder löschen oder sonst.

@Micha @Sim vielleicht hast du / ihr kurz Zeit mir das zu beantworten. Wäre Klasse!

Danke schon mal

Felix

Hey @dr_snuggles,

wo genau sind denn Eintraege doppelt und dreifach, im Frontend oder in der Admin-UI?

– Micha

Hey @Micha

im frontend. Habe zum Beispiel 2 mal Heizung drin welche beide auf den gleichen Heizregler verweisen.

Um ehrlich zu sein im Admin Ui komme ich noch nicht ganz klar damit was mir da angezeigt wird, weil ich da halt auch probiert habe und nun Dinge doppelt angezeigt werden. Die wiederum im frontend gar nicht zu sehen sind.

Deswegen würde ich halt wieder gerne auf Zustand null gehen und dann mit dem Wissen von jetzt neu beginnen

Gruß
Felix

Hey Felix,

im Starterguide: Grundlagen Homegear / Starter-Guide steht zum Thema löschen von UI-Elementen folgendes:

Löschen von UI Elementen geht so:
homegear -e rc ‘print_v($hg->getAllUiElements(“en-US”));’ oder
homegear -e rc ‘print_v($hg->getAllUiElements(“de-DE”));’
je nach dem wie die Sprache eingestellt ist.

Danach das Element mit dem gewünschten Index löschen:
homegear -e rc ‘print_v($hg->removeUiElement(1));’ (Der Index eines UI-Elements findet sich im Feld [databaseId] der Ausgabe von getAllUiElements)

Wichtig ist danach noch die Rolle der Variable zu entfernen, weil diese in der Geräteübersicht noch mitgezählt wird:
homegear -e rc ‘$hg->removeRoleFromVariable(1, 1, “STATE”, 100001);’

Was du also machen kannst, ist einfach alle Elemente mit removeUiElement() entfernen und dann in der Admin-UI in <ip>:2001/admin/inventory/roles oder mit removeRoleFromVariable() die Variablen aus den verwendeten Rollen löschen. Eine Rücksetzfunktion gibt es derzeit nicht.
Viele Grüße, Simon

2 Likes

Hey @Sim @Micha

Das habe ich auch gefunden aber bei etwa 45 Einträgen ist das schon etwas mühselig.

:crazy_face:

Was haltet ihr davon das Modul mittels

 sudo apt remove homegear-ui 

Zu löschen und dann wieder neu zu installieren.

Sollten wir dann nicht auch wieder auf leerem Zustand sein?
Ich weiß ist etwas rabiater aber sollte doch gehen?

Gruß
Felix

Hey @dr_snuggles,

wenn ich das richtig sehe wird das Loeschen & neu Installieren des Paketes nicht wirklich etwas bringen, da die ganzen UI-Elemte genauso wie die Geraete an sich in der Homegear-Datenbank gespeichert sind.

Wenn du nicht alles manuell Loeschen kannst/willst, bleibt eigentlich nur noch die Moeglichkeit der kompletten Neuinstallation … oder Einspielen eines Backups von einem Zeitpunk vor der “Rumspielerei” :wink:

– Micha

Wenn du mit Excel oder einem Editor umgehen kannst, kannst Du dir die entsprechenden Statements ruckzuck skripten.

Hey @Sim, @Micha

So prinzipiell hab ich es am laufen.

Allerdings ist jetzt noch ein Schönheitsfehler drin. Da meine Thermostate nicht ganz der Role entsprechen musste ich den Umweg über virtulle Stationen gehen.

Irgendwie können diese aber nur ganze zahlen als Vorgabe annehmen. Sprich ich stelle es auf 21.5 Grad und es springt immer auf 22 Grad. was für eine Temperatur manchmal etwas zu grob ist finde ich.

Gibt es hier noch einen Trick wie man das feiner Einstellbar machen kann?

Gruß und Danke für eure Ideen!

Felix

Moin Felix,
erste Idee: du setzt bestimmt 21.5 °C und nicht 21,5 °C, so wie du es auch schreibst, richtig?
Verwendest du VirtualThermostat oder VirtualHeating als virtuelles Gerät? VirtualHeating wäre richtig. Da es gerade zwei gibt: die dürften gleich sein.
Du stellt deine Frage im Zusammenhang mit der UI; wenn du aus Node-Blue heraus eine Temperatur mit .5 setzt, nimmt sie der Thermostat dann an?

Hallo

Kurz zu deinen Fragen

  1. die Temperatur wird in der UI durch den Schieberegler gesetzt. Ich stelle auf einen ungeraden Wert, der Schieberegler springt dann auf den nächsten ganzzahligen wert.

  2. Ich habe den virtuellen Thermostat genutzt kam mir auf den ersten Blick sinnvoller vor.

  3. von überall anders kann ich an den Thermostat (den realen) Koma Werte senden. Der virtuelle springt trotzdem zur nächsten Ganzzahl, auf oder abgerundet eben.

Gibt es einen einfachen Weg den virtuellen Thermostat mit dem virtuellen heating zu ersetzen? Habe jetzt schon einige gemacht und mann müsste das ja komplett durchgehen

Muss mir aber auch mal den virtuellen heating anschauen wenn ich wieder daheim bin.

Gruß
Felix

Dass nur Ganzzahlen gehen ist vermutlich eine Eigenheit vom VirtualThermostat. Ich habe das bei mir mal nachgestellt und da ist es genauso. Beim VirtualHeating geht’s aber. Mir ist leider kein einfacherer Weg bekannt, als das bisherige rückgängig zu machen und neu anzulegen. Wenn du das für ein Gerät gemacht hast, ist es beim Nächsten ja aber lediglich die Peer-ID/databaseId, die geändert werden muss.

1 Like

Hallo @dr_snuggles,

ich stehe mit meinen MAX!-Thermostaten vor dem selben Problem (siehe Thread ).

Welche Thermostate verwendest Du?

Und wie hast Du diese mit der UI gekoppelt?

Viele Grüße
Olli

Hey Olli,

ich habe es dann über den Virtuellen Thermostat gelöst. Einfach in der Admin UI soviele anlegen wie du brauchst und dann diese über Node Blue verschalten.

Dann kannst du diese in der UI verlinken. Wenn die Variablen und Kanäle nicht dem entsprechen was die UI erwartet geht das nicht anders soweit ich weiß.

Ich nutze Micropelt die über Enocean laufen.

Hab mal ein Makro geschrieben welches auf Excel basis ist und den Funktionsstring erstellt. siehe:
Hier

Hoffe du kommst damit weiter.

Gruß

Felix

Hi Felix,

vielen Dank für das Excel-Sheet, das ist super praktisch.

Eine Frage habe ich noch:

In meinem virtual device habe ich die variables TEMPERATUR, SETPOINT_TEMPERATURE, CONTROL_MODE.

Im MAX! device entspricht das den variables ACTUAL_TEMPERATURE, SET_TEMPERATURE, CONTROL_MODE.

Ich muss also den Wert von MAX! z.B. ACTUAL_TEMPERATURE auf das virtual device TEMPERATURE übertragen. Versuchsweise habe ich das mal für diese eine variable intervallgesteuert in Node Blue gemacht - funktioniert auch, aber scheint mir keine gute Lösung zu sein.

Wie genau hast du die Verlinkung gemacht - im AdminUI oder Node Blue?

Viele Grüße
Olli

Hy,

ja du musst quasi im Node Blue die Daten an dein Max! Geräte übergeben. Hat mich jetzt nicht sonderlich gestört da ich eh noch andere stellen habe di das abgreifen und schreiben müssen. Externes Thermometer und wand wandfühler etc.

Gruß
Felix

1 Like