Improve EVSE hardware module
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
#include "ac_relay.h"
|
||||
#include "socket_lock.h"
|
||||
#include "proximity.h"
|
||||
#include "meter.h"
|
||||
|
||||
static const char *TAG = "evse_hardware";
|
||||
|
||||
@@ -26,8 +27,14 @@ bool evse_hardware_is_vehicle_connected(void) {
|
||||
}
|
||||
|
||||
bool evse_hardware_is_energy_detected(void) {
|
||||
// TODO: Substituir com medição real de corrente ou consumo
|
||||
return true;
|
||||
if (!meter_is_running()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
MeterData data = meter_getData();
|
||||
const float THRESHOLD = 0.1f; // Corrente mínima para considerar consumo
|
||||
return (data.irmsA > THRESHOLD) || (data.irmsB > THRESHOLD) ||
|
||||
(data.irmsC > THRESHOLD);
|
||||
}
|
||||
|
||||
void evse_hardware_relay_on(void) {
|
||||
@@ -51,5 +58,5 @@ void evse_hardware_unlock(void) {
|
||||
}
|
||||
|
||||
bool evse_hardware_is_locked(void) {
|
||||
return socket_lock_get_status() == SOCKED_LOCK_STATUS_IDLE;
|
||||
return socket_lock_is_locked_state();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user