Restorefunktion bei Anlernen/ Wieceranlernen eines Device

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

Antworten

Ist ein Restore eines durch Werksreset abgelernten Devices nach dessen Wideranlernen hilfreich ?

Funktion unnötig
1
8%
Funktion hilfreich
4
33%
Funktion extrem hilfreich
7
58%
 
Abstimmungen insgesamt: 12

Benutzeravatar
Black
Beiträge: 5480
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 424 Mal
Danksagung erhalten: 1074 Mal
Kontaktdaten:

Restorefunktion bei Anlernen/ Wieceranlernen eines Device

Beitrag von Black » 12.10.2019, 09:55

Folgender Wunsch wurde an mich rangetragen:

Ein Device, HM oder HM-IP wird abgelernt. IP geht ja nur durch Werksreset.
Dabei werden ja alle Datenpunkte des Device aus den entsprechenden WEBUI Programmen entfernt. Ebenso wird es aus Räumen Gewerken Favoriten gelöscht und Systemvariablen die Kanälen des Device zugeordnet waren zeigen nun ins Nirvana.

Wäre eine Funktion hilfreich die man vor dem löschen laufen lassen würde, die dann die entsprechenden Eigenschaften sichert, wahrscheinlich wird's wieder JSON werden zum sichern.

Nach dem Löschen und Wiederanlernen könnten dann die Raum, Gewerke, Favoriten und Systemvariablen, Die Kanalnamen würden nebenbei auch noch gehen, denen dieses Device zugeordnet war wieder rekonstruiert werden. Ebenso die Singleconditions und die Singledestinations der Programme, aus denen es beim löschen entfernt wurde.

Macht so was Sinn oder braucht man das schon mal öfter ?

Mastersets des Device und dessen Direktverknüpfungen lassen sich ja heute schon mit dem SDV (Disclaimer: Werbung für das eigene Projekt) sichern und wiederherstellen

Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

Xel66
Beiträge: 14164
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 585 Mal
Danksagung erhalten: 1500 Mal

Re: Restorefunktion bei Anlernen/ Wieceranlernen eines Device

Beitrag von Xel66 » 12.10.2019, 10:16

Nun ja, ich hätte einen ähnlichen Anwendungsfall und zumindest für die Funktion Verwendung. Mein Fall ist das Austauschen eines Rollladenaktors, welche nicht über die Tauschfunktion geht (Unterputzversion gegen Markenschalter). Die Geräte sind zwar von der Funktion identisch, aber eben wohl nicht von den Datenpunkten (habe ich aber noch nicht gecheckt). Vermutlich wird deswegen der direkte Tausch nicht angeboten. Mit der Funktion könnte ich einen solchen Tausch eventuell durchführen.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

dtp
Beiträge: 10660
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 321 Mal
Danksagung erhalten: 501 Mal

Re: Restorefunktion bei Anlernen/ Wieceranlernen eines Device

Beitrag von dtp » 14.10.2019, 12:18

Nur kurz der Hinweis, dass eine zurückgesetzte klassische HM-Komponente erst mal nicht aus der ReGaHSS gelöscht wird. Sie bleibt mit all ihren Verknüpfungen und Einstellungsparametern erhalten. Daher kann man sie auch später wieder einfach "drüberlernen", ohne dass sie im Posteingang erscheint. Zum Löschen der Komponente muss man explizit im WebUI den entsprechenden Listeneintrag aus dem Pull-Down-Menü auswählen. Erst dann ist sie samt all ihrer Verknüpfungen wirklich verschwunden.

Bei HMIP scheint das aber so nicht zu sein. Das habe ich zumindest noch nicht ausprobiert.

Die Funktion, sämtliche Verknüpfungen und Einstellungen für ein zu löschendes Gerät extern abzuspeichern, finde ich durchaus sinnvoll. Bei mir sind z.B. einige Aktoren mit dem bekannten C26/C7-Defekt bzw. mit einer defekten Sicherung ausgestiegen. Die möchte ich dann ungerne so in der Wand lassen, bis das Ersatzteil da ist. Entferne ich sie, erzeugen sie aber entsprechende Servicemeldungen. Daher wäre es ganz hilfreich, wenn ich sie aus der CCU löschen könnte, um sie später wieder einfach einzubinden.

Hilfreich wäre eine solche Funktion auch, wenn man zwei identische, verbaute Komponenten untereinander austauschen will, ohne dass man sich eine dritte für die Tauschen-Funktion zulegen muss. Fragt mich aber nicht, wann das mal vorkommt. 8)

Genial fände ich auch, wenn man z.B. beim Wechsel von einem klassischen Rollladenaktor auf einen entsprechenden HMIP-Aktor eine Art Transformationsmöglichkeit für die wesentlichen Parameter hätte. Aber ich befürchte, das wird zu aufwändig. ;)
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

Benutzeravatar
Black
Beiträge: 5480
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 424 Mal
Danksagung erhalten: 1074 Mal
Kontaktdaten:

Re: Restorefunktion bei Anlernen/ Wieceranlernen eines Device

Beitrag von Black » 14.10.2019, 13:07

zielsetzung ist,

wenn ein Gerät, ob Classic, oder IP oder wired mit Werksreset löschst, dass es, so vorher die backup funktion gefahren wurde, dieses Gerät sich schnell und ihne viel stundenlange tipperei wieder in die Ursprungszustand und in alle programme - Räume etc zurückversetzen lässt.

Ausgehend von Löschen mit Werksreset:

Ziel:
Gleiches Gerät (SerNr bleibt identisch)
Mastersatz ohne Ändrung zurückspielbar (geht jetzt schon über backup restore Mastersatz)
Linkksatz ohne Änderung zurückspielbar (geht jetzt schon über Backup restore Linksatz)
Programme (WebUI) Gewerke, Räume, Favoriten dieses Gerätes zurückspielbar (soll dann auch gehen)

Gleicher Gerätetyp, aber andere SerNr) z.B. Tausch von Geräten, Interessant bei IP-geräten
Mastersatz zurückspielbar nach manueller Änderung Gerätename im JSON (geht jetzt schon über backup restore Mastersatz)
Linksatz zurückspielbar nach manueller Änderung Gerätename im JSON und des Adressbezeichners in den jeweiligen DVs (geht jetzt schon über backup restore Linksatz)
Programme (WebUI) Gewerke, Räume, Favoriten dieses Gerätes zurückspielbar (soll dann auch gehen)

Ähnlicher Gerätetyp (Rolladenaktor HM nach Rolladenaktor IP):
Mastersatz bzw Linksatz werden eher inkompatibel sein, also Finger weg, kann daneben gehen
manuelle Anpassung des Restore programmes möglich (prüfen auf welchen kanal welcher Datenpunkt liegt, wenn nötig, anpassen (suchen / Ersetzen funktion)


Bedingung bei Programme Zurückspielen ist aber: Zwischen Backup der Programme des Gerätes und dem Wiedereinspielen wird nicht an den Programmen "rumgespielt". Im Gegensatz zu dem sehr aufwendigen 2 Pass Lauf, den der SDV bei dem Programm Backup fährt und der vollsymbolisch ist (absolute Unabhängigkeit von IseID Nummern) merkt sich bei diesem Lauf der SDV nur die IDs der SingleConditiosn / Singledestinations sowie die properties , an denen der betreffende Datenpunkt wieder eingefügt werden muss.

Vollsymbolisches Backup würde gehen über: zeige programme zu einem Device: FullBackup dieser Programme. Diese lassen sich dann wieder (auch jetz schon ) komplett wieder zurückspielen (Vorher löschen)

Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

Benutzeravatar
Black
Beiträge: 5480
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 424 Mal
Danksagung erhalten: 1074 Mal
Kontaktdaten:

Re: Restorefunktion bei Anlernen/ Wieceranlernen eines Device

Beitrag von Black » 19.10.2019, 16:08

so, es zeichnet sich eine stable Lösung ab, realisiert ist jetzt folgendes.

vor dem Ablernen eines Gerätes wird ein Sicherungslauf gemacht, dieser erstellt ein HMScript

das Gerät wird nun abgelernt und auch wieder angelernt. In der WebUI sind alle bezüge zu Räumen,Gewerken, Favoriten und Programmen,wo dieses Grät mit Kanälen und Datenpunkten vorhanden war, gelöscht.

Das vom Sicherungslauf erstellte HM-Script wird ausgeführt,es macht folgendes:

-Das Gerät wird anhand seiner Seriennummer identifiziert,
-Der Gerätename und die Namen aller Kanäle des Gerätes werden auf den Namen aus der Sicherung geändert.
-Alle Räume und Gewerke,denen es beim Anlernen eventuell zugewiesen wurde werden entfernt
-die Kanäle werden allen Räumen und Gewerken gemäß der Sicherung zugeordnet.
-In den Favoriten werden die Kanäle desGeräte wieder richtig (an die ursprüngliche Stelle) eingefügt
-In allen Programmen, in denen das Gerät bzw Datenpunkte der kanäle des Geräte verwendet wurden und wo diese Bezüge (SingleConditions/SingleDestinations) des Gerätes beim Löschen des Gerätes auch gelöscht wurden, werden diese auch wieder an der richtigen Stelle rekonstruiert. (Zum Einsatz kommen hier auch Mechanismen aus dem schon lange laufenden Programme-Backup)

Defintionsbedingungen (oder das kleingedruckte)
- Der Sicherungslauf benutzt Classes aus dem programme-Backup, dieser Lauf ist also kein StandAlone CCU programm, sondern eine Kombinations aus HMScript und FPC programm des SDV. Als Ergebnis kommt dabei aber ein generiertes ausführbares HMScript raus, welches dann das restore durchführt und manuell gestartet werden kann
- An den Programmen darf nix verändert worden sein. bekannterweise verändert editieren von WebUi programmen die IDs der einzelnen Objekte eines programmes. Wenn das Gerät nach dem Wiederanlernen andere IDs bekommen hat,dies ist egal, dieser Zugriff ist auch symbolisch realisiert.

Aber da der Anwendungszweck dieses Tools ist, den Arbeitsaufwand, der durch dasLöschen , Wiederanlernen eines Geräte entsteht, zu minimieren, wird Backup- restore indem Fall ja zeitnah ausgeführt und damit gibts dann auch keine Probleme.

Black

EDIT Umsetzung erfolgte hier: viewtopic.php?f=31&t=47049&start=280#p536347
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“