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 @Werde45 last edited by

      @Werde45

      • Upload gemacht ?
      • Einträge im Log ?

      Ich bin heute Abend wahrscheinlich im TS, dann können wir (so du das kannst/willst) auch gemeinsam mal drauf schauen und das Problem beseitigen.

      A.

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

        @Asgothian

        gab es dazu eine endgültige Lösung?
        Nach dem Update von auf raspi Typ: js-controller auf: 2.2.7 das gleiche Problem.

        Ich habe jetzt erst einmal in die rc.local

        chmod ugo+r /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq reingeschmissen.. kann ja aber nicht die Lösung sein.

        CU

        Homoran Asgothian 2 Replies Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators @conectas last edited by

          @conectas
          Da kann der Adapter nichts für!

          Irgendwann hat Linux (und damit Raspbian) beschlossen, dass man an diesen Wert nur als echter Roor ran darf - warum auch immer.
          selbst ein sudo hilft da nicht

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

            @conectas Die Lösung die ich damals favorisiert hatte funktioniert bei mir immer noch. Allerdings weiss ich nicht ob das bei anderen auch ging.

            A.

            1 Reply Last reply Reply Quote 0
            • Bastelritius
              Bastelritius last edited by

              @Asgothian: Könntest Du noch mal genau beschreiben was Du gemacht hast um die CPU Frequenz wieder anzuzeigen?

              Asgothian 1 Reply Last reply Reply Quote 0
              • 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
                                            • First post
                                              Last post

                                            Support us

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

                                            775
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

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