Dieser Node überwacht alle KNX-Telegramme des ausgewählten KNX-Ultimate-Gateways, erstellt Verkehrsstatistiken, erkennt Anomalien und kann optional ein LLM befragen.

Ausgänge

  1. Zusammenfassung/Statistik (msg.payload JSON)
  2. Anomalien (msg.payload JSON)
  3. KI-Assistent (msg.payload Text, mit msg.summary)

Befehle (Eingang)

Sende msg.topic:

  • summary (oder leer): Summary sofort senden
  • reset: internen Verlauf/Zähler zurücksetzen
  • ask: Frage an das konfigurierte LLM senden

Für ask die Frage in msg.prompt (empfohlen) oder msg.payload (String) übergeben.

Konfigurationsfelder

Hier sind alle Felder aufgeführt, wie sie im KNX-AI-Editor sichtbar sind.

Allgemein

  • Gateway: KNX-Ultimate Gateway/Config-Node als Telegrammquelle.
  • Name: Node-Name und Dashboard-Titel.
  • Topic: Basis-Topic der Node-Ausgänge.
  • Button Open KNX AI Web: Öffnet das Web-Dashboard (/knxUltimateAI/sidebar/page).

Capture

  • Capture GroupValue_Write: Erfasst Write-Telegramme.
  • Capture GroupValue_Response: Erfasst Response-Telegramme.
  • Capture GroupValue_Read: Erfasst Read-Telegramme.

Analysis

  • Analysis window (seconds): Hauptfenster für Summary/Rate-Berechnung.
  • History window (seconds): Aufbewahrungsfenster der internen Telegramm-Historie.
  • Captured telegrams also on disk archivieren: Speichert Telegramme zusätzlich zu RAM in knxultimatestorage/knxai/history/<node-id>/YYYY-MM-DD.jsonl.
  • Aufbewahrung des Festplattenarchivs (Tage): Anzahl Tage, die Archivdateien auf Platte behalten werden, bevor sie automatisch gelöscht werden.
  • Max stored events: Maximale Anzahl Telegramme im Speicher.
  • Telegramme mit echoed: true sind interne Passthrough-Kopien (vom Eingangspin zum Ausgangspin desselben Nodes), also kein echter KNX-Busverkehr: für Busstatistik/Anomalieanalyse ausschließen.
  • Auto emit summary (seconds, 0=off): Periodisches Summary-Intervall.
  • Top list size: Anzahl Top-Gruppenadressen/Quellen in der Summary.
  • Detect simple patterns (A -> B): Aktiviert Übergangs-/Pattern-Erkennung.
  • Pattern max lag (ms): Maximaler Zeitabstand für Pattern-Korrelation.
  • Pattern min occurrences: Mindestanzahl, bevor ein Pattern gemeldet wird.

Anomalies

  • Rate window (seconds): Gleitendes Zeitfenster für Rate-Prüfungen.
  • Max overall telegrams/sec (0=off): Schwellwert für gesamten Bus.
  • Max telegrams/sec per GA (0=off): Schwellwert pro Gruppenadresse.
  • Flap window (seconds): Zeitfenster für Flapping-/Wechselraten-Erkennung.
  • Max changes per GA in window (0=off): Maximal erlaubte Änderungen im Fenster.

KI-Assistent

  • Enable LLM assistant: Aktiviert Ask/Chat-Funktionen.
  • Provider: LLM-Backend (OpenAI-compatible oder Ollama).
  • Endpoint URL: URL des Chat/Completions-Endpunkts.
  • API key: API-Schlüssel (für lokales Ollama nicht erforderlich).
  • Model: Modell-ID/Name.
  • System prompt: Globale Instruktion für KNX-Analyse (Advanced).
  • Wenn das Festplattenarchiv aktiv ist, nutzt Ask standardmäßig dieses Archiv: explizite Datumsangaben/Zeitbereiche werden beachtet, sonst durchsucht der Assistent die letzten 24 Stunden plus aktuelle RAM-Events.
  • Include raw payload hex: Rohe Hex-Payload im Prompt einfügen.
  • Node-RED-Projektinventar einbeziehen: Nimmt das gesamte Node-RED-Projektinventar in den Prompt auf, einschließlich KNX-Nodes und anderer hilfreicher Nodes wie function/change/inject/template, wenn sie KNX-Logik oder Gruppenadressen enthalten.
  • Include documentation snippets (help/README/examples): Doku-Kontext einfügen.
  • Docs language: Bevorzugte Sprache der Doku-Snippets.
  • Button Refresh: Provider abfragen und verfügbare Modelle laden.

Advanced

  • Analysis window (seconds): Hauptfenster für Summary/Rate-Berechnung.
  • Max stored events: Maximale Anzahl Telegramme im Speicher.
  • Top list size: Anzahl Top-Gruppenadressen/Quellen in der Summary.
  • Pattern max lag (ms): Maximaler Zeitabstand für Pattern-Korrelation.
  • Pattern min occurrences: Mindestanzahl, bevor ein Pattern gemeldet wird.
  • Rate window (seconds): Gleitendes Zeitfenster für Rate-Prüfungen.
  • Max overall telegrams/sec (0=off): Schwellwert für gesamten Bus.
  • Max telegrams/sec per GA (0=off): Schwellwert pro Gruppenadresse.
  • Flap window (seconds): Zeitfenster für Flapping-/Wechselraten-Erkennung.
  • Max changes per GA in window (0=off): Maximal erlaubte Änderungen im Fenster.

Ollama Schnellstart (lokal)

  • Provider = Ollama auswählen.
  • Standard-Endpoint: http://localhost:11434/api/chat.
  • Wenn keine lokalen Modelle gefunden werden:
    • 1) Download model: öffnet die Seite Model library.
    • 2) Install it: lädt und installiert das Modell lokal (z. B. llama3.1).
  • Beim Refresh/Install versucht KNX AI zusätzlich, den Ollama-Server automatisch zu starten.
  • Bei Installationsfehlern mit Verbindungsproblem prüfen, ob Ollama läuft (Desktop-App oder ollama serve).
  • Wenn Node-RED in Docker läuft, im Endpoint host.docker.internal statt localhost verwenden.

Sicherheitshinweis

Bei aktiviertem LLM kann KNX-Traffic-Kontext an den konfigurierten Endpoint gesendet werden. Für striktes On-Premise lokale Provider verwenden.