Add temperature of coral tpu to telemetry mqtt message

This commit is contained in:
Matt Clayton 2021-11-29 21:52:58 +00:00 committed by Blake Blackshear
parent fcb4aaef0d
commit a5c13e7455

View File

@ -4,6 +4,7 @@ import threading
import time
import psutil
import shutil
import os
from frigate.config import FrigateConfig
from frigate.const import RECORD_DIR, CLIPS_DIR, CACHE_DIR
@ -30,6 +31,24 @@ def get_fs_type(path):
bestMatch = part.mountpoint
return fsType
def read_temperature(path):
if os.path.isfile(path):
with open(path) as f:
line=f.readline().strip()
return int(line)/1000
return None
def get_temperatures():
temps={}
# Get temperatures for all attached Corals
base="/sys/class/apex/"
for apex in os.listdir(base):
temp=read_temperature(os.path.join(base,apex,"temp"))
if temp is not None:
temps[apex]=temp
return temps
def stats_snapshot(stats_tracking):
camera_metrics = stats_tracking["camera_metrics"]
@ -61,6 +80,7 @@ def stats_snapshot(stats_tracking):
"uptime": (int(time.time()) - stats_tracking["started"]),
"version": VERSION,
"storage": {},
"temperatures" : get_temperatures()
}
for path in [RECORD_DIR, CLIPS_DIR, CACHE_DIR, "/dev/shm"]: