Kerntemperatur auf kleinem Display dauerhaft anzeigen

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo
    ich bin absoluter Anfänger.
    Ich habe einen Pi 3 und würde gerne die Kerntemperatur und Speicherauslastung und Größe auf einem kleinen Bildschirm bzw. LCD Anzeige dauerhaft anzeigen lassen.
    Hat das schon jemand gemacht?
    Nimmt mir das viele Ressourcen bzw. Geschwindigkeit?
    Geht das auch wenn ich Retropi nutze und spiele? Gerade da ist mir wichtig die Temperatur im Auge zu haben.

    Was nehme ich am besten und was muss ich programmieren? :helpnew:

    Schon mal :danke_ATDE: für eure Hilfe

    Gruß Heiko

  • Kerntemperatur auf kleinem Display dauerhaft anzeigen? Schau mal ob du hier fündig wirst!

  • Hallo HeikoD,

    herzlich Willkommen in unserem Forum!

    Ob das unter RetroPi funktioniert, d.h. ob Du darunter noch eigene Anwendungen erstellen kannst weiß ich nicht. Aber auf den anderen Betriebssystemen wie Raspbian geht das problemlos.

    Die Prozessortemperatur lässt sich über

    Code
    vcgencmd measure_temp

    auslesen.

    Zur Speicherauslastung hatten wir hier im Forum ressourcenschonende Lösungen erarbeitet. Müsstest Du mal gezielt danach suchen.

    Die Speichergröße ist dann wohl weniger interessant - diese ändert sich ja nicht, denn die Speicherauslastung hast Du dann ja schon. Sinnvoller wäre wohl etwas wie CPU-Auslastung. Auch dazu findest Du ressourcenschonende Lösungen.



    Hat das schon jemand gemacht?

    Mit Sicherheit schon viele...



    Nimmt mir das viele Ressourcen bzw. Geschwindigkeit?


    Das hängt vom Programmierstil ab. Du kannst das so programmieren, dass auch der Anzeige und der Messung nichts anderes mehr läuft. Du kannst es aber auch so gestalten, dass es auch im Zeitpunkt der Messung un der Anzeige kaum mehr als 2 % CPU benötigt.



    Was nehme ich am besten und was muss ich programmieren? :helpnew:


    Als Programmiersprache würde ich das nehmen, was Du kannst. Ansonsten musst Du Dich mal in die eine oder andere Programmiersprache einlesen.

    Umsetzen kannst Du Dein Vorhaben mit C / C++, Processing, Lazarus / FreePascal, Icon - Python wird's wohl auch können.


    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    Einmal editiert, zuletzt von Andreas (25. Januar 2017 um 22:43)

  • Hast du denn schon eine Anzeige? Wenn du dich für ein HD44780 kompatibles LCD entscheidest, findest du dazu jede Menge Ansteuerungsroutinen für Python. Dann kannst du im besten Fall mit einer einfachen Methode deine CPU Temperatur darauf schreiben. Eine Möglichkeit, die Temperatur auszulesen sähe zB folgendermaßen aus:

    Code
    cputemperature = "CPU: " + str(round(float(open("/sys/class/thermal/thermal_zone0/temp", "r").read())/1000, 1))

    Zum Ausgeben auf dem Display könntest du zB diese Ansteuerung benutzen und dann einfach mittels

    Code
    lcd_string(cputemperature, LCD_LINE_1, 2)


    die Ausgabe machen.

    Das ganze in 'ne Schleife mit 10 Sekunden Schlaf und fertig.

    Einmal editiert, zuletzt von KrawallKurt (25. Januar 2017 um 20:57)


  • Die Prozessortemperatur lääst sich über

    Code
    vcgencmd measure_temp

    auslesen.

    Das verursacht eine höhere CPU Auslastung als die von KrawallKurt erwähnte Methode, welche bevorzugt werden sollte. CPU Auslastung = höhere CPU Temperatur. In diesem Fall zwar sehr gering sofern nur ein Aufruf, aber wenn der Intervall niedrig ist kann man sicher sein das "vcgencmd measure_temp" die Temperatur beeinflusst.

    In all meinen Scripts die solche Informationen auslesen bevorzuge ich:
    [code=php]
    def get_cpu_temp():
    with open("/sys/class/thermal/thermal_zone0/temp", 'r') as f:
    content = f.read().splitlines()
    return float(content[0]) / 1000.0


    def get_cpu_usage():
    return psutil.cpu_percent(interval=None)


    def get_ram():
    with open('/proc/meminfo', 'r') as mem:
    tmp = 0
    for i in mem:
    sline = i.split()
    if str(sline[0]) == 'MemTotal:':
    total = int(sline[1])
    elif str(sline[0]) in ('MemFree:', 'Buffers:', 'Cached:'):
    tmp += int(sline[1])
    free = tmp
    used = int(total) - int(free)
    usedPerc = (used * 100) / total
    return (total, free, used, usedPerc)
    [/php]psutil ist ein sehr mächtiges Module.

  • ich habe noch keine LCD Anzeige.
    Meine Vorstellung ist auf einer Anzeige Prozessortemperatur und Prozessorauslastung zeitgleich oder im Wechsel anzeigen zu lassen.
    Ich habe die App "SimplePi" da kann ich das auf dem Handy sehen. So stelle ich mir das auf einem Display direkt am Pi vor.

  • Und wenn du jetzt noch erwähnst, was für ein Display, dann könnte man direkt konkretere Tipps geben - das du noch gar kein Display hast steht in Beitrag#1 nämlich nicht, ebenso wenig in welcher Programmiersprache du das machen möchtest; oder ob es reiner Text sein soll oder mit grafischer Darstellung....

  • Hallo
    Entschuldigung bin absoluter Anfänger, habe mir den PI gekauft um mich darein zu arbeiten. Ich muss Erfahrung sammeln, da ich Grundkenntnisse für die Technikerschule brauche.

    Also ich habe weder ein bestimmtes Display noch eine LCD Anzeige.
    Deshalb ja meine Frage was ich am besten nehmen sollte.
    Programmiertechnisch habe ich auch noch keine bestimmte Vorstellung.
    Vorgestellt habe ich mir eine LCD Anzeige wo die Temperatur und Auslastung in Zahlen angezeigt werden.
    Ich müsste auch wissen wo und wie ich das Programm reinschreiben muss, in welches Verzeichnis usw.
    Bisher habe ich das Terminal geöffnet und über Befehle (Sudo .....) Sachen geändert. Ich habe einzelne cfg auch über Kartenleser an anderen PC geändert.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!