Ankündigung

Einklappen
Keine Ankündigung bisher.

RasPi: (CPU) Temperatur aufzeichnen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Maexle
    antwortet
    Zitat von wvhn Beitrag anzeigen

    1. also „kb“ und „mb“ reinschreiben,

    2. Die System-items sinder Konsole unterscheiden müssen.
    1. das Rechner immer alles so genau nehmen müssen

    Danke für den Hinweis


    2. habe ich jetzt auf die schnelle nicht verstanden - muss ich mir morgen mal genauer durchlesen.
    Zuletzt geändert von Maexle; 09.01.2022, 21:05.

    Einen Kommentar schreiben:


  • wvhn
    antwortet
    Alle Einheiten in den Sprachdateien sind klein geschrieben. Du musst also „kb“ und „mb“ reinschreiben, aber nur auf der linken Seite des Gleichheitszeichens.

    Die System-items sind hier beschrieben. Es sind überwiegend Werte speziell für shNG, die sich zwangsläufig von den systemweiten Werten in der Konsole unterscheiden müssen.
    Zuletzt geändert von wvhn; 09.01.2022, 16:56.

    Einen Kommentar schreiben:


  • Maexle
    antwortet
    wvhn

    Danke für den Hinweis.

    Was mir jetzt allerdings nicht ganz klar ist...

    Code:
    {{ basic.print('memorynow', 'env.core.memory', 'kB', 'VAR / 1024') }}     ### übernommen aus der smarthomeNG.html
    
    {{ basic.print('memorynow', 'env.core.memory', 'MB', 'VAR / 1024 / 1024') }} ### um "/ 1024 erweitert um MB zu erhalten"
    jedoch weichen die Werte um eine Kommastelle zur SSH-Konsole ab (siehe Bilder) Testweise habe ich bei MB "VAR / 1024 / 102.4" versucht dann passt das Komma. Allerdings werden viele Nachkommastellen angezeigt obwohl ich in der "de.ini"

    kB = "%01,1f kB"
    MB = "%01,1f MB"

    eingefügt habe.

    ssh.png
    visu.png

    system.png

    Systemload
    was sagt dieser Wert aus?


    Danke schon mal.

    Einen Kommentar schreiben:


  • wvhn
    antwortet
    Zitat von Maexle Beitrag anzeigen
    Da dachte ich mir es wäre ganz interessant die Laufzeit vom RasPi sowie letzter Start von SHNG in der Visu zu sehen.
    Die SmarthomeNG-Seite im Systemmenü von smartVISU zeigt beides an. Screenshot 2022-01-05 at 17-07-07 Forchenrain.png
    Wenn Du wissen willst, welche widgets und items dazu verwendet werden, schau in den Quelltext von ./pages/base/smarthomeNG.html

    Gruß
    Wolfram

    Einen Kommentar schreiben:


  • Maexle
    antwortet
    Zitat von Morg Beitrag anzeigen
    Ich lasse die Systemparameter CPU-Frequenz und Temperatur sowie die Uptime...
    Ich bin gerade dabei die Visu etwas aufzuhübschen, Fehler zu beseitigen etc...

    Da dachte ich mir es wäre ganz interessant die Laufzeit vom RasPi sowie letzter Start von SHNG in der Visu zu sehen.


    Die Uptime wird mir gar nicht angezeigt. In der Visu NaN -- Item uptime = 0 und uptime.text "ist leer" ---> wird Item händsich gefüllt wird es angezeigt
    Frequenz wird angezeigt aber nicht aktualisiert
    Temperatur wird angezeigt aber nicht aktualisiert

    überprüft habe ich die Werte per ssh mittels:
    vcgencmd measure_temp
    vcgencmd measure_clock arm
    uptime

    Die Logik habe ich schon mittels crontab alle 2 Minuten laufen lassen --> keine Veränderung. Wahrscheinlich ist es nur eine Kleinigkeit

    SHNG gibt die Uptime ja eigentlich unter Systemeigenschaften bzw. Ressource Graphen aus --> ist es möglich diese Werte abzugreifen.

    O.T. Der Wert "System Load" pendelt zwischen ~0,5 und ~ 2,0 --> was ist das überhaupt? ---- ITEM env.system.load
    env.system.diskfree - nehme ich an in MegaByte?



    Einen Kommentar schreiben:


  • Sipple
    antwortet
    Das passt schon.

    Einen Kommentar schreiben:


  • Maexle
    antwortet
    Sipple


    Vielen Dan für deine ausführliche Hilfe nun zeigt das Item (und die VISU) die Temperatur an.

    Was ich jedoch anmerken möchte:
    Ich habe die vorherigen "Programmzeilen" (z.B. von Morg) über den Browser im Admin-Interface eingegeben; nicht über die Textdatei per SSH.
    Auch deinen Code habe ich über das Admin-Interface eingegeben - um möglichst wenige Unterschiede zum vorherigen Code zu haben - als ich die "logic.yaml" über ssh mit nano logic.yaml geändert habe --> SHNG Neustart, waren keine Logiken mehr vorhanden --> ich denke nano zerschießt die Formatierung??

    Da du auf die Rechte aufmerksam gemacht hast:
    - die jetzt funktionierende "cpustuff.yaml" (über Admin-Interface erstellt) hat die Rechte:

    "-rw-rw-rw- 1 smarthome users 70 Sep 6 09:31 cpustuff.yaml"

    eine per Notepad++ erstellte:"raspi_temp.yaml" -rw-rw-r-- 1 smarthome smarthome 95 Sep 6 09:52 raspi_temp.yaml --> bearbeite ich diese Datei anschließend im Admin-Interface ändern sich die Rechte nicht.


    Auf jeden Fall funktioniert es jetzt


    Vielen Dank

    Einen Kommentar schreiben:


  • Sipple
    antwortet
    Also ganz von vorne. Trennen wir es sauber in Einzelteile.

    1. Erstelle im Verzeichnis /usr/local/smarthome/items eine Textdatei mit z.B. dem Namen "cpustuff.yaml". Sorge dafür, dass die Rechte passen, z.B. :

    Code:
    Besitzer/Gruppe: smarthome/smarthome
    Berechtigungen: -rw-rw-rw-
    2. Kopiere in diese neue Datei folgende Zeilen, EXAKT so, inkl. der Einrückungen, und speichere die Datei:

    Code:
    cpu:
        temp:
            type: num
            database: yes
    3. Erstelle im Verzeichnis /usr/local/smarthome/logics eine Textdatei mit z.B. dem Namen "cpustuff.py". Sorge wieder dafür, dass die Rechte passen, Siehe 1.

    4. Kopiere in diese neue Datei folgende Zeilen, EXAKT so, inkl. der Einrückungen, und speichere die Datei:

    Code:
    #!/usr/bin/env python3
    # cpustuff.py
    
    import subprocess
    
    cputemp = subprocess.run(['cat', '/sys/class/thermal/thermal_zone0/temp'], stdout=subprocess.PIPE)
    sh.cpu.temp(round(int(cputemp.stdout.decode('utf-8')) / 1000, 1))
    5. Öffne die bereits existierende Datei /usr/local/smarthome/etc/logic.yaml und füge hinzu, EXAKT so, inkl. der Einrückungen:

    Code:
    CPU_Stuff:
        filename: cpustuff.py
        crontab: init
        cycle: 300
    6. Speichere die Datei und starte SHNG neu.

    7. Im Itembaum gibt es jetzt das Item "cpu.temp" (oder in der Langform, so wie es in Logiken referenziert wird: sh.cpu.temp).

    8. Das Item zeigt die Temperatur in °C mit einer Nachkommastelle, Update alle 300s, also 5min.

    9. Du willst keine Nachkommastelle? -> Ändere in /usr/local/smarthome/logics/cpustuff.py ganz unten rechts die "1" in "0".

    10. Du willst eine andere Zykluszeit? -> Ändere in /usr/local/smarthome/etc/logic.yaml im Abschnitt "CPU_Stuff:" den cycle Wert nach Belieben (Sekunden).

    Einen Kommentar schreiben:


  • wvhn
    antwortet
    Zitat von Maexle Beitrag anzeigen
    Error ''SmartHome' object has no attribute 'cpu'' while evaluating
    Das item "cpu.temp" hast Du in shNG angelegt?

    Einen Kommentar schreiben:


  • Maexle
    antwortet

    Nachdem ich auf das Plugin aufmerksam gemacht worden bin. Danke bmx

    Zitat von Sipple Beitrag anzeigen
    Vorschlag für eine kleine Logik, schnell mal hinger... und tut was es soll:

    Code:
    #!/usr/bin/env python3
    # cputemp.py
    import subprocess
    cputemp = subprocess.run(['cat', '/sys/class/thermal/thermal_zone0/temp'], stdout=subprocess.PIPE)
    sh.cpu.temp(round(int(cputemp.stdout.decode('utf-8')) / 1000, 1))
    Ergebnis
    Error ''SmartHome' object has no attribute 'cpu'' while evaluating

    bei nur
    "sh.cpu.temp(round(int(cputemp.stdout.decode(' utf-8')) / 1000, 1))" --> selbes Ergebnis




    Der Code von Morg liefert:

    Error 'name 'subprocess' is not defined' while evaluating


    " sh.hauspi.freq(frq)" --> Error 'name 'frq' is not defined' while evaluating
    Zuletzt geändert von Maexle; 05.09.2021, 08:14.

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Was genau ist an Executor Plugin Bahnhof?
    Zuletzt geändert von bmx; 03.09.2021, 12:41.

    Einen Kommentar schreiben:


  • Maexle
    antwortet
    Tut mir leid Eure beiden Antworten helfen mir nicht wirklich.


    Zitat von bmx Beitrag anzeigen
    Du kannst einfache Logiken mit Print auch via Executor Plugin ausführen lassen und bekommst das Ergebnis direkt im Browser geliefert...
    sorry, ich verstehe nur Bahnhof....



    hier konnte ich mir noch etwas zusammenreimen...
    Zitat von Morg Beitrag anzeigen
    Den print (und ggf. Python-Fehler) bekommst du auf der shng-Konsole, dazu zB shng manuell mit -f starten..
    Code:
    sudo systemctl stop smarthome.service
    
    sudo systemctl start smarthome.service -f

    keine Ahnung ob das richtig war und überhaupt nicht wo mir was angezeigt werden soll

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Du kannst einfache Logiken mit Print auch via Executor Plugin ausführen lassen und bekommst das Ergebnis direkt im Browser geliefert...

    Einen Kommentar schreiben:


  • Morg
    antwortet
    Den print (und ggf. Python-Fehler) bekommst du auf der shng-Konsole, dazu zB shng manuell mit -f starten...

    Einen Kommentar schreiben:


  • Maexle
    antwortet
    Nachtrag zur Fehlereingrenzung

    werden die Items händisch befüllt (Wert im Admin-Interface eingetragen) werden diese auf der Visu angezeigt. Und auch in die Datenbank geschrieben.
    Zuletzt geändert von Maexle; 02.09.2021, 09:13.

    Einen Kommentar schreiben:

Lädt...
X