NEWS
Adapter: ioBroker.info
-
@liv-in-sky ok, wusst ich nicht, danke für die Info
-
Hallo,
magst du mir vielleicht erklären wie das funktioniert?
Nutze auch Proxmox auf einem NUC und ioBroker auf einer Debian VM darauf.
Möchte auch gerne die CPU Temp im ioBroker überwachen...Danke
-
@blackplanet333
auf dem proxmox server habe ich dieses bash script:#!/bin/bash tempi=`sensors | grep temp1 -m 1 | awk '{print $2}' | awk '{print substr($1, length($0)-6,2)}'` curl "http://192.168.178.59:8087/set/controll-own.0.mount.CPUTemp?value=$tempi"
über den simple.api.adapter(curl) wird der wert jede minute (crontab -e) an iobroker gesendet
das ist alles
-
Danke für die fixe Antwort.
Könntest du mir vielleicht noch kurz erklären wie ich das auf dem Proxmox server einbinde?
Das Bash Script einfach über Konsole ausführen und durch meine IP ersetzen?
-
das ist etwas komplizierter:
im iobroker server:
- simpleapi adapter installieren
- datenpunkt anlegen - z.b cputemp (als zahl)
im terminal proxmox testen:
sensors | grep temp1 -m 1 | awk '{print $2}' | awk '{print substr($1, length($0)-6,2)}'
evtl . installieren:
apt-get install lm-sensors
und test für das schreiben in den datenpunkt (deine daten einfügen)
curl "http://192.168.178.59:8087/set/controll-own.0.mount.CPUTemp?value=55"
dieser befehl sollte in den iobroker schreiben
im terminal des proxmox (befehle):
- cd /usr/local/bin
- nano cputemp
- script rein kopieren und anpassen ,die ip des iobroker servers( bei mir: 192.168.178.59:8087) mit port des simpleapi adapters) und deinen datenpunkt, den du angelegt hast (nur im curl teil) (bei mir: ontroll-own.0.mount.CPUTemp)
- mit alt-x beenden und speichern
- chmod +x cputemp (macht das script ausführbar)
damit ist das bash script fertig
nun crontab -e eingeben
diese zeile eingeben*/1 * * * * /usr/local/bin/tempcpu
speichern ->jetzt wird hoffentlich jede minute das bashscript audgeführt und der wert in iobroker geschrieben
-
Super!
Habe es fast hinbekommen.
Datenpunkt kann ich manuell mit dem Befehl in ioBroker schreiben lassen.
Auch das Script habe ich eingefügt und es funktioniert wenn ich statt $tempi eine Zahl eingebe.
Leider halt nicht mit dem $tempi das wohl die live Daten sein sollen?
Was kann das jetzt noch sein das er meine Temp nicht ausliest?
Crontab funktioniert auch.. -
Das kommt bei Sensors
coretemp-isa-0000 Adapter: ISA adapter Package id 0: +56.0°C (high = +100.0°C, crit = +100.0°C) Core 0: +55.0°C (high = +100.0°C, crit = +100.0°C) Core 1: +56.0°C (high = +100.0°C, crit = +100.0°C) Core 2: +56.0°C (high = +100.0°C, crit = +100.0°C) Core 3: +56.0°C (high = +100.0°C, crit = +100.0°C) pch_cannonlake-virtual-0 Adapter: Virtual device temp1: +56.0°C
-
@blackplanet333 was gibt dieser befehl aus auf dem termional:
sensors | grep temp1 -m 1 | awk '{print $2}' | awk '{print substr($1, length($0)-6,2)}'
-
@liv-in-sky sagte in Adapter: ioBroker.info:
sensors | grep temp1 -m 1 | awk '{print $2}' | awk '{print substr($1, length($0)-6,2)}'
da kommt garnichts..
-
@blackplanet333 teile den befehl auf
sensors | grep temp1 -m 1
dann
sensors | grep temp1 -m 1 | awk '{print $2}'
-
@liv-in-sky sagte in Adapter: ioBroker.info:
sensors | grep temp1 -m 1 | awk '{print $2}'
root@pve:~# sensors | grep temp1 -m 1 temp1: N/A root@pve:~# sensors | grep temp1 -m 1 | awk '{print $2}' N/A root@pve:~#
-
Anscheinend weil er auf den oberen temp 1 zugreift...
root@pve:~# sensors iwlwifi-virtual-0 Adapter: Virtual device temp1: N/A acpitz-virtual-0 Adapter: Virtual device temp1: -263.2°C temp2: +27.8°C (crit = +119.0°C) coretemp-isa-0000 Adapter: ISA adapter Package id 0: +56.0°C (high = +100.0°C, crit = +100.0°C) Core 0: +56.0°C (high = +100.0°C, crit = +100.0°C) Core 1: +56.0°C (high = +100.0°C, crit = +100.0°C) Core 2: +57.0°C (high = +100.0°C, crit = +100.0°C) Core 3: +59.0°C (high = +100.0°C, crit = +100.0°C) pch_cannonlake-virtual-0 Adapter: Virtual device temp1: +56.0°C
-
@blackplanet333 ja das stimmt
das muss umgeschrieben werden
probier mal:
sensors | grep temp1 -m 2 | awk 'NR == 2' | awk '{print $2}' | awk '{print substr($1, length($0)-6,2)}'
-
@liv-in-sky sagte in Adapter: ioBroker.info:
sensors | grep temp1 -m 2 | awk 'NR == 2' | awk '{print $2}' | awk '{print substr($1, length($0)-6,2)}'
Dann kommt 63 raus, was aber nicht mit der aktuellen Temp übereinstimmt...
root@pve:/usr/local/bin# sensors iwlwifi-virtual-0 Adapter: Virtual device temp1: N/A acpitz-virtual-0 Adapter: Virtual device temp1: -263.2°C temp2: +27.8°C (crit = +119.0°C) coretemp-isa-0000 Adapter: ISA adapter Package id 0: +57.0°C (high = +100.0°C, crit = +100.0°C) Core 0: +55.0°C (high = +100.0°C, crit = +100.0°C) Core 1: +55.0°C (high = +100.0°C, crit = +100.0°C) Core 2: +55.0°C (high = +100.0°C, crit = +100.0°C) Core 3: +57.0°C (high = +100.0°C, crit = +100.0°C) pch_cannonlake-virtual-0 Adapter: Virtual device temp1: +54.0°C root@pve:/usr/local/bin# sensors | grep temp1 -m 2 | awk 'NR == 2' | awk '{print $2}' | awk '{print substr($1, length($0)-6,2)}' 63
-
@blackplanet333 es ist die 3te zeile
NR==3 ändern -
sorry das stimmt nicht - wir suchen temp2 und nicht temp1
sensors | grep temp2 -m 1 | awk '{print $2}' | awk '{print substr($1, length($0)-6,2)}'
-
Ok nun hab ich 27 aber die cpu hat ja 54?
root@pve:/usr/local/bin# sensors | grep temp2 -m 1 | awk '{print $2}' | awk '{print substr($1, length($0)-6,2)}' 27 root@pve:/usr/local/bin#
-
bin schon verwirrt
-
-
@liv-in-sky sagte in Adapter: ioBroker.info:
sensors | grep temp1 -m 3
du bist echt nicht unterzukriegen!
root@pve:/usr/local/bin# sensors | grep temp1 -m 3 temp1: N/A temp1: -263.2°C temp1: +53.0°C root@pve:/usr/local/bin#