esphome 2024.6.1__py3-none-any.whl → 2024.6.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- esphome/codegen.py +1 -0
- esphome/components/dallas_temp/dallas_temp.cpp +15 -18
- esphome/components/ds1307/ds1307.cpp +12 -8
- esphome/components/esphome/ota/__init__.py +19 -0
- esphome/components/gpio/one_wire/gpio_one_wire.cpp +8 -2
- esphome/components/http_request/__init__.py +1 -1
- esphome/components/http_request/http_request.h +15 -5
- esphome/components/http_request/http_request_idf.cpp +1 -1
- esphome/components/http_request/watchdog.cpp +1 -1
- esphome/components/midea/climate.py +1 -1
- esphome/components/modbus_controller/modbus_controller.cpp +2 -1
- esphome/components/modbus_controller/text_sensor/modbus_textsensor.cpp +1 -1
- esphome/components/safe_mode/__init__.py +12 -13
- esphome/components/update/__init__.py +6 -1
- esphome/components/update/update_entity.cpp +26 -0
- esphome/config_helpers.py +7 -3
- esphome/const.py +1 -1
- esphome/cpp_types.py +1 -0
- {esphome-2024.6.1.dist-info → esphome-2024.6.3.dist-info}/METADATA +1 -1
- {esphome-2024.6.1.dist-info → esphome-2024.6.3.dist-info}/RECORD +24 -24
- {esphome-2024.6.1.dist-info → esphome-2024.6.3.dist-info}/LICENSE +0 -0
- {esphome-2024.6.1.dist-info → esphome-2024.6.3.dist-info}/WHEEL +0 -0
- {esphome-2024.6.1.dist-info → esphome-2024.6.3.dist-info}/entry_points.txt +0 -0
- {esphome-2024.6.1.dist-info → esphome-2024.6.3.dist-info}/top_level.txt +0 -0
esphome/codegen.py
CHANGED
@@ -145,24 +145,21 @@ bool DallasTemperatureSensor::check_scratch_pad_() {
|
|
145
145
|
float DallasTemperatureSensor::get_temp_c_() {
|
146
146
|
int16_t temp = (this->scratch_pad_[1] << 8) | this->scratch_pad_[0];
|
147
147
|
if ((this->address_ & 0xff) == DALLAS_MODEL_DS18S20) {
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
default:
|
164
|
-
break;
|
165
|
-
}
|
148
|
+
return (temp >> 1) + (this->scratch_pad_[7] - this->scratch_pad_[6]) / float(this->scratch_pad_[7]) - 0.25;
|
149
|
+
}
|
150
|
+
switch (this->resolution_) {
|
151
|
+
case 9:
|
152
|
+
temp &= 0xfff8;
|
153
|
+
break;
|
154
|
+
case 10:
|
155
|
+
temp &= 0xfffc;
|
156
|
+
break;
|
157
|
+
case 11:
|
158
|
+
temp &= 0xfffe;
|
159
|
+
break;
|
160
|
+
case 12:
|
161
|
+
default:
|
162
|
+
break;
|
166
163
|
}
|
167
164
|
|
168
165
|
return temp / 16.0f;
|
@@ -37,14 +37,18 @@ void DS1307Component::read_time() {
|
|
37
37
|
ESP_LOGW(TAG, "RTC halted, not syncing to system clock.");
|
38
38
|
return;
|
39
39
|
}
|
40
|
-
ESPTime rtc_time{
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
40
|
+
ESPTime rtc_time{
|
41
|
+
.second = uint8_t(ds1307_.reg.second + 10 * ds1307_.reg.second_10),
|
42
|
+
.minute = uint8_t(ds1307_.reg.minute + 10u * ds1307_.reg.minute_10),
|
43
|
+
.hour = uint8_t(ds1307_.reg.hour + 10u * ds1307_.reg.hour_10),
|
44
|
+
.day_of_week = uint8_t(ds1307_.reg.weekday),
|
45
|
+
.day_of_month = uint8_t(ds1307_.reg.day + 10u * ds1307_.reg.day_10),
|
46
|
+
.day_of_year = 1, // ignored by recalc_timestamp_utc(false)
|
47
|
+
.month = uint8_t(ds1307_.reg.month + 10u * ds1307_.reg.month_10),
|
48
|
+
.year = uint16_t(ds1307_.reg.year + 10u * ds1307_.reg.year_10 + 2000),
|
49
|
+
.is_dst = false, // not used
|
50
|
+
.timestamp = 0 // overwritten by recalc_timestamp_utc(false)
|
51
|
+
};
|
48
52
|
rtc_time.recalc_timestamp_utc(false);
|
49
53
|
if (!rtc_time.is_valid()) {
|
50
54
|
ESP_LOGE(TAG, "Invalid RTC time, not syncing to system clock.");
|
@@ -1,10 +1,14 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
2
|
import esphome.config_validation as cv
|
3
|
+
import esphome.final_validate as fv
|
3
4
|
from esphome.components.ota import BASE_OTA_SCHEMA, ota_to_code, OTAComponent
|
4
5
|
from esphome.const import (
|
6
|
+
CONF_ESPHOME,
|
5
7
|
CONF_ID,
|
6
8
|
CONF_NUM_ATTEMPTS,
|
9
|
+
CONF_OTA,
|
7
10
|
CONF_PASSWORD,
|
11
|
+
CONF_PLATFORM,
|
8
12
|
CONF_PORT,
|
9
13
|
CONF_REBOOT_TIMEOUT,
|
10
14
|
CONF_SAFE_MODE,
|
@@ -21,6 +25,19 @@ esphome = cg.esphome_ns.namespace("esphome")
|
|
21
25
|
ESPHomeOTAComponent = esphome.class_("ESPHomeOTAComponent", OTAComponent)
|
22
26
|
|
23
27
|
|
28
|
+
def ota_esphome_final_validate(config):
|
29
|
+
fconf = fv.full_config.get()[CONF_OTA]
|
30
|
+
used_ports = []
|
31
|
+
for ota_conf in fconf:
|
32
|
+
if ota_conf.get(CONF_PLATFORM) == CONF_ESPHOME:
|
33
|
+
if (plat_port := ota_conf.get(CONF_PORT)) not in used_ports:
|
34
|
+
used_ports.append(plat_port)
|
35
|
+
else:
|
36
|
+
raise cv.Invalid(
|
37
|
+
f"Only one instance of the {CONF_ESPHOME} {CONF_OTA} {CONF_PLATFORM} is allowed per port. Note that this error may result from OTA specified in packages"
|
38
|
+
)
|
39
|
+
|
40
|
+
|
24
41
|
CONFIG_SCHEMA = (
|
25
42
|
cv.Schema(
|
26
43
|
{
|
@@ -50,6 +67,8 @@ CONFIG_SCHEMA = (
|
|
50
67
|
.extend(cv.COMPONENT_SCHEMA)
|
51
68
|
)
|
52
69
|
|
70
|
+
FINAL_VALIDATE_SCHEMA = ota_esphome_final_validate
|
71
|
+
|
53
72
|
|
54
73
|
@coroutine_with_priority(52.0)
|
55
74
|
async def to_code(config):
|
@@ -9,6 +9,10 @@ static const char *const TAG = "gpio.one_wire";
|
|
9
9
|
|
10
10
|
void GPIOOneWireBus::setup() {
|
11
11
|
ESP_LOGCONFIG(TAG, "Setting up 1-wire bus...");
|
12
|
+
this->t_pin_->setup();
|
13
|
+
// clear bus with 480µs high, otherwise initial reset in search might fail
|
14
|
+
this->t_pin_->pin_mode(gpio::FLAG_INPUT | gpio::FLAG_PULLUP);
|
15
|
+
delayMicroseconds(480);
|
12
16
|
this->search();
|
13
17
|
}
|
14
18
|
|
@@ -90,13 +94,15 @@ bool HOT IRAM_ATTR GPIOOneWireBus::read_bit_() {
|
|
90
94
|
|
91
95
|
// measure from start value directly, to get best accurate timing no matter
|
92
96
|
// how long pin_mode/delayMicroseconds took
|
93
|
-
|
97
|
+
uint32_t now = micros();
|
98
|
+
if (now - start < 12)
|
99
|
+
delayMicroseconds(12 - (now - start));
|
94
100
|
|
95
101
|
// sample bus to read bit from peer
|
96
102
|
bool r = pin_.digital_read();
|
97
103
|
|
98
104
|
// read slot is at least 60µs; get as close to 60µs to spend less time with interrupts locked
|
99
|
-
|
105
|
+
now = micros();
|
100
106
|
if (now - start < 60)
|
101
107
|
delayMicroseconds(60 - (now - start));
|
102
108
|
|
@@ -43,10 +43,10 @@ class HttpContainer : public Parented<HttpRequestComponent> {
|
|
43
43
|
bool secure_{false};
|
44
44
|
};
|
45
45
|
|
46
|
-
class HttpRequestResponseTrigger : public Trigger<std::shared_ptr<HttpContainer>, std::string
|
46
|
+
class HttpRequestResponseTrigger : public Trigger<std::shared_ptr<HttpContainer>, std::string &> {
|
47
47
|
public:
|
48
|
-
void process(std::shared_ptr<HttpContainer> container, std::string response_body) {
|
49
|
-
this->trigger(std::move(container),
|
48
|
+
void process(std::shared_ptr<HttpContainer> container, std::string &response_body) {
|
49
|
+
this->trigger(std::move(container), response_body);
|
50
50
|
}
|
51
51
|
};
|
52
52
|
|
@@ -149,11 +149,21 @@ template<typename... Ts> class HttpRequestSendAction : public Action<Ts...> {
|
|
149
149
|
}
|
150
150
|
response_body.reserve(read_index);
|
151
151
|
response_body.assign((char *) buf, read_index);
|
152
|
+
allocator.deallocate(buf, max_length);
|
152
153
|
}
|
153
154
|
}
|
154
155
|
|
155
|
-
|
156
|
-
trigger
|
156
|
+
if (this->response_triggers_.size() == 1) {
|
157
|
+
// if there is only one trigger, no need to copy the response body
|
158
|
+
this->response_triggers_[0]->process(container, response_body);
|
159
|
+
} else {
|
160
|
+
for (auto *trigger : this->response_triggers_) {
|
161
|
+
// with multiple triggers, pass a copy of the response body to each
|
162
|
+
// one so that modifications made in one trigger are not visible to
|
163
|
+
// the others
|
164
|
+
auto response_body_copy = std::string(response_body);
|
165
|
+
trigger->process(container, response_body_copy);
|
166
|
+
}
|
157
167
|
}
|
158
168
|
container->end();
|
159
169
|
}
|
@@ -90,7 +90,7 @@ std::shared_ptr<HttpContainer> HttpRequestIDF::start(std::string url, std::strin
|
|
90
90
|
int write_left = body_len;
|
91
91
|
int write_index = 0;
|
92
92
|
const char *buf = body.c_str();
|
93
|
-
while (
|
93
|
+
while (write_left > 0) {
|
94
94
|
int written = esp_http_client_write(client, buf + write_index, write_left);
|
95
95
|
if (written < 0) {
|
96
96
|
err = ESP_FAIL;
|
@@ -46,7 +46,7 @@ void WatchdogManager::set_timeout_(uint32_t timeout_ms) {
|
|
46
46
|
};
|
47
47
|
esp_task_wdt_reconfigure(&wdt_config);
|
48
48
|
#else
|
49
|
-
esp_task_wdt_init(timeout_ms, true);
|
49
|
+
esp_task_wdt_init(timeout_ms / 1000, true);
|
50
50
|
#endif // ESP_IDF_VERSION_MAJOR
|
51
51
|
#endif // USE_ESP32
|
52
52
|
|
@@ -293,4 +293,4 @@ async def to_code(config):
|
|
293
293
|
if CONF_HUMIDITY_SETPOINT in config:
|
294
294
|
sens = await sensor.new_sensor(config[CONF_HUMIDITY_SETPOINT])
|
295
295
|
cg.add(var.set_humidity_setpoint_sensor(sens))
|
296
|
-
cg.add_library("dudanov/MideaUART", "1.1.
|
296
|
+
cg.add_library("dudanov/MideaUART", "1.1.9")
|
@@ -116,7 +116,8 @@ void ModbusController::on_modbus_read_registers(uint8_t function_code, uint16_t
|
|
116
116
|
ESP_LOGD(TAG, "Matched register. Address: 0x%02X. Value type: %zu. Register count: %u. Value: %0.1f.",
|
117
117
|
server_register->address, static_cast<uint8_t>(server_register->value_type),
|
118
118
|
server_register->register_count, value);
|
119
|
-
|
119
|
+
std::vector<uint16_t> payload = float_to_payload(value, server_register->value_type);
|
120
|
+
sixteen_bit_response.insert(sixteen_bit_response.end(), payload.cbegin(), payload.cend());
|
120
121
|
current_address += server_register->register_count;
|
121
122
|
found = true;
|
122
123
|
break;
|
@@ -15,7 +15,7 @@ void ModbusTextSensor::parse_and_publish(const std::vector<uint8_t> &data) {
|
|
15
15
|
std::ostringstream output;
|
16
16
|
uint8_t items_left = this->response_bytes;
|
17
17
|
uint8_t index = this->offset;
|
18
|
-
char buffer[
|
18
|
+
char buffer[5];
|
19
19
|
while ((items_left > 0) && index < data.size()) {
|
20
20
|
uint8_t b = data[index];
|
21
21
|
switch (this->encode_) {
|
@@ -56,21 +56,20 @@ CONFIG_SCHEMA = cv.All(
|
|
56
56
|
|
57
57
|
@coroutine_with_priority(50.0)
|
58
58
|
async def to_code(config):
|
59
|
-
if config[CONF_DISABLED]:
|
60
|
-
|
59
|
+
if not config[CONF_DISABLED]:
|
60
|
+
var = cg.new_Pvariable(config[CONF_ID])
|
61
|
+
await cg.register_component(var, config)
|
61
62
|
|
62
|
-
|
63
|
-
|
63
|
+
for conf in config.get(CONF_ON_SAFE_MODE, []):
|
64
|
+
trigger = cg.new_Pvariable(conf[CONF_TRIGGER_ID], var)
|
65
|
+
await automation.build_automation(trigger, [], conf)
|
64
66
|
|
65
|
-
|
66
|
-
|
67
|
-
|
67
|
+
condition = var.should_enter_safe_mode(
|
68
|
+
config[CONF_NUM_ATTEMPTS],
|
69
|
+
config[CONF_REBOOT_TIMEOUT],
|
70
|
+
config[CONF_BOOT_IS_GOOD_AFTER],
|
71
|
+
)
|
72
|
+
cg.add(RawExpression(f"if ({condition}) return"))
|
68
73
|
|
69
|
-
condition = var.should_enter_safe_mode(
|
70
|
-
config[CONF_NUM_ATTEMPTS],
|
71
|
-
config[CONF_REBOOT_TIMEOUT],
|
72
|
-
config[CONF_BOOT_IS_GOOD_AFTER],
|
73
|
-
)
|
74
|
-
cg.add(RawExpression(f"if ({condition}) return"))
|
75
74
|
CORE.data[CONF_SAFE_MODE] = {}
|
76
75
|
CORE.data[CONF_SAFE_MODE][KEY_PAST_SAFE_MODE] = True
|
@@ -4,11 +4,13 @@ import esphome.config_validation as cv
|
|
4
4
|
import esphome.codegen as cg
|
5
5
|
from esphome.const import (
|
6
6
|
CONF_DEVICE_CLASS,
|
7
|
+
CONF_ENTITY_CATEGORY,
|
7
8
|
CONF_ID,
|
8
9
|
CONF_MQTT_ID,
|
9
10
|
CONF_WEB_SERVER_ID,
|
10
11
|
DEVICE_CLASS_EMPTY,
|
11
12
|
DEVICE_CLASS_FIRMWARE,
|
13
|
+
ENTITY_CATEGORY_CONFIG,
|
12
14
|
)
|
13
15
|
from esphome.core import CORE, coroutine_with_priority
|
14
16
|
from esphome.cpp_helpers import setup_entity
|
@@ -41,6 +43,9 @@ UPDATE_SCHEMA = (
|
|
41
43
|
cv.Optional(CONF_ON_UPDATE_AVAILABLE): automation.validate_automation(
|
42
44
|
single=True
|
43
45
|
),
|
46
|
+
cv.Optional(
|
47
|
+
CONF_ENTITY_CATEGORY, default=ENTITY_CATEGORY_CONFIG
|
48
|
+
): cv.entity_category,
|
44
49
|
}
|
45
50
|
)
|
46
51
|
)
|
@@ -64,7 +69,7 @@ async def setup_update_core_(var, config):
|
|
64
69
|
await mqtt.register_mqtt_component(mqtt_, config)
|
65
70
|
|
66
71
|
if web_server_id_config := config.get(CONF_WEB_SERVER_ID):
|
67
|
-
web_server_ = cg.get_variable(web_server_id_config)
|
72
|
+
web_server_ = await cg.get_variable(web_server_id_config)
|
68
73
|
web_server.add_entity_to_sorting_list(web_server_, var, config)
|
69
74
|
|
70
75
|
|
@@ -1,9 +1,35 @@
|
|
1
1
|
#include "update_entity.h"
|
2
2
|
|
3
|
+
#include "esphome/core/log.h"
|
4
|
+
|
3
5
|
namespace esphome {
|
4
6
|
namespace update {
|
5
7
|
|
8
|
+
static const char *const TAG = "update";
|
9
|
+
|
6
10
|
void UpdateEntity::publish_state() {
|
11
|
+
ESP_LOGD(TAG, "'%s' - Publishing:", this->name_.c_str());
|
12
|
+
ESP_LOGD(TAG, " Current Version: %s", this->update_info_.current_version.c_str());
|
13
|
+
|
14
|
+
if (!this->update_info_.md5.empty()) {
|
15
|
+
ESP_LOGD(TAG, " Latest Version: %s", this->update_info_.latest_version.c_str());
|
16
|
+
}
|
17
|
+
if (!this->update_info_.firmware_url.empty()) {
|
18
|
+
ESP_LOGD(TAG, " Firmware URL: %s", this->update_info_.firmware_url.c_str());
|
19
|
+
}
|
20
|
+
|
21
|
+
ESP_LOGD(TAG, " Title: %s", this->update_info_.title.c_str());
|
22
|
+
if (!this->update_info_.summary.empty()) {
|
23
|
+
ESP_LOGD(TAG, " Summary: %s", this->update_info_.summary.c_str());
|
24
|
+
}
|
25
|
+
if (!this->update_info_.release_url.empty()) {
|
26
|
+
ESP_LOGD(TAG, " Release URL: %s", this->update_info_.release_url.c_str());
|
27
|
+
}
|
28
|
+
|
29
|
+
if (this->update_info_.has_progress) {
|
30
|
+
ESP_LOGD(TAG, " Progress: %.0f%%", this->update_info_.progress);
|
31
|
+
}
|
32
|
+
|
7
33
|
this->has_state_ = true;
|
8
34
|
this->state_callback_.call();
|
9
35
|
}
|
esphome/config_helpers.py
CHANGED
@@ -58,17 +58,21 @@ def merge_config(full_old, full_new):
|
|
58
58
|
ids = {
|
59
59
|
v_id: i
|
60
60
|
for i, v in enumerate(res)
|
61
|
-
if (
|
61
|
+
if isinstance(v, dict)
|
62
|
+
and (v_id := v.get(CONF_ID))
|
63
|
+
and isinstance(v_id, str)
|
62
64
|
}
|
63
65
|
extend_ids = {
|
64
66
|
v_id.value: i
|
65
67
|
for i, v in enumerate(res)
|
66
|
-
if (
|
68
|
+
if isinstance(v, dict)
|
69
|
+
and (v_id := v.get(CONF_ID))
|
70
|
+
and isinstance(v_id, Extend)
|
67
71
|
}
|
68
72
|
|
69
73
|
ids_to_delete = []
|
70
74
|
for v in new:
|
71
|
-
if new_id := v.get(CONF_ID):
|
75
|
+
if isinstance(v, dict) and (new_id := v.get(CONF_ID)):
|
72
76
|
if isinstance(new_id, Extend):
|
73
77
|
new_id = new_id.value
|
74
78
|
if new_id in ids:
|
esphome/const.py
CHANGED
esphome/cpp_types.py
CHANGED
@@ -10,6 +10,7 @@ int_ = global_ns.namespace("int")
|
|
10
10
|
std_ns = global_ns.namespace("std")
|
11
11
|
std_shared_ptr = std_ns.class_("shared_ptr")
|
12
12
|
std_string = std_ns.class_("string")
|
13
|
+
std_string_ref = std_ns.namespace("string &")
|
13
14
|
std_vector = std_ns.class_("vector")
|
14
15
|
uint8 = global_ns.namespace("uint8_t")
|
15
16
|
uint16 = global_ns.namespace("uint16_t")
|
@@ -1,15 +1,15 @@
|
|
1
1
|
esphome/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
2
2
|
esphome/__main__.py,sha256=q5bitlzrHuGTKl-wPanxoq2W-__D6v9FR7igo91fWj0,33402
|
3
3
|
esphome/automation.py,sha256=wnD7iJvGPSz7q8AJo2o5KglnN_uuhKcWOpYp95Vg9Oc,14507
|
4
|
-
esphome/codegen.py,sha256=
|
4
|
+
esphome/codegen.py,sha256=LCJVpAwy1L9DTBsIvbgAbHj1TOXUSPgBoN--aio0gBk,1855
|
5
5
|
esphome/config.py,sha256=wztK2UmO7-hc6HFDAi6YWtrPVy5mH0diKuqpsWp4-XA,39616
|
6
|
-
esphome/config_helpers.py,sha256=
|
6
|
+
esphome/config_helpers.py,sha256=MKf_wzO35nn41FvigXE0iYKDslPgL2ruf8R-EPtTT2I,3256
|
7
7
|
esphome/config_validation.py,sha256=G79LGVIh5BdpGkzuehkm7Db_llpbC2of4dKqZEpHc3A,64838
|
8
|
-
esphome/const.py,sha256=
|
8
|
+
esphome/const.py,sha256=xBNzlCHOc7TMF2WgpADpQbGL4C-nEc93fw_8J0tdr2A,38841
|
9
9
|
esphome/coroutine.py,sha256=IG2kC92OrenyiRm7Qo9uC-4qU4b4-Lmj0TkMIjRG2RY,9344
|
10
10
|
esphome/cpp_generator.py,sha256=hW2EfubUiildhKXZIdV8Dr3Q9TM5oHybFwiTo5-vEUE,31203
|
11
11
|
esphome/cpp_helpers.py,sha256=KadRBBoo4QRT-VwdWFtvxv_FYjqhZTkBhfMX-JhEMwg,4803
|
12
|
-
esphome/cpp_types.py,sha256=
|
12
|
+
esphome/cpp_types.py,sha256=e4e7bEc_tuH_tVlU1ninne7fYuMFa1SdUzN99OQ-i4g,1787
|
13
13
|
esphome/espota2.py,sha256=KuDuWCn_IHd3VBmVf2T00T1k25l3ty63_WluRMirYKs,11760
|
14
14
|
esphome/external_files.py,sha256=jKQkWlv-MeK9apLz9hTu1TKTicb3bfujy11BnJuRuYM,2586
|
15
15
|
esphome/final_validate.py,sha256=oW3hlx3K7fuyEZ6N7R4L-_LLXMY622DSEIU78smsUfk,1898
|
@@ -560,7 +560,7 @@ esphome/components/daikin_brc/daikin_brc.h,sha256=ew2Yes19rWaev5GtDhi-9Wz7XbZli-
|
|
560
560
|
esphome/components/dallas/__init__.py,sha256=U1GxxurgZ3PsVb_HAxZiW6QB_7WGsJmgp48xyPgsdt4,205
|
561
561
|
esphome/components/dallas/sensor.py,sha256=aOiKX3STBILtpFe0J_iKfgjCEFKwyWPASxbP__MMJh8,167
|
562
562
|
esphome/components/dallas_temp/__init__.py,sha256=4y1dHAQV9d7Pm8PXNX-UzFwUa4Uqyl1zsYN7tefVu9Q,24
|
563
|
-
esphome/components/dallas_temp/dallas_temp.cpp,sha256=
|
563
|
+
esphome/components/dallas_temp/dallas_temp.cpp,sha256=eVjftHbHUZ4sbVwcX3Rw27IqxSDFUc6QPXNQiF0Jc28,4582
|
564
564
|
esphome/components/dallas_temp/dallas_temp.h,sha256=HbCVQ_uho9u1Pq-l1LeHBbT0fYkp3kabT6w9Ql9RyIg,885
|
565
565
|
esphome/components/dallas_temp/sensor.py,sha256=t9KDm7H-6RRxz4KaJF1nLPM_Bn5dULH1FuI2CdUUhQ8,1152
|
566
566
|
esphome/components/daly_bms/__init__.py,sha256=FyoXD_Y23-mRrnndBS70JY7UHKC0eEcJgWCF38DbCXA,897
|
@@ -649,7 +649,7 @@ esphome/components/dps310/dps310.cpp,sha256=kfzM0Pydy5kgJFTo5QP-WLajKgmqYVOpfb3W
|
|
649
649
|
esphome/components/dps310/dps310.h,sha256=-kD5VuLWA1yIQEIf9ki0zeW9Y37mSIvWZysPA57Oqh0,3376
|
650
650
|
esphome/components/dps310/sensor.py,sha256=SKJHun9LArscv6kJ9YBzqlaLmOiKYtYAA-Gd_l5qOCU,1839
|
651
651
|
esphome/components/ds1307/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
652
|
-
esphome/components/ds1307/ds1307.cpp,sha256=
|
652
|
+
esphome/components/ds1307/ds1307.cpp,sha256=0MU8vTJJovdp4LDv1mUNZoffr-Iur3abS3l9SrfQSOo,3982
|
653
653
|
esphome/components/ds1307/ds1307.h,sha256=elw1vByu25ZCykDalNyVt85i4uCcohJPXlwpLlwS8Gs,1616
|
654
654
|
esphome/components/ds1307/time.py,sha256=UlnG10Tt8ISnSBYcfhZzXHIE8cZh5G2TBXo7MwkPNhg,1605
|
655
655
|
esphome/components/dsmr/__init__.py,sha256=RlEfHH24fQ41WDeQuJwJL9-AjEjHvMnoCVp3BXA8XUw,3321
|
@@ -813,7 +813,7 @@ esphome/components/esp8266_pwm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
|
|
813
813
|
esphome/components/esp8266_pwm/esp8266_pwm.cpp,sha256=c4_NPBOfBdguJghAdx7d9cwtyJscVEhWD4_Xkavbmfw,1703
|
814
814
|
esphome/components/esp8266_pwm/esp8266_pwm.h,sha256=YLObIixl3YFDx3biu1TVfH6qyOFFts-VGT4pxgN0PHw,1386
|
815
815
|
esphome/components/esp8266_pwm/output.py,sha256=7qgJT-O8nr0HjFajwbw2k_DlXwG_SLfP4ma82-GF-ew,2062
|
816
|
-
esphome/components/esphome/ota/__init__.py,sha256=
|
816
|
+
esphome/components/esphome/ota/__init__.py,sha256=1m6H-VfFmFX1Y3lbDDQNwsn4SEDVjhI8D3IfMtC5jz4,2937
|
817
817
|
esphome/components/esphome/ota/ota_esphome.cpp,sha256=k2mo3SWZvQXLCZIeEIb_d6IV8D5vD5ynnlcjq_zPyCM,12334
|
818
818
|
esphome/components/esphome/ota/ota_esphome.h,sha256=8j_EDYbc7UiALElGt6NN834RDfCxD8oLHkJbhyaXtV4,1118
|
819
819
|
esphome/components/ethernet/__init__.py,sha256=5mP3op-0A0eSGc8NyrmzEEPaDgt4pBj2NKFubj7E7tw,8821
|
@@ -914,7 +914,7 @@ esphome/components/gpio/binary_sensor/__init__.py,sha256=5aN9d9lhMm5f4mYKTpCAjrE
|
|
914
914
|
esphome/components/gpio/binary_sensor/gpio_binary_sensor.cpp,sha256=1uHK50delMhBeraotqFbVzOc7F-EDwL79aw283TmN0A,620
|
915
915
|
esphome/components/gpio/binary_sensor/gpio_binary_sensor.h,sha256=KcIZ2dmzpUDfBMQOK7xjCqAYFK8iRP1cA4VyxZGxohE,666
|
916
916
|
esphome/components/gpio/one_wire/__init__.py,sha256=oTQx3yIXYth-281Qz7NRFLCrX3S12LrmFbyOSC4XaeE,713
|
917
|
-
esphome/components/gpio/one_wire/gpio_one_wire.cpp,sha256=
|
917
|
+
esphome/components/gpio/one_wire/gpio_one_wire.cpp,sha256=0g9Jh5UcVxAnlCOraPfUr8FcITWUOMn-HrE24QqIdyo,5292
|
918
918
|
esphome/components/gpio/one_wire/gpio_one_wire.h,sha256=tAxSKs75rR2SQImCLmzziXevxpy-bzamKt0ETTEW1dc,959
|
919
919
|
esphome/components/gpio/output/__init__.py,sha256=LhpHRBnuIr_PzsFn8pzxXy_0ehXBWEptXffSanpPdDY,757
|
920
920
|
esphome/components/gpio/output/gpio_binary_output.cpp,sha256=-_--D6rDu4n7G8uRDXCDqpZR4EzeuahfvR4HJeCvKaw,341
|
@@ -1065,14 +1065,14 @@ esphome/components/hte501/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJW
|
|
1065
1065
|
esphome/components/hte501/hte501.cpp,sha256=PZjDGzy2AAZ6tz4xvrlAD0GGcFmV-HjSnsZ5lIptkNM,2789
|
1066
1066
|
esphome/components/hte501/hte501.h,sha256=EY-aX8KwudhZPQ3tyRzSU2hPFUzFkmAhrGdhAXR-8rA,998
|
1067
1067
|
esphome/components/hte501/sensor.py,sha256=H7cfhfjQ0lyUgHABpoyiKOaj_f2qhN7nDW-tTj2sttQ,1723
|
1068
|
-
esphome/components/http_request/__init__.py,sha256=
|
1068
|
+
esphome/components/http_request/__init__.py,sha256=iEloLmhwKBRUHqIVjYN0LmxzrIUAMlttDrU7qPP55IU,9336
|
1069
1069
|
esphome/components/http_request/http_request.cpp,sha256=UFpMPffAuE2enh8iBvZzV3EDr7lS-MoLaquDoi5FGEw,705
|
1070
|
-
esphome/components/http_request/http_request.h,sha256
|
1070
|
+
esphome/components/http_request/http_request.h,sha256=-QVBxaH5iOFuzuvdmBDrjL81YM63mv3zILS4m8E4Oa4,6758
|
1071
1071
|
esphome/components/http_request/http_request_arduino.cpp,sha256=Bgobw_5kJ4WoimlmFS9msB6ftHoUhNYKf3Rj3xNY9fQ,5174
|
1072
1072
|
esphome/components/http_request/http_request_arduino.h,sha256=iaOY5aKpQJREygOoyBB8Nsozp4cfETDt-G6Hgu_pkm0,871
|
1073
|
-
esphome/components/http_request/http_request_idf.cpp,sha256=
|
1073
|
+
esphome/components/http_request/http_request_idf.cpp,sha256=7WJQ4woRdTGzeiaI9Aa2Xu0aDX5EAxydE0cbKbGLifE,4382
|
1074
1074
|
esphome/components/http_request/http_request_idf.h,sha256=RmtzXsXsi8M66Lnf6eHbdEK5PIwALlvHyNXVz4skeGQ,774
|
1075
|
-
esphome/components/http_request/watchdog.cpp,sha256=
|
1075
|
+
esphome/components/http_request/watchdog.cpp,sha256=vrRWycQv1a4iOxYaR2Ld4UJdnYgp-s2E1V6kLjqoK_w,1687
|
1076
1076
|
esphome/components/http_request/watchdog.h,sha256=45UrEdgj6KmB7lLPIK4-_BdpwZy-aDki3tMWrQn-hF8,454
|
1077
1077
|
esphome/components/http_request/ota/__init__.py,sha256=jpcMsy-w7q6YH2XFwBHVMb9_rM8hY0_3BS_3rkKRvc0,3202
|
1078
1078
|
esphome/components/http_request/ota/automation.h,sha256=yQo6nJis0S56r5F-tIPbRPqPZMcu0Lpcawr2cX92Ap4,1209
|
@@ -1531,7 +1531,7 @@ esphome/components/midea/ac_automations.h,sha256=N7FlaSuUORyGymXLxZ1RuNt_Lf63I_4
|
|
1531
1531
|
esphome/components/midea/air_conditioner.cpp,sha256=x4FnacE0KvJJwbN854g3tK-jZjZx6d7LwLppI0ugorg,6112
|
1532
1532
|
esphome/components/midea/air_conditioner.h,sha256=3al4vlPYRHNo0876kyEdH0lRoMsUuptUnlUqqSjF84g,2494
|
1533
1533
|
esphome/components/midea/appliance_base.h,sha256=U2b_MqV1Bv1rG3L7AnKggBvY3yYwtYa1ZuNtdoa1WaI,2951
|
1534
|
-
esphome/components/midea/climate.py,sha256=
|
1534
|
+
esphome/components/midea/climate.py,sha256=PE3cPEtgs0EoRxuCxPav_IuEj2eFOfnhIbLB8rVpOBg,9682
|
1535
1535
|
esphome/components/midea/ir_transmitter.h,sha256=oLCcKvL8UeWJjCnrx66xIOYsXZ4kVKNLGl6zecZD3hM,1641
|
1536
1536
|
esphome/components/midea_ac/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1537
1537
|
esphome/components/midea_ac/climate.py,sha256=rOrj73N5UfYLk1S5ngs4g2xizCm0l8xl_etVVXXtII4,120
|
@@ -1565,7 +1565,7 @@ esphome/components/modbus/modbus.cpp,sha256=O8O9s4mHIyhmRzRAQ8fK88dYljQEhNv-DKaD
|
|
1565
1565
|
esphome/components/modbus/modbus.h,sha256=lDXklIqGZsyXnvf4oFslaGtD7yd9YwRkUYSpYsQRcAg,2477
|
1566
1566
|
esphome/components/modbus_controller/__init__.py,sha256=OvVJfEMgw5VrBKdFsEi06AWIfa3dRh4mh9uBb0JnQnE,9652
|
1567
1567
|
esphome/components/modbus_controller/const.py,sha256=oe_0YOtwnzRI5hppgFgjkzhw_PkLS4_GWadjbCt393A,624
|
1568
|
-
esphome/components/modbus_controller/modbus_controller.cpp,sha256=
|
1568
|
+
esphome/components/modbus_controller/modbus_controller.cpp,sha256=bhd8P4jAEX_ariFyslyhvF9yJN5P64ZK2EBK2LczIjY,26722
|
1569
1569
|
esphome/components/modbus_controller/modbus_controller.h,sha256=CsCLbWC7xpMK77FzRl1qxgeXLXq32d0woD7tLM8n1Is,21910
|
1570
1570
|
esphome/components/modbus_controller/binary_sensor/__init__.py,sha256=HZe6vDNIMUOyQ2jJTZSbu_SSJFSxNVVxjYtXuyJ62GU,1634
|
1571
1571
|
esphome/components/modbus_controller/binary_sensor/modbus_binarysensor.cpp,sha256=wsRl8P37mxr24CQJ4gCrFsUTlgVVKOVsY8HJTN1sUA8,1197
|
@@ -1586,7 +1586,7 @@ esphome/components/modbus_controller/switch/__init__.py,sha256=7kNXF7HkcD5GwA5tu
|
|
1586
1586
|
esphome/components/modbus_controller/switch/modbus_switch.cpp,sha256=cb_pXmVCiln4I3p-IatuDABPt66UPRcMe87d1btKxS0,4227
|
1587
1587
|
esphome/components/modbus_controller/switch/modbus_switch.h,sha256=XUBdWMh0paqx6saqwABLj1Z6ClPcWTHlaOPpDJY8qvY,2026
|
1588
1588
|
esphome/components/modbus_controller/text_sensor/__init__.py,sha256=6KJrt-Ja1byI68RX9CRb-VsBh40jIr_8_DuC7UOPb_s,2422
|
1589
|
-
esphome/components/modbus_controller/text_sensor/modbus_textsensor.cpp,sha256=
|
1589
|
+
esphome/components/modbus_controller/text_sensor/modbus_textsensor.cpp,sha256=YadSV04TlvACAjyAfpISGv05i6oKof8od0UxqqPo6gs,1534
|
1590
1590
|
esphome/components/modbus_controller/text_sensor/modbus_textsensor.h,sha256=v3-AXp4xL8dbPMAsPFYd65IJ2AIPQXLwLhMICuHT2ww,1498
|
1591
1591
|
esphome/components/monochromatic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1592
1592
|
esphome/components/monochromatic/light.py,sha256=THKgebL_J4kCyt42O5y0kBbMZP1f885MO7fEbycvxnA,761
|
@@ -2137,7 +2137,7 @@ esphome/components/ruuvitag/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMp
|
|
2137
2137
|
esphome/components/ruuvitag/ruuvitag.cpp,sha256=4oJLZsX4jyfgMnloAtR7_DwwYla5Ni3r8Q-oLPqZMPE,939
|
2138
2138
|
esphome/components/ruuvitag/ruuvitag.h,sha256=ryiJUzyWmF1xXuyEjFyT1nufKS7hJaw5-Dh7Y9-BVqY,3955
|
2139
2139
|
esphome/components/ruuvitag/sensor.py,sha256=4DsRPn4JriUoJPnz3pI5r3qMxcFpVwo4yLa1AmRJaX0,6217
|
2140
|
-
esphome/components/safe_mode/__init__.py,sha256=
|
2140
|
+
esphome/components/safe_mode/__init__.py,sha256=sr35sEw2lxmjYZKYsxWBBd-9fjQGubDK_uxoOwG4tqs,2396
|
2141
2141
|
esphome/components/safe_mode/automation.h,sha256=ZXlH1n-aHmd5hUCITSUIZrihPL8cNwaISzEb0o9q0gU,356
|
2142
2142
|
esphome/components/safe_mode/safe_mode.cpp,sha256=s0XE1iGHA7vNX7m7fJ0AOksQCAuTTp0qbYy6HNWQTKg,4267
|
2143
2143
|
esphome/components/safe_mode/safe_mode.h,sha256=o53FPXkL9-W9_SVJEa7KHBFr1BCUtzo1I-q9mL-PIpQ,1692
|
@@ -2806,8 +2806,8 @@ esphome/components/ultrasonic/__init__.py,sha256=PTP_5q_K_2dNnUdkolkVd5komlEbJdS
|
|
2806
2806
|
esphome/components/ultrasonic/sensor.py,sha256=SJADHJ0fdAUXD79cRiGGcsWbrt2tyHICYp3TIiRrqOs,1630
|
2807
2807
|
esphome/components/ultrasonic/ultrasonic_sensor.cpp,sha256=b6rXmtLiXxWcD3O-Hu14rbOTImS6YMnpKU4gOXBhtMo,2359
|
2808
2808
|
esphome/components/ultrasonic/ultrasonic_sensor.h,sha256=Xf0Fn8sVX-DdClbrL45Koo9OX5JMIwzpKkhOLLMVmlw,1389
|
2809
|
-
esphome/components/update/__init__.py,sha256=
|
2810
|
-
esphome/components/update/update_entity.cpp,sha256=
|
2809
|
+
esphome/components/update/__init__.py,sha256=I7QToO3YVq4A9KcESlJRP516F9k0OGtdjhogOJVS4L0,3556
|
2810
|
+
esphome/components/update/update_entity.cpp,sha256=gFN8TfpyHx3OL7RG0L1ZPdIQswhFc7_BzUY-uVlUlFc,1139
|
2811
2811
|
esphome/components/update/update_entity.h,sha256=rPBBG3_bndHXtrW6zZwwinmeEo8LVdsqvplAD8MbQqM,1151
|
2812
2812
|
esphome/components/uponor_smatrix/__init__.py,sha256=8GvLYw4MOoXfcys_6D_JRIyRY0fGmzDczSfKvuXipC8,2307
|
2813
2813
|
esphome/components/uponor_smatrix/uponor_smatrix.cpp,sha256=7Vy0IFz7VREK5ekbAtj0vNc0usF6BDAvg37ZamxBTEE,7689
|
@@ -3113,9 +3113,9 @@ esphome/dashboard/util/itertools.py,sha256=8eLrWEWmICLtXNxkKdYPQV0c_N4GEz8m9Npnb
|
|
3113
3113
|
esphome/dashboard/util/password.py,sha256=cQz3b9B-ijTe7zS6BeCW0hc3pWv6JjC78jmnycYYAh8,321
|
3114
3114
|
esphome/dashboard/util/subprocess.py,sha256=T8EW6dbU4LPd2DG1dRrdh8li71tt6J1isn411poMhkk,1022
|
3115
3115
|
esphome/dashboard/util/text.py,sha256=ENDnfN4O0NdA3CKVJjQYabFbwbrsIhVKrAMQe53qYu4,534
|
3116
|
-
esphome-2024.6.
|
3117
|
-
esphome-2024.6.
|
3118
|
-
esphome-2024.6.
|
3119
|
-
esphome-2024.6.
|
3120
|
-
esphome-2024.6.
|
3121
|
-
esphome-2024.6.
|
3116
|
+
esphome-2024.6.3.dist-info/LICENSE,sha256=HzEjkBInJe44L4WvAOPfhPJJDNj6YbnqFyvGWRzArGM,36664
|
3117
|
+
esphome-2024.6.3.dist-info/METADATA,sha256=XxGlE7TMgBTmVRtBdXeX1mk18OohHoKKDrVxSbduukM,3263
|
3118
|
+
esphome-2024.6.3.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
3119
|
+
esphome-2024.6.3.dist-info/entry_points.txt,sha256=mIxVNuWtbYzeEcaWCl-AQ-97aBOWbnYBAK8nbF6P4M0,50
|
3120
|
+
esphome-2024.6.3.dist-info/top_level.txt,sha256=0GSXEW3cnITpgG3qnsSMz0qoqJHAFyfw7Y8MVtEf1Yk,8
|
3121
|
+
esphome-2024.6.3.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|