openHAB 2 System Info Binding (CPU, RAM, Storage, etc.) | Schritt für Schritt Anleitung

In diesen Beitrag werde wir mit dem System Info Bindig unser System auf dem openHAB läuft überwachen bzw. verschiedene Daten auslesen.

Bei diesem Binding ist es außerdem nicht relevant auf welchen System bei euch openHAB läuft. Das Binding erkennt die Daten von eurem Raspberry Pi, Windows PC, eurer DiskStation etc. automatisch.

Weiter openHAB Anleitungen: OpenHAB Anleitungen

Vorrausetzungen

In dieser Anleitung gehe ich davon auch, dass ich openHAB bereits installiert habt, und euch Grundlegende Dinge bereits eingerichtet habt.

Falls ihr ganz neu mit openHAB startet könnt ihr euch meinen Beiträge und Videos zu openHAB ansehen.

OpenHAB System Info Binding

Um die Systemdaten von unserem Raspberry Pi, DiskStation, Rechner, etc. auslesen zu können, benötigen wir das System Info Binding.

Um jetzt das Binding zu installieren, wechseln wir zu unserem OpenHAB Fenster im Browser, und gehen dort auf Paper UI.

Hier gehen wir dann auf Bindings und suchen nach System Info. Bei Systeminfo Binding klicken wir dann rechts auf INSTALL und warten bis das Binding installiert ist.

openHAB 2 Systeminfo Binding – Systeminfo Binding installieren – digitalewelt.at

Sobald der Installations-Vorgang abgeschlossen ist, sollten wir auch schon in der Inbox eine Nachricht bekommen.

Hier finden wir dann auch den Eintrag Local Computer.

openHAB 2 Systeminfo Binding – Inbox Local computer – digitalewelt.at

Fall ihr diesen Punkt nicht angezeigt bekommt, könnt ihr hier auf den Plus Button klicken, und anschließend auf Systeminfo Binding. Danach solltet ihr den Punkt Local Computer angezeigt bekommen.

openHAB 2 Systeminfo Binding – Thing not found – digitalewelt.at

Diesen bestätigen wir dann mit den blauen Haken, und können anschließend noch einen Namen vergeben. Da ich openHAB auf einem Raspberry Pi laufen habe, vergebe ich hier den Namen Raspberry Pi Sever.

openHAB 2 Systeminfo Binding – Add as Thing – digitalewelt.at

Wir bestätigen den Namen indem wir auf ADD AS THING klicken.

Items anlegen

Als nächstes müssen wir für die einzelne Daten Items anlegen. Daher wechseln wir jetzt zu Visual Studio Code und erstellen bei Items einen Neue Datei mit dem Namen systeminfo.items und öffnen diese.

openHAB 2 Systeminfo Binding – systeminfo.items – digitalewelt.at

Danach gehen wir zu unserem openHAB Addon und dort finden wir jetzt unter THINGS unseren Raspberry Pi Server.

Mit einem rechtsklick können wir dann „Create Items from Channels auswählen.

openHAB 2 Systeminfo Binding – Create Items from Channels – digitalewelt.at

Anschließend werden in unserer systeminfo.items Datei alle verfügbaren Items angelegt.

Wenn wir mit der Maus über den Namen eines Items gehen, wird’s uns auch schon bereits der Wert angezeigt.

Außerdem sehen wir hier auch, dass nicht jedes Items einen Wert hat. Zum Beispiel ist die Lüftergeschwindigkeit undefiniert. Macht auch Sinn, da ich bei meinem Raspberry Pi auch keine Lüfter habe.

Itmes sortieren

Je nach dem auf welchen System bei euch openHAB läuft, können hier bestimmte Items leer sein. Um diese jetzt besser aussortieren zu könne, werden wir uns diese einmal etwas sortieren und anschließend in der sitemap anzeigen lassen.

Als erstes werden wir zur besseren Übersicht die items in Blöcke gruppieren

Wie ihr seht sind unsere Itmes auch schon grob sortiert. Wir müssen daher nur dazwischen eine leere Zeile einfügen und ein Kommentar ergänzen. Vielleicht sind dann noch ein paar Item die wir zwischen den Blöcken hin und her verschieben müssen.

//RAM
Number   RaspberryPiServerMemoryTotal                 "Total"                  {channel="systeminfo:computer:openhab:memory#total"}
Number   RaspberryPiServerMemoryAvailable             "Available"              {channel="systeminfo:computer:openhab:memory#available"}
Number   RaspberryPiServerMemoryUsed                  "Used"                   {channel="systeminfo:computer:openhab:memory#used"}
Number   RaspberryPiServerMemoryAvailablePercent      "Available (%)"          {channel="systeminfo:computer:openhab:memory#availablePercent"}
Number   RaspberryPiServerMemoryUsedPercent           "Used (%)"               {channel="systeminfo:computer:openhab:memory#usedPercent"}

//Speicher
Number   RaspberryPiServerStorageTotal                "Total"                  {channel="systeminfo:computer:openhab:storage#total"}
Number   RaspberryPiServerStorageAvailable            "Available"              {channel="systeminfo:computer:openhab:storage#available"}
Number   RaspberryPiServerStorageUsed                 "Used"                   {channel="systeminfo:computer:openhab:storage#used"}
Number   RaspberryPiServerStorageAvailablePercent     "Available (%)"          {channel="systeminfo:computer:openhab:storage#availablePercent"}
Number   RaspberryPiServerStorageUsedPercent          "Used (%)"               {channel="systeminfo:computer:openhab:storage#usedPercent"}
String   RaspberryPiServerStorageName                 "Name"                   {channel="systeminfo:computer:openhab:storage#name"}
String   RaspberryPiServerStorageDescription          "Description"            {channel="systeminfo:computer:openhab:storage#description"}
String   RaspberryPiServerStorageType                 "Type"                   {channel="systeminfo:computer:openhab:storage#type"}

//Laufwerk
String   RaspberryPiServerDriveName                   "Name"                   {channel="systeminfo:computer:openhab:drive#name"}
String   RaspberryPiServerDriveModel                  "Model"                  {channel="systeminfo:computer:openhab:drive#model"}
String   RaspberryPiServerDriveSerial                 "Serial number"          {channel="systeminfo:computer:openhab:drive#serial"}

//CPU
Number   RaspberryPiServerSensorsCpuTemp              "Cpu temperature"        {channel="systeminfo:computer:openhab:sensors#cpuTemp"}
Number   RaspberryPiServerSensorsCpuVoltage           "Cpu voltage"            {channel="systeminfo:computer:openhab:sensors#cpuVoltage"}
Number   RaspberryPiServerSensorsFanSpeed             "Fan speed"              {channel="systeminfo:computer:openhab:sensors#fanSpeed"}
String   RaspberryPiServerCpuName                     "Name"                   {channel="systeminfo:computer:openhab:cpu#name"}
String   RaspberryPiServerCpuDescription              "Description"            {channel="systeminfo:computer:openhab:cpu#description"}
Number   RaspberryPiServerCpuLoad1                    "Load average"           {channel="systeminfo:computer:openhab:cpu#load1"}
Number   RaspberryPiServerCpuLoad5                    "Load average"           {channel="systeminfo:computer:openhab:cpu#load5"}
Number   RaspberryPiServerCpuLoad15                   "Load average"           {channel="systeminfo:computer:openhab:cpu#load15"}
Number   RaspberryPiServerCpuUptime                   "System uptime"          {channel="systeminfo:computer:openhab:cpu#uptime"}
Number   RaspberryPiServerCpuThreads                  "Number of threads"      {channel="systeminfo:computer:openhab:cpu#threads"}

//Swap-Speicher
Number   RaspberryPiServerSwapTotal                   "Total"                  {channel="systeminfo:computer:openhab:swap#total"}
Number   RaspberryPiServerSwapAvailable               "Available"              {channel="systeminfo:computer:openhab:swap#available"}
Number   RaspberryPiServerSwapUsed                    "Used"                   {channel="systeminfo:computer:openhab:swap#used"}
Number   RaspberryPiServerSwapAvailablePercent        "Available (%)"          {channel="systeminfo:computer:openhab:swap#availablePercent"}
Number   RaspberryPiServerSwapUsedPercent             "Used (%)"               {channel="systeminfo:computer:openhab:swap#usedPercent"}

//Netzwerk
String   RaspberryPiServerNetworkIp                   "Ip address"             {channel="systeminfo:computer:openhab:network#ip"}
String   RaspberryPiServerNetworkNetworkName          "Network name"           {channel="systeminfo:computer:openhab:network#networkName"}
String   RaspberryPiServerNetworkNetworkDisplayName   "Network display name"   {channel="systeminfo:computer:openhab:network#networkDisplayName"}
Number   RaspberryPiServerNetworkDataSent             "Data sent"              {channel="systeminfo:computer:openhab:network#dataSent"}
Number   RaspberryPiServerNetworkDataReceived         "Data received"          {channel="systeminfo:computer:openhab:network#dataReceived"}
Number   RaspberryPiServerNetworkPacketsSent          "Packets sent"           {channel="systeminfo:computer:openhab:network#packetsSent"}
Number   RaspberryPiServerNetworkPacketsReceived      "Packets received"       {channel="systeminfo:computer:openhab:network#packetsReceived"}
String   RaspberryPiServerNetworkMac                  "Mac address"            {channel="systeminfo:computer:openhab:network#mac"}

//Sonstiges
String   RaspberryPiServerDisplayInformation          "Display information"    {channel="systeminfo:computer:openhab:display#information"}
String   RaspberryPiServerBatteryName                 "Name"                   {channel="systeminfo:computer:openhab:battery#name"}
Number   RaspberryPiServerBatteryRemainingCapacity    "Remaining capacity"     {channel="systeminfo:computer:openhab:battery#remainingCapacity"}
Number   RaspberryPiServerBatteryRemainingTime        "Remaining time"         {channel="systeminfo:computer:openhab:battery#remainingTime"}
Number   RaspberryPiServerProcessLoad                 "Load"                   {channel="systeminfo:computer:openhab:process#load"}
Number   RaspberryPiServerProcessUsed                 "Used"                   {channel="systeminfo:computer:openhab:process#used"}
String   RaspberryPiServerProcessName                 "Name"                   {channel="systeminfo:computer:openhab:process#name"}
Number   RaspberryPiServerProcessThreads              "Number of threads"      {channel="systeminfo:computer:openhab:process#threads"}
String   RaspberryPiServerProcessPath                 "Path"                   {channel="systeminfo:computer:openhab:process#path"}

Falls ihr openHAB ebenfalls auf einen Raspberry Pi installiert habt, könnt ihr euch meine Items Datei auch kopieren. Achtet jedoch darauf, dass ihr den Namen Raspberry Pi Server gegebenenfalls durch euren vergebenen Namen austauschen müsst.

Nachdem wir alle Items sortiert haben, werden wir noch den Anzeigetext in deutsche Bezeichnungen ändern. Außerdem sind hier die erstellt Text wie „Gesamt“ oder „Verfügbar“ nicht sehr aussagekräftig. Wenn man später in der Sitemap Frames bzw. Überschriften mit CPU, Arbeitsspeicher etc. erstellt, dann sind die Bezeichnungen „Gesamt“ oder „Verfügbar“ etc. natürlich ausreichend.

Ich werde jedoch meinen Text auf zum Beispiel RAM Gesamt, RAM Verfügbar etc. ändern. Warum ich diese Variante wähle werdet ihr später noch sehen.

//RAM
Number   RaspberryPiServerMemoryTotal                 "RAM Gesamt"                  {channel="systeminfo:computer:openhab:memory#total"}
Number   RaspberryPiServerMemoryAvailable             "RAM Verfügbar"              {channel="systeminfo:computer:openhab:memory#available"}
Number   RaspberryPiServerMemoryUsed                  "RAM Verwendet"                   {channel="systeminfo:computer:openhab:memory#used"}
Number   RaspberryPiServerMemoryAvailablePercent      "RAM Verfügbar (%)"          {channel="systeminfo:computer:openhab:memory#availablePercent"}
Number   RaspberryPiServerMemoryUsedPercent           "RAM Verwendet (%)"               {channel="systeminfo:computer:openhab:memory#usedPercent"}

//Speicher
Number   RaspberryPiServerStorageTotal                "Speicher Gesamt"                  {channel="systeminfo:computer:openhab:storage#total"}
Number   RaspberryPiServerStorageAvailable            "Speicher Verfügbar"              {channel="systeminfo:computer:openhab:storage#available"}
Number   RaspberryPiServerStorageUsed                 "Speicher Verwendet"                   {channel="systeminfo:computer:openhab:storage#used"}
Number   RaspberryPiServerStorageAvailablePercent     "Speicher Verfügbar (%)"          {channel="systeminfo:computer:openhab:storage#availablePercent"}
Number   RaspberryPiServerStorageUsedPercent          "Speicher Verwendet (%)"               {channel="systeminfo:computer:openhab:storage#usedPercent"}
String   RaspberryPiServerStorageName                 "Speicher Name"                   {channel="systeminfo:computer:openhab:storage#name"}
String   RaspberryPiServerStorageDescription          "Speicher Beschreibung"            {channel="systeminfo:computer:openhab:storage#description"}
String   RaspberryPiServerStorageType                 "Speicher Typ"                   {channel="systeminfo:computer:openhab:storage#type"}

//CPU
Number   RaspberryPiServerSensorsCpuTemp              "CPU Temperatur"        {channel="systeminfo:computer:openhab:sensors#cpuTemp"}
Number   RaspberryPiServerSensorsCpuVoltage           "Cpu Spannung"            {channel="systeminfo:computer:openhab:sensors#cpuVoltage"}
Number   RaspberryPiServerSensorsFanSpeed             "Lüfter-Geschwindigkeit"              {channel="systeminfo:computer:openhab:sensors#fanSpeed"}
String   RaspberryPiServerCpuName                     "CPU Name"                   {channel="systeminfo:computer:openhab:cpu#name"}
String   RaspberryPiServerCpuDescription              "CPU Beschreibung"            {channel="systeminfo:computer:openhab:cpu#description"}
Number   RaspberryPiServerCpuLoad1                    "CPU1 Auslastung"           {channel="systeminfo:computer:openhab:cpu#load1"}
Number   RaspberryPiServerCpuLoad5                    "CPU5 Auslastung"           {channel="systeminfo:computer:openhab:cpu#load5"}
Number   RaspberryPiServerCpuLoad15                   "CPU15 Auslastung"           {channel="systeminfo:computer:openhab:cpu#load15"}
Number   RaspberryPiServerCpuUptime                   "CPU Betriebszeit"          {channel="systeminfo:computer:openhab:cpu#uptime"}
Number   RaspberryPiServerCpuThreads                  "CPU Threats"      {channel="systeminfo:computer:openhab:cpu#threads"}

//Swap-Speicher
Number   RaspberryPiServerSwapTotal                   "Swap-Speicher Gesamt"                  {channel="systeminfo:computer:openhab:swap#total"}
Number   RaspberryPiServerSwapAvailable               "Swap-Speicher Verfügbar"              {channel="systeminfo:computer:openhab:swap#available"}
Number   RaspberryPiServerSwapUsed                    "Swap-Speicher Verwendet"                   {channel="systeminfo:computer:openhab:swap#used"}
Number   RaspberryPiServerSwapAvailablePercent        "Swap-Speicher Verfügbar (%)"          {channel="systeminfo:computer:openhab:swap#availablePercent"}
Number   RaspberryPiServerSwapUsedPercent             "Swap-Speicher Verwendet (%)"               {channel="systeminfo:computer:openhab:swap#usedPercent"}

//Netzwerk
String   RaspberryPiServerNetworkIp                   "IP Adresse"             {channel="systeminfo:computer:openhab:network#ip"}
String   RaspberryPiServerNetworkNetworkName          "Netzwerkname"           {channel="systeminfo:computer:openhab:network#networkName"}
String   RaspberryPiServerNetworkNetworkDisplayName   "Netzwerkname"   {channel="systeminfo:computer:openhab:network#networkDisplayName"}
Number   RaspberryPiServerNetworkDataSent             "Netzwerk Daten gesendet"              {channel="systeminfo:computer:openhab:network#dataSent"}
Number   RaspberryPiServerNetworkDataReceived         "Netzwerk Daten empfangen"          {channel="systeminfo:computer:openhab:network#dataReceived"}
Number   RaspberryPiServerNetworkPacketsSent          "Netzwerk Pakete gesendet"           {channel="systeminfo:computer:openhab:network#packetsSent"}
Number   RaspberryPiServerNetworkPacketsReceived      "Netzwerk Pakete empfangen"       {channel="systeminfo:computer:openhab:network#packetsReceived"}
String   RaspberryPiServerNetworkMac                  "MAC Addresse"            {channel="systeminfo:computer:openhab:network#mac"}

//Laufwerk
String   RaspberryPiServerDriveName                   "Laufwerk Name"                   {channel="systeminfo:computer:openhab:drive#name"}
String   RaspberryPiServerDriveModel                  "Laufwerk Model"                  {channel="systeminfo:computer:openhab:drive#model"}
String   RaspberryPiServerDriveSerial                 "Laufwerk Serial number"          {channel="systeminfo:computer:openhab:drive#serial"}

//Sonstiges
String   RaspberryPiServerDisplayInformation          "Display Information"    {channel="systeminfo:computer:openhab:display#information"}
String   RaspberryPiServerBatteryName                 "Batteriename"                   {channel="systeminfo:computer:openhab:battery#name"}
Number   RaspberryPiServerBatteryRemainingCapacity    "Batterie Restladung"     {channel="systeminfo:computer:openhab:battery#remainingCapacity"}
Number   RaspberryPiServerBatteryRemainingTime        "Batterie Restzeit"         {channel="systeminfo:computer:openhab:battery#remainingTime"}
Number   RaspberryPiServerProcessLoad                 "Process Load"                   {channel="systeminfo:computer:openhab:process#load"}
Number   RaspberryPiServerProcessUsed                 "Process Used"                   {channel="systeminfo:computer:openhab:process#used"}
String   RaspberryPiServerProcessName                 "Process Name"                   {channel="systeminfo:computer:openhab:process#name"}
Number   RaspberryPiServerProcessThreads              "Process Number of threads"      {channel="systeminfo:computer:openhab:process#threads"}
String   RaspberryPiServerProcessPath                 "Process Path"                   {channel="systeminfo:computer:openhab:process#path"}

Item Gruppe erstellen

Zu guter Letzt erstellen wir noch eine Gruppe in der wir alle unsere Systemdaten unterordnen.

Ich nenne diese Gruppe daher Group Systeminfo.

Group     Systeminfo

Jetzt müssen wir diesen Gruppenamen noch bei jedem Item ergänzen. Damit wir hier nicht bei jedem Item in Klammer (Systeminfo) ergänzen müssen verwende wir einfach das Suchen und ersetzten Werkzeugt. Wir suchen nach geschwungener klammer auf channel und ersetze diesen Text durch (Systeminfo) Leerzeichen und wieder geschwungener klammer auf channel. Anschließend klicken wir auf alle ersetzen. Jetzt wurde vor jeder geschwungen klammer der Eintrag ergänzt.

openHAB 2 Systeminfo Binding – Suchen und Ersetzen – digitalewelt.at
Group     Systeminfo

//RAM
Number    RaspberryPiServerMemoryTotal                  "RAM Gesamt"                           (Systeminfo)    {channel="systeminfo:computer:openhab:memory#total"}
Number    RaspberryPiServerMemoryAvailable              "RAM Verfügbar"                        (Systeminfo)    {channel="systeminfo:computer:openhab:memory#available"}
Number    RaspberryPiServerMemoryUsed                   "RAM Verwendet"                        (Systeminfo)    {channel="systeminfo:computer:openhab:memory#used"}
Number    RaspberryPiServerMemoryAvailablePercent       "RAM Verfügbar (%)"                    (Systeminfo)    {channel="systeminfo:computer:openhab:memory#availablePercent"}
Number    RaspberryPiServerMemoryUsedPercent            "RAM Verwendet (%)"                    (Systeminfo)    {channel="systeminfo:computer:openhab:memory#usedPercent"}

//Speicher
Number    RaspberryPiServerStorageTotal                 "Speicher Gesamt"                      (Systeminfo)    {channel="systeminfo:computer:openhab:storage#total"}
Number    RaspberryPiServerStorageAvailable             "Speicher Verfügbar"                   (Systeminfo)    {channel="systeminfo:computer:openhab:storage#available"}
Number    RaspberryPiServerStorageUsed                  "Speicher Verwendet"                   (Systeminfo)    {channel="systeminfo:computer:openhab:storage#used"}
Number    RaspberryPiServerStorageAvailablePercent      "Speicher Verfügbar (%)"               (Systeminfo)    {channel="systeminfo:computer:openhab:storage#availablePercent"}
Number    RaspberryPiServerStorageUsedPercent           "Speicher Verwendet (%)"               (Systeminfo)    {channel="systeminfo:computer:openhab:storage#usedPercent"}
String    RaspberryPiServerStorageName                  "Speicher Name"                        (Systeminfo)    {channel="systeminfo:computer:openhab:storage#name"}
String    RaspberryPiServerStorageDescription           "Speicher Beschreibung"                (Systeminfo)    {channel="systeminfo:computer:openhab:storage#description"}
String    RaspberryPiServerStorageType                  "Speicher Typ"                         (Systeminfo)    {channel="systeminfo:computer:openhab:storage#type"}

//CPU
Number    RaspberryPiServerSensorsCpuTemp               "CPU Temperatur"                     (Systeminfo)    {channel="systeminfo:computer:openhab:sensors#cpuTemp"}
//Number    RaspberryPiServerSensorsCpuVoltage            "Cpu Spannung"                  (Systeminfo)    {channel="systeminfo:computer:openhab:sensors#cpuVoltage"}
//Number    RaspberryPiServerSensorsFanSpeed              "Lüfter-Geschwindigkeit"        (Systeminfo)    {channel="systeminfo:computer:openhab:sensors#fanSpeed"}
String    RaspberryPiServerCpuName                      "CPU Name"                             (Systeminfo)    {channel="systeminfo:computer:openhab:cpu#name"}
//String    RaspberryPiServerCpuDescription               "CPU Beschreibung"              (Systeminfo)    {channel="systeminfo:computer:openhab:cpu#description"}
Number    RaspberryPiServerCpuLoad1                     "CPU1 Auslastung"                      (Systeminfo)    {channel="systeminfo:computer:openhab:cpu#load1"}
Number    RaspberryPiServerCpuLoad5                     "CPU5 Auslastung"                      (Systeminfo)    {channel="systeminfo:computer:openhab:cpu#load5"}
Number    RaspberryPiServerCpuLoad15                    "CPU15 Auslastung"                     (Systeminfo)    {channel="systeminfo:computer:openhab:cpu#load15"}
Number    RaspberryPiServerCpuUptime                    "CPU Betriebszeit"                     (Systeminfo)    {channel="systeminfo:computer:openhab:cpu#uptime"}
Number    RaspberryPiServerCpuThreads                   "CPU Threats"                          (Systeminfo)    {channel="systeminfo:computer:openhab:cpu#threads"}

//Swap-Speicher
Number    RaspberryPiServerSwapTotal                    "Swap-Speicher Gesamt"                 (Systeminfo)    {channel="systeminfo:computer:openhab:swap#total"}
Number    RaspberryPiServerSwapAvailable                "Swap-Speicher Verfügbar"              (Systeminfo)    {channel="systeminfo:computer:openhab:swap#available"}
Number    RaspberryPiServerSwapUsed                     "Swap-Speicher Verwendet"              (Systeminfo)    {channel="systeminfo:computer:openhab:swap#used"}
Number    RaspberryPiServerSwapAvailablePercent         "Swap-Speicher Verfügbar (%)"          (Systeminfo)    {channel="systeminfo:computer:openhab:swap#availablePercent"}
Number    RaspberryPiServerSwapUsedPercent              "Swap-Speicher Verwendet (%)"          (Systeminfo)    {channel="systeminfo:computer:openhab:swap#usedPercent"}

//Netzwerk
String    RaspberryPiServerNetworkIp                    "IP Adresse"                           (Systeminfo)    {channel="systeminfo:computer:openhab:network#ip"}
String    RaspberryPiServerNetworkNetworkName           "Netzwerkname"                         (Systeminfo)    {channel="systeminfo:computer:openhab:network#networkName"}
String    RaspberryPiServerNetworkNetworkDisplayName    "Netzwerkname"                         (Systeminfo)    {channel="systeminfo:computer:openhab:network#networkDisplayName"}
Number    RaspberryPiServerNetworkDataSent              "Netzwerk Daten gesendet"               (Systeminfo)    {channel="systeminfo:computer:openhab:network#dataSent"}
Number    RaspberryPiServerNetworkDataReceived          "Netzwerk Daten empfangen"            (Systeminfo)    {channel="systeminfo:computer:openhab:network#dataReceived"}
Number    RaspberryPiServerNetworkPacketsSent           "Netzwerk Pakete gesendet"              (Systeminfo)    {channel="systeminfo:computer:openhab:network#packetsSent"}
Number    RaspberryPiServerNetworkPacketsReceived       "Netzwerk Pakete empfangen"           (Systeminfo)    {channel="systeminfo:computer:openhab:network#packetsReceived"}
String    RaspberryPiServerNetworkMac                   "MAC Addresse"                         (Systeminfo)    {channel="systeminfo:computer:openhab:network#mac"}

//Laufwerk
String    RaspberryPiServerDriveName                    "Laufwerk Name"                        (Systeminfo)    {channel="systeminfo:computer:openhab:drive#name"}
//String    RaspberryPiServerDriveModel                   "Laufwerk Model"                (Systeminfo)    {channel="systeminfo:computer:openhab:drive#model"}
//String    RaspberryPiServerDriveSerial                  "Laufwerk Serial number"        (Systeminfo)    {channel="systeminfo:computer:openhab:drive#serial"}

//Sonstiges
//String    RaspberryPiServerDisplayInformation           "Display Information"           (Systeminfo)    {channel="systeminfo:computer:openhab:display#information"}
//String    RaspberryPiServerBatteryName                  "Batteriename"                  (Systeminfo)    {channel="systeminfo:computer:openhab:battery#name"}
//Number    RaspberryPiServerBatteryRemainingCapacity     "Batterie Restladung"           (Systeminfo)    {channel="systeminfo:computer:openhab:battery#remainingCapacity"}
//Number    RaspberryPiServerBatteryRemainingTime         "Batterie Restzeit"             (Systeminfo)    {channel="systeminfo:computer:openhab:battery#remainingTime"}
//Number    RaspberryPiServerProcessLoad                  "Process Load"                  (Systeminfo)    {channel="systeminfo:computer:openhab:process#load"}
//Number    RaspberryPiServerProcessUsed                  "Process Used"                  (Systeminfo)    {channel="systeminfo:computer:openhab:process#used"}
//String    RaspberryPiServerProcessName                  "Process Name"                  (Systeminfo)    {channel="systeminfo:computer:openhab:process#name"}
//Number    RaspberryPiServerProcessThreads               "Process Number of threads"     (Systeminfo)    {channel="systeminfo:computer:openhab:process#threads"}
//String    RaspberryPiServerProcessPath                  "Process Path"                  (Systeminfo)    {channel="systeminfo:computer:openhab:process#path"}

In Sitemap einbinden

Sind wir mir den Items Fertig wechseln wir zu unserer Sitemap. Ich werde vorab diese Daten nur in meiner Admin Sitemap einbinden.

In dieser erstellen wir jetzt einen neuen Framen mit dem Namen bzw. label Systeminformationen

In diesem Frame kommt jetzt unsere Gruppe mit Group Systeminfo und als Label alle Werte anzeigen.

    Frame label="Systeminformationen" {
        Group item=Systeminfo label="Alle Werte anzeigen"
    }

Nachdem wir alles gespeichert haben, können wir auch gleich einmal das BasicUI unserer erstellten Sitemap ansehen.

In dieser finden wir ganz unten den Eintrag Systeminformationen mit dem Punkt Alle Wert anzeigen.

openHAB 2 Systeminfo Binding – Alle Werte anzeigen – digitalewelt.at

Wenn wir diesen auswählen kommen wir zu der Liste mit den Systemdaten unseres Raspberry Pis.

Items ohne Werte löschen

Auch hier sehen wir dann nochmal dass einige Items keinen Wert vom System bekommen. Diese Items können wir jetzt auch gleich löschen. Natürlich könnt ihr auch andere Items löschen die für euch nicht relevant oder wichtig sind.

openHAB 2 Systeminfo Binding – Items ohne Werte – digitalewelt.at

Ich werde bei mir die Items nur aus kommentieren. So könnt ihr meine Liste einfach kopieren und seht auch welche Werte ich entfernt habe. 

Icons einfügen

Was natürlich noch sehr stört ist, dass wir noch keine Icons angezeigt bekommen. Das werden wir natürlich gleich als nächstes nachholen.

Dazu öffnen wir die Icons Seite von openHAB um uns hier die passenden Icons heraussuchen zu können.

Icons Seite von openHAB

Bei Werten bei denen ich kein passendes Symbol finde, verwende ich einfach das Zahnradsysmbol.

Den Namen des icons fügen wird dann in gespitzter Klammer zwischen dem Anzeigenamen und der Gruppenzuweisung ein.

//RAM
Number    RaspberryPiServerMemoryTotal                  "RAM Gesamt"                     <settings>       (Systeminfo)    {channel="systeminfo:computer:openhab:memory#total"}
Number    RaspberryPiServerMemoryAvailable              "RAM Verfügbar"                  <settings>       (Systeminfo)    {channel="systeminfo:computer:openhab:memory#available"}
Number    RaspberryPiServerMemoryUsed                   "RAM Verwendet"                  <settings>       (Systeminfo)    {channel="systeminfo:computer:openhab:memory#used"}
Number    RaspberryPiServerMemoryAvailablePercent       "RAM Verfügbar (%)"              <settings>       (Systeminfo)    {channel="systeminfo:computer:openhab:memory#availablePercent"}
Number    RaspberryPiServerMemoryUsedPercent            "RAM Verwendet (%)"              <settings>       (Systeminfo)    {channel="systeminfo:computer:openhab:memory#usedPercent"}

Wenn wir auch damit fertig sind, können wir unsere Liste nochmal im Basic UI testen. Wie ihr hier seht ist das ganze jetzt schon sehr sauber aus.

openHAB 2 Systeminfo Binding – UI mit Icons – digitalewelt.at

Sitemap optimieren

Jedoch habe ich im Frame Systeminformationen das Untermanü nicht ohne Grund alle Werte anzeigen genannt. Denn ich möchte hier noch ein paar ausgewählte Werte direkt im Frame angezeigt bekommen.

Das mach ich indem ich im Frame vor dem Group Eintrag noch Default item ist gleich und dem Namen des ausgewählten items ergänze. Als Beispiel werde ich hier einmal die CPU Temperatur und die Prozentuale Arbeitsspeicher Auslastung anteigen lassen.

    Frame label="Systeminformationen" {
        Default item=RaspberryPiServerSensorsCpuTemp
        Default item=RaspberryPiServerMemoryUsedPercent
        Group item=Systeminfo label="Alle Werte anzeigen"
    }

Nach dem speichern sieht das Ganze dann so aus.

openHAB 2 Systeminfo Binding – UI mit zusätzlich Werte – digitalewelt.at

Sitemap mit Frames

Falls euch das mit dem Untermenü nicht gefällt könnt ihr euch einzelne Frames anlegen.

openHAB 2 Systeminfo Binding – Sitemap mit Frames – digitalewelt.at

Ich habe euch auch diese Variante einmal zum Download vorbereitet.

Diesen Werten können wir dann natürlich auch aufzeichne und als Diagramm anzeigen lassen, oder uns auch benachrichtigen lassen falls irgendein Wert eine bestimmte Grenze überschreitet.

Wie das alles funktioniert seht ihr aber in einem meiner nächsten Videos oder hier auf diese Seite.

Downloads

Video zum Beitrag

Zum Youtube Kanal von DigitaleWelt

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

 

Schreibe einen Kommentar