mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2026-01-26 08:39:09 +03:00
Merge pull request #2913 from proddy/dev
fix ha climate mode to use bool format
This commit is contained in:
@@ -130,7 +130,9 @@ let system_status = {
|
|||||||
// partitions: [],
|
// partitions: [],
|
||||||
developer_mode: true,
|
developer_mode: true,
|
||||||
model: '',
|
model: '',
|
||||||
|
board: '',
|
||||||
// model: 'BBQKees Electronics EMS Gateway E32 V2 (E32 V2.0 P3/2024011)',
|
// model: 'BBQKees Electronics EMS Gateway E32 V2 (E32 V2.0 P3/2024011)',
|
||||||
|
// board: 'E32V2',
|
||||||
// status: 0,
|
// status: 0,
|
||||||
status: 3
|
status: 3
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1446,3 +1446,5 @@ vchip
|
|||||||
SPIIO
|
SPIIO
|
||||||
SPIDQS
|
SPIDQS
|
||||||
txpause
|
txpause
|
||||||
|
relais
|
||||||
|
pinout
|
||||||
@@ -1424,11 +1424,13 @@ bool Mqtt::publish_ha_climate_config(const DeviceValue & dv, const bool has_room
|
|||||||
doc["mode_cmd_t"] = mode_cmd_s;
|
doc["mode_cmd_t"] = mode_cmd_s;
|
||||||
|
|
||||||
// add hvac_action - https://github.com/emsesp/EMS-ESP32/discussions/2562
|
// add hvac_action - https://github.com/emsesp/EMS-ESP32/discussions/2562
|
||||||
doc["act_t"] = "~/boiler_data";
|
doc["act_t"] = "~/boiler_data";
|
||||||
doc["act_tpl"] = "{% if value_json.hpactivity=='cooling'%}cooling{%elif value_json.heatingactive=='on'%}heating{%else%}idle{%endif%}";
|
char on_string[12];
|
||||||
|
doc["act_tpl"] = "{% if value_json.hpactivity=='cooling'%}cooling{%elif value_json.heatingactive=='" + std::string(Helpers::render_boolean(on_string, true))
|
||||||
|
+ "'%}heating{%else%}idle{%endif%}"; // uses boolean translation for on/true
|
||||||
|
|
||||||
// map EMS modes to HA climate modes
|
// map EMS modes to HA climate modes
|
||||||
// EMS modes: auto, manual, heat, off, night, day, nofrost, eco, comfort, cool)
|
// EMS modes: auto, manual, heat, off, night, day, nofrost, eco, comfort, cool
|
||||||
// HA supports: auto, off, cool, heat, dry, fan_only
|
// HA supports: auto, off, cool, heat, dry, fan_only
|
||||||
bool found_auto = false;
|
bool found_auto = false;
|
||||||
bool found_heat = false;
|
bool found_heat = false;
|
||||||
|
|||||||
@@ -2399,21 +2399,21 @@ bool System::load_board_profile(std::vector<int8_t> & data, const std::string &
|
|||||||
if (board_profile == "default") {
|
if (board_profile == "default") {
|
||||||
return false; // unknown, return false
|
return false; // unknown, return false
|
||||||
} else if (board_profile == "S32") {
|
} else if (board_profile == "S32") {
|
||||||
data = {2, 18, 23, 5, 0, PHY_type::PHY_TYPE_NONE, 0, 0, 0, 0}; // BBQKees Gateway S32
|
data = {2, 18, 23, 5, 0, PHY_type::PHY_TYPE_NONE, 0, 0, 0, 0}; // BBQKees Gateway S32
|
||||||
valid_system_gpios_ = {0, 2, 5, 18, 23};
|
valid_system_gpios_ = {0, 2, 5, 18, 23};
|
||||||
} else if (board_profile == "E32") {
|
} else if (board_profile == "E32") {
|
||||||
data = {2, 4, 5, 17, 33, PHY_type::PHY_TYPE_LAN8720, 16, 1, 0, 0}; // BBQKees Gateway E32
|
data = {2, 4, 5, 17, 33, PHY_type::PHY_TYPE_LAN8720, 16, 1, 0, 0}; // BBQKees Gateway E32
|
||||||
valid_system_gpios_ = {0, 2, 4, 5, 16, 17, 33};
|
valid_system_gpios_ = {0, 2, 4, 5, 16, 17, 33};
|
||||||
} else if (board_profile == "E32V2") {
|
} else if (board_profile == "E32V2") {
|
||||||
data = {2, 14, 4, 5, 34, PHY_type::PHY_TYPE_LAN8720, 15, 0, 1, 0}; // BBQKees Gateway E32 V2
|
data = {2, 14, 4, 5, 34, PHY_type::PHY_TYPE_LAN8720, 15, 0, 1, 0}; // BBQKees Gateway E32 V2
|
||||||
valid_system_gpios_ = {0, 2, 4, 5, 14, 15, 34};
|
valid_system_gpios_ = {0, 2, 4, 5, 14, 15, 34};
|
||||||
} else if (board_profile == "E32V2_2") {
|
} else if (board_profile == "E32V2_2") {
|
||||||
data = {32, 14, 4, 5, 34, PHY_type::PHY_TYPE_LAN8720, 15, 0, 1, 1}; // BBQKees Gateway E32 V2.2, rgb led
|
data = {32, 14, 4, 5, 34, PHY_type::PHY_TYPE_LAN8720, 15, 0, 1, 1}; // BBQKees Gateway E32 V2.2, rgb led
|
||||||
valid_system_gpios_ = {0, 2, 4, 5, 14, 15, 32, 34, 36, 39}; // system analogs 36, 39, led 2
|
valid_system_gpios_ = {0, 2, 4, 5, 14, 15, 32, 34, 36, 39}; // system analogs 36, 39, led 2
|
||||||
} else if (board_profile == "MH-ET") {
|
} else if (board_profile == "MH-ET") {
|
||||||
data = {2, 18, 23, 5, 0, PHY_type::PHY_TYPE_NONE, 0, 0, 0, 0}; // MH-ET Live D1 Mini
|
data = {2, 18, 23, 5, 0, PHY_type::PHY_TYPE_NONE, 0, 0, 0, 0}; // MH-ET Live D1 Mini
|
||||||
// allow only pins that are marked as `can always be used`
|
// allow only pins that are marked as `can always be used`
|
||||||
valid_system_gpios_ = {0, 2, 5, 18, 23, 12 ,13, 14, 15, 16, 17, 26, 27, 33};
|
valid_system_gpios_ = {0, 2, 5, 18, 23, 12, 13, 14, 15, 16, 17, 26, 27, 33};
|
||||||
// can always be used: 12, 13 ,14, 15, 16, 17, 26, 27, 33
|
// can always be used: 12, 13 ,14, 15, 16, 17, 26, 27, 33
|
||||||
// can be used if no other function 2, 4, 5, 9, 10, 18, 19, 21, 22, 23, 25, 34, 35, 36, 39
|
// can be used if no other function 2, 4, 5, 9, 10, 18, 19, 21, 22, 23, 25, 34, 35, 36, 39
|
||||||
} else if (board_profile == "NODEMCU") {
|
} else if (board_profile == "NODEMCU") {
|
||||||
@@ -2447,7 +2447,7 @@ bool System::load_board_profile(std::vector<int8_t> & data, const std::string &
|
|||||||
} else if (board_profile == "S3MINI") {
|
} else if (board_profile == "S3MINI") {
|
||||||
data = {17, 18, 8, 5, 0, PHY_type::PHY_TYPE_NONE, 0, 0, 0, 0}; // Liligo S3
|
data = {17, 18, 8, 5, 0, PHY_type::PHY_TYPE_NONE, 0, 0, 0, 0}; // Liligo S3
|
||||||
} else if (board_profile == "S32S3") {
|
} else if (board_profile == "S32S3") {
|
||||||
data = {2, 18, 5, 17, 0, PHY_type::PHY_TYPE_NONE, 0, 0, 0, 0}; // BBQKees Gateway S3
|
data = {2, 18, 5, 17, 0, PHY_type::PHY_TYPE_NONE, 0, 0, 0, 0}; // BBQKees Gateway S3
|
||||||
valid_system_gpios_ = {0, 2, 5, 17, 18};
|
valid_system_gpios_ = {0, 2, 5, 17, 18};
|
||||||
} else {
|
} else {
|
||||||
return false; // unknown, return false
|
return false; // unknown, return false
|
||||||
@@ -2976,7 +2976,7 @@ void System::set_valid_system_gpios() {
|
|||||||
// GPIO12 - GPIO15 = JTAG, normally not used
|
// GPIO12 - GPIO15 = JTAG, normally not used
|
||||||
// GPIO00, GPIO05, GPIO12, GPIO15 = strapping pins, can be used with care
|
// GPIO00, GPIO05, GPIO12, GPIO15 = strapping pins, can be used with care
|
||||||
// GPIO34, GPIO35, GPIO37 = input only
|
// GPIO34, GPIO35, GPIO37 = input only
|
||||||
// GPIO23 and GPIO18 are used by Ethernet, excuded later by eth config
|
// GPIO23 and GPIO18 are used by Ethernet, excluded later by eth config
|
||||||
// GPIO00, GPIO02, GPIO04, GPIO12 - GPIO15, GPIO25 - GPIO27 = ADC2 (10 ch), used by WiFI-driver
|
// GPIO00, GPIO02, GPIO04, GPIO12 - GPIO15, GPIO25 - GPIO27 = ADC2 (10 ch), used by WiFI-driver
|
||||||
// GPIO32 - GPIO39 = ADC1 (8 ch), can always be used
|
// GPIO32 - GPIO39 = ADC1 (8 ch), can always be used
|
||||||
if (ESP.getPsramSize() > 0) {
|
if (ESP.getPsramSize() > 0) {
|
||||||
|
|||||||
Reference in New Issue
Block a user