Hauptmenü

core temperatur

Begonnen von stefan-dd, 01 April 2019, 21:32:25

Vorheriges Thema - Nächstes Thema

stefan-dd

Hallo,
ich möchte mir die Coretemperatur in fhem anzeigen lassen.
In der Konsole bekomme ich die Temperatur mit "sensors" angezeigt.
root@fhem:~# sensors
soc_dts1-virtual-0
Adapter: Virtual device
temp1:        +61.0°C

acpitz-virtual-0
Adapter: Virtual device
temp1:         +0.0°C  (crit = +100.0°C)

coretemp-isa-0000
Adapter: ISA adapter
Core 0:       +65.0°C  (high = +90.0°C, crit = +90.0°C)
Core 1:       +65.0°C  (high = +90.0°C, crit = +90.0°C)
Core 2:       +63.0°C  (high = +90.0°C, crit = +90.0°C)
Core 3:       +63.0°C  (high = +90.0°C, crit = +90.0°C)

soc_dts0-virtual-0
Adapter: Virtual device
temp1:        +63.0°C


Wie kann ich mir "temp1" anzeigen lassen? Kann man die Werte aus der Konsole in fhem übernehmen? Wie macht man so etwas?

juemuc

Hallo,

ich nutze dazu das Modul sysmon.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

Otto123

Hi,

also sysmon kann das sicher. Aber generell sowas wie hier als Grundidee:
https://forum.fhem.de/index.php/topic,97725.msg909942.html#msg909942
Kannst Du noch etwas greppen, regexen und in ein Reading oder dummy schreiben.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

stefan-dd

Sysmon zeigt mir leider keine Temperaturen, sonst alles mögliche.

Die Temperatur Core0 liegt in einer Datei unter:
/sys/devices/platform/coretemp.0/subsystem/devices/coretemp.0/hwmon/hwmon3/temp2_input

Wie bekomme ich den Wert nach Fhem?

Otto123

#4
Bei mir zeigt sysmon die cputemp - komisch.

Aber wie schon gesagt, mit dem Befehl in der FHEM Kommandozeile
{qx(cat /sys/devices/platform/coretemp.0/subsystem/devices/coretemp.0/hwmon/hwmon3/temp2_input)}hast Du den Text im Browserfenster.
mit {my $tempinput = qx {(...)}}hast Du den Text in einer perl Variable.
mit {fhem("set DummyTemp $tempinput")}hast Du den Text in einem FHEM Dummy. Dazwischen musst Du "bloß" noch etwas filtern :)

Du kannst auch Perlfunktionen wie fileread zum Einlesen der Datei nehmen: https://wiki.fhem.de/wiki/DevelopmentModuleAPI

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

stefan-dd

Danke, ich habe es so gelöst.
defmod CoreTemp CustomReadings
attr CoreTemp interval 30
attr CoreTemp readingDefinitions temperature:qx (cat /sys/devices/platform/coretemp.0/subsystem/devices/coretemp.0/hwmon/hwmon3/temp2_input)
attr CoreTemp stateFormat state &degC
attr CoreTemp userReadings state { int (ReadingsNum("$NAME","temperature",0)) / 1000 }