esphome 2025.5.2__py3-none-any.whl → 2025.6.0b2__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/__main__.py +20 -14
- esphome/components/a4988/a4988.cpp +1 -1
- esphome/components/absolute_humidity/absolute_humidity.cpp +6 -4
- esphome/components/ac_dimmer/ac_dimmer.cpp +4 -2
- esphome/components/adc/adc_sensor_esp32.cpp +5 -3
- esphome/components/adc/adc_sensor_esp8266.cpp +5 -3
- esphome/components/adc/adc_sensor_libretiny.cpp +5 -3
- esphome/components/adc/adc_sensor_rp2040.cpp +5 -3
- esphome/components/adc128s102/adc128s102.cpp +1 -1
- esphome/components/ade7880/ade7880.cpp +28 -17
- esphome/components/ade7953_base/ade7953_base.cpp +12 -9
- esphome/components/ade7953_i2c/ade7953_i2c.cpp +1 -1
- esphome/components/ade7953_spi/ade7953_spi.cpp +1 -1
- esphome/components/ads1115/ads1115.cpp +3 -5
- esphome/components/ads1118/ads1118.cpp +2 -1
- esphome/components/ags10/ags10.cpp +3 -2
- esphome/components/aht10/aht10.cpp +27 -29
- esphome/components/aic3204/aic3204.cpp +2 -2
- esphome/components/alarm_control_panel/__init__.py +1 -0
- esphome/components/am2315c/am2315c.cpp +2 -2
- esphome/components/am2320/am2320.cpp +2 -2
- esphome/components/am43/am43_base.h +1 -1
- esphome/components/am43/cover/am43_cover.cpp +4 -2
- esphome/components/analog_threshold/analog_threshold_binary_sensor.cpp +4 -2
- esphome/components/apds9306/apds9306.cpp +8 -5
- esphome/components/apds9960/apds9960.cpp +2 -2
- esphome/components/api/__init__.py +5 -0
- esphome/components/api/api_connection.cpp +753 -379
- esphome/components/api/api_connection.h +341 -283
- esphome/components/api/api_frame_helper.cpp +349 -344
- esphome/components/api/api_frame_helper.h +121 -94
- esphome/components/api/api_pb2.cpp +3 -0
- esphome/components/api/api_pb2.h +702 -227
- esphome/components/api/api_pb2_service.cpp +12 -688
- esphome/components/api/api_pb2_service.h +53 -207
- esphome/components/api/api_server.cpp +71 -29
- esphome/components/api/api_server.h +9 -0
- esphome/components/api/client.py +5 -4
- esphome/components/api/homeassistant_service.h +1 -1
- esphome/components/api/list_entities.cpp +1 -1
- esphome/components/api/proto.cpp +1 -0
- esphome/components/api/proto.h +5 -4
- esphome/components/api/subscribe_state.cpp +8 -16
- esphome/components/as3935/as3935.cpp +3 -3
- esphome/components/as5600/as5600.cpp +9 -7
- esphome/components/as7341/as7341.cpp +7 -5
- esphome/components/at581x/at581x.cpp +13 -10
- esphome/components/atm90e26/atm90e26.cpp +2 -2
- esphome/components/atm90e32/atm90e32.cpp +3 -3
- esphome/components/axs15231/touchscreen/axs15231_touchscreen.cpp +5 -3
- esphome/components/bang_bang/bang_bang_climate.cpp +8 -5
- esphome/components/bedjet/bedjet_hub.cpp +6 -4
- esphome/components/beken_spi_led_strip/led_strip.cpp +11 -7
- esphome/components/bh1750/bh1750.cpp +2 -2
- esphome/components/binary_sensor/__init__.py +1 -0
- esphome/components/binary_sensor/automation.cpp +1 -2
- esphome/components/bl0906/bl0906.cpp +1 -1
- esphome/components/bl0942/bl0942.cpp +11 -8
- esphome/components/bl0942/sensor.py +1 -1
- esphome/components/ble_client/__init__.py +5 -1
- esphome/components/ble_client/output/ble_binary_output.cpp +6 -3
- esphome/components/ble_client/sensor/ble_sensor.cpp +9 -6
- esphome/components/ble_client/text_sensor/ble_text_sensor.cpp +8 -5
- esphome/components/bluetooth_proxy/__init__.py +5 -1
- esphome/components/bluetooth_proxy/bluetooth_connection.cpp +5 -5
- esphome/components/bluetooth_proxy/bluetooth_proxy.cpp +18 -16
- esphome/components/bluetooth_proxy/bluetooth_proxy.h +1 -1
- esphome/components/bme280_base/bme280_base.cpp +5 -6
- esphome/components/bme680/bme680.cpp +3 -3
- esphome/components/bme680/sensor.py +2 -2
- esphome/components/bme680_bsec/bme680_bsec.cpp +11 -7
- esphome/components/bme680_bsec/sensor.py +7 -3
- esphome/components/bme68x_bsec2/__init__.py +6 -5
- esphome/components/bme68x_bsec2/bme68x_bsec2.cpp +17 -13
- esphome/components/bme68x_bsec2/sensor.py +4 -4
- esphome/components/bme68x_bsec2_i2c/bme68x_bsec2_i2c.cpp +1 -0
- esphome/components/bmi160/bmi160.cpp +11 -11
- esphome/components/bmp085/bmp085.cpp +2 -2
- esphome/components/bmp280_base/bmp280_base.cpp +3 -3
- esphome/components/bmp3xx_base/bmp3xx_base.cpp +13 -13
- esphome/components/bmp581/bmp581.cpp +33 -27
- esphome/components/bp1658cj/bp1658cj.cpp +5 -3
- esphome/components/bp5758d/bp5758d.cpp +1 -1
- esphome/components/button/__init__.py +1 -0
- esphome/components/canbus/canbus.cpp +1 -1
- esphome/components/cap1188/cap1188.cpp +6 -4
- esphome/components/captive_portal/captive_portal.cpp +1 -1
- esphome/components/ccs811/ccs811.cpp +3 -2
- esphome/components/cd74hc4067/cd74hc4067.cpp +1 -1
- esphome/components/ch422g/ch422g.cpp +2 -2
- esphome/components/chsc6x/chsc6x_touchscreen.cpp +6 -4
- esphome/components/climate/__init__.py +1 -0
- esphome/components/climate/climate.cpp +12 -7
- esphome/components/climate/climate.h +1 -1
- esphome/components/climate_ir/climate_ir.cpp +7 -4
- esphome/components/cm1106/__init__.py +1 -0
- esphome/components/cm1106/cm1106.cpp +112 -0
- esphome/components/cm1106/cm1106.h +40 -0
- esphome/components/cm1106/sensor.py +72 -0
- esphome/components/const/__init__.py +1 -0
- esphome/components/cover/__init__.py +1 -0
- esphome/components/cs5460a/cs5460a.cpp +16 -11
- esphome/components/cse7761/cse7761.cpp +2 -2
- esphome/components/cse7766/cse7766.cpp +0 -5
- esphome/components/cse7766/cse7766.h +5 -1
- esphome/components/cst226/touchscreen/cst226_touchscreen.cpp +1 -1
- esphome/components/cst816/touchscreen/cst816_touchscreen.cpp +6 -3
- esphome/components/current_based/current_based_cover.cpp +4 -2
- esphome/components/dac7678/dac7678_output.cpp +4 -4
- esphome/components/dallas_temp/dallas_temp.cpp +2 -3
- esphome/components/daly_bms/daly_bms.cpp +2 -1
- esphome/components/dashboard_import/__init__.py +1 -2
- esphome/components/datetime/__init__.py +3 -1
- esphome/components/datetime/date_entity.cpp +5 -5
- esphome/components/datetime/datetime_base.h +0 -5
- esphome/components/datetime/datetime_entity.cpp +8 -8
- esphome/components/datetime/time_entity.cpp +4 -4
- esphome/components/debug/debug_component.cpp +1 -1
- esphome/components/debug/debug_component.h +1 -1
- esphome/components/debug/debug_esp32.cpp +4 -2
- esphome/components/deep_sleep/deep_sleep_component.cpp +11 -5
- esphome/components/deep_sleep/deep_sleep_esp32.cpp +7 -5
- esphome/components/demo/__init__.py +206 -0
- esphome/components/demo/demo_alarm_control_panel.h +65 -0
- esphome/components/demo/demo_button.h +15 -0
- esphome/components/demo/demo_date.h +34 -0
- esphome/components/demo/demo_datetime.h +40 -0
- esphome/components/demo/demo_lock.h +17 -0
- esphome/components/demo/demo_select.h +15 -0
- esphome/components/demo/demo_text.h +18 -0
- esphome/components/demo/demo_time.h +34 -0
- esphome/components/demo/demo_valve.h +54 -0
- esphome/components/dfrobot_sen0395/commands.cpp +3 -3
- esphome/components/dht/dht.cpp +29 -50
- esphome/components/dht12/dht12.cpp +2 -2
- esphome/components/display/display.h +5 -3
- esphome/components/dps310/dps310.cpp +7 -5
- esphome/components/ds1307/ds1307.cpp +2 -2
- esphome/components/dsmr/dsmr.cpp +5 -3
- esphome/components/duty_cycle/duty_cycle_sensor.cpp +2 -2
- esphome/components/duty_time/duty_time_sensor.cpp +5 -3
- esphome/components/ee895/ee895.cpp +3 -3
- esphome/components/ektf2232/touchscreen/ektf2232.cpp +1 -1
- esphome/components/emc2101/emc2101.cpp +11 -9
- esphome/components/ens160_base/ens160_base.cpp +2 -2
- esphome/components/ens210/ens210.cpp +2 -2
- esphome/components/es7210/es7210.cpp +6 -4
- esphome/components/es7243e/es7243e.cpp +1 -1
- esphome/components/es8156/es8156.cpp +1 -1
- esphome/components/es8311/es8311.cpp +8 -6
- esphome/components/es8388/__init__.py +0 -0
- esphome/components/es8388/audio_dac.py +26 -0
- esphome/components/es8388/es8388.cpp +289 -0
- esphome/components/es8388/es8388.h +81 -0
- esphome/components/es8388/es8388_const.h +83 -0
- esphome/components/es8388/select/__init__.py +47 -0
- esphome/components/es8388/select/adc_input_mic_select.cpp +12 -0
- esphome/components/es8388/select/adc_input_mic_select.h +15 -0
- esphome/components/es8388/select/dac_output_select.cpp +12 -0
- esphome/components/es8388/select/dac_output_select.h +15 -0
- esphome/components/esp32/__init__.py +118 -23
- esphome/components/esp32/boards.py +208 -125
- esphome/components/esp32/const.py +6 -0
- esphome/components/esp32/gpio.py +14 -1
- esphome/components/esp32/gpio_esp32_c5.py +45 -0
- esphome/components/esp32/gpio_esp32_p4.py +43 -0
- esphome/components/esp32/preferences.cpp +7 -7
- esphome/components/esp32_ble/__init__.py +115 -0
- esphome/components/esp32_ble/ble.cpp +101 -54
- esphome/components/esp32_ble/ble.h +24 -5
- esphome/components/esp32_ble/ble_event.h +172 -32
- esphome/components/esp32_ble/ble_scan_result.h +24 -0
- esphome/components/esp32_ble/ble_uuid.h +1 -1
- esphome/components/esp32_ble/queue.h +53 -27
- esphome/components/esp32_ble_client/ble_client_base.cpp +4 -2
- esphome/components/esp32_ble_server/__init__.py +4 -1
- esphome/components/esp32_ble_server/ble_characteristic.cpp +1 -0
- esphome/components/esp32_ble_server/ble_server.h +0 -1
- esphome/components/esp32_ble_tracker/__init__.py +7 -2
- esphome/components/esp32_ble_tracker/esp32_ble_tracker.cpp +107 -75
- esphome/components/esp32_ble_tracker/esp32_ble_tracker.h +16 -16
- esphome/components/esp32_camera/esp32_camera.cpp +35 -27
- esphome/components/esp32_camera_web_server/camera_web_server.cpp +4 -2
- esphome/components/esp32_dac/esp32_dac.cpp +2 -2
- esphome/components/esp32_improv/__init__.py +5 -1
- esphome/components/esp32_improv/esp32_improv_component.cpp +2 -2
- esphome/components/esp32_rmt_led_strip/led_strip.cpp +11 -7
- esphome/components/esp32_rmt_led_strip/light.py +5 -1
- esphome/components/esp32_touch/esp32_touch.cpp +12 -8
- esphome/components/esp8266/preferences.cpp +6 -6
- esphome/components/esp8266_pwm/esp8266_pwm.cpp +3 -3
- esphome/components/esp_ldo/__init__.py +91 -0
- esphome/components/esp_ldo/esp_ldo.cpp +43 -0
- esphome/components/esp_ldo/esp_ldo.h +43 -0
- esphome/components/esphome/ota/ota_esphome.cpp +15 -8
- esphome/components/ethernet/ethernet_component.cpp +38 -26
- esphome/components/ethernet/ethernet_component.h +1 -1
- esphome/components/event/__init__.py +1 -0
- esphome/components/exposure_notifications/exposure_notifications.cpp +1 -1
- esphome/components/ezo/ezo.cpp +1 -1
- esphome/components/ezo_pmp/ezo_pmp.cpp +1 -1
- esphome/components/factory_reset/button/factory_reset_button.cpp +1 -1
- esphome/components/factory_reset/switch/factory_reset_switch.cpp +1 -1
- esphome/components/fan/__init__.py +1 -0
- esphome/components/fan/fan.cpp +30 -19
- esphome/components/fastled_base/fastled_light.cpp +7 -5
- esphome/components/fingerprint_grow/fingerprint_grow.cpp +8 -6
- esphome/components/fs3000/fs3000.cpp +1 -1
- esphome/components/ft5x06/touchscreen/ft5x06_touchscreen.cpp +7 -4
- esphome/components/ft63x6/ft63x6.cpp +5 -3
- esphome/components/gcja5/gcja5.cpp +0 -12
- esphome/components/gcja5/gcja5.h +8 -3
- esphome/components/gdk101/gdk101.cpp +2 -2
- esphome/components/globals/globals_component.h +13 -10
- esphome/components/gp2y1010au0f/gp2y1010au0f.cpp +4 -2
- esphome/components/gp8403/gp8403.cpp +4 -2
- esphome/components/gp8403/output/gp8403_output.cpp +4 -2
- esphome/components/gpio/one_wire/gpio_one_wire.cpp +2 -2
- esphome/components/gpio/output/gpio_binary_output.cpp +1 -1
- esphome/components/gpio/switch/gpio_switch.cpp +1 -1
- esphome/components/graphical_display_menu/graphical_display_menu.cpp +12 -8
- esphome/components/grove_gas_mc_v2/grove_gas_mc_v2.cpp +5 -6
- esphome/components/grove_tb6612fng/grove_tb6612fng.cpp +1 -1
- esphome/components/grove_tb6612fng/grove_tb6612fng.h +1 -1
- esphome/components/growatt_solar/growatt_solar.cpp +6 -3
- esphome/components/gt911/touchscreen/gt911_touchscreen.cpp +1 -1
- esphome/components/haier/haier_base.cpp +2 -2
- esphome/components/haier/hon_climate.cpp +13 -6
- esphome/components/havells_solar/havells_solar.cpp +5 -2
- esphome/components/hbridge/switch/hbridge_switch.cpp +1 -1
- esphome/components/hdc1080/hdc1080.cpp +2 -2
- esphome/components/he60r/he60r.cpp +4 -2
- esphome/components/hlw8012/hlw8012.cpp +6 -4
- esphome/components/hm3301/hm3301.cpp +2 -2
- esphome/components/hmc5883l/hmc5883l.cpp +2 -2
- esphome/components/homeassistant/time/homeassistant_time.cpp +4 -2
- esphome/components/honeywell_hih_i2c/honeywell_hih.cpp +4 -4
- esphome/components/honeywellabp/honeywellabp.cpp +4 -2
- esphome/components/honeywellabp2_i2c/honeywellabp2.cpp +8 -6
- esphome/components/hte501/hte501.cpp +3 -2
- esphome/components/http_request/__init__.py +2 -2
- esphome/components/http_request/http_request.cpp +7 -5
- esphome/components/http_request/http_request_idf.cpp +4 -2
- esphome/components/http_request/ota/ota_http_request.cpp +1 -1
- esphome/components/htu21d/htu21d.cpp +2 -2
- esphome/components/htu31d/htu31d.cpp +2 -2
- esphome/components/hx711/hx711.cpp +2 -2
- esphome/components/hydreon_rgxx/hydreon_rgxx.cpp +5 -3
- esphome/components/hyt271/hyt271.cpp +2 -2
- esphome/components/i2c/i2c_bus_arduino.cpp +14 -11
- esphome/components/i2c/i2c_bus_esp_idf.cpp +13 -11
- esphome/components/i2s_audio/__init__.py +2 -0
- esphome/components/i2s_audio/i2s_audio.cpp +3 -4
- esphome/components/i2s_audio/i2s_audio.h +1 -1
- esphome/components/i2s_audio/media_player/__init__.py +1 -1
- esphome/components/i2s_audio/media_player/i2s_audio_media_player.cpp +5 -3
- esphome/components/i2s_audio/microphone/i2s_audio_microphone.cpp +13 -10
- esphome/components/i2s_audio/speaker/i2s_audio_speaker.cpp +1 -1
- esphome/components/iaqcore/iaqcore.cpp +3 -3
- esphome/components/ili9xxx/ili9xxx_display.cpp +12 -7
- esphome/components/ili9xxx/ili9xxx_display.h +1 -1
- esphome/components/image/image.cpp +1 -0
- esphome/components/ina219/ina219.cpp +2 -2
- esphome/components/ina226/ina226.cpp +8 -5
- esphome/components/ina260/ina260.cpp +1 -1
- esphome/components/ina2xx_base/ina2xx_base.cpp +13 -9
- esphome/components/ina3221/ina3221.cpp +2 -2
- esphome/components/inkplate6/display.py +12 -2
- esphome/components/inkplate6/inkplate.cpp +13 -9
- esphome/components/inkplate6/inkplate.h +7 -6
- esphome/components/integration/integration_sensor.cpp +1 -1
- esphome/components/internal_temperature/internal_temperature.cpp +4 -4
- esphome/components/json/json_util.cpp +4 -5
- esphome/components/kamstrup_kmp/kamstrup_kmp.cpp +1 -1
- esphome/components/key_collector/key_collector.cpp +4 -2
- esphome/components/kmeteriso/kmeteriso.cpp +4 -4
- esphome/components/kuntze/kuntze.cpp +4 -2
- esphome/components/lc709203f/__init__.py +1 -0
- esphome/components/lc709203f/lc709203f.cpp +299 -0
- esphome/components/lc709203f/lc709203f.h +55 -0
- esphome/components/lc709203f/sensor.py +93 -0
- esphome/components/lcd_base/lcd_display.cpp +2 -2
- esphome/components/lcd_gpio/gpio_lcd_display.cpp +5 -3
- esphome/components/lcd_menu/lcd_menu.cpp +6 -4
- esphome/components/lcd_pcf8574/pcf8574_display.cpp +6 -4
- esphome/components/ld2410/ld2410.cpp +6 -7
- esphome/components/ld2420/ld2420.cpp +9 -7
- esphome/components/ld2450/ld2450.cpp +6 -4
- esphome/components/ld2450/sensor.py +2 -2
- esphome/components/ledc/ledc_output.cpp +32 -28
- esphome/components/libretiny/const.py +1 -1
- esphome/components/libretiny/preferences.cpp +6 -7
- esphome/components/light/__init__.py +2 -1
- esphome/components/light/esp_hsv_color.h +1 -1
- esphome/components/light/light_state.cpp +9 -5
- esphome/components/light/light_transformer.h +1 -1
- esphome/components/lightwaverf/LwTx.cpp +1 -1
- esphome/components/lightwaverf/lightwaverf.cpp +1 -1
- esphome/components/lilygo_t5_47/touchscreen/lilygo_t5_47_touchscreen.cpp +1 -1
- esphome/components/lock/__init__.py +1 -0
- esphome/components/lock/lock.h +1 -1
- esphome/components/logger/__init__.py +6 -0
- esphome/components/logger/logger.cpp +11 -20
- esphome/components/logger/logger.h +1 -2
- esphome/components/logger/logger_esp32.cpp +5 -5
- esphome/components/ltr390/ltr390.cpp +8 -5
- esphome/components/ltr501/ltr501.cpp +19 -14
- esphome/components/ltr_als_ps/ltr_als_ps.cpp +20 -13
- esphome/components/lvgl/__init__.py +2 -2
- esphome/components/lvgl/automation.py +5 -4
- esphome/components/lvgl/defines.py +0 -2
- esphome/components/lvgl/lv_validation.py +1 -3
- esphome/components/lvgl/lvcode.py +7 -8
- esphome/components/lvgl/lvgl_esphome.cpp +26 -10
- esphome/components/lvgl/schemas.py +22 -23
- esphome/components/lvgl/trigger.py +8 -3
- esphome/components/lvgl/widgets/__init__.py +2 -2
- esphome/components/lvgl/widgets/canvas.py +9 -3
- esphome/components/lvgl/widgets/line.py +2 -1
- esphome/components/lvgl/widgets/tabview.py +7 -0
- esphome/components/m5stack_8angle/m5stack_8angle.cpp +3 -3
- esphome/components/matrix_keypad/matrix_keypad.cpp +2 -2
- esphome/components/max17043/max17043.cpp +2 -2
- esphome/components/max31855/max31855.cpp +2 -1
- esphome/components/max31856/max31856.cpp +9 -11
- esphome/components/max31865/max31865.cpp +6 -4
- esphome/components/max44009/max44009.cpp +2 -2
- esphome/components/max6675/max6675.cpp +1 -1
- esphome/components/max6956/max6956.cpp +5 -3
- esphome/components/max7219/max7219.cpp +8 -6
- esphome/components/max7219digit/automation.h +52 -0
- esphome/components/max7219digit/display.py +93 -1
- esphome/components/max7219digit/max7219digit.cpp +16 -13
- esphome/components/max9611/max9611.cpp +9 -6
- esphome/components/mcp23008/mcp23008.cpp +1 -1
- esphome/components/mcp23016/mcp23016.cpp +1 -1
- esphome/components/mcp23017/mcp23017.cpp +1 -1
- esphome/components/mcp23s08/mcp23s08.cpp +1 -1
- esphome/components/mcp23s17/mcp23s17.cpp +1 -1
- esphome/components/mcp3008/mcp3008.cpp +1 -1
- esphome/components/mcp3008/sensor/mcp3008_sensor.cpp +5 -3
- esphome/components/mcp3204/mcp3204.cpp +1 -1
- esphome/components/mcp4461/mcp4461.cpp +2 -2
- esphome/components/mcp4725/mcp4725.cpp +2 -2
- esphome/components/mcp4728/mcp4728.cpp +2 -2
- esphome/components/mcp9600/mcp9600.cpp +1 -1
- esphome/components/mcp9808/mcp9808.cpp +4 -4
- esphome/components/mdns/mdns_component.cpp +8 -2
- esphome/components/mdns/mdns_component.h +3 -1
- esphome/components/mdns/mdns_esp32.cpp +2 -2
- esphome/components/media_player/__init__.py +1 -0
- esphome/components/micro_wake_word/micro_wake_word.cpp +1 -1
- esphome/components/micro_wake_word/streaming_model.cpp +10 -6
- esphome/components/micronova/micronova.h +2 -2
- esphome/components/mics_4514/mics_4514.cpp +2 -2
- esphome/components/midea/air_conditioner.cpp +7 -5
- esphome/components/midea_ir/midea_ir.cpp +1 -1
- esphome/components/mipi_spi/mipi_spi.cpp +24 -15
- esphome/components/mixer/speaker/mixer_speaker.cpp +8 -4
- esphome/components/mlx90393/sensor_mlx90393.cpp +2 -2
- esphome/components/mlx90614/mlx90614.cpp +4 -3
- esphome/components/mmc5603/mmc5603.cpp +2 -2
- esphome/components/mmc5983/mmc5983.cpp +1 -1
- esphome/components/modbus/modbus.cpp +7 -5
- esphome/components/modbus_controller/modbus_controller.cpp +6 -4
- esphome/components/modbus_controller/output/modbus_output.cpp +10 -6
- esphome/components/modbus_controller/switch/__init__.py +6 -2
- esphome/components/modbus_controller/switch/modbus_switch.cpp +4 -0
- esphome/components/modbus_controller/switch/modbus_switch.h +3 -0
- esphome/components/mpl3115a2/mpl3115a2.cpp +3 -2
- esphome/components/mpr121/mpr121.cpp +2 -2
- esphome/components/mpu6050/mpu6050.cpp +6 -6
- esphome/components/mpu6886/mpu6886.cpp +6 -6
- esphome/components/mqtt/mqtt_alarm_control_panel.cpp +7 -3
- esphome/components/mqtt/mqtt_backend_esp32.cpp +1 -1
- esphome/components/mqtt/mqtt_client.cpp +31 -24
- esphome/components/mqtt/mqtt_component.cpp +3 -3
- esphome/components/mqtt/mqtt_cover.cpp +8 -4
- esphome/components/mqtt/mqtt_fan.cpp +12 -6
- esphome/components/mqtt/mqtt_valve.cpp +4 -2
- esphome/components/ms5611/ms5611.cpp +2 -2
- esphome/components/ms8607/ms8607.cpp +2 -2
- esphome/components/msa3xx/msa3xx.cpp +16 -12
- esphome/components/my9231/my9231.cpp +7 -5
- esphome/components/nau7802/nau7802.cpp +6 -4
- esphome/components/neopixelbus/neopixelbus_light.h +2 -2
- esphome/components/network/ip_address.h +1 -1
- esphome/components/network/util.cpp +13 -0
- esphome/components/nextion/base_component.py +2 -0
- esphome/components/nextion/binary_sensor/nextion_binarysensor.cpp +3 -4
- esphome/components/nextion/display.py +34 -22
- esphome/components/nextion/nextion.cpp +182 -143
- esphome/components/nextion/nextion.h +36 -0
- esphome/components/nextion/nextion_commands.cpp +3 -3
- esphome/components/nextion/nextion_upload_arduino.cpp +69 -69
- esphome/components/nextion/nextion_upload_idf.cpp +79 -80
- esphome/components/nextion/sensor/nextion_sensor.cpp +5 -5
- esphome/components/nextion/switch/nextion_switch.cpp +2 -2
- esphome/components/nextion/text_sensor/nextion_textsensor.cpp +3 -3
- esphome/components/nfc/nci_message.h +1 -1
- esphome/components/nfc/ndef_record.h +1 -1
- esphome/components/nfc/ndef_record_text.h +1 -1
- esphome/components/nfc/ndef_record_uri.h +1 -1
- esphome/components/nfc/nfc.h +1 -1
- esphome/components/nfc/nfc_tag.h +1 -1
- esphome/components/noblex/noblex.cpp +1 -1
- esphome/components/npi19/npi19.cpp +5 -7
- esphome/components/number/__init__.py +11 -0
- esphome/components/number/number.cpp +1 -1
- esphome/components/number/number.h +0 -4
- esphome/components/online_image/__init__.py +13 -1
- esphome/components/online_image/online_image.cpp +26 -4
- esphome/components/online_image/online_image.h +21 -4
- esphome/components/opentherm/generate.py +3 -3
- esphome/components/opentherm/hub.cpp +11 -7
- esphome/components/opentherm/number/number.cpp +5 -3
- esphome/components/opentherm/opentherm.h +1 -1
- esphome/components/opentherm/schema.py +13 -13
- esphome/components/opentherm/validate.py +1 -1
- esphome/components/openthread/__init__.py +146 -0
- esphome/components/openthread/const.py +10 -0
- esphome/components/openthread/openthread.cpp +206 -0
- esphome/components/openthread/openthread.h +68 -0
- esphome/components/openthread/openthread_esp.cpp +164 -0
- esphome/components/openthread/tlv.py +58 -0
- esphome/components/openthread_info/__init__.py +0 -0
- esphome/components/openthread_info/openthread_info_text_sensor.cpp +24 -0
- esphome/components/openthread_info/openthread_info_text_sensor.h +218 -0
- esphome/components/openthread_info/text_sensor.py +105 -0
- esphome/components/output/float_output.cpp +1 -1
- esphome/components/output/switch/output_switch.cpp +1 -1
- esphome/components/packet_transport/packet_transport.cpp +6 -4
- esphome/components/pca6416a/pca6416a.cpp +2 -2
- esphome/components/pca9554/pca9554.cpp +6 -4
- esphome/components/pca9685/pca9685_output.cpp +12 -8
- esphome/components/pcd8544/pcd_8544.cpp +1 -1
- esphome/components/pcf85063/pcf85063.cpp +2 -2
- esphome/components/pcf8563/pcf8563.cpp +2 -2
- esphome/components/pcf8574/pcf8574.cpp +2 -2
- esphome/components/pid/pid_climate.cpp +8 -5
- esphome/components/pid/pid_climate.h +1 -1
- esphome/components/pid/sensor/pid_climate_sensor.cpp +1 -1
- esphome/components/pipsolar/output/pipsolar_output.cpp +1 -1
- esphome/components/pipsolar/pipsolar.cpp +3 -3
- esphome/components/pm1006/pm1006.cpp +3 -7
- esphome/components/pm1006/pm1006.h +4 -1
- esphome/components/pm2005/pm2005.cpp +12 -13
- esphome/components/pm2005/sensor.py +1 -1
- esphome/components/pmsa003i/pmsa003i.cpp +2 -2
- esphome/components/pmsx003/pmsx003.cpp +0 -4
- esphome/components/pmsx003/pmsx003.h +5 -2
- esphome/components/pmwcs3/pmwcs3.cpp +9 -13
- esphome/components/pmwcs3/pmwcs3.h +0 -1
- esphome/components/pn532/pn532.cpp +7 -7
- esphome/components/pn532/pn532.h +1 -1
- esphome/components/pn532_spi/pn532_spi.cpp +1 -1
- esphome/components/pn7150/pn7150.cpp +4 -4
- esphome/components/pn7160/pn7160.cpp +4 -4
- esphome/components/power_supply/power_supply.cpp +6 -4
- esphome/components/power_supply/power_supply.h +1 -1
- esphome/components/prometheus/__init__.py +0 -1
- esphome/components/psram/__init__.py +59 -35
- esphome/components/pulse_counter/pulse_counter_sensor.cpp +7 -4
- esphome/components/pvvx_mithermometer/display/pvvx_display.cpp +8 -5
- esphome/components/pylontech/pylontech.cpp +2 -2
- esphome/components/pylontech/sensor/pylontech_sensor.cpp +4 -2
- esphome/components/pylontech/text_sensor/pylontech_text_sensor.cpp +4 -2
- esphome/components/pzemac/pzemac.cpp +4 -2
- esphome/components/pzemdc/pzemdc.cpp +4 -2
- esphome/components/qmc5883l/qmc5883l.cpp +2 -2
- esphome/components/qmp6988/qmp6988.cpp +2 -2
- esphome/components/qmp6988/qmp6988.h +1 -1
- esphome/components/qr_code/qr_code.cpp +5 -3
- esphome/components/qspi_dbi/qspi_dbi.cpp +1 -1
- esphome/components/qwiic_pir/qwiic_pir.cpp +26 -28
- esphome/components/rc522/rc522.cpp +5 -5
- esphome/components/rdm6300/rdm6300.cpp +1 -0
- esphome/components/remote_receiver/__init__.py +10 -2
- esphome/components/remote_receiver/remote_receiver_esp32.cpp +22 -12
- esphome/components/remote_receiver/remote_receiver_esp8266.cpp +10 -7
- esphome/components/remote_receiver/remote_receiver_libretiny.cpp +10 -7
- esphome/components/remote_transmitter/__init__.py +10 -2
- esphome/components/remote_transmitter/remote_transmitter_esp32.cpp +10 -6
- esphome/components/remote_transmitter/remote_transmitter_esp8266.cpp +5 -3
- esphome/components/remote_transmitter/remote_transmitter_libretiny.cpp +5 -3
- esphome/components/resistance/resistance_sensor.cpp +6 -3
- esphome/components/restart/button/restart_button.cpp +1 -1
- esphome/components/restart/switch/restart_switch.cpp +1 -1
- esphome/components/rotary_encoder/rotary_encoder.cpp +2 -2
- esphome/components/rp2040/__init__.py +7 -0
- esphome/components/rp2040/core.cpp +8 -1
- esphome/components/rp2040/preferences.cpp +3 -3
- esphome/components/rp2040_pio_led_strip/led_strip.cpp +11 -8
- esphome/components/rp2040_pio_led_strip/light.py +1 -1
- esphome/components/rp2040_pwm/rp2040_pwm.cpp +1 -1
- esphome/components/rpi_dpi_rgb/rpi_dpi_rgb.cpp +1 -1
- esphome/components/rtttl/rtttl.cpp +11 -9
- esphome/components/safe_mode/button/safe_mode_button.cpp +1 -1
- esphome/components/safe_mode/safe_mode.cpp +9 -8
- esphome/components/safe_mode/switch/safe_mode_switch.cpp +1 -1
- esphome/components/scd30/scd30.cpp +11 -8
- esphome/components/scd4x/scd4x.cpp +12 -8
- esphome/components/sdl/display.py +40 -0
- esphome/components/sdl/sdl_esphome.cpp +2 -2
- esphome/components/sdl/sdl_esphome.h +8 -0
- esphome/components/sdm_meter/sdm_meter.cpp +5 -2
- esphome/components/sdp3x/sdp3x.cpp +11 -11
- esphome/components/sds011/sds011.cpp +5 -6
- esphome/components/sds011/sds011.h +4 -1
- esphome/components/seeed_mr24hpc1/seeed_mr24hpc1.cpp +3 -2
- esphome/components/seeed_mr60bha2/seeed_mr60bha2.cpp +1 -0
- esphome/components/seeed_mr60fda2/seeed_mr60fda2.cpp +3 -2
- esphome/components/selec_meter/selec_meter.cpp +5 -2
- esphome/components/select/__init__.py +1 -0
- esphome/components/select/select.cpp +1 -1
- esphome/components/select/select.h +0 -4
- esphome/components/sen0321/sen0321.cpp +2 -2
- esphome/components/sen21231/sen21231.cpp +1 -1
- esphome/components/sen5x/sen5x.cpp +10 -7
- esphome/components/sensirion_common/i2c_sensirion.cpp +2 -1
- esphome/components/sensirion_common/i2c_sensirion.h +1 -0
- esphome/components/sensor/__init__.py +11 -1
- esphome/components/sensor/filter.h +1 -1
- esphome/components/sensor/sensor.cpp +8 -4
- esphome/components/sensor/sensor.h +12 -11
- esphome/components/servo/servo.cpp +12 -9
- esphome/components/servo/servo.h +1 -1
- esphome/components/sfa30/sfa30.cpp +1 -1
- esphome/components/sgp30/sgp30.cpp +10 -8
- esphome/components/sgp4x/sgp4x.cpp +49 -61
- esphome/components/sgp4x/sgp4x.h +0 -1
- esphome/components/shelly_dimmer/shelly_dimmer.cpp +11 -7
- esphome/components/sht3xd/sht3xd.cpp +1 -1
- esphome/components/sht4x/sht4x.cpp +2 -2
- esphome/components/shtcx/shtcx.cpp +13 -16
- esphome/components/shutdown/button/shutdown_button.cpp +1 -1
- esphome/components/shutdown/switch/shutdown_switch.cpp +1 -1
- esphome/components/sim800l/sim800l.cpp +2 -2
- esphome/components/slow_pwm/slow_pwm_output.cpp +4 -2
- esphome/components/sm16716/sm16716.cpp +1 -1
- esphome/components/sm2135/sm2135.cpp +1 -1
- esphome/components/sm2235/sm2235.cpp +5 -3
- esphome/components/sm2335/sm2335.cpp +5 -3
- esphome/components/sml/sml.cpp +1 -1
- esphome/components/sn74hc165/sn74hc165.cpp +1 -2
- esphome/components/sn74hc595/sn74hc595.cpp +1 -2
- esphome/components/sntp/sntp_component.cpp +1 -1
- esphome/components/socket/__init__.py +2 -0
- esphome/components/socket/bsd_sockets_impl.cpp +51 -7
- esphome/components/socket/lwip_raw_tcp_impl.cpp +5 -0
- esphome/components/socket/lwip_sockets_impl.cpp +51 -7
- esphome/components/socket/socket.cpp +31 -0
- esphome/components/socket/socket.h +27 -1
- esphome/components/sonoff_d1/sonoff_d1.cpp +7 -4
- esphome/components/sonoff_d1/sonoff_d1.h +2 -2
- esphome/components/sound_level/sound_level.cpp +4 -2
- esphome/components/speaker/media_player/__init__.py +3 -0
- esphome/components/speaker/media_player/speaker_media_player.cpp +1 -3
- esphome/components/speaker/media_player/speaker_media_player.h +6 -0
- esphome/components/spi/__init__.py +10 -2
- esphome/components/spi/spi.cpp +4 -4
- esphome/components/spi_device/spi_device.cpp +1 -2
- esphome/components/sprinkler/sprinkler.cpp +9 -6
- esphome/components/sps30/sps30.cpp +16 -15
- esphome/components/ssd1306_base/ssd1306_base.cpp +1 -1
- esphome/components/ssd1306_i2c/ssd1306_i2c.cpp +11 -8
- esphome/components/ssd1306_spi/ssd1306_spi.cpp +10 -7
- esphome/components/ssd1322_base/ssd1322_base.cpp +1 -1
- esphome/components/ssd1322_spi/ssd1322_spi.cpp +1 -1
- esphome/components/ssd1325_base/ssd1325_base.cpp +1 -1
- esphome/components/ssd1325_spi/ssd1325_spi.cpp +1 -1
- esphome/components/ssd1327_base/ssd1327_base.cpp +1 -1
- esphome/components/ssd1327_i2c/ssd1327_i2c.cpp +2 -2
- esphome/components/ssd1327_spi/ssd1327_spi.cpp +1 -1
- esphome/components/ssd1331_base/ssd1331_base.cpp +1 -1
- esphome/components/ssd1331_spi/ssd1331_spi.cpp +1 -1
- esphome/components/ssd1351_base/ssd1351_base.cpp +1 -1
- esphome/components/ssd1351_spi/ssd1351_spi.cpp +1 -1
- esphome/components/st7567_base/st7567_base.cpp +3 -3
- esphome/components/st7567_i2c/st7567_i2c.cpp +7 -5
- esphome/components/st7567_spi/st7567_spi.cpp +1 -1
- esphome/components/st7701s/st7701s.cpp +4 -2
- esphome/components/st7735/st7735.cpp +3 -3
- esphome/components/st7789v/st7789v.cpp +10 -7
- esphome/components/st7920/st7920.cpp +6 -4
- esphome/components/statsd/statsd.cpp +9 -5
- esphome/components/status_led/light/status_led_light.cpp +3 -3
- esphome/components/status_led/light/status_led_light.h +1 -1
- esphome/components/status_led/status_led.cpp +1 -1
- esphome/components/stepper/stepper.h +5 -3
- esphome/components/sts3x/sts3x.cpp +2 -2
- esphome/components/switch/__init__.py +1 -0
- esphome/components/switch/switch.cpp +18 -12
- esphome/components/switch/switch.h +1 -1
- esphome/components/sx1509/__init__.py +53 -20
- esphome/components/sx1509/sx1509.cpp +29 -5
- esphome/components/sx1509/sx1509.h +9 -1
- esphome/components/t6615/t6615.cpp +1 -0
- esphome/components/tc74/tc74.cpp +1 -1
- esphome/components/tca9548a/tca9548a.cpp +1 -1
- esphome/components/tca9555/tca9555.cpp +2 -2
- esphome/components/tcs34725/tcs34725.cpp +4 -4
- esphome/components/tee501/tee501.cpp +3 -2
- esphome/components/tem3200/tem3200.cpp +5 -6
- esphome/components/template/alarm_control_panel/__init__.py +6 -0
- esphome/components/template/alarm_control_panel/template_alarm_control_panel.cpp +43 -12
- esphome/components/template/alarm_control_panel/template_alarm_control_panel.h +4 -1
- esphome/components/template/cover/template_cover.cpp +1 -1
- esphome/components/template/select/template_select.cpp +6 -4
- esphome/components/template/text/template_text.cpp +2 -3
- esphome/components/template/valve/template_valve.cpp +5 -3
- esphome/components/text/__init__.py +10 -11
- esphome/components/text/text.cpp +1 -1
- esphome/components/text/text.h +0 -4
- esphome/components/text_sensor/__init__.py +1 -0
- esphome/components/text_sensor/text_sensor.cpp +8 -4
- esphome/components/text_sensor/text_sensor.h +6 -6
- esphome/components/thermostat/thermostat_climate.cpp +67 -43
- esphome/components/time/__init__.py +1 -2
- esphome/components/time_based/time_based_cover.cpp +4 -2
- esphome/components/tlc59208f/tlc59208f_output.cpp +8 -6
- esphome/components/tm1621/tm1621.cpp +3 -3
- esphome/components/tm1637/tm1637.cpp +9 -7
- esphome/components/tm1638/tm1638.cpp +7 -5
- esphome/components/tm1651/tm1651.cpp +2 -2
- esphome/components/tmp102/tmp102.cpp +1 -3
- esphome/components/tmp102/tmp102.h +0 -3
- esphome/components/tmp1075/tmp1075.cpp +12 -9
- esphome/components/tmp117/tmp117.cpp +2 -2
- esphome/components/tof10120/tof10120_sensor.cpp +2 -2
- esphome/components/tormatic/tormatic_cover.cpp +4 -2
- esphome/components/tsl2561/tsl2561.cpp +7 -5
- esphome/components/tsl2591/tsl2591.cpp +25 -27
- esphome/components/tt21100/touchscreen/tt21100.cpp +1 -1
- esphome/components/ttp229_bsf/ttp229_bsf.cpp +1 -1
- esphome/components/ttp229_lsf/ttp229_lsf.cpp +2 -2
- esphome/components/tuya/select/tuya_select.cpp +5 -3
- esphome/components/tx20/tx20.cpp +3 -3
- esphome/components/uart/__init__.py +4 -5
- esphome/components/uart/button/uart_button.cpp +1 -1
- esphome/components/uart/switch/uart_switch.cpp +2 -2
- esphome/components/uart/uart.cpp +2 -2
- esphome/components/uart/uart_component_esp32_arduino.cpp +8 -6
- esphome/components/uart/uart_component_esp8266.cpp +9 -7
- esphome/components/uart/uart_component_esp_idf.cpp +9 -7
- esphome/components/uart/uart_component_host.cpp +11 -8
- esphome/components/uart/uart_component_libretiny.cpp +8 -6
- esphome/components/uart/uart_component_rp2040.cpp +8 -6
- esphome/components/udp/udp_component.cpp +9 -5
- esphome/components/ufire_ec/ufire_ec.cpp +5 -3
- esphome/components/ufire_ise/ufire_ise.cpp +1 -1
- esphome/components/ultrasonic/ultrasonic_sensor.cpp +5 -3
- esphome/components/update/__init__.py +1 -0
- esphome/components/update/update_entity.cpp +1 -1
- esphome/components/update/update_entity.h +0 -3
- esphome/components/uponor_smatrix/climate/uponor_smatrix_climate.cpp +1 -1
- esphome/components/uponor_smatrix/sensor/uponor_smatrix_sensor.cpp +4 -2
- esphome/components/uponor_smatrix/uponor_smatrix.cpp +2 -1
- esphome/components/uptime/sensor/uptime_timestamp_sensor.cpp +1 -1
- esphome/components/usb_host/__init__.py +64 -0
- esphome/components/usb_host/usb_host.h +116 -0
- esphome/components/usb_host/usb_host_client.cpp +394 -0
- esphome/components/usb_host/usb_host_component.cpp +35 -0
- esphome/components/usb_uart/__init__.py +134 -0
- esphome/components/usb_uart/ch34x.cpp +80 -0
- esphome/components/usb_uart/cp210x.cpp +126 -0
- esphome/components/usb_uart/usb_uart.cpp +328 -0
- esphome/components/usb_uart/usb_uart.h +151 -0
- esphome/components/valve/__init__.py +1 -0
- esphome/components/veml3235/veml3235.cpp +13 -9
- esphome/components/veml7700/veml7700.cpp +10 -6
- esphome/components/voice_assistant/voice_assistant.cpp +7 -7
- esphome/components/wake_on_lan/wake_on_lan.cpp +1 -1
- esphome/components/waveshare_epaper/waveshare_epaper.cpp +1 -1
- esphome/components/web_server/server_index_v2.h +632 -630
- esphome/components/web_server/server_index_v3.h +411 -409
- esphome/components/web_server/web_server.cpp +5 -3
- esphome/components/web_server_base/web_server_base.cpp +1 -1
- esphome/components/web_server_idf/__init__.py +0 -2
- esphome/components/web_server_idf/utils.cpp +1 -1
- esphome/components/web_server_idf/web_server_idf.cpp +7 -3
- esphome/components/web_server_idf/web_server_idf.h +7 -0
- esphome/components/weikai/__init__.py +2 -0
- esphome/components/weikai/weikai.cpp +24 -22
- esphome/components/weikai_i2c/weikai_i2c.cpp +14 -9
- esphome/components/weikai_spi/weikai_spi.cpp +11 -6
- esphome/components/wiegand/wiegand.cpp +1 -1
- esphome/components/wifi/wifi_component.cpp +50 -37
- esphome/components/wifi/wifi_component.h +7 -4
- esphome/components/wifi/wifi_component_esp32_arduino.cpp +2 -2
- esphome/components/wifi/wifi_component_esp8266.cpp +3 -3
- esphome/components/wifi/wifi_component_libretiny.cpp +4 -4
- esphome/components/wireguard/wireguard.cpp +21 -21
- esphome/components/wl_134/text_sensor.py +1 -2
- esphome/components/wled/wled_light_effect.cpp +1 -1
- esphome/components/x9c/x9c.cpp +5 -3
- esphome/components/xgzp68xx/xgzp68xx.cpp +8 -6
- esphome/components/xiaomi_cgd1/xiaomi_cgd1.cpp +4 -2
- esphome/components/xiaomi_cgdk2/xiaomi_cgdk2.cpp +4 -2
- esphome/components/xiaomi_cgg1/xiaomi_cgg1.cpp +4 -2
- esphome/components/xiaomi_hhccjcy10/xiaomi_hhccjcy10.cpp +1 -1
- esphome/components/xiaomi_lywsd02mmc/xiaomi_lywsd02mmc.cpp +4 -2
- esphome/components/xiaomi_lywsd03mmc/xiaomi_lywsd03mmc.cpp +4 -2
- esphome/components/xiaomi_mhoc401/xiaomi_mhoc401.cpp +4 -2
- esphome/components/xl9535/xl9535.cpp +2 -2
- esphome/components/xpt2046/touchscreen/xpt2046.cpp +12 -11
- esphome/components/xpt2046/touchscreen/xpt2046.h +2 -2
- esphome/config.py +3 -2
- esphome/config_validation.py +46 -17
- esphome/const.py +10 -1
- esphome/core/__init__.py +37 -18
- esphome/core/application.cpp +197 -8
- esphome/core/application.h +116 -6
- esphome/core/component.cpp +36 -15
- esphome/core/component.h +43 -13
- esphome/core/config.py +12 -0
- esphome/core/defines.h +10 -2
- esphome/core/entity_base.cpp +4 -16
- esphome/core/entity_base.h +27 -13
- esphome/core/helpers.cpp +1 -1
- esphome/core/helpers.h +5 -5
- esphome/core/log.h +2 -0
- esphome/core/log_const_en.h +4 -0
- esphome/core/scheduler.cpp +2 -2
- esphome/coroutine.py +3 -4
- esphome/cpp_generator.py +32 -32
- esphome/dashboard/core.py +2 -2
- esphome/dashboard/web_server.py +2 -2
- esphome/git.py +4 -4
- esphome/helpers.py +5 -6
- esphome/loader.py +8 -7
- esphome/log.py +7 -1
- esphome/platformio_api.py +2 -3
- esphome/storage_json.py +13 -5
- esphome/types.py +12 -13
- esphome/util.py +1 -2
- esphome/wizard.py +0 -16
- esphome/writer.py +5 -3
- esphome/yaml_util.py +6 -1
- esphome/zeroconf.py +1 -1
- {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/METADATA +12 -11
- {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/RECORD +746 -692
- {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/WHEEL +1 -1
- {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/entry_points.txt +0 -0
- {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/licenses/LICENSE +0 -0
- {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/top_level.txt +0 -0
@@ -537,7 +537,7 @@ void ThermostatClimate::switch_to_supplemental_action_(climate::ClimateAction ac
|
|
537
537
|
default:
|
538
538
|
return;
|
539
539
|
}
|
540
|
-
ESP_LOGVV(TAG, "Updating supplemental action
|
540
|
+
ESP_LOGVV(TAG, "Updating supplemental action");
|
541
541
|
this->supplemental_action_ = action;
|
542
542
|
this->trigger_supplemental_action_();
|
543
543
|
}
|
@@ -1300,37 +1300,48 @@ void ThermostatClimate::dump_config() {
|
|
1300
1300
|
}
|
1301
1301
|
ESP_LOGCONFIG(TAG, " Start-up Delay Enabled: %s", YESNO(this->use_startup_delay_));
|
1302
1302
|
if (this->supports_cool_) {
|
1303
|
-
ESP_LOGCONFIG(TAG,
|
1304
|
-
|
1305
|
-
|
1303
|
+
ESP_LOGCONFIG(TAG,
|
1304
|
+
" Cooling Parameters:\n"
|
1305
|
+
" Deadband: %.1f°C\n"
|
1306
|
+
" Overrun: %.1f°C",
|
1307
|
+
this->cooling_deadband_, this->cooling_overrun_);
|
1306
1308
|
if ((this->supplemental_cool_delta_ > 0) || (this->timer_duration_(thermostat::TIMER_COOLING_MAX_RUN_TIME) > 0)) {
|
1307
|
-
ESP_LOGCONFIG(TAG,
|
1308
|
-
|
1309
|
+
ESP_LOGCONFIG(TAG,
|
1310
|
+
" Supplemental Delta: %.1f°C\n"
|
1311
|
+
" Maximum Run Time: %" PRIu32 "s",
|
1312
|
+
this->supplemental_cool_delta_,
|
1309
1313
|
this->timer_duration_(thermostat::TIMER_COOLING_MAX_RUN_TIME) / 1000);
|
1310
1314
|
}
|
1311
|
-
ESP_LOGCONFIG(TAG,
|
1312
|
-
|
1313
|
-
|
1315
|
+
ESP_LOGCONFIG(TAG,
|
1316
|
+
" Minimum Off Time: %" PRIu32 "s\n"
|
1317
|
+
" Minimum Run Time: %" PRIu32 "s",
|
1318
|
+
this->timer_duration_(thermostat::TIMER_COOLING_OFF) / 1000,
|
1314
1319
|
this->timer_duration_(thermostat::TIMER_COOLING_ON) / 1000);
|
1315
1320
|
}
|
1316
1321
|
if (this->supports_heat_) {
|
1317
|
-
ESP_LOGCONFIG(TAG,
|
1318
|
-
|
1319
|
-
|
1322
|
+
ESP_LOGCONFIG(TAG,
|
1323
|
+
" Heating Parameters:\n"
|
1324
|
+
" Deadband: %.1f°C\n"
|
1325
|
+
" Overrun: %.1f°C",
|
1326
|
+
this->heating_deadband_, this->heating_overrun_);
|
1320
1327
|
if ((this->supplemental_heat_delta_ > 0) || (this->timer_duration_(thermostat::TIMER_HEATING_MAX_RUN_TIME) > 0)) {
|
1321
|
-
ESP_LOGCONFIG(TAG,
|
1322
|
-
|
1328
|
+
ESP_LOGCONFIG(TAG,
|
1329
|
+
" Supplemental Delta: %.1f°C\n"
|
1330
|
+
" Maximum Run Time: %" PRIu32 "s",
|
1331
|
+
this->supplemental_heat_delta_,
|
1323
1332
|
this->timer_duration_(thermostat::TIMER_HEATING_MAX_RUN_TIME) / 1000);
|
1324
1333
|
}
|
1325
|
-
ESP_LOGCONFIG(TAG,
|
1326
|
-
|
1327
|
-
|
1334
|
+
ESP_LOGCONFIG(TAG,
|
1335
|
+
" Minimum Off Time: %" PRIu32 "s\n"
|
1336
|
+
" Minimum Run Time: %" PRIu32 "s",
|
1337
|
+
this->timer_duration_(thermostat::TIMER_HEATING_OFF) / 1000,
|
1328
1338
|
this->timer_duration_(thermostat::TIMER_HEATING_ON) / 1000);
|
1329
1339
|
}
|
1330
1340
|
if (this->supports_fan_only_) {
|
1331
|
-
ESP_LOGCONFIG(TAG,
|
1332
|
-
|
1333
|
-
|
1341
|
+
ESP_LOGCONFIG(TAG,
|
1342
|
+
" Fanning Minimum Off Time: %" PRIu32 "s\n"
|
1343
|
+
" Fanning Minimum Run Time: %" PRIu32 "s",
|
1344
|
+
this->timer_duration_(thermostat::TIMER_FANNING_OFF) / 1000,
|
1334
1345
|
this->timer_duration_(thermostat::TIMER_FANNING_ON) / 1000);
|
1335
1346
|
}
|
1336
1347
|
if (this->supports_fan_mode_on_ || this->supports_fan_mode_off_ || this->supports_fan_mode_auto_ ||
|
@@ -1341,14 +1352,17 @@ void ThermostatClimate::dump_config() {
|
|
1341
1352
|
this->timer_duration_(thermostat::TIMER_FAN_MODE) / 1000);
|
1342
1353
|
}
|
1343
1354
|
ESP_LOGCONFIG(TAG, " Minimum Idle Time: %" PRIu32 "s", this->timer_[thermostat::TIMER_IDLE_ON].time / 1000);
|
1344
|
-
ESP_LOGCONFIG(TAG,
|
1345
|
-
|
1346
|
-
|
1347
|
-
|
1348
|
-
|
1349
|
-
|
1350
|
-
|
1351
|
-
|
1355
|
+
ESP_LOGCONFIG(TAG,
|
1356
|
+
" Supports AUTO: %s\n"
|
1357
|
+
" Supports HEAT/COOL: %s\n"
|
1358
|
+
" Supports COOL: %s\n"
|
1359
|
+
" Supports DRY: %s\n"
|
1360
|
+
" Supports FAN_ONLY: %s\n"
|
1361
|
+
" Supports FAN_ONLY_ACTION_USES_FAN_MODE_TIMER: %s\n"
|
1362
|
+
" Supports FAN_ONLY_COOLING: %s",
|
1363
|
+
YESNO(this->supports_auto_), YESNO(this->supports_heat_cool_), YESNO(this->supports_cool_),
|
1364
|
+
YESNO(this->supports_dry_), YESNO(this->supports_fan_only_),
|
1365
|
+
YESNO(this->supports_fan_only_action_uses_fan_mode_timer_), YESNO(this->supports_fan_only_cooling_));
|
1352
1366
|
if (this->supports_cool_) {
|
1353
1367
|
ESP_LOGCONFIG(TAG, " Supports FAN_WITH_COOLING: %s", YESNO(this->supports_fan_with_cooling_));
|
1354
1368
|
}
|
@@ -1356,21 +1370,31 @@ void ThermostatClimate::dump_config() {
|
|
1356
1370
|
ESP_LOGCONFIG(TAG, " Supports FAN_WITH_HEATING: %s", YESNO(this->supports_fan_with_heating_));
|
1357
1371
|
}
|
1358
1372
|
ESP_LOGCONFIG(TAG, " Supports HEAT: %s", YESNO(this->supports_heat_));
|
1359
|
-
ESP_LOGCONFIG(TAG,
|
1360
|
-
|
1361
|
-
|
1362
|
-
|
1363
|
-
|
1364
|
-
|
1365
|
-
|
1366
|
-
|
1367
|
-
|
1368
|
-
|
1369
|
-
|
1370
|
-
|
1371
|
-
|
1372
|
-
|
1373
|
-
|
1373
|
+
ESP_LOGCONFIG(TAG,
|
1374
|
+
" Supports FAN MODE ON: %s\n"
|
1375
|
+
" Supports FAN MODE OFF: %s\n"
|
1376
|
+
" Supports FAN MODE AUTO: %s\n"
|
1377
|
+
" Supports FAN MODE LOW: %s\n"
|
1378
|
+
" Supports FAN MODE MEDIUM: %s\n"
|
1379
|
+
" Supports FAN MODE HIGH: %s\n"
|
1380
|
+
" Supports FAN MODE MIDDLE: %s\n"
|
1381
|
+
" Supports FAN MODE FOCUS: %s\n"
|
1382
|
+
" Supports FAN MODE DIFFUSE: %s\n"
|
1383
|
+
" Supports FAN MODE QUIET: %s",
|
1384
|
+
YESNO(this->supports_fan_mode_on_), YESNO(this->supports_fan_mode_off_),
|
1385
|
+
YESNO(this->supports_fan_mode_auto_), YESNO(this->supports_fan_mode_low_),
|
1386
|
+
YESNO(this->supports_fan_mode_medium_), YESNO(this->supports_fan_mode_high_),
|
1387
|
+
YESNO(this->supports_fan_mode_middle_), YESNO(this->supports_fan_mode_focus_),
|
1388
|
+
YESNO(this->supports_fan_mode_diffuse_), YESNO(this->supports_fan_mode_quiet_));
|
1389
|
+
ESP_LOGCONFIG(TAG,
|
1390
|
+
" Supports SWING MODE BOTH: %s\n"
|
1391
|
+
" Supports SWING MODE OFF: %s\n"
|
1392
|
+
" Supports SWING MODE HORIZONTAL: %s\n"
|
1393
|
+
" Supports SWING MODE VERTICAL: %s\n"
|
1394
|
+
" Supports TWO SET POINTS: %s",
|
1395
|
+
YESNO(this->supports_swing_mode_both_), YESNO(this->supports_swing_mode_off_),
|
1396
|
+
YESNO(this->supports_swing_mode_horizontal_), YESNO(this->supports_swing_mode_vertical_),
|
1397
|
+
YESNO(this->supports_two_points_));
|
1374
1398
|
|
1375
1399
|
ESP_LOGCONFIG(TAG, " Supported PRESETS: ");
|
1376
1400
|
for (auto &it : this->preset_config_) {
|
@@ -1,6 +1,5 @@
|
|
1
1
|
from importlib import resources
|
2
2
|
import logging
|
3
|
-
from typing import Optional
|
4
3
|
|
5
4
|
import tzlocal
|
6
5
|
|
@@ -40,7 +39,7 @@ SyncTrigger = time_ns.class_("SyncTrigger", automation.Trigger.template(), cg.Co
|
|
40
39
|
TimeHasTimeCondition = time_ns.class_("TimeHasTimeCondition", Condition)
|
41
40
|
|
42
41
|
|
43
|
-
def _load_tzdata(iana_key: str) ->
|
42
|
+
def _load_tzdata(iana_key: str) -> bytes | None:
|
44
43
|
# From https://tzdata.readthedocs.io/en/latest/#examples
|
45
44
|
try:
|
46
45
|
package_loc, resource = iana_key.rsplit("/", 1)
|
@@ -12,8 +12,10 @@ using namespace esphome::cover;
|
|
12
12
|
|
13
13
|
void TimeBasedCover::dump_config() {
|
14
14
|
LOG_COVER("", "Time Based Cover", this);
|
15
|
-
ESP_LOGCONFIG(TAG,
|
16
|
-
|
15
|
+
ESP_LOGCONFIG(TAG,
|
16
|
+
" Open Duration: %.1fs\n"
|
17
|
+
" Close Duration: %.1fs",
|
18
|
+
this->open_duration_ / 1e3f, this->close_duration_ / 1e3f);
|
17
19
|
}
|
18
20
|
void TimeBasedCover::setup() {
|
19
21
|
auto restore = this->restore_state_();
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#include "tlc59208f_output.h"
|
2
|
-
#include "esphome/core/log.h"
|
3
|
-
#include "esphome/core/helpers.h"
|
4
2
|
#include "esphome/core/hal.h"
|
3
|
+
#include "esphome/core/helpers.h"
|
4
|
+
#include "esphome/core/log.h"
|
5
5
|
|
6
6
|
namespace esphome {
|
7
7
|
namespace tlc59208f {
|
@@ -71,9 +71,9 @@ static const uint8_t LDR_PWM = 0x02;
|
|
71
71
|
static const uint8_t LDR_GRPPWM = 0x03;
|
72
72
|
|
73
73
|
void TLC59208FOutput::setup() {
|
74
|
-
ESP_LOGCONFIG(TAG, "
|
74
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
75
75
|
|
76
|
-
ESP_LOGV(TAG, " Resetting all devices on the bus
|
76
|
+
ESP_LOGV(TAG, " Resetting all devices on the bus");
|
77
77
|
|
78
78
|
// Reset all devices on the bus
|
79
79
|
if (this->bus_->write(TLC59208F_SWRST_ADDR >> 1, TLC59208F_SWRST_SEQ, 2) != i2c::ERROR_OK) {
|
@@ -111,8 +111,10 @@ void TLC59208FOutput::setup() {
|
|
111
111
|
}
|
112
112
|
|
113
113
|
void TLC59208FOutput::dump_config() {
|
114
|
-
ESP_LOGCONFIG(TAG,
|
115
|
-
|
114
|
+
ESP_LOGCONFIG(TAG,
|
115
|
+
"TLC59208F:\n"
|
116
|
+
" Mode: 0x%02X",
|
117
|
+
this->mode_);
|
116
118
|
|
117
119
|
if (this->is_failed()) {
|
118
120
|
ESP_LOGE(TAG, "Setting up TLC59208F failed!");
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#include "tm1621.h"
|
2
|
-
#include "esphome/core/log.h"
|
3
|
-
#include "esphome/core/helpers.h"
|
4
2
|
#include "esphome/core/hal.h"
|
3
|
+
#include "esphome/core/helpers.h"
|
4
|
+
#include "esphome/core/log.h"
|
5
5
|
|
6
6
|
namespace esphome {
|
7
7
|
namespace tm1621 {
|
@@ -29,7 +29,7 @@ const uint8_t TM1621_DIGIT_ROW[2][12] = {{0x5F, 0x50, 0x3D, 0x79, 0x72, 0x6B, 0x
|
|
29
29
|
{0xF5, 0x05, 0xB6, 0x97, 0x47, 0xD3, 0xF3, 0x85, 0xF7, 0xD7, 0x02, 0x00}};
|
30
30
|
|
31
31
|
void TM1621Display::setup() {
|
32
|
-
ESP_LOGCONFIG(TAG, "
|
32
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
33
33
|
|
34
34
|
this->cs_pin_->setup(); // OUTPUT
|
35
35
|
this->cs_pin_->digital_write(true);
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#include "tm1637.h"
|
2
|
-
#include "esphome/core/log.h"
|
3
|
-
#include "esphome/core/helpers.h"
|
4
2
|
#include "esphome/core/hal.h"
|
3
|
+
#include "esphome/core/helpers.h"
|
4
|
+
#include "esphome/core/log.h"
|
5
5
|
|
6
6
|
namespace esphome {
|
7
7
|
namespace tm1637 {
|
@@ -125,7 +125,7 @@ const uint8_t TM1637_ASCII_TO_RAW[] PROGMEM = {
|
|
125
125
|
0b01100011, // '~', ord 0x7E (degree symbol)
|
126
126
|
};
|
127
127
|
void TM1637Display::setup() {
|
128
|
-
ESP_LOGCONFIG(TAG, "
|
128
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
129
129
|
|
130
130
|
this->clk_pin_->setup(); // OUTPUT
|
131
131
|
this->clk_pin_->digital_write(false); // LOW
|
@@ -135,10 +135,12 @@ void TM1637Display::setup() {
|
|
135
135
|
this->display();
|
136
136
|
}
|
137
137
|
void TM1637Display::dump_config() {
|
138
|
-
ESP_LOGCONFIG(TAG,
|
139
|
-
|
140
|
-
|
141
|
-
|
138
|
+
ESP_LOGCONFIG(TAG,
|
139
|
+
"TM1637:\n"
|
140
|
+
" Intensity: %d\n"
|
141
|
+
" Inverted: %d\n"
|
142
|
+
" Length: %d",
|
143
|
+
this->intensity_, this->inverted_, this->length_);
|
142
144
|
LOG_PIN(" CLK Pin: ", this->clk_pin_);
|
143
145
|
LOG_PIN(" DIO Pin: ", this->dio_pin_);
|
144
146
|
LOG_UPDATE_INTERVAL(this);
|
@@ -1,8 +1,8 @@
|
|
1
1
|
#include "tm1638.h"
|
2
2
|
#include "sevenseg.h"
|
3
|
-
#include "esphome/core/log.h"
|
4
|
-
#include "esphome/core/helpers.h"
|
5
3
|
#include "esphome/core/hal.h"
|
4
|
+
#include "esphome/core/helpers.h"
|
5
|
+
#include "esphome/core/log.h"
|
6
6
|
|
7
7
|
namespace esphome {
|
8
8
|
namespace tm1638 {
|
@@ -20,7 +20,7 @@ static const uint8_t TM1638_UNKNOWN_CHAR = 0b11111111;
|
|
20
20
|
static const uint8_t TM1638_SHIFT_DELAY = 4; // clock pause between commands, default 4ms
|
21
21
|
|
22
22
|
void TM1638Component::setup() {
|
23
|
-
|
23
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
24
24
|
|
25
25
|
this->clk_pin_->setup(); // OUTPUT
|
26
26
|
this->dio_pin_->setup(); // OUTPUT
|
@@ -43,8 +43,10 @@ void TM1638Component::setup() {
|
|
43
43
|
}
|
44
44
|
|
45
45
|
void TM1638Component::dump_config() {
|
46
|
-
ESP_LOGCONFIG(TAG,
|
47
|
-
|
46
|
+
ESP_LOGCONFIG(TAG,
|
47
|
+
"TM1638:\n"
|
48
|
+
" Intensity: %u",
|
49
|
+
this->intensity_);
|
48
50
|
LOG_PIN(" CLK Pin: ", this->clk_pin_);
|
49
51
|
LOG_PIN(" DIO Pin: ", this->dio_pin_);
|
50
52
|
LOG_PIN(" STB Pin: ", this->stb_pin_);
|
@@ -1,8 +1,8 @@
|
|
1
1
|
#ifdef USE_ARDUINO
|
2
2
|
|
3
3
|
#include "tm1651.h"
|
4
|
-
#include "esphome/core/log.h"
|
5
4
|
#include "esphome/core/helpers.h"
|
5
|
+
#include "esphome/core/log.h"
|
6
6
|
|
7
7
|
namespace esphome {
|
8
8
|
namespace tm1651 {
|
@@ -17,7 +17,7 @@ static const uint8_t TM1651_BRIGHTNESS_MEDIUM_HW = 2;
|
|
17
17
|
static const uint8_t TM1651_BRIGHTNESS_HIGH_HW = 7;
|
18
18
|
|
19
19
|
void TM1651Display::setup() {
|
20
|
-
ESP_LOGCONFIG(TAG, "
|
20
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
21
21
|
|
22
22
|
uint8_t clk = clk_pin_->get_pin();
|
23
23
|
uint8_t dio = dio_pin_->get_pin();
|
@@ -15,13 +15,11 @@ static const uint8_t TMP102_REGISTER_HIGH_LIMIT = 0x03;
|
|
15
15
|
|
16
16
|
static const float TMP102_CONVERSION_FACTOR = 0.0625;
|
17
17
|
|
18
|
-
void TMP102Component::setup() { ESP_LOGCONFIG(TAG, "Setting up TMP102..."); }
|
19
|
-
|
20
18
|
void TMP102Component::dump_config() {
|
21
19
|
ESP_LOGCONFIG(TAG, "TMP102:");
|
22
20
|
LOG_I2C_DEVICE(this);
|
23
21
|
if (this->is_failed()) {
|
24
|
-
ESP_LOGE(TAG,
|
22
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
25
23
|
}
|
26
24
|
LOG_UPDATE_INTERVAL(this);
|
27
25
|
LOG_SENSOR(" ", "Temperature", this);
|
@@ -9,10 +9,7 @@ namespace tmp102 {
|
|
9
9
|
|
10
10
|
class TMP102Component : public PollingComponent, public i2c::I2CDevice, public sensor::Sensor {
|
11
11
|
public:
|
12
|
-
/// Setup (reset) the sensor and check connection.
|
13
|
-
void setup() override;
|
14
12
|
void dump_config() override;
|
15
|
-
/// Update the sensor values (temperature)
|
16
13
|
void update() override;
|
17
14
|
|
18
15
|
float get_setup_priority() const override;
|
@@ -44,17 +44,20 @@ void TMP1075Sensor::update() {
|
|
44
44
|
void TMP1075Sensor::dump_config() {
|
45
45
|
LOG_SENSOR("", "TMP1075 Sensor", this);
|
46
46
|
if (this->is_failed()) {
|
47
|
-
ESP_LOGE(TAG,
|
47
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
48
48
|
return;
|
49
49
|
}
|
50
|
-
ESP_LOGCONFIG(TAG,
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
50
|
+
ESP_LOGCONFIG(TAG,
|
51
|
+
" limit low : %.4f °C\n"
|
52
|
+
" limit high : %.4f °C\n"
|
53
|
+
" oneshot : %d\n"
|
54
|
+
" rate : %d\n"
|
55
|
+
" fault_count: %d\n"
|
56
|
+
" polarity : %d\n"
|
57
|
+
" alert_mode : %d\n"
|
58
|
+
" shutdown : %d",
|
59
|
+
alert_limit_low_, alert_limit_high_, config_.fields.oneshot, config_.fields.rate, config_.fields.faults,
|
60
|
+
config_.fields.polarity, config_.fields.alert_mode, config_.fields.shutdown);
|
58
61
|
}
|
59
62
|
|
60
63
|
void TMP1075Sensor::set_fault_count(const int faults) {
|
@@ -26,7 +26,7 @@ void TMP117Component::update() {
|
|
26
26
|
}
|
27
27
|
}
|
28
28
|
void TMP117Component::setup() {
|
29
|
-
ESP_LOGCONFIG(TAG, "
|
29
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
30
30
|
|
31
31
|
if (!this->write_config_(this->config_)) {
|
32
32
|
this->mark_failed();
|
@@ -43,7 +43,7 @@ void TMP117Component::dump_config() {
|
|
43
43
|
ESP_LOGD(TAG, "TMP117:");
|
44
44
|
LOG_I2C_DEVICE(this);
|
45
45
|
if (this->is_failed()) {
|
46
|
-
ESP_LOGE(TAG,
|
46
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
47
47
|
}
|
48
48
|
LOG_SENSOR(" ", "Temperature", this);
|
49
49
|
}
|
@@ -27,7 +27,7 @@ void TOF10120Sensor::setup() {}
|
|
27
27
|
|
28
28
|
void TOF10120Sensor::update() {
|
29
29
|
if (!this->write_bytes(TOF10120_DISTANCE_REGISTER, TOF10120_READ_DISTANCE_CMD, sizeof(TOF10120_READ_DISTANCE_CMD))) {
|
30
|
-
ESP_LOGE(TAG,
|
30
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
31
31
|
this->status_set_warning();
|
32
32
|
return;
|
33
33
|
}
|
@@ -39,7 +39,7 @@ void TOF10120Sensor::update() {
|
|
39
39
|
}
|
40
40
|
delay(TOF10120_DEFAULT_DELAY);
|
41
41
|
if (this->read(data, 2) != i2c::ERROR_OK) {
|
42
|
-
ESP_LOGE(TAG,
|
42
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
43
43
|
this->status_set_warning();
|
44
44
|
return;
|
45
45
|
}
|
@@ -34,8 +34,10 @@ void Tormatic::dump_config() {
|
|
34
34
|
LOG_COVER("", "Tormatic Cover", this);
|
35
35
|
this->check_uart_settings(9600, 1, uart::UART_CONFIG_PARITY_NONE, 8);
|
36
36
|
|
37
|
-
ESP_LOGCONFIG(TAG,
|
38
|
-
|
37
|
+
ESP_LOGCONFIG(TAG,
|
38
|
+
" Open Duration: %.1fs\n"
|
39
|
+
" Close Duration: %.1fs",
|
40
|
+
this->open_duration_ / 1e3f, this->close_duration_ / 1e3f);
|
39
41
|
|
40
42
|
auto restore = this->restore_state_();
|
41
43
|
if (restore.has_value()) {
|
@@ -15,7 +15,7 @@ static const uint8_t TSL2561_REGISTER_DATA_0 = 0x0C;
|
|
15
15
|
static const uint8_t TSL2561_REGISTER_DATA_1 = 0x0E;
|
16
16
|
|
17
17
|
void TSL2561Sensor::setup() {
|
18
|
-
ESP_LOGCONFIG(TAG, "
|
18
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
19
19
|
uint8_t id;
|
20
20
|
if (!this->tsl2561_read_byte(TSL2561_REGISTER_ID, &id)) {
|
21
21
|
this->mark_failed();
|
@@ -41,12 +41,14 @@ void TSL2561Sensor::dump_config() {
|
|
41
41
|
LOG_I2C_DEVICE(this);
|
42
42
|
|
43
43
|
if (this->is_failed()) {
|
44
|
-
ESP_LOGE(TAG,
|
44
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
45
45
|
}
|
46
46
|
|
47
47
|
int gain = this->gain_ == TSL2561_GAIN_1X ? 1 : 16;
|
48
|
-
ESP_LOGCONFIG(TAG,
|
49
|
-
|
48
|
+
ESP_LOGCONFIG(TAG,
|
49
|
+
" Gain: %dx\n"
|
50
|
+
" Integration Time: %.1f ms",
|
51
|
+
gain, this->get_integration_time_ms_());
|
50
52
|
|
51
53
|
LOG_UPDATE_INTERVAL(this);
|
52
54
|
}
|
@@ -65,7 +67,7 @@ void TSL2561Sensor::update() {
|
|
65
67
|
|
66
68
|
float TSL2561Sensor::calculate_lx_(uint16_t ch0, uint16_t ch1) {
|
67
69
|
if ((ch0 == 0xFFFF) || (ch1 == 0xFFFF)) {
|
68
|
-
ESP_LOGW(TAG, "
|
70
|
+
ESP_LOGW(TAG, "Sensor is saturated");
|
69
71
|
return NAN;
|
70
72
|
}
|
71
73
|
|
@@ -26,13 +26,13 @@ static const char *const TAG = "tsl2591.sensor";
|
|
26
26
|
void TSL2591Component::enable() {
|
27
27
|
// Enable the device by setting the control bit to 0x01. Also turn on ADCs.
|
28
28
|
if (!this->write_byte(TSL2591_COMMAND_BIT | TSL2591_REGISTER_ENABLE, TSL2591_ENABLE_POWERON | TSL2591_ENABLE_AEN)) {
|
29
|
-
ESP_LOGE(TAG, "
|
29
|
+
ESP_LOGE(TAG, "I2C write failed");
|
30
30
|
}
|
31
31
|
}
|
32
32
|
|
33
33
|
void TSL2591Component::disable() {
|
34
34
|
if (!this->write_byte(TSL2591_COMMAND_BIT | TSL2591_REGISTER_ENABLE, TSL2591_ENABLE_POWEROFF)) {
|
35
|
-
ESP_LOGE(TAG, "
|
35
|
+
ESP_LOGE(TAG, "I2C write failed");
|
36
36
|
}
|
37
37
|
}
|
38
38
|
|
@@ -43,6 +43,7 @@ void TSL2591Component::disable_if_power_saving_() {
|
|
43
43
|
}
|
44
44
|
|
45
45
|
void TSL2591Component::setup() {
|
46
|
+
ESP_LOGCONFIG(TAG, "Running setup for address 0x%02X", this->address_);
|
46
47
|
switch (this->component_gain_) {
|
47
48
|
case TSL2591_CGAIN_LOW:
|
48
49
|
this->gain_ = TSL2591_GAIN_LOW;
|
@@ -61,21 +62,15 @@ void TSL2591Component::setup() {
|
|
61
62
|
break;
|
62
63
|
}
|
63
64
|
|
64
|
-
uint8_t address = this->address_;
|
65
|
-
ESP_LOGI(TAG, "Setting up TSL2591 sensor at I2C address 0x%02X", address);
|
66
|
-
|
67
65
|
uint8_t id;
|
68
66
|
if (!this->read_byte(TSL2591_COMMAND_BIT | TSL2591_REGISTER_DEVICE_ID, &id)) {
|
69
|
-
ESP_LOGE(TAG, "
|
67
|
+
ESP_LOGE(TAG, "I2C read failed");
|
70
68
|
this->mark_failed();
|
71
69
|
return;
|
72
70
|
}
|
73
71
|
|
74
72
|
if (id != 0x50) {
|
75
|
-
ESP_LOGE(TAG,
|
76
|
-
"Could not find the TSL2591 sensor. The ID register of the device at address 0x%02X reported 0x%02X "
|
77
|
-
"instead of 0x50.",
|
78
|
-
address, id);
|
73
|
+
ESP_LOGE(TAG, "Unknown chip ID");
|
79
74
|
this->mark_failed();
|
80
75
|
return;
|
81
76
|
}
|
@@ -89,7 +84,7 @@ void TSL2591Component::dump_config() {
|
|
89
84
|
LOG_I2C_DEVICE(this);
|
90
85
|
|
91
86
|
if (this->is_failed()) {
|
92
|
-
ESP_LOGE(TAG,
|
87
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
93
88
|
return;
|
94
89
|
}
|
95
90
|
|
@@ -119,13 +114,16 @@ void TSL2591Component::dump_config() {
|
|
119
114
|
gain_word = "auto";
|
120
115
|
break;
|
121
116
|
}
|
122
|
-
ESP_LOGCONFIG(TAG, " Gain: %dx (%s)", gain, gain_word.c_str());
|
123
117
|
TSL2591IntegrationTime raw_timing = this->integration_time_;
|
124
118
|
int timing_ms = (1 + raw_timing) * 100;
|
125
|
-
ESP_LOGCONFIG(TAG,
|
126
|
-
|
127
|
-
|
128
|
-
|
119
|
+
ESP_LOGCONFIG(TAG,
|
120
|
+
" Gain: %dx (%s)"
|
121
|
+
" Integration Time: %d ms\n"
|
122
|
+
" Power save mode enabled: %s\n"
|
123
|
+
" Device factor: %f\n"
|
124
|
+
" Glass attenuation factor: %f",
|
125
|
+
gain, gain_word.c_str(), timing_ms, ONOFF(this->power_save_mode_enabled_), this->device_factor_,
|
126
|
+
this->glass_attenuation_factor_);
|
129
127
|
LOG_SENSOR(" ", "Full spectrum:", this->full_spectrum_sensor_);
|
130
128
|
LOG_SENSOR(" ", "Infrared:", this->infrared_sensor_);
|
131
129
|
LOG_SENSOR(" ", "Visible:", this->visible_sensor_);
|
@@ -174,7 +172,7 @@ void TSL2591Component::interval_function_for_update_() {
|
|
174
172
|
uint64_t now = millis();
|
175
173
|
ESP_LOGD(TAG, "Elapsed %3llu ms; still waiting for valid ADC", (now - this->interval_start_));
|
176
174
|
if (now > this->interval_timeout_) {
|
177
|
-
ESP_LOGW(TAG, "Interval timeout for
|
175
|
+
ESP_LOGW(TAG, "Interval timeout for '%s' expired before ADCs became valid", this->name_);
|
178
176
|
this->cancel_interval(interval_name);
|
179
177
|
}
|
180
178
|
return;
|
@@ -235,7 +233,7 @@ void TSL2591Component::set_integration_time_and_gain(TSL2591IntegrationTime inte
|
|
235
233
|
this->gain_ = gain;
|
236
234
|
if (!this->write_byte(TSL2591_COMMAND_BIT | TSL2591_REGISTER_CONTROL,
|
237
235
|
this->integration_time_ | this->gain_)) { // NOLINT
|
238
|
-
ESP_LOGE(TAG, "
|
236
|
+
ESP_LOGE(TAG, "I2C write failed");
|
239
237
|
}
|
240
238
|
// The ADC values can be confused if gain or integration time are changed in the middle of a cycle.
|
241
239
|
// So, we unconditionally disable the device to turn the ADCs off. When re-enabling, the ADCs
|
@@ -255,7 +253,7 @@ float TSL2591Component::get_setup_priority() const { return setup_priority::DATA
|
|
255
253
|
bool TSL2591Component::is_adc_valid() {
|
256
254
|
uint8_t status;
|
257
255
|
if (!this->read_byte(TSL2591_COMMAND_BIT | TSL2591_REGISTER_STATUS, &status)) {
|
258
|
-
ESP_LOGE(TAG, "
|
256
|
+
ESP_LOGE(TAG, "I2C read failed");
|
259
257
|
return false;
|
260
258
|
}
|
261
259
|
return status & 0x01;
|
@@ -281,7 +279,7 @@ uint32_t TSL2591Component::get_combined_illuminance() {
|
|
281
279
|
if (!avalid) {
|
282
280
|
// still not valid after a sutiable delay
|
283
281
|
// we don't mark the device as failed since it might come around in the future (probably not :-()
|
284
|
-
ESP_LOGE(TAG, "
|
282
|
+
ESP_LOGE(TAG, "Device '%s' returned invalid readings", this->name_);
|
285
283
|
this->disable_if_power_saving_();
|
286
284
|
return 0;
|
287
285
|
}
|
@@ -295,20 +293,20 @@ uint32_t TSL2591Component::get_combined_illuminance() {
|
|
295
293
|
uint16_t ch0_16;
|
296
294
|
uint16_t ch1_16;
|
297
295
|
if (!this->read_byte(TSL2591_COMMAND_BIT | TSL2591_REGISTER_CHAN0_LOW, &ch0low)) {
|
298
|
-
ESP_LOGE(TAG, "
|
296
|
+
ESP_LOGE(TAG, "I2C read failed");
|
299
297
|
return 0;
|
300
298
|
}
|
301
299
|
if (!this->read_byte(TSL2591_COMMAND_BIT | TSL2591_REGISTER_CHAN0_HIGH, &ch0high)) {
|
302
|
-
ESP_LOGE(TAG, "
|
300
|
+
ESP_LOGE(TAG, "I2C read failed");
|
303
301
|
return 0;
|
304
302
|
}
|
305
303
|
ch0_16 = (ch0high << 8) | ch0low;
|
306
304
|
if (!this->read_byte(TSL2591_COMMAND_BIT | TSL2591_REGISTER_CHAN1_LOW, &ch1low)) {
|
307
|
-
ESP_LOGE(TAG, "
|
305
|
+
ESP_LOGE(TAG, "I2C read failed");
|
308
306
|
return 0;
|
309
307
|
}
|
310
308
|
if (!this->read_byte(TSL2591_COMMAND_BIT | TSL2591_REGISTER_CHAN1_HIGH, &ch1high)) {
|
311
|
-
ESP_LOGE(TAG, "
|
309
|
+
ESP_LOGE(TAG, "I2C read failed");
|
312
310
|
return 0;
|
313
311
|
}
|
314
312
|
ch1_16 = (ch1high << 8) | ch1low;
|
@@ -335,7 +333,7 @@ uint16_t TSL2591Component::get_illuminance(TSL2591SensorChannel channel, uint32_
|
|
335
333
|
return ((combined_illuminance & 0xFFFF) - (combined_illuminance >> 16));
|
336
334
|
}
|
337
335
|
// unknown channel!
|
338
|
-
ESP_LOGE(TAG, "
|
336
|
+
ESP_LOGE(TAG, "get_illuminance() caller requested an unknown channel: %d", channel);
|
339
337
|
return 0;
|
340
338
|
}
|
341
339
|
|
@@ -358,13 +356,13 @@ float TSL2591Component::get_calculated_lux(uint16_t full_spectrum, uint16_t infr
|
|
358
356
|
uint16_t max_count = (this->integration_time_ == TSL2591_INTEGRATION_TIME_100MS ? 36863 : 65535);
|
359
357
|
if ((full_spectrum == max_count) || (infrared == max_count)) {
|
360
358
|
// Signal an overflow
|
361
|
-
ESP_LOGW(TAG, "Apparent saturation on
|
359
|
+
ESP_LOGW(TAG, "Apparent saturation on '%s'; try reducing the gain or integration time", this->name_);
|
362
360
|
return NAN;
|
363
361
|
}
|
364
362
|
|
365
363
|
if ((full_spectrum == 0) && (infrared == 0)) {
|
366
364
|
// trivial conversion; avoids divide by 0
|
367
|
-
ESP_LOGW(TAG, "Zero reading on both
|
365
|
+
ESP_LOGW(TAG, "Zero reading on both '%s' sensors", this->name_);
|
368
366
|
return 0.0F;
|
369
367
|
}
|
370
368
|
|
@@ -47,7 +47,7 @@ struct TT21100TouchReport {
|
|
47
47
|
float TT21100Touchscreen::get_setup_priority() const { return setup_priority::HARDWARE - 1.0f; }
|
48
48
|
|
49
49
|
void TT21100Touchscreen::setup() {
|
50
|
-
ESP_LOGCONFIG(TAG, "
|
50
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
51
51
|
|
52
52
|
// Register interrupt pin
|
53
53
|
if (this->interrupt_pin_ != nullptr) {
|