Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. RPIMonitor: "No Value found for cpu_frequency"

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    RPIMonitor: "No Value found for cpu_frequency"

    This topic has been deleted. Only users with topic management privileges can see it.
    • Asgothian
      Asgothian Developer @Bastelritius last edited by

      @Bastelritius
      Ich bin von

      /sys/devices/system/cpu0/cpufreq/cpuinfo_cur_freq
      

      auf

      /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
      

      als auszulesender Datei umgestiegen, das hat bei mir auch funktioniert.

      Du kannst versuchen meinen Fork von Github zu installieren, er unterscheidet sich vom aktuellen iobroker-community-adapters/ioBroker.rpi2 nur durch diese Änderung.

      A,

      https://github.com/asgothian/ioBroker.rpi2
      
      1 Reply Last reply Reply Quote 0
      • Bastelritius
        Bastelritius last edited by

        @Asgothian: Super, das funktioniert. Vielen Dank dafür.
        Kann man das nicht in die Standardversion des Adapters mit einpflegen?

        Homoran 1 Reply Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators @Bastelritius last edited by

          @Bastelritius sagte in RPIMonitor: "No Value found for cpu_frequency":

          Kann man das nicht in die Standardversion des Adapters mit einpflegen?

          Nicht wirklich, da dieser Messwert nicht wirklich standardisiert zu sein scheint:

          https://forum.iobroker.net/topic/13857/rpimonitor-no-value-found-for-cpu_frequency/21

          Asgothian 1 Reply Last reply Reply Quote 0
          • Asgothian
            Asgothian Developer @Homoran last edited by

            @Homoran

            Ich würde das trotzdem noch einmal zur Diskussion stellen:l

            • Wenn der Standardweg (cpuinfo_cur_freq) lesbar ist wird er genutzt
            • Wenn nicht wird geschaut ob die Alternative geht (scaling_cur_freq)
            • Wenn nicht gibt es -1

            Es sollte also auch im Standard immer eine Verbesserung geben.

            A.

            joergeli 1 Reply Last reply Reply Quote 0
            • wendy2702
              wendy2702 last edited by

              Ist das mittlerweile im Standard drin oder nicht?

              1 Reply Last reply Reply Quote 1
              • Garfonso
                Garfonso Developer last edited by Garfonso

                Nein, ist es nicht.

                //EDIT:
                Irgendwie ist mir bisher auch noch nicht ganz klar geworden, unter welchen Umständen scale_cur_freq nutzbar ist und unter welchen nicht. Hier hab ich zwei raspberries, wo die identisch zu cpu_cur_freq zu sein scheint. Auf meinem Server mit Desktop CPU sind die Werte völlig unterschiedlich und scale_cur_freq irgendwie nicht interpretierbar...

                Eine mögliche Lösung wäre noch per cron den Wert aus cpu_cur_freq regelmäßig in eine Datei zu schreiben, die der user ioBroker dann lesen kann. Den cron müssten die User dann aber selber einrichten, da der iobroker auch beim installieren von adaptern keine Root-rechte hat. Ist das eine gangbare Lösung?

                1 Reply Last reply Reply Quote 0
                • joergeli
                  joergeli @Asgothian last edited by

                  @Asgothian
                  Anscheinend konnte das Problem mit "No Value found for cpu_frequency " noch nicht gelöst werden?

                  Weil mich genervt hat, daß ich nach jedem Reboot vom Raspi die Dateirechte manuell setzen musste,
                  habe ich jetzt folgenden Workaround gemacht:

                  In Datei /etc/rc.local folgendes zusätzlich eintragen:

                  echo "Setze Dateirechte 777 fuer /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq"
                  cd /sys/devices/system/cpu/cpu0/cpufreq
                  sudo chmod 777 cpuinfo_cur_freq
                  
                  cd /home/pi
                  exit 0
                  

                  Diese Datei wird nach dem Boot des Raspi ausgeführt und setzt die Rechte entspr.

                  Asgothian Thomas Braun 2 Replies Last reply Reply Quote 0
                  • Asgothian
                    Asgothian Developer @joergeli last edited by

                    @joergeli Nein, mein Änderungsvorschlag wurde abgelehnt. Weswegen das immer noch nicht geht. Das was Du da machst ist durchaus funktional, aber ich bin mir nicht sicher ob das nicht doch zwischendurch noch einmal umgesetzt wird.

                    A.

                    Garfonso 1 Reply Last reply Reply Quote 0
                    • Garfonso
                      Garfonso Developer @Asgothian last edited by

                      @Asgothian
                      Magst du dazu mal einen PR machen? Ich würde das durchaus testen und ggf. übernehmen wollen.

                      Asgothian Homoran 2 Replies Last reply Reply Quote 1
                      • Asgothian
                        Asgothian Developer @Garfonso last edited by

                        @Garfonso Klar, mach ich

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

                          @joergeli sagte in RPIMonitor: "No Value found for cpu_frequency":

                          chmod 777

                          Ich würde ja da etwas vorsichtiger rangehen und nicht alles von allen und jedem schreiben, lesen und ausführen lassen.

                          1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators @Garfonso last edited by

                            @Garfonso sagte in RPIMonitor: "No Value found for cpu_frequency":

                            @Asgothian
                            Magst du dazu mal einen PR machen? Ich würde das durchaus testen und ggf. übernehmen wollen.

                            Das wäre super wenn an dem RPI2 nochmal was gemacht würde!!

                            wäre dann auch möglich bei anderen Parametern eine bedingte Abfrage zu machen?
                            bei Armbian-Rechnern liegen die Daten oft in anderen Pfaden oder die Abfrage ist anders.
                            Da habe ich mir auch immer die io-package.json neu hardcodiert (bis zum nächsten Update)

                            Irgendjemand war cleverer und hat einen OPi-Adapter draus gemacht.

                            Ich würde dann außerdem gerne mal die geänderte Version auf diversen SBC testen, schließlich steht ja die Aussage noch im Raum, dass der Wert von scaling_cur_freq nicxht immer passen soll (siehe Link im früheren Post)

                            Asgothian 2 Replies Last reply Reply Quote 0
                            • Asgothian
                              Asgothian Developer @Homoran last edited by

                              @Homoran Ich mach einfach meinen Fork wieder aktiv - dann kann da nach Herzenslust getestet werden. In dem Fork wird

                              • cpuinfo_cur_freq ausgelesen wenn es lesbar ist
                              • scaling_cur_freq ausgelesen wenn es lesbar ist
                              • -1000 ausgegeben wenn beide NICHT lesbar sind.

                              Ich denke damit sind wir hinreichend Sicher.

                              1 Reply Last reply Reply Quote 2
                              • Asgothian
                                Asgothian Developer @Homoran last edited by

                                @Homoran sagte in RPIMonitor: "No Value found for cpu_frequency":

                                bei Armbian-Rechnern liegen die Daten oft in anderen Pfaden oder die Abfrage ist anders.

                                In gewissen grenzen geht das. Hast du mal ein paar Beispiele für mich was du gepatched hast, dann bau ich das in den Branch gleich mit ein

                                A.

                                Homoran 1 Reply Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators @Asgothian last edited by

                                  @Asgothian
                                  auf die Schnelle nur das hier:

                                  {
                                     "common": {
                                         "name":                     "rpi2",
                                         "title":                    "RPI-Monitor",
                                         "desc":                     {
                                     		"en": "RPI-Monitor for ioBroker Installations",
                                     		"de": "RPI-Monitor für ioBroker",
                                     		"ru": "RPI-Монитор для ioBroker"
                                     	},
                                         "version":                  "0.3.1",
                                         "news": {
                                     		"0.3.1": {
                                                 "en": "Fixup swap_used calculation.",
                                                 "de": "Korrigiere swap_used Kalkulation",
                                                 "ru": "Исправлено вычисление swap_used"
                                             },
                                             "0.3.0": {
                                                 "en": "Add GPIO direction indication",
                                                 "de": "GPIO Richtung States hinzugefügt",
                                                 "ru": "Добавлены состояния для индикации направления GPIO"
                                             },
                                             "0.2.2": {
                                                 "en": "Use BCM enumeration",
                                                 "de": "Benutze BCM Numerierung",
                                                 "ru": "Используется BCM нумерация"
                                             },
                                             "0.2.1": {
                                                 "en": "fix start of adapter",
                                                 "de": "Korrigiert Adapterstart",
                                                 "ru": "Исправлен старт драйвера"
                                             },
                                             "0.2.0": {
                                                 "en": "implement GPIOs control",
                                                 "de": "Implementiert die Steuerung von GPIOs",
                                                 "ru": "Добавлено управление GPIOs"
                                             }
                                         },
                                         "mode":                     "daemon",
                                         "platform":                 "javascript/Node.js",
                                         "os":                       ["linux"],
                                         "loglevel":                 "info",
                                         "keywords":                 ["ioBroker", "monitoring", "raspberry", "orangepi", "odroid", "bananapi", "gpio"],
                                         "main":                     "main.js",
                                         "authors": [
                                             "Christian Baumgartner", "husky-koglhof <husky.koglhof@icloud.com>"
                                         ],
                                         "license":                  "MIT",
                                         "singletonHost":             true,
                                         "readme":                   "https://github.com/ioBroker/ioBroker.rpi2/blob/master/README.md",
                                         "icon":                     "rpi.png",
                                         "type":                     "hardware",
                                         "enabled":					true,
                                         "config":{
                                             "minWidth":   650,
                                             "width":      700,
                                             "minHeight":  600,
                                             "height":     600
                                         },
                                         "extIcon":                  "https://raw.githubusercontent.com/ioBroker/ioBroker.rpi2/master/admin/rpi.png"
                                     },
                                     "native": {
                                         "c_cpu": true,
                                         "c_raspberry": false,
                                         "c_memory": true,
                                         "c_network": true,
                                         "c_sdcard": true,
                                         "c_swap": true,
                                         "c_temperature": true,
                                         "c_uptime": true,
                                         "c_wlan": true,
                                         "interval": 60000,
                                         "cpu": {
                                             "cpu_frequency": {
                                                 "command": "cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq",
                                                 "regexp": "(.*)",
                                                 "post": "$1/1000"
                                             },
                                             "load1,load5,load15": {
                                                 "command": "cat /proc/loadavg",
                                                 "regexp": "^(\\S+)\\s(\\S+)\\s(\\S+)",
                                                 "post": ""
                                             },
                                             "scaling_governor": {
                                                 "command": "cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor",
                                                 "regexp": "(.*)",
                                                 "post": ""
                                             }
                                         },
                                         "raspberry": {
                                             "cpu_voltage": {
                                                 "command": "vcgencmd measure_volts core",
                                                 "regexp": "(\\d+.\\d+)V",
                                                 "post": ""
                                             },
                                             "mem_arm": {
                                                 "command": "vcgencmd get_mem arm",
                                                 "regexp": "(\\d+)",
                                                 "post": ""
                                             },
                                             "mem_gpu": {
                                                 "command": "vcgencmd get_mem gpu",
                                                 "regexp": "(\\d+)",
                                                 "post": ""
                                             }
                                         },
                                         "memory": {
                                             "memory_total": {
                                                 "command": "cat /proc/meminfo",
                                                 "regexp": "MemTotal:\\s+(\\d+)",
                                                 "post": "$1/1024"
                                             },
                                             "memory_free": {
                                                 "command": "cat /proc/meminfo",
                                                 "regexp": "MemFree:\\s+(\\d+)",
                                                 "post": "$1/1024"
                                             },
                                             "memory_available": {
                                                 "command": "cat /proc/meminfo",
                                                 "regexp": "MemAvailable:\\s+(\\d+)",
                                                 "post": "$1/1024",
                                                 "multiline": true
                                             }
                                         },
                                         "network": {
                                             "net_received": {
                                                 "command": "cat /sys/class/net/eth0/statistics/rx_bytes",
                                                 "regexp": "(.*)",
                                                 "post": "$1*-1"
                                             },
                                             "net_send": {
                                                 "command": "cat /sys/class/net/eth0/statistics/tx_bytes",
                                                 "regexp": "(.*)",
                                                 "post": ""
                                             }
                                         },
                                         "sdcard": {
                                             "sdcard_root_total": {
                                                 "command": "df /",
                                                 "regexp": "\\S+\\s+(\\d+).*\\/$",
                                                 "post": "$1/1024",
                                                 "multiline": true
                                             },
                                             "sdcard_root_used": {
                                                 "command": "df /",
                                                 "regexp": "\\S+\\s+\\d+\\s+(\\d+).*\\/$",
                                                 "post": "$1/1024",
                                                 "multiline": true
                                             }
                                         },
                                         "swap": {
                                             "swap_total": {
                                                 "command": "cat /proc/meminfo",
                                                 "regexp": "SwapTotal:\\s+(\\d+)",
                                                 "post": "$1/1024",
                                                 "multiline": true
                                             },
                                             "swap_used": {
                                                 "command": "cat /proc/meminfo",
                                                 "regexp": "SwapFree:\\s+(\\d+)",
                                                 "post": "(rpi.swap_total - $1)/1024",
                                                 "multiline": true
                                             }
                                         },
                                         "temperature": {
                                             "soc_temp": {
                                                 "command": "cat /sys/devices/virtual/thermal/thermal_zone0/temp",
                                                 "regexp": "(.*)",
                                                 "post": "$1/1000"
                                             }
                                         },
                                         "uptime": {
                                             "uptime": {
                                                 "command": "cat /proc/uptime",
                                                 "regexp": "(^\\S+)",
                                                 "post": ""
                                             }
                                         },
                                         "wlan": {
                                             "wifi_received": {
                                                 "command": "cat /sys/class/net/wlan0/statistics/rx_bytes",
                                                 "regexp": "(.*)",
                                                 "post": "$1*-1"
                                             },
                                             "wifi_send": {
                                                 "command": "cat /sys/class/net/wlan0/statistics/tx_bytes",
                                                 "regexp": "(.*)",
                                                 "post": ""
                                             }
                                         },
                                         "gpios": [
                                  
                                         ]
                                     },
                                     "objects": [
                                     ],
                                     "instanceObjects": [
                                     ]
                                  }
                                  
                                  

                                  ist aber schon uralt und ich weiß auch nicht ob da alles drin ist.

                                  Habe rein pragmatisch in den letzten Installationen einfach den Opi-Adapter genutzt.
                                  Vielleicht findest du da ja noch was

                                  Asgothian 1 Reply Last reply Reply Quote 0
                                  • Asgothian
                                    Asgothian Developer @Homoran last edited by

                                    @Homoran
                                    Alles was da drin ist ist so auch im rpi2 drin. Und noch etwas mehr.

                                    Am besten testest du mal den adapter von meinem Repo:

                                    https://github.com/asgothian/ioBroker.rpi2
                                    
                                    Asgothian 1 Reply Last reply Reply Quote 0
                                    • Asgothian
                                      Asgothian Developer @Asgothian last edited by

                                      @homoran, @Garfonso, @joergeli

                                      konnte einer von Euch meine Anpassungen von letzter Woche testen ? Dann würde ich den Pull-Request auslösen. Bei mir geht es.

                                      A.

                                      joergeli Garfonso Homoran 4 Replies Last reply Reply Quote 0
                                      • joergeli
                                        joergeli @Asgothian last edited by

                                        @Asgothian
                                        Sorry, ich hatte noch keine Zeit.

                                        1 Reply Last reply Reply Quote 0
                                        • Garfonso
                                          Garfonso Developer @Asgothian last edited by

                                          @Asgothian
                                          Ja, scheint hier zu gehen.

                                          1 Reply Last reply Reply Quote 0
                                          • Homoran
                                            Homoran Global Moderator Administrators @Asgothian last edited by

                                            @Asgothian
                                            müsste ich mal einen Armbian Rechner neu aufsetzen und testen

                                            Asgothian 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

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

                                            714
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            19
                                            64
                                            8354
                                            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