Mesh Konfiguration auslesen

@filderer,
wie viele devices hast Du? Und Du hast auch die FW 4.510?

@jeep
DANKE!

Hmm, scheint noch irgendein Problem zu geben. Ich bekomme nur 14 Devices angezeigt obwohl ich alle gefiltert hatte. Ist mir auf die Schnelle nicht gleich aufgefallen. Ist auch schwierig den Text aus dem Debugfenster zu kopieren, da die Auswahl immer wieder zurück genommen wird.

Offenbar wird, was man so in den anderen Foren liest, an mehreren Fronten an einer grafischen Ausgabe des Mesh Netzwerks gearbeitet. Verstehe aber zu wenig um beurteilen zu können wann es eine Lösung geben wird und wie die dann aussieht.

@Ändy,
setz mal ‘local html = false’ und beobachte die Debug Ausgabe.

@Ändy,
am Ende der HTML Ausgabe steht doch eine Zahl, das sind die Anzahl der gefundenen devices. Kannst ja die Gegenprobe mit dem “Device inventory Script” machen. Sollte relativ gleich der Anzahl physikalischer Geräte sein.

@jeep

Danke, hat aber leider nix gebracht. Ich kann auch kein Muster erkennen warum ein Device fehlt und andere nicht. Es sind sowohl Netz- als auch Batterie betriebene dabei. Hier mal der Output:

[DEBUG] 16:55:10: Neighbours of device 5) Schachtpumpe : [7,65,74,77,79,106,132,142,144,146,155,159,167,179,187,190,205,219,228,232]
[DEBUG] 16:55:10: Last working route used by device 5 : [1,79]
[DEBUG] 16:55:10: 1--
[DEBUG] 16:55:11: Neighbours of device 7) Südfenster : [1,5,79,108,113,132,142,167]
[DEBUG] 16:55:11: Last working route used by device 7 : [1]
[DEBUG] 16:55:11: 2--
[DEBUG] 16:55:11: Neighbours of device 65) 65.0 : [1,5,74,77,79,84,106,113,132,167,205,228]
[DEBUG] 16:55:11: Last working route used by device 65 : [1,142,77]
[DEBUG] 16:55:11: 4--
[DEBUG] 16:55:12: Neighbours of device 74) Hochwasser : [1,5,65,77,79,113,132,167,190,205]
[DEBUG] 16:55:12: Last working route used by device 74 : [1]
[DEBUG] 16:55:12: 5--
[DEBUG] 16:55:12: Neighbours of device 77) Trockner : [5,65,74,79,87,90,106,132,142,144,146,152,155,179,187,190,205,219,228,232]
[DEBUG] 16:55:12: Last working route used by device 77 : [1,132]
[DEBUG] 16:55:12: 6--
[DEBUG] 16:55:13: Neighbours of device 79) Hauptlicht : [1,5,7,65,74,77,84,87,90,106,108,113,132,142,144,146,149,155,159,167,179,187,190,199,219,228,232]
[DEBUG] 16:55:13: Last working route used by device 79 : [1]
[DEBUG] 16:55:13: 7--
[DEBUG] 16:55:13: Neighbours of device 84) Bettfenster : [65,79,108,113,142,167]
[DEBUG] 16:55:13: Last working route used by device 84 : [1,79]
[DEBUG] 16:55:13: 8--
[DEBUG] 16:55:14: Neighbours of device 87) Badfenster : [1,77,79,108,113,142,167]
[DEBUG] 16:55:14: Last working route used by device 87 : [1]
[DEBUG] 16:55:14: 9--
[DEBUG] 16:55:14: Neighbours of device 90) Badfenster : [1,77,79,108,113,142]
[DEBUG] 16:55:14: Last working route used by device 90 : [1]
[DEBUG] 16:55:14: 10--
[DEBUG] 16:55:15: [1;31m2018-08-17 16:55:15.378787 [ error] API: Not found
[DEBUG] 16:55:15: Neighbours of device 102) No Name : [142]
[DEBUG] 16:55:15: Last working route used by device 102 : [1,142]
[DEBUG] 16:55:15: 11--
[DEBUG] 16:55:15: Neighbours of device 106) Bett : [1,5,65,77,79,108,113,132]
[DEBUG] 16:55:15: Last working route used by device 106 : [1,132,79]
[DEBUG] 16:55:15: 12--
[DEBUG] 16:55:16: Neighbours of device 152) Fenster : [77,113,142]
[DEBUG] 16:55:16: Last working route used by device 152 : [1,77]
[DEBUG] 16:55:16: 20--
[DEBUG] 16:55:17: Neighbours of device 199) 199.0 : [1,79,108,113,142,205]
[DEBUG] 16:55:17: Last working route used by device 199 : [1]
[DEBUG] 16:55:17: 27--
[DEBUG] 16:55:17: Neighbours of device 205) Waschmaschine : [1,5,65,74,77,132,142,179,190,199,219,228]
[DEBUG] 16:55:17: Last working route used by device 205 : [1,132]
[DEBUG] 16:55:17: 28--
[DEBUG] 16:55:18:

Siehe auch die fehlenden Nrn. dazwischen.

Laut deinem anderen Inventarscript habe ich 31 physikalische Devices. 11 Netz, 20 Batterie. Es sind Fibarokomponenten, Sensative Strips und ein Aeontec Wallplug, der aber aufgeführt ist. Von den Sensatives sind ein paar enthalten. Was von Fibaro fehlt sind hauptsächlich RGBW und Relaismodule soweit ich das auf den ersten Blick erkenne.

Sagt Dir das was? Mach Dir aber bitte keine Arbeit meinetwegen :slight_smile:

@Ändy,
noch eine Idee, anderer Browser, Cache löschen, etc. Browser neu starten?

Hi Ändy
so ein schönes Netz wie du hätt ich auch gerne. Sieht bei mir viel wilder aus.
Wie gesagt für Sauber konfigurierte Fibaro ID ist das Script super. Aber meine Netatmo Wetterstation bekommt es auch nicht in den Griff. Das liegt an der Art wie die Hersteller z-wave Vorgaben umsetzen.

Wenn du mir das \api\devices schickst kann ich die genau sagen woran es liegt.

Offenbar wird, was man so in den anderen Foren liest, an mehreren Fronten an einer grafischen Ausgabe des Mesh Netzwerks gearbeitet. Verstehe aber zu wenig um beurteilen zu können wann es eine Lösung geben wird und wie die dann aussieht. @ändy Wo hast denn was gelesen

Also ich hab mal den String nach excel exportiert und versucht mit einem Makro jeder Geräteart eine eigene Form (Kreis Quadrat Rechteck) und jedem Stockwerk eine Farbe und dann Linien von einem Gerät zum nächsten zu ziehen in Reihenfolge der Lastworking route. Also theoretisch würde das funktionieren. Die Linen bleiben sogar am “Gerät” wenn man es verschiebt. Das wäre Ideal ist aber eine heiden Arbeit, das in VBA umzusetzen, was ich mir nicht antue.

@Gerhard,
Die Netatmo ist doch kein Zwave device, ergo kann und wird dass damit nicht funktionieren.

@jeep
seh ich auch so. Hat aber ein Plugin. Steht damit in der devices liste und wird dummerweise noch gefiltert und bringt dann das script zu schleudern.
Ich hab damit kein Problem, aber wenn einer das script durchlaufen lässt wundert er sich vielleicht, dass das Ergebnis nicht das erwartete ist oder es einfach nicht durchläuft.

@Gerhard
dass ist jetzt wieder seltsam, im Filter steht doch, ‘isPlugin=false’. Weil ich kein Netatmo habe, kann ich nur vermuten dass das Plugin die Netatmo devices anlegt. Eventuell hilft mir ein api-Auszug eines solchen devices. Vielleicht gibt es da Unterschiede zu ZWave devices.

Ich habe heute einen zwave.me Stick ins HC2 über den PC-Controller von Silicon Labs includiert. Das Ergebnis war ernüchternd. Zumindest bei der Topology map. Hier ein kleiner Ausschnitt im Bild.
Das beste Ergebnis gibt es halt doch nur mit dem CIT.

topology1.jpg

Sorry @jeep,
ich hab am filter gepfuscht. Ich würde dir meine …api\devices gerne senden, nur posten will ich sie nicht. Da steht zuviel drin von mir :slight_smile:
Diesen Table hab ich schön öfter gesehen, Es gibt auch varianten mit NUllen und einsen oder Zahlen aber so wirklich auf einen Blick seh ich da nichts. Vielleicht noch als Neighborlist blau sind die Nachbar rot eben nicht oder so.

Ich würde dir gern mal eine Exceldatei senden Kann man das hier? Hat du Excel ab 2013?

Ich hab das mal schnell mit der Hand gezeichnet so als Muster. Die Gerätearten haben bestimmte Formen die Räume bestimmte Farben. Wenn du ein Gerät weg ziehst bleibt die Verlinkung (also die Route) erhalten. Ging jetzt sogar in excel 2007.
Das tolle ist man kann das programmieren. Hab einfach mal die Makroaufzeichnung mitlaufen lassen. Es lässt sich reproduzieren.

Hallo Gerhard,
kein Problem, gut das das ich den Filter im Verdacht hatte. :wink:
Leider kann man hier (meines Wissens) keine PM schreiben. Das würde über das Fibaro Forum gehen.
Und ich hab leider nur Open Office und kein MS-Office.

Ich habe mal die PHP-Datei aus dem http://domotique-fibaro.fr/ installiert. Ich kann mal jetzt ein wenig dagegen prüfen.
Siehe screenshot.

MeshJeep1.jpg

Ich habe herausgefunden, warum einige Devices nicht angezeigt werden. @jeep, ist es richtig, dass das Script nur funktioniert, wenn als Name des Parent-Devices die ID drin stehen muss? Bei den fehlenden Geräten hatte ich Namen vergeben. Trage ich die ID wieder ein, funktioniert’s! Kann man im Script nicht einfach die ID selbst nehmen?

Eine zweite Sache ist mir noch aufgefallen. Ein Device bekommt als Namen ‘No Name’. Bei diesem liegt die Child-ID nicht unmittelbar nach dem Parent. Ich habe da mal eine Geräteneukonfiguration gemacht, meine ich. Vermutlich haut es da die IDs durcheinander und die Sache mit dem +1 funktioniert dann leider nicht.

Eine zweite Sache ist mir noch aufgefallen. Ein Device bekommt als Namen ‚No Name‘. Bei diesem liegt die Child-ID nicht unmittelbar nach dem Parent. Ich habe da mal eine Geräteneukonfiguration gemacht, meine ich. Vermutlich haut es da die IDs durcheinander und die Sache mit dem +1 funktioniert dann leider nicht.
Das ist definitiv so. Habe ich auch.

Das Script nimmt eigentlich die ID und zwar alle Ids die den Filterkriterien entsprechen. Der Name ist unerheblich. Das mit dem ID+1 ist eigentlich nur ein Krücke um an den Namen zu kommen. Jeep hat Geräte die Probleme machen jetzt aber eigentlich so abgefangen, dass das Prog nicht mehr abstürzt. Es kann dir lediglich passieren dass halt der Name nicht angezeigt wird obwohl er vorhanden ist. Warum das manchmal so ist hast du ja selbst rausgefunden. Deswegen gibt es auch Lücken, die bedeuten nicht gleich fehlende Geräte.

@jeep
ich heiß im US ggoetz56. Hab nochmal mit dem HCL und wenigen devices rumprobiert. Deckt sich auch mit den Aussagen im US-Forum. Wann was im Table steht lässt sich eigentlich nicht sagen. Wenn ich einen Namen oder ein Route ändere, in dem ich ein Gerät aus LWR entferne, passiert erstmal nichts. Da die Geräte funktionieren, heisst dass die Info im Gerät ist korrekt nur der Table wird eben nicht upgedated und damit stimmt auch die Auswertung aktuell nicht.
Ich glaube auch, dass trotz einem relativ aktuellen “Timestamp” die tatsächlichen Routen/Nachbarn nicht korrekt vermerkt sind. Das muss ich aber noch verifizieren.
Auch die IDs die kein Routen haben also nur [ ] stehen haben funktionieren ja auch, also finden sie das HC. Hier gibt es auch noch keine Antwort von Fibaro und das wird vermutlich so bleiben.

Hallo zusammen,

Eine zweite Sache ist mir noch aufgefallen. Ein Device bekommt als Namen ‚No Name‘. Bei diesem liegt die Child-ID nicht unmittelbar nach dem Parent. Ich habe da mal eine Geräteneukonfiguration gemacht, meine ich. Vermutlich haut es da die IDs durcheinander und die Sache mit dem +1 funktioniert dann leider nicht.

Mit folgender Zeile im Script passt es. Dann wird nicht der Name sondern die ID verwendet.

Zeile 26:
if mDevID == nil then mDevID = devices[id] end

Eine zweite Sache ist mir noch aufgefallen. Ein Device bekommt als Namen ‚No Name‘. Bei diesem liegt die Child-ID nicht unmittelbar nach dem Parent. Ich habe da mal eine Geräteneukonfiguration gemacht, meine ich. Vermutlich haut es da die IDs durcheinander und die Sache mit dem +1 funktioniert dann leider nicht.

Als Beispiel anbei ein Auszug aus dem HC2Config vom HCToolkit. Dort kann man erkennen wie die IDs durcheinander geraten können. Ich frage mich, ob man dies durch eine geschickte Abfrage umgehen kann?

@jeep: Schöner Screenshot. Was muss man tun um diesen zu erzeugen? Was muss das PHP-Script abarbeiten? Die Topology map find ich auch interessant. Rein theoretisch sollte man das mittels Script in der Debug Ausgabe auch hinbekommen.

HC2Config-Auszug.jpg

@Ändy
die Debug Ausgabe kann nicht sehr viel an Informationen aufnehmen. Die Ausgabe des Scripts mit 3 bis 4 Zeilen
mal 76 Geräte lässt bei mir die Ausgabe nach ca. 40 Geräten stoppen.
Ja der schöne Screenshot, den finde ich gar nicht so schön. Je mehr Geräte desto wilder.
Im Screenshot im französischen Forum sieht man die Namen und nicht die IDs. Habe dann festgestellt dass der
seine ganzen Masterdevices mit Namen belegt hat. Das tut aber so gut wie niemand.
Und wenn die dann noch lang sind, wird das Chaos natürlich größer.
Ich denke Du hast bestimmt einen RPi mit Apache2 am laufen.
Das php Script kannst Du hier herunterladen: PHP-Script
Aber zum Downloaden muss man angemeldet sein. Ansonsten kann ich es wo ablegen.