esphome 2025.3.2__py3-none-any.whl → 2025.4.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 +34 -10
- esphome/components/a01nyub/sensor.py +2 -2
- esphome/components/a02yyuw/sensor.py +2 -2
- esphome/components/a4988/stepper.py +1 -2
- esphome/components/absolute_humidity/sensor.py +3 -3
- esphome/components/ac_dimmer/output.py +3 -3
- esphome/components/adalight/__init__.py +2 -2
- esphome/components/adc128s102/__init__.py +1 -1
- esphome/components/adc128s102/sensor/__init__.py +3 -3
- esphome/components/addressable_light/display.py +5 -5
- esphome/components/ade7880/sensor.py +2 -2
- esphome/components/ade7953_base/__init__.py +10 -10
- esphome/components/ade7953_i2c/sensor.py +1 -2
- esphome/components/ade7953_spi/sensor.py +1 -2
- esphome/components/ads1115/__init__.py +1 -1
- esphome/components/ads1115/sensor/__init__.py +4 -3
- esphome/components/ads1118/__init__.py +1 -1
- esphome/components/ads1118/sensor/__init__.py +5 -4
- esphome/components/ags10/sensor.py +9 -9
- esphome/components/aht10/sensor.py +2 -2
- esphome/components/airthings_ble/__init__.py +1 -1
- esphome/components/airthings_wave_base/__init__.py +2 -3
- esphome/components/airthings_wave_mini/sensor.py +2 -5
- esphome/components/airthings_wave_plus/sensor.py +8 -9
- esphome/components/alpha3/sensor.py +5 -5
- esphome/components/am2315c/am2315c.cpp +4 -4
- esphome/components/am2315c/sensor.py +1 -1
- esphome/components/am2320/sensor.py +1 -1
- esphome/components/am43/cover/__init__.py +1 -1
- esphome/components/am43/sensor/__init__.py +3 -3
- esphome/components/analog_threshold/binary_sensor.py +2 -5
- esphome/components/anova/climate.py +1 -1
- esphome/components/apds9306/sensor.py +1 -1
- esphome/components/apds9960/__init__.py +1 -1
- esphome/components/apds9960/binary_sensor.py +2 -1
- esphome/components/apds9960/sensor.py +3 -2
- esphome/components/api/api_frame_helper.cpp +25 -1
- esphome/components/as3935/__init__.py +3 -3
- esphome/components/as3935/binary_sensor.py +2 -1
- esphome/components/as3935/sensor.py +4 -3
- esphome/components/as3935_i2c/__init__.py +1 -1
- esphome/components/as3935_spi/__init__.py +1 -1
- esphome/components/as5600/__init__.py +2 -2
- esphome/components/as5600/sensor/__init__.py +10 -9
- esphome/components/as7341/sensor.py +1 -2
- esphome/components/at581x/__init__.py +4 -8
- esphome/components/at581x/switch/__init__.py +2 -4
- esphome/components/atc_mithermometer/sensor.py +3 -3
- esphome/components/axs15231/touchscreen/axs15231_touchscreen.cpp +7 -3
- esphome/components/b_parasite/sensor.py +2 -2
- esphome/components/ballu/climate.py +1 -1
- esphome/components/bang_bang/climate.py +2 -2
- esphome/components/bedjet/__init__.py +2 -6
- esphome/components/bedjet/climate/__init__.py +3 -6
- esphome/components/bedjet/fan/__init__.py +4 -9
- esphome/components/bedjet/sensor/__init__.py +3 -6
- esphome/components/beken_spi_led_strip/light.py +2 -2
- esphome/components/bh1750/sensor.py +2 -6
- esphome/components/binary/fan/__init__.py +2 -1
- esphome/components/binary/light/__init__.py +3 -2
- esphome/components/binary_sensor_map/sensor.py +5 -6
- esphome/components/bl0939/sensor.py +1 -1
- esphome/components/bl0940/sensor.py +3 -3
- esphome/components/ble_client/__init__.py +3 -2
- esphome/components/ble_client/sensor/__init__.py +1 -1
- esphome/components/ble_client/text_sensor/__init__.py +1 -1
- esphome/components/bluetooth_proxy/__init__.py +35 -23
- esphome/components/bme280_base/__init__.py +1 -1
- esphome/components/bme280_i2c/sensor.py +3 -2
- esphome/components/bme280_spi/sensor.py +3 -2
- esphome/components/bme680/sensor.py +4 -4
- esphome/components/bme680_bsec/__init__.py +1 -1
- esphome/components/bme680_bsec/sensor.py +3 -6
- esphome/components/bme680_bsec/text_sensor.py +3 -2
- esphome/components/bmi160/sensor.py +6 -6
- esphome/components/bmp085/sensor.py +1 -1
- esphome/components/bmp280_base/__init__.py +1 -1
- esphome/components/bmp280_i2c/sensor.py +3 -2
- esphome/components/bmp280_spi/sensor.py +3 -2
- esphome/components/bmp3xx_base/__init__.py +1 -1
- esphome/components/bmp3xx_i2c/sensor.py +2 -1
- esphome/components/bmp3xx_spi/sensor.py +2 -1
- esphome/components/bmp581/sensor.py +2 -1
- esphome/components/bp1658cj/__init__.py +2 -6
- esphome/components/bp1658cj/output.py +2 -1
- esphome/components/bp5758d/__init__.py +2 -6
- esphome/components/bp5758d/output.py +3 -2
- esphome/components/canbus/__init__.py +13 -2
- esphome/components/canbus/canbus.cpp +7 -1
- esphome/components/cap1188/__init__.py +2 -2
- esphome/components/cap1188/binary_sensor.py +3 -2
- esphome/components/captive_portal/__init__.py +3 -3
- esphome/components/ccs811/sensor.py +10 -10
- esphome/components/cd74hc4067/__init__.py +2 -5
- esphome/components/cd74hc4067/sensor.py +6 -5
- esphome/components/climate_ir/__init__.py +2 -2
- esphome/components/climate_ir_lg/climate.py +1 -1
- esphome/components/color/__init__.py +1 -2
- esphome/components/color_temperature/light.py +2 -2
- esphome/components/combination/sensor.py +1 -1
- esphome/components/coolix/climate.py +1 -1
- esphome/components/copy/binary_sensor/__init__.py +1 -1
- esphome/components/copy/button/__init__.py +1 -1
- esphome/components/copy/cover/__init__.py +1 -1
- esphome/components/copy/fan/__init__.py +2 -7
- esphome/components/copy/lock/__init__.py +2 -7
- esphome/components/copy/number/__init__.py +1 -1
- esphome/components/copy/select/__init__.py +2 -7
- esphome/components/copy/sensor/__init__.py +2 -2
- esphome/components/copy/switch/__init__.py +1 -1
- esphome/components/copy/text/__init__.py +2 -7
- esphome/components/copy/text_sensor/__init__.py +2 -6
- esphome/components/cs5460a/sensor.py +7 -7
- esphome/components/cse7761/sensor.py +2 -2
- esphome/components/cse7766/sensor.py +1 -1
- esphome/components/cst226/touchscreen/__init__.py +3 -4
- esphome/components/ct_clamp/sensor.py +1 -1
- esphome/components/current_based/cover.py +3 -4
- esphome/components/cwww/light.py +3 -3
- esphome/components/dac7678/__init__.py +1 -1
- esphome/components/dac7678/output.py +2 -1
- esphome/components/daikin/climate.py +1 -1
- esphome/components/daikin_arc/climate.py +1 -1
- esphome/components/daikin_brc/climate.py +1 -1
- esphome/components/dallas_temp/sensor.py +1 -1
- esphome/components/daly_bms/__init__.py +2 -2
- esphome/components/daly_bms/binary_sensor.py +3 -2
- esphome/components/daly_bms/sensor.py +14 -13
- esphome/components/daly_bms/text_sensor.py +3 -2
- esphome/components/dashboard_import/__init__.py +5 -5
- esphome/components/debug/sensor.py +7 -6
- esphome/components/debug/text_sensor.py +1 -1
- esphome/components/deep_sleep/__init__.py +12 -13
- esphome/components/delonghi/climate.py +1 -1
- esphome/components/demo/__init__.py +1 -1
- esphome/components/dfplayer/__init__.py +3 -3
- esphome/components/dfrobot_sen0395/__init__.py +3 -3
- esphome/components/dfrobot_sen0395/binary_sensor.py +2 -1
- esphome/components/dfrobot_sen0395/switch/__init__.py +2 -3
- esphome/components/dht/sensor.py +4 -5
- esphome/components/dht12/sensor.py +3 -3
- esphome/components/display/display.cpp +2 -2
- esphome/components/dps310/sensor.py +3 -3
- esphome/components/ds1307/time.py +2 -3
- esphome/components/dsmr/__init__.py +3 -7
- esphome/components/dsmr/sensor.py +5 -4
- esphome/components/dsmr/text_sensor.py +3 -2
- esphome/components/duty_cycle/sensor.py +3 -8
- esphome/components/duty_time/sensor.py +7 -7
- esphome/components/e131/__init__.py +3 -3
- esphome/components/ee895/sensor.py +5 -5
- esphome/components/ektf2232/touchscreen/__init__.py +2 -3
- esphome/components/emc2101/__init__.py +1 -1
- esphome/components/emc2101/output/__init__.py +3 -2
- esphome/components/emc2101/sensor/__init__.py +4 -3
- esphome/components/emmeti/climate.py +1 -1
- esphome/components/endstop/cover.py +3 -3
- esphome/components/ens160_base/__init__.py +1 -1
- esphome/components/ens160_i2c/sensor.py +2 -1
- esphome/components/ens160_spi/sensor.py +2 -1
- esphome/components/ens210/sensor.py +1 -1
- esphome/components/esp32/__init__.py +10 -0
- esphome/components/esp32_ble_tracker/__init__.py +135 -51
- esphome/components/esp32_camera/__init__.py +7 -8
- esphome/components/esp32_camera_web_server/__init__.py +2 -2
- esphome/components/esp32_can/canbus.py +21 -0
- esphome/components/esp32_can/esp32_can.cpp +1 -1
- esphome/components/esp32_can/esp32_can.h +4 -0
- esphome/components/esp32_dac/output.py +2 -2
- esphome/components/esp32_hall/sensor.py +2 -6
- esphome/components/esp32_touch/__init__.py +7 -7
- esphome/components/esp32_touch/binary_sensor.py +4 -7
- esphome/components/esp8266_pwm/output.py +3 -8
- esphome/components/ethernet/__init__.py +1 -0
- esphome/components/ethernet/ethernet_component.cpp +1 -1
- esphome/components/ethernet_info/ethernet_info_text_sensor.h +1 -0
- esphome/components/exposure_notifications/__init__.py +2 -2
- esphome/components/external_components/__init__.py +1 -1
- esphome/components/ezo/sensor.py +2 -2
- esphome/components/ezo_pmp/__init__.py +4 -4
- esphome/components/ezo_pmp/binary_sensor.py +4 -4
- esphome/components/ezo_pmp/sensor.py +4 -5
- esphome/components/ezo_pmp/text_sensor.py +2 -6
- esphome/components/factory_reset/button/__init__.py +2 -1
- esphome/components/factory_reset/switch/__init__.py +3 -2
- esphome/components/fastled_base/__init__.py +3 -3
- esphome/components/fastled_clockless/light.py +2 -2
- esphome/components/fastled_spi/light.py +2 -2
- esphome/components/feedback/cover.py +3 -3
- esphome/components/fingerprint_grow/__init__.py +5 -6
- esphome/components/fingerprint_grow/binary_sensor.py +2 -1
- esphome/components/fingerprint_grow/sensor.py +2 -1
- esphome/components/fs3000/sensor.py +2 -6
- esphome/components/ft5x06/touchscreen/__init__.py +2 -2
- esphome/components/ft63x6/touchscreen.py +2 -3
- esphome/components/fujitsu_general/climate.py +1 -1
- esphome/components/gcja5/sensor.py +4 -4
- esphome/components/gdk101/__init__.py +1 -1
- esphome/components/gdk101/binary_sensor.py +2 -1
- esphome/components/gdk101/sensor.py +5 -4
- esphome/components/globals/__init__.py +1 -2
- esphome/components/gp2y1010au0f/sensor.py +3 -3
- esphome/components/gp8403/__init__.py +1 -2
- esphome/components/gp8403/output/__init__.py +3 -4
- esphome/components/gpio/binary_sensor/__init__.py +3 -2
- esphome/components/gpio/one_wire/__init__.py +3 -2
- esphome/components/gpio/output/__init__.py +3 -2
- esphome/components/gpio/switch/__init__.py +3 -2
- esphome/components/gps/__init__.py +4 -5
- esphome/components/gps/time/__init__.py +3 -2
- esphome/components/graph/__init__.py +12 -12
- esphome/components/grove_tb6612fng/__init__.py +5 -6
- esphome/components/growatt_solar/sensor.py +1 -1
- esphome/components/gt911/binary_sensor/__init__.py +2 -2
- esphome/components/haier/binary_sensor/__init__.py +4 -10
- esphome/components/haier/button/__init__.py +3 -6
- esphome/components/haier/sensor/__init__.py +4 -6
- esphome/components/haier/switch/__init__.py +4 -7
- esphome/components/haier/text_sensor/__init__.py +4 -9
- esphome/components/havells_solar/sensor.py +1 -1
- esphome/components/hbridge/fan/__init__.py +6 -6
- esphome/components/hbridge/light/__init__.py +2 -1
- esphome/components/hdc1080/sensor.py +1 -1
- esphome/components/he60r/cover.py +2 -6
- esphome/components/heatpumpir/climate.py +1 -1
- esphome/components/hitachi_ac344/climate.py +1 -1
- esphome/components/hitachi_ac424/climate.py +1 -1
- esphome/components/hlw8012/sensor.py +6 -6
- esphome/components/hm3301/sensor.py +3 -3
- esphome/components/hmc5883l/sensor.py +4 -4
- esphome/components/homeassistant/time/__init__.py +2 -1
- esphome/components/honeywell_hih_i2c/sensor.py +3 -3
- esphome/components/honeywellabp/sensor.py +1 -2
- esphome/components/honeywellabp2_i2c/sensor.py +1 -2
- esphome/components/host/time/__init__.py +2 -2
- esphome/components/hrxl_maxsonar_wr/sensor.py +1 -1
- esphome/components/hte501/sensor.py +3 -3
- esphome/components/http_request/ota/__init__.py +5 -9
- esphome/components/http_request/update/__init__.py +3 -7
- esphome/components/htu21d/sensor.py +6 -6
- esphome/components/htu31d/sensor.py +1 -1
- esphome/components/hx711/sensor.py +3 -8
- esphome/components/hydreon_rgxx/binary_sensor.py +3 -7
- esphome/components/hydreon_rgxx/sensor.py +4 -4
- esphome/components/hyt271/sensor.py +1 -1
- esphome/components/i2c_device/__init__.py +1 -1
- esphome/components/i2s_audio/media_player/__init__.py +6 -8
- esphome/components/iaqcore/sensor.py +2 -2
- esphome/components/ina219/sensor.py +2 -2
- esphome/components/ina226/sensor.py +4 -4
- esphome/components/ina260/sensor.py +4 -4
- esphome/components/ina2xx_base/__init__.py +2 -2
- esphome/components/ina2xx_i2c/sensor.py +1 -1
- esphome/components/ina2xx_spi/sensor.py +1 -1
- esphome/components/ina3221/sensor.py +3 -3
- esphome/components/inkbird_ibsth1_mini/sensor.py +2 -2
- esphome/components/inkplate6/display.py +2 -2
- esphome/components/integration/sensor.py +4 -4
- esphome/components/internal_temperature/sensor.py +5 -7
- esphome/components/interval/__init__.py +1 -1
- esphome/components/jsn_sr04t/sensor.py +3 -3
- esphome/components/kamstrup_kmp/sensor.py +1 -1
- esphome/components/key_collector/__init__.py +2 -2
- esphome/components/kmeteriso/sensor.py +2 -2
- esphome/components/kuntze/sensor.py +5 -5
- esphome/components/lcd_base/__init__.py +2 -2
- esphome/components/lcd_gpio/display.py +4 -4
- esphome/components/lcd_menu/__init__.py +3 -7
- esphome/components/lcd_pcf8574/display.py +1 -1
- esphome/components/ld2410/__init__.py +4 -4
- esphome/components/ld2410/binary_sensor.py +5 -4
- esphome/components/ld2410/button/__init__.py +3 -2
- esphome/components/ld2410/number/__init__.py +5 -4
- esphome/components/ld2410/select/__init__.py +4 -3
- esphome/components/ld2410/sensor.py +6 -5
- esphome/components/ld2410/switch/__init__.py +2 -1
- esphome/components/ld2410/text_sensor.py +3 -2
- esphome/components/ld2420/__init__.py +1 -1
- esphome/components/ld2420/binary_sensor/__init__.py +4 -3
- esphome/components/ld2420/button/__init__.py +3 -2
- esphome/components/ld2420/number/__init__.py +3 -2
- esphome/components/ld2420/select/__init__.py +1 -0
- esphome/components/ld2420/sensor/__init__.py +3 -2
- esphome/components/ld2420/text_sensor/__init__.py +2 -6
- esphome/components/ld2450/__init__.py +2 -5
- esphome/components/ledc/output.py +3 -3
- esphome/components/libretiny/text_sensor.py +1 -1
- esphome/components/libretiny_pwm/output.py +3 -7
- esphome/components/lightwaverf/__init__.py +6 -8
- esphome/components/lilygo_t5_47/touchscreen/__init__.py +2 -3
- esphome/components/ltr390/sensor.py +1 -1
- esphome/components/ltr501/sensor.py +2 -2
- esphome/components/ltr_als_ps/sensor.py +2 -2
- esphome/components/lvgl/__init__.py +9 -12
- esphome/components/lvgl/automation.py +15 -3
- esphome/components/lvgl/defines.py +5 -2
- esphome/components/lvgl/encoders.py +3 -2
- esphome/components/lvgl/lv_validation.py +17 -9
- esphome/components/lvgl/lvcode.py +11 -9
- esphome/components/lvgl/lvgl_esphome.h +21 -0
- esphome/components/lvgl/number/__init__.py +23 -20
- esphome/components/lvgl/number/lvgl_number.h +27 -14
- esphome/components/lvgl/schemas.py +70 -19
- esphome/components/lvgl/select/__init__.py +11 -13
- esphome/components/lvgl/select/lvgl_select.h +25 -18
- esphome/components/lvgl/styles.py +42 -11
- esphome/components/lvgl/switch/__init__.py +13 -8
- esphome/components/lvgl/switch/lvgl_switch.h +5 -16
- esphome/components/lvgl/trigger.py +10 -1
- esphome/components/lvgl/widgets/__init__.py +1 -2
- esphome/components/lvgl/widgets/buttonmatrix.py +2 -2
- esphome/components/lvgl/widgets/canvas.py +407 -0
- esphome/components/lvgl/widgets/line.py +22 -32
- esphome/components/lvgl/widgets/meter.py +3 -1
- esphome/components/m5stack_8angle/__init__.py +1 -2
- esphome/components/m5stack_8angle/binary_sensor/__init__.py +2 -3
- esphome/components/m5stack_8angle/light/__init__.py +2 -4
- esphome/components/m5stack_8angle/sensor/__init__.py +2 -4
- esphome/components/matrix_keypad/binary_sensor/__init__.py +4 -3
- esphome/components/max31855/sensor.py +1 -1
- esphome/components/max31865/sensor.py +1 -1
- esphome/components/max44009/sensor.py +1 -1
- esphome/components/max6675/sensor.py +1 -1
- esphome/components/max6956/__init__.py +5 -5
- esphome/components/max6956/output/__init__.py +4 -3
- esphome/components/max7219/display.py +1 -1
- esphome/components/max7219digit/display.py +1 -1
- esphome/components/max9611/sensor.py +10 -10
- esphome/components/mcp23008/__init__.py +1 -1
- esphome/components/mcp23016/__init__.py +4 -4
- esphome/components/mcp23017/__init__.py +1 -1
- esphome/components/mcp23s08/__init__.py +1 -1
- esphome/components/mcp23s17/__init__.py +1 -1
- esphome/components/mcp23xxx_base/__init__.py +4 -4
- esphome/components/mcp2515/canbus.py +2 -2
- esphome/components/mcp3008/__init__.py +1 -1
- esphome/components/mcp3008/sensor/__init__.py +4 -4
- esphome/components/mcp3204/__init__.py +1 -1
- esphome/components/mcp3204/sensor/__init__.py +3 -2
- esphome/components/mcp4461/__init__.py +42 -0
- esphome/components/mcp4461/mcp4461.cpp +618 -0
- esphome/components/mcp4461/mcp4461.h +171 -0
- esphome/components/mcp4461/output/__init__.py +60 -0
- esphome/components/mcp4461/output/mcp4461_output.cpp +73 -0
- esphome/components/mcp4461/output/mcp4461_output.h +49 -0
- esphome/components/mcp4725/output.py +2 -2
- esphome/components/mcp4728/__init__.py +1 -1
- esphome/components/mcp4728/output/__init__.py +4 -3
- esphome/components/mcp47a1/output.py +2 -2
- esphome/components/mcp9808/sensor.py +1 -1
- esphome/components/mdns/__init__.py +1 -1
- esphome/components/mhz19/sensor.py +4 -4
- esphome/components/micronova/__init__.py +3 -5
- esphome/components/micronova/button/__init__.py +5 -5
- esphome/components/micronova/number/__init__.py +6 -10
- esphome/components/micronova/sensor/__init__.py +6 -6
- esphome/components/micronova/switch/__init__.py +6 -8
- esphome/components/micronova/text_sensor/__init__.py +5 -5
- esphome/components/microphone/__init__.py +2 -4
- esphome/components/midea/climate.py +6 -10
- esphome/components/midea_ir/climate.py +1 -1
- esphome/components/mitsubishi/climate.py +1 -1
- esphome/components/mlx90614/sensor.py +1 -1
- esphome/components/mmc5603/sensor.py +4 -4
- esphome/components/mmc5983/sensor.py +1 -1
- esphome/components/modbus/__init__.py +5 -9
- esphome/components/modbus_controller/__init__.py +1 -1
- esphome/components/monochromatic/light.py +2 -2
- esphome/components/mopeka_ble/__init__.py +1 -1
- esphome/components/mopeka_pro_check/sensor.py +12 -12
- esphome/components/mopeka_std_check/sensor.py +8 -8
- esphome/components/mpl3115a2/sensor.py +1 -1
- esphome/components/mpr121/__init__.py +3 -3
- esphome/components/mpr121/binary_sensor/__init__.py +5 -4
- esphome/components/mpu6050/sensor.py +4 -4
- esphome/components/mpu6886/sensor.py +4 -4
- esphome/components/mqtt_subscribe/sensor/__init__.py +3 -5
- esphome/components/mqtt_subscribe/text_sensor/__init__.py +1 -1
- esphome/components/ms5611/sensor.py +2 -2
- esphome/components/ms8607/sensor.py +1 -1
- esphome/components/my9231/__init__.py +1 -1
- esphome/components/my9231/output.py +2 -1
- esphome/components/nau7802/nau7802.cpp +0 -4
- esphome/components/nau7802/nau7802.h +0 -2
- esphome/components/neopixelbus/_methods.py +11 -9
- esphome/components/neopixelbus/light.py +11 -18
- esphome/components/nextion/binary_sensor/__init__.py +6 -14
- esphome/components/nextion/sensor/__init__.py +7 -10
- esphome/components/nextion/switch/__init__.py +3 -5
- esphome/components/nextion/text_sensor/__init__.py +3 -7
- esphome/components/noblex/climate.py +1 -1
- esphome/components/ntc/sensor.py +1 -1
- esphome/components/opentherm/__init__.py +6 -6
- esphome/components/opentherm/input.py +2 -1
- esphome/components/opentherm/number/__init__.py +5 -4
- esphome/components/opentherm/output/__init__.py +3 -2
- esphome/components/opentherm/schema.py +7 -7
- esphome/components/opentherm/switch/__init__.py +3 -2
- esphome/components/opentherm/validate.py +1 -1
- esphome/components/output/__init__.py +2 -3
- esphome/components/output/button/__init__.py +3 -2
- esphome/components/output/lock/__init__.py +2 -1
- esphome/components/output/switch/__init__.py +2 -1
- esphome/components/partition/light.py +4 -4
- esphome/components/pca6416a/__init__.py +4 -4
- esphome/components/pca9554/__init__.py +4 -4
- esphome/components/pca9685/__init__.py +2 -2
- esphome/components/pca9685/output.py +2 -1
- esphome/components/pcf85063/time.py +2 -3
- esphome/components/pcf8563/time.py +2 -2
- esphome/components/pcf8574/__init__.py +4 -4
- esphome/components/pid/climate.py +2 -2
- esphome/components/pid/sensor/__init__.py +4 -8
- esphome/components/pipsolar/__init__.py +1 -1
- esphome/components/pipsolar/binary_sensor/__init__.py +2 -2
- esphome/components/pipsolar/output/__init__.py +4 -3
- esphome/components/pipsolar/sensor/__init__.py +5 -4
- esphome/components/pipsolar/switch/__init__.py +2 -1
- esphome/components/pipsolar/text_sensor/__init__.py +2 -1
- esphome/components/pm1006/sensor.py +2 -2
- esphome/components/pmsa003i/sensor.py +4 -4
- esphome/components/pmsx003/sensor.py +10 -11
- esphome/components/pmwcs3/sensor.py +5 -5
- esphome/components/pn532/__init__.py +3 -3
- esphome/components/pn532_i2c/__init__.py +1 -1
- esphome/components/pn532_spi/__init__.py +1 -1
- esphome/components/pn7150/__init__.py +2 -2
- esphome/components/pn7150_i2c/__init__.py +1 -1
- esphome/components/pn7160/__init__.py +2 -2
- esphome/components/pn7160_i2c/__init__.py +1 -1
- esphome/components/pn7160_spi/__init__.py +1 -1
- esphome/components/power_supply/__init__.py +1 -1
- esphome/components/prometheus/__init__.py +3 -8
- esphome/components/psram/__init__.py +75 -11
- esphome/components/psram/psram.cpp +18 -7
- esphome/components/pulse_counter/sensor.py +4 -4
- esphome/components/pulse_meter/sensor.py +3 -3
- esphome/components/pulse_width/sensor.py +3 -8
- esphome/components/pvvx_mithermometer/display/__init__.py +1 -1
- esphome/components/pvvx_mithermometer/sensor.py +3 -3
- esphome/components/pylontech/__init__.py +1 -0
- esphome/components/pylontech/sensor/__init__.py +8 -13
- esphome/components/pylontech/text_sensor/__init__.py +2 -7
- esphome/components/pzem004t/sensor.py +3 -3
- esphome/components/pzemac/sensor.py +9 -9
- esphome/components/pzemdc/sensor.py +6 -6
- esphome/components/qmc5883l/sensor.py +5 -5
- esphome/components/qmp6988/sensor.py +3 -3
- esphome/components/qr_code/__init__.py +1 -1
- esphome/components/qspi_dbi/display.py +1 -1
- esphome/components/qspi_dbi/qspi_dbi.cpp +1 -1
- esphome/components/qspi_dbi/qspi_dbi.h +1 -1
- esphome/components/qwiic_pir/binary_sensor.py +2 -5
- esphome/components/radon_eye_ble/__init__.py +1 -1
- esphome/components/radon_eye_rd200/sensor.py +3 -4
- esphome/components/rc522/__init__.py +3 -3
- esphome/components/rc522_i2c/__init__.py +1 -1
- esphome/components/rc522_spi/__init__.py +1 -1
- esphome/components/rdm6300/__init__.py +2 -2
- esphome/components/rdm6300/binary_sensor.py +2 -1
- esphome/components/resistance/sensor.py +2 -2
- esphome/components/restart/button/__init__.py +1 -1
- esphome/components/restart/switch/__init__.py +2 -5
- esphome/components/rf_bridge/__init__.py +3 -3
- esphome/components/rgb/light.py +2 -2
- esphome/components/rgbct/light.py +3 -3
- esphome/components/rgbw/light.py +2 -2
- esphome/components/rgbww/light.py +4 -4
- esphome/components/rotary_encoder/sensor.py +8 -8
- esphome/components/rp2040_pio/__init__.py +0 -1
- esphome/components/rp2040_pio_led_strip/light.py +2 -4
- esphome/components/rp2040_pwm/output.py +3 -7
- esphome/components/rtttl/__init__.py +6 -6
- esphome/components/ruuvi_ble/__init__.py +1 -1
- esphome/components/ruuvitag/sensor.py +15 -15
- esphome/components/safe_mode/__init__.py +2 -3
- esphome/components/safe_mode/button/__init__.py +3 -2
- esphome/components/safe_mode/switch/__init__.py +4 -7
- esphome/components/scd30/sensor.py +5 -6
- esphome/components/scd4x/sensor.py +6 -8
- esphome/components/script/__init__.py +2 -2
- esphome/components/sdl/display.py +3 -3
- esphome/components/sdl/touchscreen/__init__.py +2 -2
- esphome/components/sdm_meter/sensor.py +3 -3
- esphome/components/sdp3x/sensor.py +1 -2
- esphome/components/sds011/sensor.py +4 -4
- esphome/components/seeed_mr24hpc1/__init__.py +1 -1
- esphome/components/seeed_mr24hpc1/binary_sensor.py +2 -5
- esphome/components/seeed_mr24hpc1/button/__init__.py +1 -0
- esphome/components/seeed_mr24hpc1/number/__init__.py +2 -4
- esphome/components/seeed_mr24hpc1/select/__init__.py +2 -3
- esphome/components/seeed_mr24hpc1/sensor.py +1 -0
- esphome/components/seeed_mr24hpc1/switch/__init__.py +2 -4
- esphome/components/seeed_mr24hpc1/text_sensor.py +1 -0
- esphome/components/seeed_mr60bha2/binary_sensor.py +2 -4
- esphome/components/seeed_mr60bha2/sensor.py +1 -1
- esphome/components/seeed_mr60fda2/button/__init__.py +1 -1
- esphome/components/seeed_mr60fda2/select/__init__.py +0 -1
- esphome/components/selec_meter/sensor.py +1 -1
- esphome/components/sen0321/sensor.py +2 -2
- esphome/components/sen21231/sensor.py +1 -1
- esphome/components/senseair/sensor.py +3 -3
- esphome/components/sensirion_common/__init__.py +0 -2
- esphome/components/servo/__init__.py +3 -3
- esphome/components/sfa30/sensor.py +4 -5
- esphome/components/sgp4x/sensor.py +2 -2
- esphome/components/shelly_dimmer/light.py +16 -16
- esphome/components/sht3xd/sensor.py +1 -1
- esphome/components/sht4x/sensor.py +6 -6
- esphome/components/shtcx/sensor.py +1 -1
- esphome/components/shutdown/button/__init__.py +2 -6
- esphome/components/shutdown/switch/__init__.py +2 -5
- esphome/components/sigma_delta_output/output.py +2 -7
- esphome/components/sim800l/__init__.py +3 -7
- esphome/components/sim800l/binary_sensor.py +3 -5
- esphome/components/sim800l/sensor.py +2 -1
- esphome/components/slow_pwm/output.py +4 -5
- esphome/components/sm10bit_base/__init__.py +2 -6
- esphome/components/sm16716/__init__.py +1 -1
- esphome/components/sm16716/output.py +2 -1
- esphome/components/sm2135/__init__.py +2 -6
- esphome/components/sm2135/output.py +2 -1
- esphome/components/sm2235/__init__.py +1 -1
- esphome/components/sm2235/output.py +2 -1
- esphome/components/sm2335/__init__.py +1 -1
- esphome/components/sm2335/output.py +2 -1
- esphome/components/sm300d2/sensor.py +13 -13
- esphome/components/sml/__init__.py +1 -1
- esphome/components/sml/sensor/__init__.py +1 -1
- esphome/components/sml/sml.cpp +8 -6
- esphome/components/sml/sml.h +1 -1
- esphome/components/sml/sml_parser.cpp +16 -18
- esphome/components/sml/sml_parser.h +42 -12
- esphome/components/sml/text_sensor/__init__.py +1 -1
- esphome/components/smt100/sensor.py +5 -6
- esphome/components/sn74hc165/__init__.py +5 -5
- esphome/components/sn74hc595/__init__.py +5 -5
- esphome/components/socket/__init__.py +1 -1
- esphome/components/sonoff_d1/light.py +2 -6
- esphome/components/speaker/media_player/audio_pipeline.cpp +3 -2
- esphome/components/speaker/media_player/speaker_media_player.cpp +47 -12
- esphome/components/speed/fan/__init__.py +2 -2
- esphome/components/spi/__init__.py +45 -36
- esphome/components/spi/spi.h +1 -0
- esphome/components/spi/spi_esp_idf.cpp +13 -5
- esphome/components/sprinkler/__init__.py +4 -5
- esphome/components/sps30/sensor.py +8 -8
- esphome/components/ssd1306_i2c/display.py +2 -2
- esphome/components/ssd1322_base/__init__.py +2 -2
- esphome/components/ssd1325_base/__init__.py +2 -2
- esphome/components/ssd1327_base/__init__.py +2 -2
- esphome/components/ssd1327_i2c/display.py +1 -1
- esphome/components/ssd1331_base/__init__.py +2 -2
- esphome/components/ssd1351_base/__init__.py +2 -2
- esphome/components/st7567_base/__init__.py +4 -4
- esphome/components/st7567_i2c/display.py +1 -1
- esphome/components/st7920/display.py +2 -2
- esphome/components/statsd/__init__.py +3 -3
- esphome/components/status/binary_sensor.py +2 -5
- esphome/components/status_led/__init__.py +1 -1
- esphome/components/status_led/light/__init__.py +2 -1
- esphome/components/stepper/__init__.py +2 -2
- esphome/components/sts3x/sensor.py +1 -1
- esphome/components/substitutions/__init__.py +2 -2
- esphome/components/sun/__init__.py +4 -4
- esphome/components/sun/sensor/__init__.py +4 -7
- esphome/components/sun/text_sensor/__init__.py +5 -4
- esphome/components/sun_gtil2/__init__.py +1 -1
- esphome/components/sun_gtil2/sensor.py +7 -6
- esphome/components/sun_gtil2/text_sensor.py +3 -2
- esphome/components/sx1509/__init__.py +5 -5
- esphome/components/sx1509/binary_sensor/__init__.py +3 -3
- esphome/components/sx1509/output/__init__.py +4 -3
- esphome/components/t6615/sensor.py +1 -1
- esphome/components/tca9548a/__init__.py +1 -1
- esphome/components/tcl112/climate.py +1 -1
- esphome/components/tcs34725/sensor.py +4 -4
- esphome/components/tee501/sensor.py +1 -1
- esphome/components/teleinfo/__init__.py +1 -1
- esphome/components/teleinfo/sensor/__init__.py +1 -7
- esphome/components/teleinfo/text_sensor/__init__.py +1 -1
- esphome/components/tem3200/sensor.py +1 -2
- esphome/components/template/alarm_control_panel/__init__.py +3 -10
- esphome/components/template/cover/__init__.py +4 -3
- esphome/components/template/datetime/__init__.py +8 -9
- esphome/components/template/event/__init__.py +2 -5
- esphome/components/template/fan/__init__.py +2 -6
- esphome/components/template/lock/__init__.py +3 -2
- esphome/components/template/number/__init__.py +3 -2
- esphome/components/template/output/__init__.py +4 -3
- esphome/components/template/select/__init__.py +3 -2
- esphome/components/template/sensor/__init__.py +4 -7
- esphome/components/template/switch/__init__.py +3 -2
- esphome/components/template/text/__init__.py +4 -3
- esphome/components/template/text_sensor/__init__.py +3 -2
- esphome/components/template/valve/__init__.py +3 -2
- esphome/components/time/real_time_clock.cpp +0 -4
- esphome/components/time/real_time_clock.h +4 -3
- esphome/components/time_based/cover.py +3 -3
- esphome/components/tlc59208f/__init__.py +1 -1
- esphome/components/tlc59208f/output.py +2 -1
- esphome/components/tlc5947/__init__.py +1 -1
- esphome/components/tlc5947/output/__init__.py +2 -1
- esphome/components/tlc5971/__init__.py +2 -8
- esphome/components/tlc5971/output/__init__.py +2 -1
- esphome/components/tm1621/display.py +3 -3
- esphome/components/tm1637/binary_sensor.py +1 -1
- esphome/components/tm1637/display.py +3 -3
- esphome/components/tm1651/__init__.py +4 -4
- esphome/components/tmp102/sensor.py +1 -1
- esphome/components/tmp1075/sensor.py +2 -2
- esphome/components/tmp117/sensor.py +1 -1
- esphome/components/tof10120/sensor.py +2 -2
- esphome/components/tormatic/cover.py +2 -6
- esphome/components/toshiba/climate.py +1 -1
- esphome/components/total_daily_energy/sensor.py +4 -4
- esphome/components/tsl2561/sensor.py +1 -1
- esphome/components/tsl2591/sensor.py +9 -9
- esphome/components/tt21100/binary_sensor/__init__.py +2 -2
- esphome/components/tt21100/touchscreen/__init__.py +2 -3
- esphome/components/ttp229_bsf/__init__.py +2 -2
- esphome/components/ttp229_bsf/binary_sensor.py +3 -2
- esphome/components/ttp229_lsf/__init__.py +1 -1
- esphome/components/ttp229_lsf/binary_sensor.py +3 -2
- esphome/components/tuya/__init__.py +3 -5
- esphome/components/tuya/binary_sensor/__init__.py +2 -2
- esphome/components/tuya/climate/__init__.py +6 -5
- esphome/components/tuya/cover/__init__.py +5 -4
- esphome/components/tuya/fan/__init__.py +3 -2
- esphome/components/tuya/light/__init__.py +9 -8
- esphome/components/tuya/number/__init__.py +6 -5
- esphome/components/tuya/select/__init__.py +4 -3
- esphome/components/tuya/sensor/__init__.py +3 -2
- esphome/components/tuya/switch/__init__.py +3 -2
- esphome/components/tuya/text_sensor/__init__.py +3 -2
- esphome/components/tx20/sensor.py +6 -6
- esphome/components/uart/__init__.py +20 -19
- esphome/components/uart/button/__init__.py +2 -1
- esphome/components/uart/switch/__init__.py +2 -1
- esphome/components/ufire_ise/sensor.py +2 -2
- esphome/components/uln2003/stepper.py +2 -2
- esphome/components/ultrasonic/sensor.py +4 -4
- esphome/components/uponor_smatrix/__init__.py +2 -6
- esphome/components/uponor_smatrix/climate/__init__.py +3 -3
- esphome/components/vbus/__init__.py +1 -1
- esphome/components/vbus/binary_sensor/__init__.py +7 -6
- esphome/components/vbus/sensor/__init__.py +7 -6
- esphome/components/veml3235/sensor.py +1 -1
- esphome/components/veml7700/sensor.py +1 -1
- esphome/components/version/text_sensor.py +2 -6
- esphome/components/vl53l0x/sensor.py +6 -6
- esphome/components/web_server_base/__init__.py +2 -2
- esphome/components/web_server_idf/__init__.py +1 -1
- esphome/components/weikai/__init__.py +1 -1
- esphome/components/whirlpool/climate.py +1 -1
- esphome/components/whynter/climate.py +1 -1
- esphome/components/wireguard/binary_sensor.py +1 -1
- esphome/components/wireguard/sensor.py +2 -5
- esphome/components/wireguard/text_sensor.py +2 -5
- esphome/components/wk2132_i2c/__init__.py +1 -1
- esphome/components/wk2132_spi/__init__.py +1 -2
- esphome/components/wk2168_i2c/__init__.py +3 -8
- esphome/components/wk2168_spi/__init__.py +3 -8
- esphome/components/wk2204_i2c/__init__.py +1 -1
- esphome/components/wk2204_spi/__init__.py +1 -1
- esphome/components/wk2212_i2c/__init__.py +3 -8
- esphome/components/wk2212_spi/__init__.py +3 -8
- esphome/components/wl_134/text_sensor.py +2 -4
- esphome/components/wled/__init__.py +2 -2
- esphome/components/x9c/output.py +4 -4
- esphome/components/xgzp68xx/sensor.py +5 -5
- esphome/components/xiaomi_ble/__init__.py +1 -1
- esphome/components/xiaomi_cgd1/sensor.py +3 -3
- esphome/components/xiaomi_cgdk2/sensor.py +3 -3
- esphome/components/xiaomi_cgg1/sensor.py +2 -2
- esphome/components/xiaomi_cgpr1/binary_sensor.py +6 -6
- esphome/components/xiaomi_gcls002/sensor.py +7 -7
- esphome/components/xiaomi_hhccjcy01/sensor.py +9 -9
- esphome/components/xiaomi_hhccjcy10/sensor.py +9 -9
- esphome/components/xiaomi_hhccpot002/sensor.py +7 -7
- esphome/components/xiaomi_jqjcy01ym/sensor.py +6 -6
- esphome/components/xiaomi_lywsd02/sensor.py +4 -4
- esphome/components/xiaomi_lywsd02mmc/sensor.py +5 -5
- esphome/components/xiaomi_lywsd03mmc/sensor.py +6 -6
- esphome/components/xiaomi_lywsdcgq/sensor.py +5 -5
- esphome/components/xiaomi_mhoc303/sensor.py +4 -4
- esphome/components/xiaomi_mhoc401/sensor.py +6 -6
- esphome/components/xiaomi_miscale/sensor.py +6 -6
- esphome/components/xiaomi_mjyd02yla/binary_sensor.py +8 -8
- esphome/components/xiaomi_mue4094rt/binary_sensor.py +2 -7
- esphome/components/xiaomi_rtcgq02lm/__init__.py +2 -3
- esphome/components/xiaomi_rtcgq02lm/binary_sensor.py +3 -3
- esphome/components/xiaomi_rtcgq02lm/sensor.py +3 -3
- esphome/components/xiaomi_wx08zm/binary_sensor.py +2 -3
- esphome/components/xl9535/__init__.py +2 -2
- esphome/components/yashima/climate.py +1 -1
- esphome/components/zhlt01/climate.py +1 -1
- esphome/components/zio_ultrasonic/sensor.py +2 -5
- esphome/components/zyaura/sensor.py +7 -7
- esphome/config_validation.py +0 -42
- esphome/const.py +3 -1
- esphome/core/__init__.py +0 -1
- esphome/core/component.cpp +3 -1
- esphome/core/component.h +15 -2
- esphome/core/config.py +4 -0
- esphome/core/defines.h +21 -0
- esphome/core/helpers.cpp +6 -7
- esphome/core/scheduler.cpp +34 -67
- esphome/core/scheduler.h +7 -17
- esphome/dashboard/status/mqtt.py +0 -2
- esphome/vscode.py +27 -8
- esphome/yaml_util.py +75 -39
- {esphome-2025.3.2.dist-info → esphome-2025.4.0.dist-info}/METADATA +45 -44
- {esphome-2025.3.2.dist-info → esphome-2025.4.0.dist-info}/RECORD +718 -711
- {esphome-2025.3.2.dist-info → esphome-2025.4.0.dist-info}/WHEEL +1 -1
- {esphome-2025.3.2.dist-info → esphome-2025.4.0.dist-info}/entry_points.txt +0 -0
- {esphome-2025.3.2.dist-info → esphome-2025.4.0.dist-info/licenses}/LICENSE +0 -0
- {esphome-2025.3.2.dist-info → esphome-2025.4.0.dist-info}/top_level.txt +0 -0
@@ -1,20 +1,18 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
2
|
from esphome.components import sensor
|
4
3
|
from esphome.components.esp32 import get_esp32_variant
|
5
|
-
from esphome.components.esp32.const import
|
6
|
-
|
7
|
-
)
|
4
|
+
from esphome.components.esp32.const import VARIANT_ESP32S3
|
5
|
+
import esphome.config_validation as cv
|
8
6
|
from esphome.const import (
|
9
|
-
STATE_CLASS_MEASUREMENT,
|
10
|
-
UNIT_CELSIUS,
|
11
7
|
DEVICE_CLASS_TEMPERATURE,
|
12
8
|
ENTITY_CATEGORY_DIAGNOSTIC,
|
13
9
|
KEY_CORE,
|
14
10
|
KEY_FRAMEWORK_VERSION,
|
11
|
+
PLATFORM_BK72XX,
|
15
12
|
PLATFORM_ESP32,
|
16
13
|
PLATFORM_RP2040,
|
17
|
-
|
14
|
+
STATE_CLASS_MEASUREMENT,
|
15
|
+
UNIT_CELSIUS,
|
18
16
|
)
|
19
17
|
from esphome.core import CORE
|
20
18
|
|
@@ -1,11 +1,11 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
2
|
from esphome.components import sensor, uart
|
3
|
+
import esphome.config_validation as cv
|
4
4
|
from esphome.const import (
|
5
|
+
CONF_MODEL,
|
6
|
+
ICON_ARROW_EXPAND_VERTICAL,
|
5
7
|
STATE_CLASS_MEASUREMENT,
|
6
8
|
UNIT_METER,
|
7
|
-
ICON_ARROW_EXPAND_VERTICAL,
|
8
|
-
CONF_MODEL,
|
9
9
|
)
|
10
10
|
|
11
11
|
CODEOWNERS = ["@Mafus1"]
|
@@ -1,7 +1,7 @@
|
|
1
|
-
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
1
|
from esphome import automation
|
2
|
+
import esphome.codegen as cg
|
4
3
|
from esphome.components import key_provider
|
4
|
+
import esphome.config_validation as cv
|
5
5
|
from esphome.const import (
|
6
6
|
CONF_ID,
|
7
7
|
CONF_MAX_LENGTH,
|
@@ -1,14 +1,14 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
2
|
from esphome.components import i2c, sensor
|
3
|
+
import esphome.config_validation as cv
|
4
4
|
from esphome.const import (
|
5
5
|
CONF_ID,
|
6
6
|
CONF_INTERNAL_TEMPERATURE,
|
7
7
|
CONF_TEMPERATURE,
|
8
8
|
DEVICE_CLASS_TEMPERATURE,
|
9
|
+
ENTITY_CATEGORY_DIAGNOSTIC,
|
9
10
|
STATE_CLASS_MEASUREMENT,
|
10
11
|
UNIT_CELSIUS,
|
11
|
-
ENTITY_CATEGORY_DIAGNOSTIC,
|
12
12
|
)
|
13
13
|
|
14
14
|
DEPENDENCIES = ["i2c"]
|
@@ -1,19 +1,19 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
|
+
from esphome.components import modbus, sensor
|
2
3
|
import esphome.config_validation as cv
|
3
|
-
from esphome.components import sensor, modbus
|
4
4
|
from esphome.const import (
|
5
|
-
CONF_ID,
|
6
5
|
CONF_EC,
|
6
|
+
CONF_ID,
|
7
7
|
CONF_PH,
|
8
8
|
CONF_TEMPERATURE,
|
9
|
+
DEVICE_CLASS_EMPTY,
|
10
|
+
DEVICE_CLASS_TEMPERATURE,
|
9
11
|
ICON_EMPTY,
|
10
12
|
ICON_THERMOMETER,
|
13
|
+
STATE_CLASS_MEASUREMENT,
|
11
14
|
UNIT_CELSIUS,
|
12
15
|
UNIT_EMPTY,
|
13
16
|
UNIT_PH,
|
14
|
-
STATE_CLASS_MEASUREMENT,
|
15
|
-
DEVICE_CLASS_EMPTY,
|
16
|
-
DEVICE_CLASS_TEMPERATURE,
|
17
17
|
)
|
18
18
|
|
19
19
|
CODEOWNERS = ["@ssieb"]
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
2
|
from esphome.components import display
|
4
|
-
|
3
|
+
import esphome.config_validation as cv
|
4
|
+
from esphome.const import CONF_DATA, CONF_DIMENSIONS, CONF_POSITION
|
5
5
|
|
6
6
|
CONF_USER_CHARACTERS = "user_characters"
|
7
7
|
|
@@ -1,14 +1,14 @@
|
|
1
|
-
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
1
|
from esphome import pins
|
2
|
+
import esphome.codegen as cg
|
4
3
|
from esphome.components import lcd_base
|
4
|
+
import esphome.config_validation as cv
|
5
5
|
from esphome.const import (
|
6
6
|
CONF_DATA_PINS,
|
7
7
|
CONF_ENABLE_PIN,
|
8
|
-
CONF_RS_PIN,
|
9
|
-
CONF_RW_PIN,
|
10
8
|
CONF_ID,
|
11
9
|
CONF_LAMBDA,
|
10
|
+
CONF_RS_PIN,
|
11
|
+
CONF_RW_PIN,
|
12
12
|
)
|
13
13
|
|
14
14
|
AUTO_LOAD = ["lcd_base"]
|
@@ -1,17 +1,13 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
|
-
from esphome.const import (
|
4
|
-
CONF_ID,
|
5
|
-
CONF_DIMENSIONS,
|
6
|
-
CONF_DISPLAY_ID,
|
7
|
-
)
|
8
|
-
from esphome.core.entity_helpers import inherit_property_from
|
9
2
|
from esphome.components import lcd_base
|
10
3
|
from esphome.components.display_menu_base import (
|
11
4
|
DISPLAY_MENU_BASE_SCHEMA,
|
12
5
|
DisplayMenuComponent,
|
13
6
|
display_menu_to_code,
|
14
7
|
)
|
8
|
+
import esphome.config_validation as cv
|
9
|
+
from esphome.const import CONF_DIMENSIONS, CONF_DISPLAY_ID, CONF_ID
|
10
|
+
from esphome.core.entity_helpers import inherit_property_from
|
15
11
|
|
16
12
|
CODEOWNERS = ["@numo68"]
|
17
13
|
|
@@ -1,9 +1,9 @@
|
|
1
|
-
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
|
-
from esphome.components import uart
|
4
|
-
from esphome.const import CONF_ID, CONF_THROTTLE, CONF_TIMEOUT, CONF_PASSWORD
|
5
1
|
from esphome import automation
|
6
2
|
from esphome.automation import maybe_simple_id
|
3
|
+
import esphome.codegen as cg
|
4
|
+
from esphome.components import uart
|
5
|
+
import esphome.config_validation as cv
|
6
|
+
from esphome.const import CONF_ID, CONF_PASSWORD, CONF_THROTTLE, CONF_TIMEOUT
|
7
7
|
|
8
8
|
DEPENDENCIES = ["uart"]
|
9
9
|
CODEOWNERS = ["@sebcaps", "@regevbr"]
|
@@ -2,16 +2,17 @@ import esphome.codegen as cg
|
|
2
2
|
from esphome.components import binary_sensor
|
3
3
|
import esphome.config_validation as cv
|
4
4
|
from esphome.const import (
|
5
|
+
CONF_HAS_MOVING_TARGET,
|
6
|
+
CONF_HAS_STILL_TARGET,
|
7
|
+
CONF_HAS_TARGET,
|
5
8
|
DEVICE_CLASS_MOTION,
|
6
9
|
DEVICE_CLASS_OCCUPANCY,
|
7
10
|
DEVICE_CLASS_PRESENCE,
|
8
11
|
ENTITY_CATEGORY_DIAGNOSTIC,
|
9
|
-
ICON_MOTION_SENSOR,
|
10
12
|
ICON_ACCOUNT,
|
11
|
-
|
12
|
-
CONF_HAS_MOVING_TARGET,
|
13
|
-
CONF_HAS_STILL_TARGET,
|
13
|
+
ICON_MOTION_SENSOR,
|
14
14
|
)
|
15
|
+
|
15
16
|
from . import CONF_LD2410_ID, LD2410Component
|
16
17
|
|
17
18
|
DEPENDENCIES = ["ld2410"]
|
@@ -5,12 +5,13 @@ from esphome.const import (
|
|
5
5
|
CONF_FACTORY_RESET,
|
6
6
|
CONF_RESTART,
|
7
7
|
DEVICE_CLASS_RESTART,
|
8
|
-
ENTITY_CATEGORY_DIAGNOSTIC,
|
9
8
|
ENTITY_CATEGORY_CONFIG,
|
9
|
+
ENTITY_CATEGORY_DIAGNOSTIC,
|
10
|
+
ICON_DATABASE,
|
10
11
|
ICON_RESTART,
|
11
12
|
ICON_RESTART_ALERT,
|
12
|
-
ICON_DATABASE,
|
13
13
|
)
|
14
|
+
|
14
15
|
from .. import CONF_LD2410_ID, LD2410Component, ld2410_ns
|
15
16
|
|
16
17
|
QueryButton = ld2410_ns.class_("QueryButton", button.Button)
|
@@ -5,15 +5,16 @@ from esphome.const import (
|
|
5
5
|
CONF_ID,
|
6
6
|
CONF_TIMEOUT,
|
7
7
|
DEVICE_CLASS_DISTANCE,
|
8
|
-
DEVICE_CLASS_SIGNAL_STRENGTH,
|
9
8
|
DEVICE_CLASS_ILLUMINANCE,
|
10
|
-
|
11
|
-
UNIT_PERCENT,
|
9
|
+
DEVICE_CLASS_SIGNAL_STRENGTH,
|
12
10
|
ENTITY_CATEGORY_CONFIG,
|
11
|
+
ICON_LIGHTBULB,
|
13
12
|
ICON_MOTION_SENSOR,
|
14
13
|
ICON_TIMELAPSE,
|
15
|
-
|
14
|
+
UNIT_PERCENT,
|
15
|
+
UNIT_SECOND,
|
16
16
|
)
|
17
|
+
|
17
18
|
from .. import CONF_LD2410_ID, LD2410Component, ld2410_ns
|
18
19
|
|
19
20
|
GateThresholdNumber = ld2410_ns.class_("GateThresholdNumber", number.Number)
|
@@ -2,13 +2,14 @@ import esphome.codegen as cg
|
|
2
2
|
from esphome.components import select
|
3
3
|
import esphome.config_validation as cv
|
4
4
|
from esphome.const import (
|
5
|
-
ENTITY_CATEGORY_CONFIG,
|
6
5
|
CONF_BAUD_RATE,
|
7
|
-
|
8
|
-
ICON_SCALE,
|
6
|
+
ENTITY_CATEGORY_CONFIG,
|
9
7
|
ICON_LIGHTBULB,
|
10
8
|
ICON_RULER,
|
9
|
+
ICON_SCALE,
|
10
|
+
ICON_THERMOMETER,
|
11
11
|
)
|
12
|
+
|
12
13
|
from .. import CONF_LD2410_ID, LD2410Component, ld2410_ns
|
13
14
|
|
14
15
|
BaudRateSelect = ld2410_ns.class_("BaudRateSelect", select.Select)
|
@@ -2,17 +2,18 @@ import esphome.codegen as cg
|
|
2
2
|
from esphome.components import sensor
|
3
3
|
import esphome.config_validation as cv
|
4
4
|
from esphome.const import (
|
5
|
-
DEVICE_CLASS_DISTANCE,
|
6
|
-
UNIT_CENTIMETER,
|
7
|
-
UNIT_PERCENT,
|
8
5
|
CONF_LIGHT,
|
6
|
+
DEVICE_CLASS_DISTANCE,
|
9
7
|
DEVICE_CLASS_ILLUMINANCE,
|
10
8
|
ENTITY_CATEGORY_DIAGNOSTIC,
|
11
|
-
ICON_SIGNAL,
|
12
9
|
ICON_FLASH,
|
13
|
-
ICON_MOTION_SENSOR,
|
14
10
|
ICON_LIGHTBULB,
|
11
|
+
ICON_MOTION_SENSOR,
|
12
|
+
ICON_SIGNAL,
|
13
|
+
UNIT_CENTIMETER,
|
14
|
+
UNIT_PERCENT,
|
15
15
|
)
|
16
|
+
|
16
17
|
from . import CONF_LD2410_ID, LD2410Component
|
17
18
|
|
18
19
|
DEPENDENCIES = ["ld2410"]
|
@@ -3,10 +3,11 @@ from esphome.components import switch
|
|
3
3
|
import esphome.config_validation as cv
|
4
4
|
from esphome.const import (
|
5
5
|
DEVICE_CLASS_SWITCH,
|
6
|
-
ICON_BLUETOOTH,
|
7
6
|
ENTITY_CATEGORY_CONFIG,
|
7
|
+
ICON_BLUETOOTH,
|
8
8
|
ICON_PULSE,
|
9
9
|
)
|
10
|
+
|
10
11
|
from .. import CONF_LD2410_ID, LD2410Component, ld2410_ns
|
11
12
|
|
12
13
|
BluetoothSwitch = ld2410_ns.class_("BluetoothSwitch", switch.Switch)
|
@@ -2,12 +2,13 @@ import esphome.codegen as cg
|
|
2
2
|
from esphome.components import text_sensor
|
3
3
|
import esphome.config_validation as cv
|
4
4
|
from esphome.const import (
|
5
|
-
ENTITY_CATEGORY_DIAGNOSTIC,
|
6
|
-
CONF_VERSION,
|
7
5
|
CONF_MAC_ADDRESS,
|
6
|
+
CONF_VERSION,
|
7
|
+
ENTITY_CATEGORY_DIAGNOSTIC,
|
8
8
|
ICON_BLUETOOTH,
|
9
9
|
ICON_CHIP,
|
10
10
|
)
|
11
|
+
|
11
12
|
from . import CONF_LD2410_ID, LD2410Component
|
12
13
|
|
13
14
|
DEPENDENCIES = ["ld2410"]
|
@@ -1,8 +1,9 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
2
|
from esphome.components import binary_sensor
|
4
|
-
|
5
|
-
from
|
3
|
+
import esphome.config_validation as cv
|
4
|
+
from esphome.const import CONF_HAS_TARGET, CONF_ID, DEVICE_CLASS_OCCUPANCY
|
5
|
+
|
6
|
+
from .. import CONF_LD2420_ID, LD2420Component, ld2420_ns
|
6
7
|
|
7
8
|
LD2420BinarySensor = ld2420_ns.class_(
|
8
9
|
"LD2420BinarySensor", binary_sensor.BinarySensor, cg.Component
|
@@ -4,12 +4,13 @@ import esphome.config_validation as cv
|
|
4
4
|
from esphome.const import (
|
5
5
|
CONF_FACTORY_RESET,
|
6
6
|
DEVICE_CLASS_RESTART,
|
7
|
-
ENTITY_CATEGORY_DIAGNOSTIC,
|
8
7
|
ENTITY_CATEGORY_CONFIG,
|
8
|
+
ENTITY_CATEGORY_DIAGNOSTIC,
|
9
|
+
ICON_DATABASE,
|
9
10
|
ICON_RESTART,
|
10
11
|
ICON_RESTART_ALERT,
|
11
|
-
ICON_DATABASE,
|
12
12
|
)
|
13
|
+
|
13
14
|
from .. import CONF_LD2420_ID, LD2420Component, ld2420_ns
|
14
15
|
|
15
16
|
LD2420ApplyConfigButton = ld2420_ns.class_("LD2420ApplyConfigButton", button.Button)
|
@@ -4,12 +4,13 @@ import esphome.config_validation as cv
|
|
4
4
|
from esphome.const import (
|
5
5
|
CONF_ID,
|
6
6
|
DEVICE_CLASS_DISTANCE,
|
7
|
-
UNIT_SECOND,
|
8
7
|
ENTITY_CATEGORY_CONFIG,
|
9
8
|
ICON_MOTION_SENSOR,
|
10
|
-
ICON_TIMELAPSE,
|
11
9
|
ICON_SCALE,
|
10
|
+
ICON_TIMELAPSE,
|
11
|
+
UNIT_SECOND,
|
12
12
|
)
|
13
|
+
|
13
14
|
from .. import CONF_LD2420_ID, LD2420Component, ld2420_ns
|
14
15
|
|
15
16
|
LD2420TimeoutNumber = ld2420_ns.class_("LD2420TimeoutNumber", number.Number)
|
@@ -1,8 +1,9 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
2
|
from esphome.components import sensor
|
3
|
+
import esphome.config_validation as cv
|
4
4
|
from esphome.const import CONF_ID, DEVICE_CLASS_DISTANCE, UNIT_CENTIMETER
|
5
|
-
|
5
|
+
|
6
|
+
from .. import CONF_LD2420_ID, LD2420Component, ld2420_ns
|
6
7
|
|
7
8
|
LD2420Sensor = ld2420_ns.class_("LD2420Sensor", sensor.Sensor, cg.Component)
|
8
9
|
|
@@ -1,13 +1,9 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
2
|
from esphome.components import text_sensor
|
3
3
|
import esphome.config_validation as cv
|
4
|
-
from esphome.const import
|
5
|
-
CONF_ID,
|
6
|
-
ENTITY_CATEGORY_DIAGNOSTIC,
|
7
|
-
ICON_CHIP,
|
8
|
-
)
|
4
|
+
from esphome.const import CONF_ID, ENTITY_CATEGORY_DIAGNOSTIC, ICON_CHIP
|
9
5
|
|
10
|
-
from .. import
|
6
|
+
from .. import CONF_LD2420_ID, LD2420Component, ld2420_ns
|
11
7
|
|
12
8
|
LD2420TextSensor = ld2420_ns.class_(
|
13
9
|
"LD2420TextSensor", text_sensor.TextSensor, cg.Component
|
@@ -1,10 +1,7 @@
|
|
1
1
|
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
2
|
from esphome.components import uart
|
4
|
-
|
5
|
-
|
6
|
-
CONF_THROTTLE,
|
7
|
-
)
|
3
|
+
import esphome.config_validation as cv
|
4
|
+
from esphome.const import CONF_ID, CONF_THROTTLE
|
8
5
|
|
9
6
|
DEPENDENCIES = ["uart"]
|
10
7
|
CODEOWNERS = ["@hareeshmu"]
|
@@ -1,12 +1,12 @@
|
|
1
|
-
from esphome import
|
1
|
+
from esphome import automation, pins
|
2
|
+
import esphome.codegen as cg
|
2
3
|
from esphome.components import output
|
3
4
|
import esphome.config_validation as cv
|
4
|
-
import esphome.codegen as cg
|
5
5
|
from esphome.const import (
|
6
|
-
CONF_PHASE_ANGLE,
|
7
6
|
CONF_CHANNEL,
|
8
7
|
CONF_FREQUENCY,
|
9
8
|
CONF_ID,
|
9
|
+
CONF_PHASE_ANGLE,
|
10
10
|
CONF_PIN,
|
11
11
|
)
|
12
12
|
|
@@ -1,12 +1,8 @@
|
|
1
|
-
from esphome import
|
1
|
+
from esphome import automation, pins
|
2
|
+
import esphome.codegen as cg
|
2
3
|
from esphome.components import output
|
3
4
|
import esphome.config_validation as cv
|
4
|
-
|
5
|
-
from esphome.const import (
|
6
|
-
CONF_FREQUENCY,
|
7
|
-
CONF_ID,
|
8
|
-
CONF_PIN,
|
9
|
-
)
|
5
|
+
from esphome.const import CONF_FREQUENCY, CONF_ID, CONF_PIN
|
10
6
|
|
11
7
|
DEPENDENCIES = ["libretiny"]
|
12
8
|
|
@@ -1,17 +1,15 @@
|
|
1
|
+
from esphome import automation, pins
|
1
2
|
import esphome.codegen as cg
|
2
3
|
import esphome.config_validation as cv
|
3
|
-
from esphome import pins
|
4
|
-
from esphome import automation
|
5
|
-
|
6
4
|
from esphome.const import (
|
7
|
-
|
5
|
+
CONF_CODE,
|
8
6
|
CONF_ID,
|
9
|
-
CONF_NAME,
|
10
|
-
CONF_WRITE_PIN,
|
11
|
-
CONF_REPEAT,
|
12
7
|
CONF_INVERTED,
|
8
|
+
CONF_NAME,
|
13
9
|
CONF_PULSE_LENGTH,
|
14
|
-
|
10
|
+
CONF_READ_PIN,
|
11
|
+
CONF_REPEAT,
|
12
|
+
CONF_WRITE_PIN,
|
15
13
|
)
|
16
14
|
from esphome.cpp_helpers import gpio_pin_expression
|
17
15
|
|
@@ -1,8 +1,7 @@
|
|
1
|
-
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
|
-
|
4
1
|
from esphome import pins
|
2
|
+
import esphome.codegen as cg
|
5
3
|
from esphome.components import i2c, touchscreen
|
4
|
+
import esphome.config_validation as cv
|
6
5
|
from esphome.const import CONF_ID, CONF_INTERRUPT_PIN
|
7
6
|
|
8
7
|
from .. import lilygo_t5_47_ns
|
@@ -1,7 +1,7 @@
|
|
1
|
-
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
1
|
from esphome import automation
|
2
|
+
import esphome.codegen as cg
|
4
3
|
from esphome.components import i2c, sensor
|
4
|
+
import esphome.config_validation as cv
|
5
5
|
from esphome.const import (
|
6
6
|
CONF_ACTUAL_GAIN,
|
7
7
|
CONF_ACTUAL_INTEGRATION_TIME,
|
@@ -1,7 +1,7 @@
|
|
1
|
-
import esphome.codegen as cg
|
2
|
-
import esphome.config_validation as cv
|
3
1
|
from esphome import automation
|
2
|
+
import esphome.codegen as cg
|
4
3
|
from esphome.components import i2c, sensor
|
4
|
+
import esphome.config_validation as cv
|
5
5
|
from esphome.const import (
|
6
6
|
CONF_ACTUAL_GAIN,
|
7
7
|
CONF_ACTUAL_INTEGRATION_TIME,
|
@@ -10,6 +10,7 @@ from esphome.const import (
|
|
10
10
|
CONF_GROUP,
|
11
11
|
CONF_ID,
|
12
12
|
CONF_LAMBDA,
|
13
|
+
CONF_ON_BOOT,
|
13
14
|
CONF_ON_IDLE,
|
14
15
|
CONF_PAGES,
|
15
16
|
CONF_TIMEOUT,
|
@@ -38,19 +39,18 @@ from .lvcode import LvContext, LvglComponent, lvgl_static
|
|
38
39
|
from .schemas import (
|
39
40
|
DISP_BG_SCHEMA,
|
40
41
|
FLEX_OBJ_SCHEMA,
|
42
|
+
FULL_STYLE_SCHEMA,
|
41
43
|
GRID_CELL_SCHEMA,
|
42
44
|
LAYOUT_SCHEMAS,
|
43
|
-
STYLE_SCHEMA,
|
44
45
|
WIDGET_TYPES,
|
45
46
|
any_widget_schema,
|
46
47
|
container_schema,
|
47
48
|
create_modify_schema,
|
48
|
-
grid_alignments,
|
49
49
|
obj_schema,
|
50
50
|
)
|
51
51
|
from .styles import add_top_layer, styles_to_code, theme_to_code
|
52
52
|
from .touchscreens import touchscreen_schema, touchscreens_to_code
|
53
|
-
from .trigger import generate_triggers
|
53
|
+
from .trigger import add_on_boot_triggers, generate_triggers
|
54
54
|
from .types import (
|
55
55
|
FontEngine,
|
56
56
|
IdleTrigger,
|
@@ -73,6 +73,7 @@ from .widgets.animimg import animimg_spec
|
|
73
73
|
from .widgets.arc import arc_spec
|
74
74
|
from .widgets.button import button_spec
|
75
75
|
from .widgets.buttonmatrix import buttonmatrix_spec
|
76
|
+
from .widgets.canvas import canvas_spec
|
76
77
|
from .widgets.checkbox import checkbox_spec
|
77
78
|
from .widgets.dropdown import dropdown_spec
|
78
79
|
from .widgets.img import img_spec
|
@@ -125,6 +126,7 @@ for w_type in (
|
|
125
126
|
keyboard_spec,
|
126
127
|
tileview_spec,
|
127
128
|
qr_code_spec,
|
129
|
+
canvas_spec,
|
128
130
|
):
|
129
131
|
WIDGET_TYPES[w_type.name] = w_type
|
130
132
|
|
@@ -365,6 +367,7 @@ async def to_code(configs):
|
|
365
367
|
conf[CONF_TRIGGER_ID], lv_component, False
|
366
368
|
)
|
367
369
|
await build_automation(resume_trigger, [], conf)
|
370
|
+
await add_on_boot_triggers(config.get(CONF_ON_BOOT, ()))
|
368
371
|
|
369
372
|
# This must be done after all widgets are created
|
370
373
|
for comp in helpers.lvgl_components_required:
|
@@ -373,6 +376,7 @@ async def to_code(configs):
|
|
373
376
|
add_define("LV_COLOR_SCREEN_TRANSP", "1")
|
374
377
|
for use in helpers.lv_uses:
|
375
378
|
add_define(f"LV_USE_{use.upper()}")
|
379
|
+
cg.add_define(f"USE_LVGL_{use.upper()}")
|
376
380
|
lv_conf_h_file = CORE.relative_src_path(LV_CONF_FILENAME)
|
377
381
|
write_file_if_changed(lv_conf_h_file, generate_lv_conf_h())
|
378
382
|
cg.add_build_flag("-DLV_CONF_H=1")
|
@@ -418,15 +422,8 @@ LVGL_SCHEMA = cv.All(
|
|
418
422
|
"big_endian", "little_endian"
|
419
423
|
),
|
420
424
|
cv.Optional(df.CONF_STYLE_DEFINITIONS): cv.ensure_list(
|
421
|
-
cv.Schema({cv.Required(CONF_ID): cv.declare_id(lv_style_t)})
|
422
|
-
|
423
|
-
.extend(
|
424
|
-
{
|
425
|
-
cv.Optional(df.CONF_GRID_CELL_X_ALIGN): grid_alignments,
|
426
|
-
cv.Optional(df.CONF_GRID_CELL_Y_ALIGN): grid_alignments,
|
427
|
-
cv.Optional(df.CONF_PAD_ROW): lvalid.pixels,
|
428
|
-
cv.Optional(df.CONF_PAD_COLUMN): lvalid.pixels,
|
429
|
-
}
|
425
|
+
cv.Schema({cv.Required(CONF_ID): cv.declare_id(lv_style_t)}).extend(
|
426
|
+
FULL_STYLE_SCHEMA
|
430
427
|
)
|
431
428
|
),
|
432
429
|
cv.Optional(CONF_ON_IDLE): validate_automation(
|