esphome 2025.5.1__py3-none-any.whl → 2025.6.0__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 +5 -0
- esphome/components/api/api_pb2.h +703 -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 -5
- 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/gpio.cpp +10 -1
- 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 +85 -77
- esphome/components/i2s_audio/microphone/i2s_audio_microphone.h +6 -0
- esphome/components/i2s_audio/speaker/i2s_audio_speaker.cpp +29 -11
- esphome/components/i2s_audio/speaker/i2s_audio_speaker.h +1 -0
- 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_state.h +15 -15
- 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 +5 -6
- 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/gpio.cpp +26 -9
- 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/spi_arduino.cpp +22 -9
- 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 +14 -8
- 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/hal.h +5 -0
- 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.1.dist-info → esphome-2025.6.0.dist-info}/METADATA +12 -11
- {esphome-2025.5.1.dist-info → esphome-2025.6.0.dist-info}/RECORD +753 -699
- {esphome-2025.5.1.dist-info → esphome-2025.6.0.dist-info}/WHEEL +1 -1
- {esphome-2025.5.1.dist-info → esphome-2025.6.0.dist-info}/entry_points.txt +0 -0
- {esphome-2025.5.1.dist-info → esphome-2025.6.0.dist-info}/licenses/LICENSE +0 -0
- {esphome-2025.5.1.dist-info → esphome-2025.6.0.dist-info}/top_level.txt +0 -0
@@ -52,9 +52,11 @@ void ModbusFloatOutput::write_state(float value) {
|
|
52
52
|
void ModbusFloatOutput::dump_config() {
|
53
53
|
ESP_LOGCONFIG(TAG, "Modbus Float Output:");
|
54
54
|
LOG_FLOAT_OUTPUT(this);
|
55
|
-
ESP_LOGCONFIG(TAG,
|
56
|
-
|
57
|
-
|
55
|
+
ESP_LOGCONFIG(TAG,
|
56
|
+
" Device start address: 0x%X\n"
|
57
|
+
" Register count: %d\n"
|
58
|
+
" Value type: %d",
|
59
|
+
this->start_address, this->register_count, static_cast<int>(this->sensor_value_type));
|
58
60
|
}
|
59
61
|
|
60
62
|
// ModbusBinaryOutput
|
@@ -102,9 +104,11 @@ void ModbusBinaryOutput::write_state(bool state) {
|
|
102
104
|
void ModbusBinaryOutput::dump_config() {
|
103
105
|
ESP_LOGCONFIG(TAG, "Modbus Binary Output:");
|
104
106
|
LOG_BINARY_OUTPUT(this);
|
105
|
-
ESP_LOGCONFIG(TAG,
|
106
|
-
|
107
|
-
|
107
|
+
ESP_LOGCONFIG(TAG,
|
108
|
+
" Device start address: 0x%X\n"
|
109
|
+
" Register count: %d\n"
|
110
|
+
" Value type: %d",
|
111
|
+
this->start_address, this->register_count, static_cast<int>(this->sensor_value_type));
|
108
112
|
}
|
109
113
|
|
110
114
|
} // namespace modbus_controller
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
2
|
from esphome.components import switch
|
3
3
|
import esphome.config_validation as cv
|
4
|
-
from esphome.const import CONF_ADDRESS, CONF_ID
|
4
|
+
from esphome.const import CONF_ADDRESS, CONF_ASSUMED_STATE, CONF_ID
|
5
5
|
|
6
6
|
from .. import (
|
7
7
|
MODBUS_REGISTER_TYPE,
|
@@ -36,6 +36,7 @@ CONFIG_SCHEMA = cv.All(
|
|
36
36
|
.extend(ModbusItemBaseSchema)
|
37
37
|
.extend(
|
38
38
|
{
|
39
|
+
cv.Optional(CONF_ASSUMED_STATE, default=False): cv.boolean,
|
39
40
|
cv.Optional(CONF_REGISTER_TYPE): cv.enum(MODBUS_REGISTER_TYPE),
|
40
41
|
cv.Optional(CONF_USE_WRITE_MULTIPLE, default=False): cv.boolean,
|
41
42
|
cv.Optional(CONF_WRITE_LAMBDA): cv.returning_lambda,
|
@@ -62,7 +63,10 @@ async def to_code(config):
|
|
62
63
|
paren = await cg.get_variable(config[CONF_MODBUS_CONTROLLER_ID])
|
63
64
|
cg.add(var.set_parent(paren))
|
64
65
|
cg.add(var.set_use_write_mutiple(config[CONF_USE_WRITE_MULTIPLE]))
|
65
|
-
|
66
|
+
assumed_state = config[CONF_ASSUMED_STATE]
|
67
|
+
cg.add(var.set_assumed_state(assumed_state))
|
68
|
+
if not assumed_state:
|
69
|
+
cg.add(paren.add_sensor_item(var))
|
66
70
|
if CONF_WRITE_LAMBDA in config:
|
67
71
|
template_ = await cg.process_lambda(
|
68
72
|
config[CONF_WRITE_LAMBDA],
|
@@ -19,6 +19,10 @@ void ModbusSwitch::setup() {
|
|
19
19
|
}
|
20
20
|
void ModbusSwitch::dump_config() { LOG_SWITCH(TAG, "Modbus Controller Switch", this); }
|
21
21
|
|
22
|
+
void ModbusSwitch::set_assumed_state(bool assumed_state) { this->assumed_state_ = assumed_state; }
|
23
|
+
|
24
|
+
bool ModbusSwitch::assumed_state() { return this->assumed_state_; }
|
25
|
+
|
22
26
|
void ModbusSwitch::parse_and_publish(const std::vector<uint8_t> &data) {
|
23
27
|
bool value = false;
|
24
28
|
switch (this->register_type) {
|
@@ -29,6 +29,7 @@ class ModbusSwitch : public Component, public switch_::Switch, public SensorItem
|
|
29
29
|
void setup() override;
|
30
30
|
void write_state(bool state) override;
|
31
31
|
void dump_config() override;
|
32
|
+
void set_assumed_state(bool assumed_state);
|
32
33
|
void set_state(bool state) { this->state = state; }
|
33
34
|
void parse_and_publish(const std::vector<uint8_t> &data) override;
|
34
35
|
void set_parent(ModbusController *parent) { this->parent_ = parent; }
|
@@ -40,10 +41,12 @@ class ModbusSwitch : public Component, public switch_::Switch, public SensorItem
|
|
40
41
|
void set_use_write_mutiple(bool use_write_multiple) { this->use_write_multiple_ = use_write_multiple; }
|
41
42
|
|
42
43
|
protected:
|
44
|
+
bool assumed_state() override;
|
43
45
|
ModbusController *parent_{nullptr};
|
44
46
|
bool use_write_multiple_{false};
|
45
47
|
optional<transform_func_t> publish_transform_func_{nullopt};
|
46
48
|
optional<write_transform_func_t> write_transform_func_{nullopt};
|
49
|
+
bool assumed_state_{false};
|
47
50
|
};
|
48
51
|
|
49
52
|
} // namespace modbus_controller
|
@@ -1,5 +1,6 @@
|
|
1
1
|
#include "mpl3115a2.h"
|
2
2
|
#include "esphome/core/hal.h"
|
3
|
+
#include "esphome/core/helpers.h"
|
3
4
|
#include "esphome/core/log.h"
|
4
5
|
|
5
6
|
namespace esphome {
|
@@ -8,7 +9,7 @@ namespace mpl3115a2 {
|
|
8
9
|
static const char *const TAG = "mpl3115a2";
|
9
10
|
|
10
11
|
void MPL3115A2Component::setup() {
|
11
|
-
ESP_LOGCONFIG(TAG, "
|
12
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
12
13
|
|
13
14
|
uint8_t whoami = 0xFF;
|
14
15
|
if (!this->read_byte(MPL3115A2_WHOAMI, &whoami, false)) {
|
@@ -37,7 +38,7 @@ void MPL3115A2Component::dump_config() {
|
|
37
38
|
if (this->is_failed()) {
|
38
39
|
switch (this->error_code_) {
|
39
40
|
case COMMUNICATION_FAILED:
|
40
|
-
ESP_LOGE(TAG,
|
41
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
41
42
|
break;
|
42
43
|
case WRONG_ID:
|
43
44
|
ESP_LOGE(TAG, "MPL3115A2 has invalid id");
|
@@ -11,7 +11,7 @@ namespace mpr121 {
|
|
11
11
|
static const char *const TAG = "mpr121";
|
12
12
|
|
13
13
|
void MPR121Component::setup() {
|
14
|
-
ESP_LOGCONFIG(TAG, "
|
14
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
15
15
|
// soft reset device
|
16
16
|
this->write_byte(MPR121_SOFTRESET, 0x63);
|
17
17
|
delay(100); // NOLINT
|
@@ -72,7 +72,7 @@ void MPR121Component::dump_config() {
|
|
72
72
|
LOG_I2C_DEVICE(this);
|
73
73
|
switch (this->error_code_) {
|
74
74
|
case COMMUNICATION_FAILED:
|
75
|
-
ESP_LOGE(TAG,
|
75
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
76
76
|
break;
|
77
77
|
case WRONG_CHIP_STATE:
|
78
78
|
ESP_LOGE(TAG, "MPR121 has wrong default value for CONFIG2?");
|
@@ -21,7 +21,7 @@ const uint8_t MPU6050_BIT_TEMPERATURE_DISABLED = 3;
|
|
21
21
|
const float GRAVITY_EARTH = 9.80665f;
|
22
22
|
|
23
23
|
void MPU6050Component::setup() {
|
24
|
-
ESP_LOGCONFIG(TAG, "
|
24
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
25
25
|
uint8_t who_am_i;
|
26
26
|
if (!this->read_byte(MPU6050_REGISTER_WHO_AM_I, &who_am_i) ||
|
27
27
|
(who_am_i != 0x68 && who_am_i != 0x70 && who_am_i != 0x98)) {
|
@@ -29,7 +29,7 @@ void MPU6050Component::setup() {
|
|
29
29
|
return;
|
30
30
|
}
|
31
31
|
|
32
|
-
ESP_LOGV(TAG, " Setting up Power Management
|
32
|
+
ESP_LOGV(TAG, " Setting up Power Management");
|
33
33
|
// Setup power management
|
34
34
|
uint8_t power_management;
|
35
35
|
if (!this->read_byte(MPU6050_REGISTER_POWER_MANAGEMENT_1, &power_management)) {
|
@@ -50,7 +50,7 @@ void MPU6050Component::setup() {
|
|
50
50
|
return;
|
51
51
|
}
|
52
52
|
|
53
|
-
ESP_LOGV(TAG, " Setting up Gyro Config
|
53
|
+
ESP_LOGV(TAG, " Setting up Gyro Config");
|
54
54
|
// Set scale - 2000DPS
|
55
55
|
uint8_t gyro_config;
|
56
56
|
if (!this->read_byte(MPU6050_REGISTER_GYRO_CONFIG, &gyro_config)) {
|
@@ -66,7 +66,7 @@ void MPU6050Component::setup() {
|
|
66
66
|
return;
|
67
67
|
}
|
68
68
|
|
69
|
-
ESP_LOGV(TAG, " Setting up Accel Config
|
69
|
+
ESP_LOGV(TAG, " Setting up Accel Config");
|
70
70
|
// Set range - 2G
|
71
71
|
uint8_t accel_config;
|
72
72
|
if (!this->read_byte(MPU6050_REGISTER_ACCEL_CONFIG, &accel_config)) {
|
@@ -86,7 +86,7 @@ void MPU6050Component::dump_config() {
|
|
86
86
|
ESP_LOGCONFIG(TAG, "MPU6050:");
|
87
87
|
LOG_I2C_DEVICE(this);
|
88
88
|
if (this->is_failed()) {
|
89
|
-
ESP_LOGE(TAG,
|
89
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
90
90
|
}
|
91
91
|
LOG_UPDATE_INTERVAL(this);
|
92
92
|
LOG_SENSOR(" ", "Acceleration X", this->accel_x_sensor_);
|
@@ -99,7 +99,7 @@ void MPU6050Component::dump_config() {
|
|
99
99
|
}
|
100
100
|
|
101
101
|
void MPU6050Component::update() {
|
102
|
-
ESP_LOGV(TAG, "
|
102
|
+
ESP_LOGV(TAG, "Updating");
|
103
103
|
uint16_t raw_data[7];
|
104
104
|
if (!this->read_bytes_16(MPU6050_REGISTER_ACCEL_XOUT_H, raw_data, 7)) {
|
105
105
|
this->status_set_warning();
|
@@ -26,14 +26,14 @@ const float TEMPERATURE_SENSITIVITY = 326.8;
|
|
26
26
|
const float TEMPERATURE_OFFSET = 25.0;
|
27
27
|
|
28
28
|
void MPU6886Component::setup() {
|
29
|
-
ESP_LOGCONFIG(TAG, "
|
29
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
30
30
|
uint8_t who_am_i;
|
31
31
|
if (!this->read_byte(MPU6886_REGISTER_WHO_AM_I, &who_am_i) || who_am_i != MPU6886_WHO_AM_I_IDENTIFIER) {
|
32
32
|
this->mark_failed();
|
33
33
|
return;
|
34
34
|
}
|
35
35
|
|
36
|
-
ESP_LOGV(TAG, " Setting up Power Management
|
36
|
+
ESP_LOGV(TAG, " Setting up Power Management");
|
37
37
|
// Setup power management
|
38
38
|
uint8_t power_management;
|
39
39
|
if (!this->read_byte(MPU6886_REGISTER_POWER_MANAGEMENT_1, &power_management)) {
|
@@ -54,7 +54,7 @@ void MPU6886Component::setup() {
|
|
54
54
|
return;
|
55
55
|
}
|
56
56
|
|
57
|
-
ESP_LOGV(TAG, " Setting up Gyroscope Config
|
57
|
+
ESP_LOGV(TAG, " Setting up Gyroscope Config");
|
58
58
|
// Set scale - 2000DPS
|
59
59
|
uint8_t gyro_config;
|
60
60
|
if (!this->read_byte(MPU6886_REGISTER_GYRO_CONFIG, &gyro_config)) {
|
@@ -70,7 +70,7 @@ void MPU6886Component::setup() {
|
|
70
70
|
return;
|
71
71
|
}
|
72
72
|
|
73
|
-
ESP_LOGV(TAG, " Setting up Accelerometer Config
|
73
|
+
ESP_LOGV(TAG, " Setting up Accelerometer Config");
|
74
74
|
// Set range - 2G
|
75
75
|
uint8_t accel_config;
|
76
76
|
if (!this->read_byte(MPU6886_REGISTER_ACCEL_CONFIG, &accel_config)) {
|
@@ -91,7 +91,7 @@ void MPU6886Component::dump_config() {
|
|
91
91
|
ESP_LOGCONFIG(TAG, "MPU6886:");
|
92
92
|
LOG_I2C_DEVICE(this);
|
93
93
|
if (this->is_failed()) {
|
94
|
-
ESP_LOGE(TAG,
|
94
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
95
95
|
}
|
96
96
|
LOG_UPDATE_INTERVAL(this);
|
97
97
|
LOG_SENSOR(" ", "Acceleration X", this->accel_x_sensor_);
|
@@ -104,7 +104,7 @@ void MPU6886Component::dump_config() {
|
|
104
104
|
}
|
105
105
|
|
106
106
|
void MPU6886Component::update() {
|
107
|
-
ESP_LOGV(TAG, " Updating
|
107
|
+
ESP_LOGV(TAG, " Updating");
|
108
108
|
uint16_t raw_data[7];
|
109
109
|
if (!this->read_bytes_16(MPU6886_REGISTER_ACCEL_XOUT_H, raw_data, 7)) {
|
110
110
|
this->status_set_warning();
|
@@ -45,9 +45,13 @@ void MQTTAlarmControlPanelComponent::setup() {
|
|
45
45
|
void MQTTAlarmControlPanelComponent::dump_config() {
|
46
46
|
ESP_LOGCONFIG(TAG, "MQTT alarm_control_panel '%s':", this->alarm_control_panel_->get_name().c_str());
|
47
47
|
LOG_MQTT_COMPONENT(true, true)
|
48
|
-
ESP_LOGCONFIG(TAG,
|
49
|
-
|
50
|
-
|
48
|
+
ESP_LOGCONFIG(TAG,
|
49
|
+
" Supported Features: %" PRIu32 "\n"
|
50
|
+
" Requires Code to Disarm: %s\n"
|
51
|
+
" Requires Code To Arm: %s",
|
52
|
+
this->alarm_control_panel_->get_supported_features(),
|
53
|
+
YESNO(this->alarm_control_panel_->get_requires_code()),
|
54
|
+
YESNO(this->alarm_control_panel_->get_requires_code_to_arm()));
|
51
55
|
}
|
52
56
|
|
53
57
|
void MQTTAlarmControlPanelComponent::send_discovery(JsonObject root, mqtt::SendDiscoveryConfig &config) {
|
@@ -34,7 +34,7 @@ MQTTClientComponent::MQTTClientComponent() {
|
|
34
34
|
|
35
35
|
// Connection
|
36
36
|
void MQTTClientComponent::setup() {
|
37
|
-
ESP_LOGCONFIG(TAG, "
|
37
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
38
38
|
this->mqtt_backend_.set_on_message(
|
39
39
|
[this](const char *topic, const char *payload, size_t len, size_t index, size_t total) {
|
40
40
|
if (index == 0)
|
@@ -149,18 +149,23 @@ void MQTTClientComponent::send_device_info_() {
|
|
149
149
|
}
|
150
150
|
|
151
151
|
void MQTTClientComponent::dump_config() {
|
152
|
-
ESP_LOGCONFIG(TAG,
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
152
|
+
ESP_LOGCONFIG(TAG,
|
153
|
+
"MQTT:\n"
|
154
|
+
" Server Address: %s:%u (%s)\n"
|
155
|
+
" Username: " LOG_SECRET("'%s'") "\n"
|
156
|
+
" Client ID: " LOG_SECRET("'%s'") "\n"
|
157
|
+
" Clean Session: %s",
|
158
|
+
this->credentials_.address.c_str(), this->credentials_.port, this->ip_.str().c_str(),
|
159
|
+
this->credentials_.username.c_str(), this->credentials_.client_id.c_str(),
|
160
|
+
YESNO(this->credentials_.clean_session));
|
158
161
|
if (this->is_discovery_ip_enabled()) {
|
159
162
|
ESP_LOGCONFIG(TAG, " Discovery IP enabled");
|
160
163
|
}
|
161
164
|
if (!this->discovery_info_.prefix.empty()) {
|
162
|
-
ESP_LOGCONFIG(TAG,
|
163
|
-
|
165
|
+
ESP_LOGCONFIG(TAG,
|
166
|
+
" Discovery prefix: '%s'\n"
|
167
|
+
" Discovery retain: %s",
|
168
|
+
this->discovery_info_.prefix.c_str(), YESNO(this->discovery_info_.retain));
|
164
169
|
}
|
165
170
|
ESP_LOGCONFIG(TAG, " Topic Prefix: '%s'", this->topic_prefix_.c_str());
|
166
171
|
if (!this->log_message_.topic.empty()) {
|
@@ -201,13 +206,13 @@ void MQTTClientComponent::start_dnslookup_() {
|
|
201
206
|
}
|
202
207
|
case ERR_INPROGRESS: {
|
203
208
|
// wait for callback
|
204
|
-
ESP_LOGD(TAG, "Resolving
|
209
|
+
ESP_LOGD(TAG, "Resolving broker IP address");
|
205
210
|
break;
|
206
211
|
}
|
207
212
|
default:
|
208
213
|
case ERR_ARG: {
|
209
214
|
// error
|
210
|
-
ESP_LOGW(TAG, "Error resolving
|
215
|
+
ESP_LOGW(TAG, "Error resolving broker IP address: %d", err);
|
211
216
|
break;
|
212
217
|
}
|
213
218
|
}
|
@@ -221,7 +226,7 @@ void MQTTClientComponent::check_dnslookup_() {
|
|
221
226
|
}
|
222
227
|
|
223
228
|
if (this->dns_resolve_error_) {
|
224
|
-
ESP_LOGW(TAG, "Couldn't resolve IP address for '%s'
|
229
|
+
ESP_LOGW(TAG, "Couldn't resolve IP address for '%s'", this->credentials_.address.c_str());
|
225
230
|
this->state_ = MQTT_CLIENT_DISCONNECTED;
|
226
231
|
return;
|
227
232
|
}
|
@@ -251,7 +256,7 @@ void MQTTClientComponent::start_connect_() {
|
|
251
256
|
if (!network::is_connected())
|
252
257
|
return;
|
253
258
|
|
254
|
-
ESP_LOGI(TAG, "Connecting
|
259
|
+
ESP_LOGI(TAG, "Connecting");
|
255
260
|
// Force disconnect first
|
256
261
|
this->mqtt_backend_.disconnect();
|
257
262
|
|
@@ -292,7 +297,7 @@ void MQTTClientComponent::check_connected() {
|
|
292
297
|
this->state_ = MQTT_CLIENT_CONNECTED;
|
293
298
|
this->sent_birth_message_ = false;
|
294
299
|
this->status_clear_warning();
|
295
|
-
ESP_LOGI(TAG, "
|
300
|
+
ESP_LOGI(TAG, "Connected");
|
296
301
|
// MQTT Client needs some time to be fully set up.
|
297
302
|
delay(100); // NOLINT
|
298
303
|
|
@@ -341,7 +346,7 @@ void MQTTClientComponent::loop() {
|
|
341
346
|
if (!network::is_connected()) {
|
342
347
|
reason_s = LOG_STR("WiFi disconnected");
|
343
348
|
}
|
344
|
-
ESP_LOGW(TAG, "
|
349
|
+
ESP_LOGW(TAG, "Disconnected: %s", LOG_STR_ARG(reason_s));
|
345
350
|
this->disconnect_reason_.reset();
|
346
351
|
}
|
347
352
|
|
@@ -364,7 +369,7 @@ void MQTTClientComponent::loop() {
|
|
364
369
|
case MQTT_CLIENT_CONNECTED:
|
365
370
|
if (!this->mqtt_backend_.connected()) {
|
366
371
|
this->state_ = MQTT_CLIENT_DISCONNECTED;
|
367
|
-
ESP_LOGW(TAG, "Lost
|
372
|
+
ESP_LOGW(TAG, "Lost client connection");
|
368
373
|
this->start_dnslookup_();
|
369
374
|
} else {
|
370
375
|
if (!this->birth_message_.topic.empty() && !this->sent_birth_message_) {
|
@@ -378,7 +383,7 @@ void MQTTClientComponent::loop() {
|
|
378
383
|
}
|
379
384
|
|
380
385
|
if (millis() - this->last_connected_ > this->reboot_timeout_ && this->reboot_timeout_ != 0) {
|
381
|
-
ESP_LOGE(TAG, "Can't connect
|
386
|
+
ESP_LOGE(TAG, "Can't connect; restarting");
|
382
387
|
App.reboot();
|
383
388
|
}
|
384
389
|
}
|
@@ -396,7 +401,7 @@ bool MQTTClientComponent::subscribe_(const char *topic, uint8_t qos) {
|
|
396
401
|
ESP_LOGV(TAG, "subscribe(topic='%s')", topic);
|
397
402
|
} else {
|
398
403
|
delay(5);
|
399
|
-
ESP_LOGV(TAG, "Subscribe failed for topic='%s'. Will retry
|
404
|
+
ESP_LOGV(TAG, "Subscribe failed for topic='%s'. Will retry", topic);
|
400
405
|
this->status_momentary_warning("subscribe", 1000);
|
401
406
|
}
|
402
407
|
return ret != 0;
|
@@ -499,7 +504,7 @@ bool MQTTClientComponent::publish(const MQTTMessage &message) {
|
|
499
504
|
ESP_LOGV(TAG, "Publish(topic='%s' payload='%s' retain=%d qos=%d)", message.topic.c_str(), message.payload.c_str(),
|
500
505
|
message.retain, message.qos);
|
501
506
|
} else {
|
502
|
-
ESP_LOGV(TAG, "Publish failed for topic='%s' (len=%u).
|
507
|
+
ESP_LOGV(TAG, "Publish failed for topic='%s' (len=%u). Will retry", message.topic.c_str(),
|
503
508
|
message.payload.length());
|
504
509
|
this->status_momentary_warning("publish", 1000);
|
505
510
|
}
|
@@ -515,7 +520,7 @@ bool MQTTClientComponent::publish_json(const std::string &topic, const json::jso
|
|
515
520
|
void MQTTClientComponent::enable() {
|
516
521
|
if (this->state_ != MQTT_CLIENT_DISABLED)
|
517
522
|
return;
|
518
|
-
ESP_LOGD(TAG, "Enabling
|
523
|
+
ESP_LOGD(TAG, "Enabling");
|
519
524
|
this->state_ = MQTT_CLIENT_DISCONNECTED;
|
520
525
|
this->last_connected_ = millis();
|
521
526
|
this->start_dnslookup_();
|
@@ -524,7 +529,7 @@ void MQTTClientComponent::enable() {
|
|
524
529
|
void MQTTClientComponent::disable() {
|
525
530
|
if (this->state_ == MQTT_CLIENT_DISABLED)
|
526
531
|
return;
|
527
|
-
ESP_LOGD(TAG, "Disabling
|
532
|
+
ESP_LOGD(TAG, "Disabling");
|
528
533
|
this->state_ = MQTT_CLIENT_DISABLED;
|
529
534
|
this->on_shutdown();
|
530
535
|
}
|
@@ -721,9 +726,11 @@ void MQTTMessageTrigger::setup() {
|
|
721
726
|
this->qos_);
|
722
727
|
}
|
723
728
|
void MQTTMessageTrigger::dump_config() {
|
724
|
-
ESP_LOGCONFIG(TAG,
|
725
|
-
|
726
|
-
|
729
|
+
ESP_LOGCONFIG(TAG,
|
730
|
+
"MQTT Message Trigger:\n"
|
731
|
+
" Topic: '%s'\n"
|
732
|
+
" QoS: %u",
|
733
|
+
this->topic_.c_str(), this->qos_);
|
727
734
|
}
|
728
735
|
float MQTTMessageTrigger::get_setup_priority() const { return setup_priority::AFTER_CONNECTION; }
|
729
736
|
|
@@ -64,11 +64,11 @@ bool MQTTComponent::send_discovery_() {
|
|
64
64
|
const MQTTDiscoveryInfo &discovery_info = global_mqtt_client->get_discovery_info();
|
65
65
|
|
66
66
|
if (discovery_info.clean) {
|
67
|
-
ESP_LOGV(TAG, "'%s': Cleaning discovery
|
67
|
+
ESP_LOGV(TAG, "'%s': Cleaning discovery", this->friendly_name().c_str());
|
68
68
|
return global_mqtt_client->publish(this->get_discovery_topic_(discovery_info), "", 0, this->qos_, true);
|
69
69
|
}
|
70
70
|
|
71
|
-
ESP_LOGV(TAG, "'%s': Sending discovery
|
71
|
+
ESP_LOGV(TAG, "'%s': Sending discovery", this->friendly_name().c_str());
|
72
72
|
|
73
73
|
return global_mqtt_client->publish_json(
|
74
74
|
this->get_discovery_topic_(discovery_info),
|
@@ -153,7 +153,7 @@ bool MQTTComponent::send_discovery_() {
|
|
153
153
|
if (node_friendly_name.empty()) {
|
154
154
|
node_friendly_name = node_name;
|
155
155
|
}
|
156
|
-
|
156
|
+
std::string node_area = App.get_area();
|
157
157
|
|
158
158
|
JsonObject device_info = root.createNestedObject(MQTT_DEVICE);
|
159
159
|
const auto mac = get_mac_address();
|
@@ -54,12 +54,16 @@ void MQTTCoverComponent::dump_config() {
|
|
54
54
|
bool has_command_topic = traits.get_supports_position() || !traits.get_supports_tilt();
|
55
55
|
LOG_MQTT_COMPONENT(true, has_command_topic)
|
56
56
|
if (traits.get_supports_position()) {
|
57
|
-
ESP_LOGCONFIG(TAG,
|
58
|
-
|
57
|
+
ESP_LOGCONFIG(TAG,
|
58
|
+
" Position State Topic: '%s'\n"
|
59
|
+
" Position Command Topic: '%s'",
|
60
|
+
this->get_position_state_topic().c_str(), this->get_position_command_topic().c_str());
|
59
61
|
}
|
60
62
|
if (traits.get_supports_tilt()) {
|
61
|
-
ESP_LOGCONFIG(TAG,
|
62
|
-
|
63
|
+
ESP_LOGCONFIG(TAG,
|
64
|
+
" Tilt State Topic: '%s'\n"
|
65
|
+
" Tilt Command Topic: '%s'",
|
66
|
+
this->get_tilt_state_topic().c_str(), this->get_tilt_command_topic().c_str());
|
63
67
|
}
|
64
68
|
}
|
65
69
|
void MQTTCoverComponent::send_discovery(JsonObject root, mqtt::SendDiscoveryConfig &config) {
|
@@ -121,16 +121,22 @@ void MQTTFanComponent::dump_config() {
|
|
121
121
|
ESP_LOGCONFIG(TAG, "MQTT Fan '%s': ", this->state_->get_name().c_str());
|
122
122
|
LOG_MQTT_COMPONENT(true, true);
|
123
123
|
if (this->state_->get_traits().supports_direction()) {
|
124
|
-
ESP_LOGCONFIG(TAG,
|
125
|
-
|
124
|
+
ESP_LOGCONFIG(TAG,
|
125
|
+
" Direction State Topic: '%s'\n"
|
126
|
+
" Direction Command Topic: '%s'",
|
127
|
+
this->get_direction_state_topic().c_str(), this->get_direction_command_topic().c_str());
|
126
128
|
}
|
127
129
|
if (this->state_->get_traits().supports_oscillation()) {
|
128
|
-
ESP_LOGCONFIG(TAG,
|
129
|
-
|
130
|
+
ESP_LOGCONFIG(TAG,
|
131
|
+
" Oscillation State Topic: '%s'\n"
|
132
|
+
" Oscillation Command Topic: '%s'",
|
133
|
+
this->get_oscillation_state_topic().c_str(), this->get_oscillation_command_topic().c_str());
|
130
134
|
}
|
131
135
|
if (this->state_->get_traits().supports_speed()) {
|
132
|
-
ESP_LOGCONFIG(TAG,
|
133
|
-
|
136
|
+
ESP_LOGCONFIG(TAG,
|
137
|
+
" Speed Level State Topic: '%s'\n"
|
138
|
+
" Speed Level Command Topic: '%s'",
|
139
|
+
this->get_speed_level_state_topic().c_str(), this->get_speed_level_command_topic().c_str());
|
134
140
|
}
|
135
141
|
}
|
136
142
|
|
@@ -42,8 +42,10 @@ void MQTTValveComponent::dump_config() {
|
|
42
42
|
bool has_command_topic = traits.get_supports_position();
|
43
43
|
LOG_MQTT_COMPONENT(true, has_command_topic)
|
44
44
|
if (traits.get_supports_position()) {
|
45
|
-
ESP_LOGCONFIG(TAG,
|
46
|
-
|
45
|
+
ESP_LOGCONFIG(TAG,
|
46
|
+
" Position State Topic: '%s'\n"
|
47
|
+
" Position Command Topic: '%s'",
|
48
|
+
this->get_position_state_topic().c_str(), this->get_position_command_topic().c_str());
|
47
49
|
}
|
48
50
|
}
|
49
51
|
void MQTTValveComponent::send_discovery(JsonObject root, mqtt::SendDiscoveryConfig &config) {
|
@@ -15,7 +15,7 @@ static const uint8_t MS5611_CMD_CONV_D2 = 0x50;
|
|
15
15
|
static const uint8_t MS5611_CMD_READ_PROM = 0xA2;
|
16
16
|
|
17
17
|
void MS5611Component::setup() {
|
18
|
-
ESP_LOGCONFIG(TAG, "
|
18
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
19
19
|
if (!this->write_bytes(MS5611_CMD_RESET, nullptr, 0)) {
|
20
20
|
this->mark_failed();
|
21
21
|
return;
|
@@ -32,7 +32,7 @@ void MS5611Component::dump_config() {
|
|
32
32
|
ESP_LOGCONFIG(TAG, "MS5611:");
|
33
33
|
LOG_I2C_DEVICE(this);
|
34
34
|
if (this->is_failed()) {
|
35
|
-
ESP_LOGE(TAG,
|
35
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
36
36
|
}
|
37
37
|
LOG_UPDATE_INTERVAL(this);
|
38
38
|
LOG_SENSOR(" ", "Temperature", this->temperature_sensor_);
|
@@ -67,7 +67,7 @@ static uint8_t crc4(uint16_t *buffer, size_t length);
|
|
67
67
|
static uint8_t hsensor_crc_check(uint16_t value);
|
68
68
|
|
69
69
|
void MS8607Component::setup() {
|
70
|
-
ESP_LOGCONFIG(TAG, "
|
70
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
71
71
|
this->error_code_ = ErrorCode::NONE;
|
72
72
|
this->setup_status_ = SetupStatus::NEEDS_RESET;
|
73
73
|
|
@@ -140,7 +140,7 @@ void MS8607Component::dump_config() {
|
|
140
140
|
// LOG_I2C_DEVICE doesn't work for humidity, the `address_` is protected. Log using get_address()
|
141
141
|
ESP_LOGCONFIG(TAG, " Address: 0x%02X", this->humidity_device_->get_address());
|
142
142
|
if (this->is_failed()) {
|
143
|
-
ESP_LOGE(TAG,
|
143
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
144
144
|
switch (this->error_code_) {
|
145
145
|
case ErrorCode::PT_RESET_FAILED:
|
146
146
|
ESP_LOGE(TAG, "Temperature/Pressure RESET failed");
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#include "msa3xx.h"
|
2
|
-
#include "esphome/core/log.h"
|
3
2
|
#include "esphome/core/hal.h"
|
4
3
|
#include "esphome/core/helpers.h"
|
4
|
+
#include "esphome/core/log.h"
|
5
5
|
|
6
6
|
namespace esphome {
|
7
7
|
namespace msa3xx {
|
@@ -118,7 +118,7 @@ const char *orientation_xy_to_string(OrientationXY orientation) {
|
|
118
118
|
const char *orientation_z_to_string(bool orientation) { return orientation ? "Downwards looking" : "Upwards looking"; }
|
119
119
|
|
120
120
|
void MSA3xxComponent::setup() {
|
121
|
-
ESP_LOGCONFIG(TAG, "
|
121
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
122
122
|
|
123
123
|
uint8_t part_id{0xff};
|
124
124
|
if (!this->read_byte(static_cast<uint8_t>(RegisterMap::PART_ID), &part_id) || (part_id != MSA_3XX_PART_ID)) {
|
@@ -159,15 +159,19 @@ void MSA3xxComponent::dump_config() {
|
|
159
159
|
ESP_LOGCONFIG(TAG, "MSA3xx:");
|
160
160
|
LOG_I2C_DEVICE(this);
|
161
161
|
if (this->is_failed()) {
|
162
|
-
ESP_LOGE(TAG,
|
162
|
+
ESP_LOGE(TAG, ESP_LOG_MSG_COMM_FAIL);
|
163
163
|
}
|
164
|
-
ESP_LOGCONFIG(TAG,
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
164
|
+
ESP_LOGCONFIG(TAG,
|
165
|
+
" Model: %s\n"
|
166
|
+
" Power Mode: %s\n"
|
167
|
+
" Bandwidth: %s\n"
|
168
|
+
" Range: %s\n"
|
169
|
+
" Resolution: %s\n"
|
170
|
+
" Offsets: {%.3f m/s², %.3f m/s², %.3f m/s²}\n"
|
171
|
+
" Transform: {mirror_x=%s, mirror_y=%s, mirror_z=%s, swap_xy=%s}",
|
172
|
+
model_to_string(this->model_), power_mode_to_string(this->power_mode_),
|
173
|
+
bandwidth_to_string(this->bandwidth_), range_to_string(this->range_), res_to_string(this->resolution_),
|
174
|
+
this->offset_x_, this->offset_y_, this->offset_z_, YESNO(this->swap_.x_polarity),
|
171
175
|
YESNO(this->swap_.y_polarity), YESNO(this->swap_.z_polarity), YESNO(this->swap_.x_y_swap));
|
172
176
|
LOG_UPDATE_INTERVAL(this);
|
173
177
|
|
@@ -248,10 +252,10 @@ void MSA3xxComponent::loop() {
|
|
248
252
|
}
|
249
253
|
|
250
254
|
void MSA3xxComponent::update() {
|
251
|
-
ESP_LOGV(TAG, "Updating
|
255
|
+
ESP_LOGV(TAG, "Updating");
|
252
256
|
|
253
257
|
if (!this->is_ready()) {
|
254
|
-
ESP_LOGV(TAG, "
|
258
|
+
ESP_LOGV(TAG, "Not ready for update");
|
255
259
|
return;
|
256
260
|
}
|
257
261
|
ESP_LOGV(TAG, "Acceleration: {x = %+1.3f m/s², y = %+1.3f m/s², z = %+1.3f m/s²}; ", this->data_.x, this->data_.y,
|
@@ -1,6 +1,6 @@
|
|
1
1
|
#include "my9231.h"
|
2
|
-
#include "esphome/core/log.h"
|
3
2
|
#include "esphome/core/helpers.h"
|
3
|
+
#include "esphome/core/log.h"
|
4
4
|
|
5
5
|
namespace esphome {
|
6
6
|
namespace my9231 {
|
@@ -28,7 +28,7 @@ static const uint8_t MY9231_CMD_SCATTER_APDM = 0x0 << 0;
|
|
28
28
|
static const uint8_t MY9231_CMD_SCATTER_PWM = 0x1 << 0;
|
29
29
|
|
30
30
|
void MY9231OutputComponent::setup() {
|
31
|
-
ESP_LOGCONFIG(TAG, "
|
31
|
+
ESP_LOGCONFIG(TAG, "Running setup");
|
32
32
|
this->pin_di_->setup();
|
33
33
|
this->pin_di_->digital_write(false);
|
34
34
|
this->pin_dcki_->setup();
|
@@ -63,9 +63,11 @@ void MY9231OutputComponent::dump_config() {
|
|
63
63
|
ESP_LOGCONFIG(TAG, "MY9231:");
|
64
64
|
LOG_PIN(" DI Pin: ", this->pin_di_);
|
65
65
|
LOG_PIN(" DCKI Pin: ", this->pin_dcki_);
|
66
|
-
ESP_LOGCONFIG(TAG,
|
67
|
-
|
68
|
-
|
66
|
+
ESP_LOGCONFIG(TAG,
|
67
|
+
" Total number of channels: %u\n"
|
68
|
+
" Number of chips: %u\n"
|
69
|
+
" Bit depth: %u",
|
70
|
+
this->num_channels_, this->num_chips_, this->bit_depth_);
|
69
71
|
}
|
70
72
|
void MY9231OutputComponent::loop() {
|
71
73
|
if (!this->update_)
|