Beiträge von Bleys im Thema „Conky-Parameter - verschiedene Versionen ?“

    Die coolste Eigenschaft von ${hwmon..} habe ich glatt vergessen. hwmon kann mit den raw Werten rechnen:

    ${hwmon x arg x faktor offset}

    Nicht immer stimmen die raw Werte mit den tatsächlichen Werten überein. Wird die Temperatur z.B. 20° zu niedrig angezeigt (kommt tatsächlich nicht mal selten vor):

    ${hwmon 1 temp 1 1,0 20,0} (Wert Mal Faktor plus Offset, Beispiel: 15*1+20=35)

    Faktor und Offset werden immer mit einer Dezimalstelle angegeben. Ob Komma oder Punkt richtet sich nach dem im System eingestellten Seperator. Der Rest dürfte selbst erklärend sein.

    Nachtrag:

    Noch ein Beispiel aus einem anderem Conky von mir für die GPU Frequenz die der Sensor in Herz anzeigt und die in MHz angezeigt werden sollen:

    ${hwmon 1 freq 1 0,000001 0,0} MHz

    Es gibt einen eleganten und resourcen schonenden Weg sämtliche sensors Daten anzuzeigen. Die Conky Entwickler selbst raten vom Einsatz von exec ab wenn es vermeidbar ist. Einfach weil exec das System erheblich mehr belastet als der direkt Zugriff.

    Sämtliche Sensoren eines Mainboard findet mal unter /sys/class/hwmon Für jeden Sensor Chip wird in diesem Verzeichnis ein eigenes hwmonX Verzeichnis angelegt, start mit hwmon0 u.s.w.

    Jedes dieser Verzeichnisse enthält eine Datei die "name" heisst. Diese Datei enthält den Namen des in diesem Verzeichnis enthaltenen Sensors. Als Beispiel mal meine 4 hwmon Verzeichnisse:

    hwmon0 -> name: nvme (enthält offensichtlich die Daten meiner nvme SSD)

    hwmon1 -> name: amdgpu (Enthält Daten zu meiner in der CPU intergrierten GPU)

    hwmon2 -> name: nct6793 (Das Verzeichnis Hauptsensors. Enthält bei mir 292 Objekte)

    hwmon3 -> neme: k10temp (enthält Daten zu meiner Ryzen CPU)

    Die interessanten Daten sind sämtliche input_ Dateien:

    in0_input: enthält den wert der im Terminal mit Sensors in der Zeile in0: angezeigt wird

    fan1_input: man errät es schon :) enthält den sensors Wert hinter fan1:

    u.s.w.

    Jetzt der Zugriff per Conky:

    ${hwmon 2 fan 2} entspricht ${exec sensors | grep 'fan2' | awk '{print $2}'} und das nur wenn sensors nur einen fan2 ausgibt. Bei mehreren Möglichkeiten wird der exec Befehl noch umfangreicher. Per hwmon ändert sich einfach nur das erste Argument zu hwmon.

    Beispiele:

    ${hwmon X in X}: Spannung (inX_input)

    ${hwmon X fan X}: Lüfter Drehzahl (fanX_input)

    ${hwmon X freq X}: Frequenz (freqX_input)

    ${hwmon X temp X}: Temperatur (tempX_input)

    Sämtliche Werte in meinem Conky werden per ${hwmon X arg X) angezeigt. Auch die werte der Elleipsen. Einzige Ausnahme ist meine öffentliche IP. Die kommt per execi: ${execi 7200 curl https://ipinfo.io/ip}