Fehlererkennung

Hier folgen einige Tips zur Erkennung bzw. Analyse von Fehlern.

1. Template Checker

Über die Config-Seite --> Template Checker ist ein Tool zu finden, das auf allen Visu-Seiten die formale Richtigkeit der Einbindung der Widgets und deren Parametrierung abprüft. Fehler werden lokalisiert und dargestellt.
Zudem ist mit dem Widget Constructor ein Assistent in Entwicklung, der die Parametrierung der Widgets vereinfacht und eine einfache Testmöglicheit bereit stellt.

2. SmartHomeNG Monitor

In SmartVISU ist ein Log-System von SmartHomeNG eingebunden. Der sogenannte "SmartHomeNG Monitor".
Zu finden ist dieses über die Config-Seite --> SmartHomeNG
Im SmartHomeNG Monitor findet man neben einem Log-System unter anderem auch nützliche Infos wie Systemstart, Version von SmartHomeNG, Systemauslastung etc.
Eine mögliche Anzeige könnte so aussehen.

Log

  • 16.08.2020 19:12:10

    Error: KNX connection could not be established

  • 16.08.2020 19:11:37

    KeyError: Client 192.168.2.99:55102 requested to monitor item EG.Aussen.Temperature which can not be found

  • 16.08.2020 09:18:12

    Info: aber sonst ist heute wieder alles klar - auf der Andrea Doria :)


Hierbei ist die Wertigkeit der Log-Einträge zusätzlich farblich markiert.
Die roten Einträge sind Fehler-Meldungen (Error) und können dementsprechend problematisch sein. Daher empfiehlt es sich diese Errors als erstes zu beheben.
Im oben genannten Beispiel verweist die Fehlermeldung darauf, dass keine KNX-Verbindung hergestellt werden kann. Hierbei könnte eine möglich Ursache sehr wahrscheinlich ein falsche Eintrag in der knxd.conf/knxd.ini oder plugin.yaml sein.

Die gelben Einträge sind Warnungen (Warning).
Sie weisen auf verschieden Unstimmigkeiten beim Zusammenspiel von SmartVISU und dem Backend hin. In dem hier aufgezeigten Fall stimmt das verwendete Item nicht. Dies kann im Item-Code selber der Fall sein (z.B. Klammer- oder Tippfehler) es kann aber auch in einem Widget falsch (Tippfehler) eingetragen sein.
Ein Beispiel:
Das Item in der *.yaml sieht wie folgt aus:

Das Item, was wir in einem Widget (z.B. basic.prinnt) verwenden, sieht wie folgt aus:
{{ basic.print('', 'EG.Aussen.Temperature', '°') }}

Da hier ein 'EG.Aussen.Temperature' statt einem 'EG.Aussen.Temperatur' verwendet wurde, findet SmartVISU logischerweise das korrekte Item nicht und es kommt zu oben aufgeführter Warnung.

3. Konsole (z.B.Putty)

Generell speichert SmartHomeNG alle Fehler- u. Warnhinweise in Log Dateien. Diese sind zu finden unter:
/usr/smarthome/var/log/
Über eine Konfigurationsdatei läßt sich sehr fein einstellen, welcher Programmteil etwas loggen soll und ab welcher Wichtigkeit dieser Logeintrag aufgezeichnet wird.

4. Internetverbindung oder RTC Modul beim Raspberry Pi

Damit SmartHomeNG richtig startet, braucht es eine richtige Systemzeit. Kein Raspberry Pi [1..4] verfügt von Haus aus über eine Real Time Clock. Sofern kein Zusatzmodul eingebaut wurde um die Zeit zu speichern, holt sich der Raspberry Pi die aktuelle Zeit aus dem Internet von einem Zeitserver.
Ist der Zeitserver nicht erreichbar, gibt es keine korrekte Systemzeit und SmartHomeNG startet nicht. Wer also SmartHomeNG ohne Internet betreiben oder in Betrieb nehmen möchte, muss als erstes Datum und Zeit von Hand einstellen oder ein Zusatzmodul einbauen und konfigurieren. Google liefert dazu mehr als genügend Anleitungen.

5. Abschluss

Die größte Ursache von Fehlern sind Anwenderfehler. Viele mögliche Fehlerursachen wurden bereits in den Support-Foren für SmartHomeNG und SmartVISU behandelt. Es empfiehlt sich die dortige Suchfunktion zu nutzen.