From fd0a53f7891bdacd2bc98ffb3057f52d44e3a32f Mon Sep 17 00:00:00 2001 From: drath Date: Sun, 10 May 2026 00:48:32 +0200 Subject: [PATCH] main --- src/main.c | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/src/main.c b/src/main.c index 53caf83..70692f5 100644 --- a/src/main.c +++ b/src/main.c @@ -6,7 +6,13 @@ #include #include #include "lcd.h" +#include "cpu.h" #include "sys.h" +#include "utils.h" + +#include + +#pragma GCC diagnostic ignored "-Wunused-result" static constexpr uint16_t refresh_interval_ms = 500; @@ -28,11 +34,11 @@ struct control_t { struct sensors_t { struct time_date_t td; double loadavg[3]; - // sys::Memory ram; - // sys::Disk home; + struct memory_t ram; + struct disk_t home; // sys::Network net; // sys::sysSensors sys; - // cpu::cpuSensors cpu; + struct cpu_sensors_t cpu; // gpu::gpuSensors gpu; double hass_state; }; @@ -93,11 +99,19 @@ static void *sensors_thread(void *arg) { struct timespec next; clock_gettime(CLOCK_REALTIME, &next); + // set up paths for the sensors + strcpy(sensors->home.mountpoint, "/home/drath"); + cpu_detect(&sensors->cpu, "0000:00:18.3"); + while (control.g_running) { // NOLINT pthread_mutex_lock(&control.sensors_mtx); sys_get_load_avg(sensors->loadavg); sys_get_time(&sensors->td); + sys_get_ram(&sensors->ram); + sys_get_disk(&sensors->home); + + cpu_update(&sensors->cpu); pthread_cond_signal(&control.sensors_ready); pthread_mutex_unlock(&control.sensors_mtx); @@ -106,7 +120,6 @@ static void *sensors_thread(void *arg) { clock_nanosleep(CLOCK_REALTIME, TIMER_ABSTIME, &next, nullptr); } - applog(LOG_WRN, "sensors thread stopped"); return nullptr; }