#ifndef EVSE_API_H #define EVSE_API_H #include #include #include "esp_err.h" #include "evse_state.h" // Define evse_state_t // Inicialização void evse_init(void); void evse_process(void); // Estado evse_state_t evse_get_state(void); const char* evse_state_to_str(evse_state_t state); bool evse_is_connector_plugged(evse_state_t state); bool evse_is_limit_reached(void); // Autorização e disponibilidade bool evse_is_enabled(void); void evse_set_enabled(bool value); bool evse_is_available(void); void evse_set_available(bool value); bool evse_is_require_auth(void); void evse_set_require_auth(bool value); // Corrente uint16_t evse_get_charging_current(void); esp_err_t evse_set_charging_current(uint16_t value); uint16_t evse_get_default_charging_current(void); esp_err_t evse_set_default_charging_current(uint16_t value); uint8_t evse_get_max_charging_current(void); esp_err_t evse_set_max_charging_current(uint8_t value); // Temperatura uint8_t evse_get_temp_threshold(void); esp_err_t evse_set_temp_threshold(uint8_t value); // RCM / Socket bool evse_get_socket_outlet(void); esp_err_t evse_set_socket_outlet(bool value); bool evse_is_rcm(void); esp_err_t evse_set_rcm(bool value); // Limites uint32_t evse_get_consumption_limit(void); void evse_set_consumption_limit(uint32_t value); uint32_t evse_get_charging_time_limit(void); void evse_set_charging_time_limit(uint32_t value); uint16_t evse_get_under_power_limit(void); void evse_set_under_power_limit(uint16_t value); void evse_set_limit_reached(bool value); // Energia total acumulada da sessão (em Wh) uint32_t evse_get_total_energy(void); // Potência instantânea medida (em W) uint32_t evse_get_instant_power(void); // Limites default uint32_t evse_get_default_consumption_limit(void); void evse_set_default_consumption_limit(uint32_t value); uint32_t evse_get_default_charging_time_limit(void); void evse_set_default_charging_time_limit(uint32_t value); uint16_t evse_get_default_under_power_limit(void); void evse_set_default_under_power_limit(uint16_t value); uint32_t evse_get_total_energy(void); uint32_t evse_get_instant_power(void); #endif // EVSE_API_H