Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Gelöst: Script zur Abfrage der CPU Temp

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Gelöst: Script zur Abfrage der CPU Temp

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      michihorn @Thomas Braun last edited by michihorn

      @thomas-braun also die Werte habe ich nun im Terminal, aber wie ich nun die Werte mit einem Script abrufen kann, weiß ich leider nicht.

      1 Reply Last reply Reply Quote 0
      • Thomas Braun
        Thomas Braun Most Active last edited by

        @michihorn

        Ich auch nicht.
        Mit dem EXEC-Baustein-Blockly vielleicht.

        M 1 Reply Last reply Reply Quote 0
        • M
          michihorn @Thomas Braun last edited by

          @thomas-braun okay dann forsche ich mal.Danke erst mal

          T 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @michihorn last edited by paul53

            @michihorn sagte: Abfrage der CPU Temperatur

            Welche CPU? Raspberry Pi?

            Thomas Braun 1 Reply Last reply Reply Quote 0
            • T
              ticaki Developer @michihorn last edited by

              @michihorn

              Ich hab sowas um zu checken ob ich online bin:

              var con_active = false;
              setInterval(function(){
                  con_active = false;
                  exec('ping -qc 2 www.google.com', callback)
                  exec('ping -qc 2 www.bing.com', callback)
                  exec('ping -qc 2 www.heise.de', callback)
              },60000)
              exec('ping -qc 2 www.google.com', callback)
              exec('ping -qc 2 www.bing.com', callback)
              exec('ping -qc 2 www.heise.de', callback)
              
              
              
              
              
              function callback(err, res) {
                  let should = res.substring(res.indexOf('statistics ---') + ('statistics ---').length, res.indexOf(' packets transmitted'));
                  should = Number(should)
                  let current = res.substring(res.indexOf('transmitted, ') + ('transmitted, ').length, res.indexOf('received'));
                  current = Number(current)
                  con_active = con_active || should && should == current
                  //log("test " + res)
                  setState('0_userdata.0.internet_connected', !!con_active, true);
              
              1 Reply Last reply Reply Quote 0
              • Thomas Braun
                Thomas Braun Most Active @paul53 last edited by

                @paul53 sagte in Script zur Abfrage der CPU Temp:

                Welche CPU? Raspberry Pi?

                Beim Pi könnte man es auch per

                vcgencmd measure_temp
                

                auslesen.

                M 1 Reply Last reply Reply Quote 1
                • M
                  michihorn last edited by

                  @paul53 Raspberry 4

                  Ich habe es mal so versucht:

                  schedule("* * * * *", function () {
                  exec('sensors', function (error, stdout, stderr) { setState('0_userdata.0.System.pitemp',stdout); }); 
                  });
                  

                  Dann wird der DP auch beschrieben mit:
                  cpu_thermal-virtual-0
                  Adapter: Virtual device
                  temp1: +44.3°C (crit = +110.0°C)

                  rpi_volt-isa-0000
                  Adapter: ISA adapter
                  in0: N/A

                  Also kann ich mit Substr, das sicher einkürzen, oder gibt es einen einfacheren Weg?

                  T 1 Reply Last reply Reply Quote 0
                  • T
                    ticaki Developer @michihorn last edited by

                    @michihorn

                    Ja das sollte mit regex gehen... muß das aber mal gerade selbst versuchen

                    1 Reply Last reply Reply Quote 0
                    • M
                      michihorn @Thomas Braun last edited by michihorn

                      @thomas-braun sagte in Script zur Abfrage der CPU Temp:

                      @paul53 sagte in Script zur Abfrage der CPU Temp:

                      Welche CPU? Raspberry Pi?

                      Beim Pi könnte man es auch per

                      vcgencmd measure_temp
                      

                      auslesen.

                      schedule("* * * * *", function () {
                      //exec('sensors', function (error, stdout, stderr) { setState('0_userdata.0.System.pitemp',stdout); }); 
                      exec('vcgencmd measure_temp', function (error, stdout, stderr) { setState('0_userdata.0.System.pitemp',stdout); }); 
                      });
                      

                      Das Ergebnis ist:
                      temp=44.8'C
                      Klappt...mit einer kleinen Hürde, denn ich habe eine Warnmeldung
                      hürde.png

                      Edit: War der falsche Datentyp im DP

                      Danke für die Hilfe 👍

                      T 1 Reply Last reply Reply Quote 0
                      • T
                        ticaki Developer @michihorn last edited by

                        @michihorn

                        Auch wenns schon geht:

                        const test = `cpu_thermal-virtual-0
                        Adapter: Virtual device
                        temp1: +44.3°C (crit = +110.0°C)
                        
                        rpi_volt-isa-0000
                        Adapter: ISA adapter
                        in0: N/A`
                        
                        const reg = /[0-9\.]+°C/;
                        const result = test.match(reg);
                        if (result) log(result[0])
                        
                        javascript.0 (619) script.js.Test.Skript_2: 44.3°C
                        
                        1 Reply Last reply Reply Quote 1
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        983
                        Online

                        31.7k
                        Users

                        79.8k
                        Topics

                        1.3m
                        Posts

                        javascript
                        4
                        16
                        586
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo