Switched waterlevel to queue
All checks were successful
Test project compilation / test (push) Successful in 3m51s

This commit is contained in:
2026-03-25 20:26:57 +01:00
parent 96341cfd42
commit a0240d744c
9 changed files with 68 additions and 12 deletions

View File

@@ -3,6 +3,7 @@
#include <Elog.h>
#include "Wire.h"
#include "../global_data/global_data.h"
#include "../global_data/water_data_queue.h"
#ifdef USE_INA226
@@ -18,7 +19,6 @@ INA233 ina_sensor(0x40);
#include "freertos/task.h"
extern Preferences prefs;
extern WaterData water_data;
extern ActiveErrors active_errors;
extern SensorData shunt_data;
@@ -106,9 +106,16 @@ void read_sensor_task(void* parameter)
shunt_data.shunt_voltage = shunt_voltage;
shunt_data.shunt_current = shunt_current;
water_data.level = cm_over_zero;
water_data.liters = liters;
water_data.percentage = percentage_rounded;
// Create water data structure and send to queue
WaterData current_water_data;
current_water_data.level = cm_over_zero;
current_water_data.liters = liters;
current_water_data.percentage = percentage_rounded;
// Send to queue, don't block if queue is full
if (waterDataQueue != nullptr) {
xQueueSendToBack(waterDataQueue, &current_water_data, 0);
}
delay(20000);
}