Ich habe heute mal die aktuelle Version installiert. Jetzt werden aber die Wert der Gruppenadressen nicht mehr automatisch aktualisiert.
Das Log-File steht auf auto-reload und zeigt auch die aktuellen Werte an, aber erst wenn ich es manuell neu lade sehe bei den Gruppenadressen den aktuellen Wert.
Muss ich da noch irgendwas einstellen?
X
-
Aber genau das ist doch oben in meinem Screenshot audAlso erstmal vorweg: Die ETS kann keine Kanäle in Kanälen (zumindest nicht immer und in allen Varianten), deswegen mussten wir hier umbauen. Es gibt jetzt (schon seit ca. 1 Jahr) nur noch einen ETS-Kanal pro Modul.
Sensor-Wire-PM-Logic-Button-BL v3.15
Der Fall:
Präsenzmelder-> PM1, PM2, ...
Hm, meti kannst du hier weiterhelfen?Ob und wo sie dann in xknx landen, kann ich Dir leider nicht sagen.
Einen Kommentar schreiben:
-
Hi Hendrik,
ich kann Dir nur sagen, wo sie im xml für die knxprod sind. Bzw. wo sie nicht sind
.
Also erstmal vorweg: Die ETS kann keine Kanäle in Kanälen (zumindest nicht immer und in allen Varianten), deswegen mussten wir hier umbauen. Es gibt jetzt (schon seit ca. 1 Jahr) nur noch einen ETS-Kanal pro Modul.
Die Kanäle der OpenKNX-Module stecken in einem ParameterBlock mit der Eigenschaft ShowInComObjectTree="true".
Ob und wo sie dann in xknx landen, kann ich Dir leider nicht sagen.
Gruß, Waldemar
Einen Kommentar schreiben:
-
meti mumpf
Ich bräuchte mal Eure Unterstützung.
Ich beiße mir die Zähne daran aus, die Kanäle der Geräte in KNX-Lens darzustellen.
25-11-17__447-19.38.55_knx-lens.py_-_knx_parse_-_Visual_Studio_Code.png 25-11-17__450-19.48.06_ETS6_-_Familie_Friedel.png
25-11-17__448-19.39.17_knx-lens.py_-_knx_parse_-_Visual_Studio_Code.png
25-11-17__452-19.48.42_ETS6_-_Familie_Friedel.png
Beim älteren Sensormodul (WP-Sensor-PM-Logic 1.6) gibt es die Kanäle, beim neuen (Sensor-Wire-PM-Logic-Button-BL v3.15) fehlen sie in KNX-Lens.
Das liegt aber daran, das xknx nur einen Kanal findet.
Erzeugt diesen Output:Code:from knx_project_utils import load_or_parse_project import json import os from dotenv import load_dotenv # Lade Config load_dotenv() knxproj_path = os.getenv('KNX_PROJECT_PATH') password = os.getenv('KNX_PASSWORD') print(f"Lade Projekt: {knxproj_path}...") data = load_or_parse_project(knxproj_path, password) # Daten aus Wrapper holen if "project" in data: data = data["project"] # Gerät suchen target_pa = "1.0.1" device = data.get("devices", {}).get(target_pa) if device: print(f"Gerät {target_pa} gefunden!") print("Schreibe Dump nach 'debug_device_1.0.1.json'...") # Wir dumpen das gesamte Device-Objekt, um alles zu sehen with open("debug_device_1.0.1.json", "w", encoding="utf-8") as f: json.dump(device, f, indent=2, default=str) print("Fertig.") else: print(f"Gerät {target_pa} nicht gefunden!")
Code:{ "name": "OpenKNX: Sensormodul-Vpm Elternbad", "hardware_name": "OpenKNX: Sensormodul-Vpm", "order_number": "OpenKnxSensorVpm", "description": "(SAMD)", "manufacturer_name": "KNX Association", "individual_address": "1.0.1", "application": "M-00FA_A-A040-16-C6E5", "project_uid": 113420, "communication_object_ids": [ "1.0.1/O-2_R-100000201", "1.0.1/O-3_R-100000301", "1.0.1/O-60_R-300006001", "1.0.1/O-61_R-300006101", "1.0.1/O-62_R-300006201", "1.0.1/O-63_R-300006301", "1.0.1/O-65_R-300006501", "1.0.1/O-103_R-200101304", "1.0.1/O-91_R-200100101", "1.0.1/O-96_R-200100701", "1.0.1/O-98_R-200100901", "1.0.1/O-101_R-200101101", "1.0.1/O-105_R-200101501", "1.0.1/O-93_R-200100301", "1.0.1/O-95_R-200100501", "1.0.1/O-90_R-200100001", "1.0.1/O-99_R-200101001", "1.0.1/O-202_R-100100210", "1.0.1/O-7_R-100000701", "1.0.1/O-205_R-100200210", "1.0.1/O-208_R-100300210", "1.0.1/O-211_R-100400210", "1.0.1/O-1_R-100000101", "1.0.1/O-69_R-300006901", "1.0.1/O-66_R-300006601", "1.0.1/O-216_R-100600104", "1.0.1/O-217_R-100600201", "1.0.1/O-218_R-100700001", "1.0.1/O-220_R-100700201", "1.0.1/O-215_R-100600004", "1.0.1/O-223_R-100800206", "1.0.1/O-222_R-100800106", "1.0.1/O-128_R-200201801", "1.0.1/O-226_R-100900201", "1.0.1/O-110_R-200200001", "1.0.1/O-111_R-200200101", "1.0.1/O-123_R-200201302", "1.0.1/O-224_R-100900004", "1.0.1/O-225_R-100900104" ], "channels": { "CH-1": { "identifier": "CH-1", "name": "Standardsensoren", "communication_object_ids": [ "1.0.1/O-60_R-300006001", "1.0.1/O-50_R-300005001", "1.0.1/O-61_R-300006101", "1.0.1/O-62_R-300006201", "1.0.1/O-63_R-300006301", "1.0.1/O-65_R-300006501", "1.0.1/O-66_R-300006601", "1.0.1/O-69_R-300006901" ] }, "CH-PM01": { "identifier": "CH-PM01", "name": "PM 01: Elternbad", "communication_object_ids": [ "1.0.1/O-101_R-200101101", "1.0.1/O-105_R-200101501", "1.0.1/O-106_R-200101601", "1.0.1/O-107_R-200101701", "1.0.1/O-108_R-200101801", "1.0.1/O-93_R-200100301", "1.0.1/O-94_R-200100401", "1.0.1/O-95_R-200100501", "1.0.1/O-97_R-200100801", "1.0.1/O-102_R-200101201", "1.0.1/O-99_R-200101001", "1.0.1/O-90_R-200100001", "1.0.1/O-91_R-200100101", "1.0.1/O-103_R-200101304", "1.0.1/O-96_R-200100701", "1.0.1/O-98_R-200100901" ] }, "CH-PM02": { "identifier": "CH-PM02", "name": "PM 02: Kinderbad", "communication_object_ids": [ "1.0.1/O-121_R-200201101", "1.0.1/O-125_R-200201501", "1.0.1/O-126_R-200201601", "1.0.1/O-127_R-200201701", "1.0.1/O-128_R-200201801", "1.0.1/O-113_R-200200301", "1.0.1/O-114_R-200200401", "1.0.1/O-115_R-200200501", "1.0.1/O-117_R-200200801", "1.0.1/O-122_R-200201201", "1.0.1/O-119_R-200201001", "1.0.1/O-110_R-200200001", "1.0.1/O-111_R-200200101", "1.0.1/O-123_R-200201302", "1.0.1/O-118_R-200200902" ] }, "CH-L01": { "identifier": "CH-L01", "name": "Logik 01: PM Tagesphase Elternbad Tag", "communication_object_ids": [ "1.0.1/O-202_R-100100210" ] }, "CH-L02": { "identifier": "CH-L02", "name": "Logik 02: PM Tagesphase Nacht", "communication_object_ids": [ "1.0.1/O-205_R-100200210" ] }, "CH-L03": { "identifier": "CH-L03", "name": "Logik 03: PM Tagesphase Elternbad Morgen", "communication_object_ids": [ "1.0.1/O-208_R-100300210" ] }, "CH-L04": { "identifier": "CH-L04", "name": "Logik 04: PM Tagesphase Elternbad Abend", "communication_object_ids": [ "1.0.1/O-211_R-100400210" ] }, "CH-L05": { "identifier": "CH-L05", "name": "Logik 05: Dimmwert weiterleiten", "communication_object_ids": [ "1.0.1/O-212_R-100500004", "1.0.1/O-213_R-100500101", "1.0.1/O-214_R-100500204" ] }, "CH-L06": { "identifier": "CH-L06", "name": "Logik 06: HCL Template ausschalten", "communication_object_ids": [ "1.0.1/O-215_R-100600004", "1.0.1/O-216_R-100600104", "1.0.1/O-217_R-100600201" ] }, "CH-L07": { "identifier": "CH-L07", "name": "Logik 07: HCL Template anschalten", "communication_object_ids": [ "1.0.1/O-218_R-100700001", "1.0.1/O-220_R-100700201" ] }, "CH-L08": { "identifier": "CH-L08", "name": "Logik 08: HCL - N\u00e4chstes Anschalten Weiss", "communication_object_ids": [ "1.0.1/O-222_R-100800106", "1.0.1/O-223_R-100800206" ] }, "CH-L09": { "identifier": "CH-L09", "name": "Logik 09: PM Sperre Schlafzimmer durch Rollo", "communication_object_ids": [ "1.0.1/O-224_R-100900004", "1.0.1/O-225_R-100900104", "1.0.1/O-226_R-100900201" ] }, "CH-L10": { "identifier": "CH-L10", "name": "Logik 10: ...", "communication_object_ids": [ "1.0.1/O-227_R-101000004", "1.0.1/O-228_R-101000104", "1.0.1/O-229_R-101000201" ] }, "CH-L11": { "identifier": "CH-L11", "name": "Logik 11: ...", "communication_object_ids": [ "1.0.1/O-230_R-101100001", "1.0.1/O-232_R-101100201" ] } } }Code:{ "name": "OpenKNX: Sensormodul, VPM, G\u00e4stebad (Abstellkammer)", "hardware_name": "OpenKNX: Sensormodul-Big", "order_number": "OpenKnxSensorBig", "description": "Sen-UP1-8xTH, \r\nEingang E ist I2C\r\nC&D sind Bin\u00e4reing\u00e4nge (+VCC)", "manufacturer_name": "KNX Association", "individual_address": "1.0.35", "application": "M-00FA_A-A012-3F-6029", "project_uid": 113556, "communication_object_ids": [ "1.0.35/O-2_R-100000201", "1.0.35/O-3_R-100000301", "1.0.35/O-7_R-100000701", "1.0.35/O-60_R-400006001", "1.0.35/O-61_R-400006101", "1.0.35/O-62_R-400006201", "1.0.35/O-63_R-400006301", "1.0.35/O-65_R-400006501", "1.0.35/O-133_R-300101304", "1.0.35/O-120_R-300100001", "1.0.35/O-125_R-300100501", "1.0.35/O-128_R-300100901", "1.0.35/O-121_R-300100101", "1.0.35/O-45_R-600100001", "1.0.35/O-923_R-100200001", "1.0.35/O-925_R-100200201", "1.0.35/O-1_R-100000101", "1.0.35/O-926_R-100300001", "1.0.35/O-927_R-100300101", "1.0.35/O-929_R-100400001", "1.0.35/O-930_R-100400101", "1.0.35/O-932_R-100500001", "1.0.35/O-933_R-100500101", "1.0.35/O-935_R-100600001", "1.0.35/O-936_R-100600101", "1.0.35/O-938_R-100700001", "1.0.35/O-939_R-100700101", "1.0.35/O-940_R-100700201", "1.0.35/O-941_R-100800001", "1.0.35/O-942_R-100800101", "1.0.35/O-944_R-100900001", "1.0.35/O-945_R-100900101", "1.0.35/O-947_R-101000001", "1.0.35/O-948_R-101000101", "1.0.35/O-950_R-101100001", "1.0.35/O-951_R-101100101", "1.0.35/O-952_R-101100201", "1.0.35/O-953_R-101200001", "1.0.35/O-955_R-101200201", "1.0.35/O-956_R-101300001", "1.0.35/O-958_R-101300201", "1.0.35/O-961_R-101400201", "1.0.35/O-964_R-101500201", "1.0.35/O-965_R-101600001", "1.0.35/O-967_R-101600201", "1.0.35/O-966_R-101600101", "1.0.35/O-69_R-400006901", "1.0.35/O-66_R-400006601", "1.0.35/O-153_R-300201301", "1.0.35/O-140_R-300200001", "1.0.35/O-145_R-300200501", "1.0.35/O-142_R-300200204", "1.0.35/O-968_R-101700001", "1.0.35/O-141_R-300200102", "1.0.35/O-970_R-101700201", "1.0.35/O-171_R-300301101", "1.0.35/O-161_R-300300102", "1.0.35/O-173_R-300301301", "1.0.35/O-191_R-300401101", "1.0.35/O-165_R-300300501", "1.0.35/O-193_R-300401301", "1.0.35/O-185_R-300400501", "1.0.35/O-978_R-102000101", "1.0.35/O-979_R-102000201", "1.0.35/O-977_R-102000001", "1.0.35/O-974_R-101900001", "1.0.35/O-976_R-101900201", "1.0.35/O-983_R-102200004", "1.0.35/O-984_R-102200104", "1.0.35/O-985_R-102200201", "1.0.35/O-986_R-102300001", "1.0.35/O-988_R-102300201", "1.0.35/O-991_R-102400206", "1.0.35/O-990_R-102400106", "1.0.35/O-122_R-300100204", "1.0.35/O-994_R-102500201" ], "channels": { "CH-BASE": { "identifier": "CH-BASE", "name": "OpenKNX", "communication_object_ids": [ "1.0.35/O-1_R-100000101", "1.0.35/O-2_R-100000201", "1.0.35/O-3_R-100000301", "1.0.35/O-7_R-100000701" ] } } }
Ich hänge mal den ganzen output von xknxproj.parse() an.
Könnt ihr mir sagen, wo sich die Kanäle in der neuen Version verstecken?
Gruß,
Hendrik
Angehängte Dateien
Einen Kommentar schreiben:
-
Als Anregung, InfluxDB statt Tagesdateien: https://github.com/greiginsydney/captureKNX
Einen Kommentar schreiben:
-
Top! Und ich sehe nun auch unten wieder alle Einträge
Ich weiß nicht, ob du darauf überhaupt Einfluss hast, aber gerade da jetzt eh kein horizontales Scrollen mehr vorhanden ist wäre Home/End für Anfang/Ende der Liste super. Mit Ctrl+Home/End geht das zwar schon, aber ohne Ctrl wäre es natürlich noch angenehmer
Einen Kommentar schreiben:
-
So, ich hab gerade nochmal ein größeres Update hochgeladen.
Es gibt jezt benannte Filter. Man kann den aktuell gewählten Filter mit S speichern. Man kann aber auch im entsprechenden Tab benannte Filter erstellen und editieren.
Das geht alternativ auch in der entsprechenden YAML im Projekt-Verzeichnis.
Es werden auch regex für Named-Filter unterstützt.
Diese sind mit OR verknüpft.
Wer das log weiter filtern will (einschränkend) kann den Filter über den Log-Zeilen nehmen. Der kann auch regex und die sind AND verknüpft.
Gruß,
Hendrik
- Likes 1
Einen Kommentar schreiben:
-
Hi Hendrik,
ich hab gerade mal aktualisiert, das lief schonmal erfreulich problemlos (systemctl stop für beide Dienste, git pull, systemctl start *2)
Hat sich ja schon deutlich was getan, danke für deine Arbeit daran!
Ich hab mal soweit Tickets abgearbeitet, kann aber auf Grund der Rechte keine Tickets wieder öffnen. #19 (Spaltenbreite) hat noch etwas Probleme aus meiner Sicht.
Und die KO Namen sind jetzt *deutlich* besser als vorher. Da stand bei mir bei vielen MDT-Geräten vorher nur ganz grob nutzbarer Kram, jetzt passt das eigentlich alles.
Ansonsten ist mir aufgefallen, dass die Home/End-Tasten nur nach ganz links/rechts scrollen. Ich fände es deutlich besser, wenn das ans Anfang/Ende der Liste scrollen würde (nach Links/Rechts scrollen sollte ja im Idealfall gar nicht nötig sein
).
Außerdem scheint es mir, als ob zwei Zeilen unten "Abgeschnitten" würden. Wenn die letzte sichtbare Zeile markiert ist kann ich noch zweimal nach unten gehen, ohne dass die Liste hochgescrollt wird. Das passt auch zu den Daten, die da eigentlich noch sein müssten, da ich weiß, dass da noch zwei Telegramme nach dem letzten Sichtbaren kamen.
LG,
Chris
Einen Kommentar schreiben:
-
Hab grad gesehen: ist nicht nur web, sondern das gleiche auch im Terminal ...
Einen Kommentar schreiben:
-
oh, das ist hier auch so - hab die web-version wohl nicht getestet. Ich schau mal. kein issue nötig
Einen Kommentar schreiben:
-
henfri Hab heute einen git pull gemacht, nun funktioniert knx-lens-web leider nicht mehr. Beim Start der Browser Session wird in der oberen Fensterhälfte ein Fehler angezeigt. Ich muss die Fehlermeldung aus dem Browser abtippen, kopieren geht nicht.
Das Aufstarten von knx-lens-logger und knx-lens-web klappt wie bisher. Der Logger funktioniert und zeigt die Daten gemäss .knxproj an.Code:FEHLER BEIM LADEN Meldung: no nodes match '#building_tree' on KNXLens(title='KNXLens', classes={' -darkmode'}, pseude_classes={'dark', 'focus'}}
Soll ich noch einen Issue dafür eröffnen?
Danke noch für die Anpassung der Datum- und Zeitwerte.
Einen Kommentar schreiben:
-
Ich würde damit klar kommen, ist auf jeden Fall besser als gar nichts. Wobei es mir nicht klar ist, wie das dann mit Docker funktioniert, aber das liegt daran, dass ich mich nicht gut genug mit Docker auskenne.
Gruß, Waldemar
Einen Kommentar schreiben:


Einen Kommentar schreiben: