Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [gelöst] Leistungswerte der Hardware auslesen und anzeigen

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    775

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    6.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

[gelöst] Leistungswerte der Hardware auslesen und anzeigen

Scheduled Pinned Locked Moved ioBroker Allgemein
90 Posts 13 Posters 24.8k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    MeisterF
    wrote on last edited by
    #81

    @ruhr70

    Na toll, jetzt wollte ich hier ein CPU-Temperatur-Script einstellen (das ich nur durch Änderungen deines ersten Scriptes gebastelt habe).

    Wer es trotzdem will:

    (Es liest nur die Temperatur der ersten CPU aus und es muss lm-sensors installiert sein - apt-get install lm-sensors - also nur Linux-Rechner)

    ! ````
    var pfad = "Systeminfos.host" + ".";
    var cronStr = "*/1 * * * *";
    ! var abfrage = "sensors | grep 'Core 0:'|tail -n 1 | awk '{print $3}'";
    ! var idCPUTemperatur = pfad + 'CPU_Temperatur';
    ! createState(idCPUTemperatur, 0, {
    name: 'CPU Temperatur',
    desc: 'CPU Temperatur',
    type: 'number',
    unit: '° C',
    role: 'value'
    });

    ! function abfrageCPU() {
    exec(abfrage, function(err, stdout, stderr) {
    if (err) {
    log(err,"error");
    return;
    }
    //log(stdout);
    setStateDelayed(idCPUTemperatur,parseInt(stdout),true,100);
    });
    }
    ! function abfragen() {
    abfrageCPU();
    }
    ! // regelmässige Wiederholungen
    // -----------------------------------------------------------------------------
    schedule(cronStr, abfragen);
    ! // main
    // -----------------------------------------------------------------------------
    function main() {
    abfragen();
    }
    ! // Start Skript:
    // -----------------------------------------------------------------------------
    ! setTimeout(main, 500);
    ! ````

    Ich habe Deinen anderen auch am Laufen - wenn Du da mal noch dieses "true" an der richtigen Stelle rein basteln könntest …

    Ich habe darin die Zeile:

    setStateDelayed(idCPUTemperatur,parseInt(stdout),true,100);

    nicht gefunden.

    zum neuen Adapter …. über die Katze ???

    HP dc9700 debian 9 64bit, admin: 2.0.9,email: 1.0.2,flot: 1.7.0,history: 1.6.6,javascript: 3.5.1, js-controller: 1.2.3,km200: 1.1.6,modbus: 0.5.4,vis : 1.0.4,web: 2.1.9

    GB162 mit Buderus web KM200, SolarEdge SE5k mit Modbus Zähler

    1 Reply Last reply
    0
    • ruhr70R Offline
      ruhr70R Offline
      ruhr70
      wrote on last edited by
      #82

      @MeisterF:

      Ich habe Deinen anderen auch am Laufen - wenn Du da mal noch dieses "true" an der richtigen Stelle rein basteln könntest …

      Ich habe darin die Zeile:

      setStateDelayed(idCPUTemperatur,parseInt(stdout),true,100);

      nicht gefunden. `

      Wenn Du noch was anpassen willst…

      Im Speicher Skript werden z.B. die Datenpunkte im setState() innerhalb dieser Funktion geschrieben:

      function writeDp(arr) {
          var i = 0;
          for (var dp in datenpunkte) {
              var wert = parseInt(arr[i++]);
              setState(pfad + dp,wert);
              //log(dp+": "+ wert + " #" + typeof(wert));
          }
      }
      
      

      @MeisterF:

      zum neuen Adapter …. über die Katze ??? `

      Siehe Thread: http://forum.iobroker.net/viewtopic.php … nfo#p97813

      Dort steht der Link zum Adapter auf Github.

      Die Github Katze findest Du im Admin/Adapter. Das dritte Icon oben von Links.

      Dann den Tab "beliebig" auswählen, dort in das Feld URL den Github-Linl reinkopieren.

      Dann taucht der Adapter unter Adapter auf und Du kannst in mit dem Plus in der rechten Spalte zu den Instanzen hinzufügen.

      Adapter: Fritzbox, Unify Circuit
      Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

      1 Reply Last reply
      0
      • M Offline
        M Offline
        MeisterF
        wrote on last edited by
        #83

        aha - Danke

        setStateDelayed(idCPUTemperatur,parseInt(stdout),true,100);
        

        ` > Wenn Du noch was anpassen willst…

        Im Speicher Skript werden z.B. die Datenpunkte im setState() innerhalb dieser Funktion geschrieben:

        function writeDp(arr) {
            var i = 0;
            for (var dp in datenpunkte) {
                var wert = parseInt(arr[i++]);
                setState(pfad + dp,wert);
                //log(dp+": "+ wert + " #" + typeof(wert));
        
        ```` `  
        

        sollte dann also:

        function writeDp(arr) {
            var i = 0;
            for (var dp in datenpunkte) {
                var wert = parseInt(arr[i++]);
                setState(pfad + dp,wert,true,100);
                //log(dp+": "+ wert + " #" + typeof(wert));
        
        

        sein, oder ohne die 100 ?

        Ich habe es probiert und setState(pfad + dp,wert,true); lässt die Werte grün - dann schwarz erscheinen.

        Bei dem neuen Adapter gibt es den Pfad zur Systemtemperatur auf meinem debian 9 nicht - also da steht nichts unter

        /sys/class/thermal/thermalzone ….

        (aber dann später mal in dem Thread)

        HP dc9700 debian 9 64bit, admin: 2.0.9,email: 1.0.2,flot: 1.7.0,history: 1.6.6,javascript: 3.5.1, js-controller: 1.2.3,km200: 1.1.6,modbus: 0.5.4,vis : 1.0.4,web: 2.1.9

        GB162 mit Buderus web KM200, SolarEdge SE5k mit Modbus Zähler

        1 Reply Last reply
        0
        • ruhr70R Offline
          ruhr70R Offline
          ruhr70
          wrote on last edited by
          #84

          @MeisterF:

          sein, oder ohne die 100 ? `

          Ohne die 100.

          Siehe https://github.com/ioBroker/ioBroker.ja … d#setstate

          setState (id, state, ack, callback)
          

          Adapter: Fritzbox, Unify Circuit
          Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

          1 Reply Last reply
          0
          • R Offline
            R Offline
            Rompe
            wrote on last edited by
            #85

            @ruhr70:

            Uptime ioBroker (oben war es die Updike vom Linux Host):

            ! // system.host.ubuntu1604server.uptime ! var pfad = "Systeminfos.ioBroker" + "."; var idState = "uptime"; ! createState(pfad + idState, 0, { name: 'ioBroker uptime', desc: 'ioBroker uptime', type: 'number', unit: '', role: 'value' }); ! on({id:"system.host.ubuntu1604server.uptime",change:'any'}, function (obj) { setState(pfad + idState,Math.floor((obj.newState.val/3600)/24)); }); ! // main // ----------------------------------------------------------------------------- function main() { // } ! // Start Skript: // ----------------------------------------------------------------------------- ! setTimeout(main, 500); ! `

            Huhu zusammen.

            Kann man dieses Script noch erweitern, so dass neben den Tagen auch die Stunden und Minuten ausgegeben werden? Format wie "5T. 19:24" (also 5 Tage, 19 Stunden, 24 Minuten). habe schon versucht ein wenig herumzubasteln, aber bekomme es einfach nicht hin. Über Google habe ich zwar ein paar Sachen zur Umrechnung gefunden, bekomme sie aber nicht richtig in den Code reingepackt.

            MfG,

            Tobi

            1 Reply Last reply
            0
            • ruhr70R Offline
              ruhr70R Offline
              ruhr70
              wrote on last edited by
              #86

              @Rompe:

              Huhu zusammen.

              Kann man dieses Script noch erweitern, so dass neben den Tagen auch die Stunden und Minuten ausgegeben werden? Format wie "5T. 19:24" (also 5 Tage, 19 Stunden, 24 Minuten). habe schon versucht ein wenig herumzubasteln, aber bekomme es einfach nicht hin. Über Google habe ich zwar ein paar Sachen zur Umrechnung gefunden, bekomme sie aber nicht richtig in den Code reingepackt.

              MfG,

              Tobi `

              probier mal:

              // system.host.ubuntu1604server.uptime
              
              var pfad        = "Systeminfos.ioBroker" + ".";
              var idState     = "uptime";
              var idStateStr  = "uptimeStr";
              
              createState(pfad + idState, 0, {
                   name: 'ioBroker uptime',
                   desc: 'ioBroker uptime',
                   type: 'number',
                   unit: '',
                   role: 'value'
              });
              
              createState(pfad + idStateStr, "init", {
                  name: 'ioBroker uptime als String',
                  desc: 'ioBroker uptime als String',
                  type: 'string',
                  unit: '',
                  role: 'value'
              });
              
              function dauerStr(sek) {
                  var tage = Math.floor(sek / (24*3600));
                  var stunden = Math.floor((sek % (24*3600))/3600);
                  var minuten = Math.floor((sek % (3600))/60);
                  var sekunden = Math.floor(sek % 60);
                  return tage.toString()+"d "+stunden.toString()+"h "+minuten.toString()+"m "+sekunden.toString()+"s";
              }
              
              on({id:"system.host.ubuntu1604server.uptime",change:'any'}, function (obj) {
                  setState(pfad + idState,Math.floor((obj.newState.val/3600)/24));
                  setState(pfad + idStateStr,dauerStr(obj.newState.val));
              });
              
              // main
              // -----------------------------------------------------------------------------
              function main() {
                  //
              }
              
              // Start Skript:
              // -----------------------------------------------------------------------------
              
              setTimeout(main,    500);
              

              [EDIT] 2. createState, type auf "string" geändert.

              Adapter: Fritzbox, Unify Circuit
              Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

              1 Reply Last reply
              0
              • R Offline
                R Offline
                Rompe
                wrote on last edited by
                #87

                Wow, klasse. Vielen Dank. Funzt 1A

                1 Reply Last reply
                0
                • R Offline
                  R Offline
                  Rompe
                  wrote on last edited by
                  #88

                  Ah, doch leider noch nicht ganz.

                  Habe verschiedene Datenpunkte in ein HTML Feld eingebunden. Doch leider zeigt mir vis als Wert "undefined" bei der uptime an.

                  Eingebunden ist es in der Tabellenzelle mit {javascript.0.Systeminfos.RaspberryPi1.uptime}

                  Edit: Im Datenpunkt selbst wird es richtig dargestellt.

                  MfG,

                  Tobi

                  1 Reply Last reply
                  0
                  • A Offline
                    A Offline
                    aleks-83
                    wrote on last edited by
                    #89

                    @ruhr70:

                    Und eine Variante der Darstellung:

                    iobroker host.jpg `

                    Hallo ruhr70,

                    Ich bin seeehr interessiert an einem Widget Export deiner Darstelleung :mrgreen:

                    Wäre es möglich dass du das mit uns teilst?

                    Deine Skripte werde ich dann auch entpsrechend anpassen und verwenden.

                    Vielen Dank schonmal dass du sie mit uns teilst!

                    = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                    = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                    Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                    Glasfaser 400

                    1 Reply Last reply
                    0
                    • L Offline
                      L Offline
                      loverz
                      wrote on last edited by loverz
                      #90

                      Hi zusammen,

                      ich habe bei mir festgestellt, dass einige Adapter gelegentlich eine langsame Verbindung zur Objekt-Datenbank im log melden:
                      40b7c8d2-e162-4cbe-b7e1-5ad27adb8af9-image.png

                      Ich habe das Gefühl, dass die CPU meines Raspberry Pi 4 4GB hier ein wenig zu Stark ausgelastet ist.

                      Im Objekt:
                      6d2d089a-c784-406c-a02e-5b822768f018-image.png

                      Sehe ich eigentlich kaum eine Auslastung.
                      Wie sieht es denn mit den anderen Cores aus? Oder Arbeitet iobroker nur mit einem Core?

                      Kann es sein, dass viele Timeouts im Blockly an der Performance "kratzen"
                      Hab nämlich neulich etwa. 20-30 Timeouts eingebaut, welche "permanent" am laufen sind um Präsenzen abzufragen.

                      Viele Fragen, ich weiß ;)

                      1 Reply Last reply
                      0

                      Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                      Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                      With your input, this post could be even better 💗

                      Register Login
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      Support us

                      ioBroker
                      Community Adapters
                      Donate
                      FAQ Cloud / IOT
                      HowTo: Node.js-Update
                      HowTo: Backup/Restore
                      Downloads
                      BLOG

                      606

                      Online

                      32.8k

                      Users

                      82.7k

                      Topics

                      1.3m

                      Posts
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Home
                      • Recent
                      • Tags
                      • Unread 0
                      • Categories
                      • Unreplied
                      • Popular
                      • GitHub
                      • Docu
                      • Hilfe