esphome 2025.3.2__py3-none-any.whl → 2025.4.0b1__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.
Files changed (700) hide show
  1. esphome/__main__.py +29 -7
  2. esphome/components/a01nyub/sensor.py +2 -2
  3. esphome/components/a02yyuw/sensor.py +2 -2
  4. esphome/components/a4988/stepper.py +1 -2
  5. esphome/components/absolute_humidity/sensor.py +3 -3
  6. esphome/components/ac_dimmer/output.py +3 -3
  7. esphome/components/adalight/__init__.py +2 -2
  8. esphome/components/adc128s102/__init__.py +1 -1
  9. esphome/components/adc128s102/sensor/__init__.py +3 -3
  10. esphome/components/addressable_light/display.py +5 -5
  11. esphome/components/ade7880/sensor.py +2 -2
  12. esphome/components/ade7953_base/__init__.py +10 -10
  13. esphome/components/ade7953_i2c/sensor.py +1 -2
  14. esphome/components/ade7953_spi/sensor.py +1 -2
  15. esphome/components/ads1115/__init__.py +1 -1
  16. esphome/components/ads1115/sensor/__init__.py +4 -3
  17. esphome/components/ads1118/__init__.py +1 -1
  18. esphome/components/ads1118/sensor/__init__.py +5 -4
  19. esphome/components/ags10/sensor.py +9 -9
  20. esphome/components/aht10/sensor.py +2 -2
  21. esphome/components/airthings_ble/__init__.py +1 -1
  22. esphome/components/airthings_wave_base/__init__.py +2 -3
  23. esphome/components/airthings_wave_mini/sensor.py +2 -5
  24. esphome/components/airthings_wave_plus/sensor.py +8 -9
  25. esphome/components/alpha3/sensor.py +5 -5
  26. esphome/components/am2315c/sensor.py +1 -1
  27. esphome/components/am2320/sensor.py +1 -1
  28. esphome/components/am43/cover/__init__.py +1 -1
  29. esphome/components/am43/sensor/__init__.py +3 -3
  30. esphome/components/analog_threshold/binary_sensor.py +2 -5
  31. esphome/components/anova/climate.py +1 -1
  32. esphome/components/apds9306/sensor.py +1 -1
  33. esphome/components/apds9960/__init__.py +1 -1
  34. esphome/components/apds9960/binary_sensor.py +2 -1
  35. esphome/components/apds9960/sensor.py +3 -2
  36. esphome/components/api/api_frame_helper.cpp +21 -1
  37. esphome/components/as3935/__init__.py +3 -3
  38. esphome/components/as3935/binary_sensor.py +2 -1
  39. esphome/components/as3935/sensor.py +4 -3
  40. esphome/components/as3935_i2c/__init__.py +1 -1
  41. esphome/components/as3935_spi/__init__.py +1 -1
  42. esphome/components/as5600/__init__.py +2 -2
  43. esphome/components/as5600/sensor/__init__.py +10 -9
  44. esphome/components/as7341/sensor.py +1 -2
  45. esphome/components/at581x/__init__.py +4 -8
  46. esphome/components/at581x/switch/__init__.py +2 -4
  47. esphome/components/atc_mithermometer/sensor.py +3 -3
  48. esphome/components/b_parasite/sensor.py +2 -2
  49. esphome/components/ballu/climate.py +1 -1
  50. esphome/components/bang_bang/climate.py +2 -2
  51. esphome/components/bedjet/__init__.py +2 -6
  52. esphome/components/bedjet/climate/__init__.py +3 -6
  53. esphome/components/bedjet/fan/__init__.py +4 -9
  54. esphome/components/bedjet/sensor/__init__.py +3 -6
  55. esphome/components/beken_spi_led_strip/light.py +2 -2
  56. esphome/components/bh1750/sensor.py +2 -6
  57. esphome/components/binary/fan/__init__.py +2 -1
  58. esphome/components/binary/light/__init__.py +3 -2
  59. esphome/components/binary_sensor_map/sensor.py +5 -6
  60. esphome/components/bl0939/sensor.py +1 -1
  61. esphome/components/bl0940/sensor.py +3 -3
  62. esphome/components/ble_client/__init__.py +3 -2
  63. esphome/components/ble_client/sensor/__init__.py +1 -1
  64. esphome/components/ble_client/text_sensor/__init__.py +1 -1
  65. esphome/components/bluetooth_proxy/__init__.py +35 -23
  66. esphome/components/bme280_base/__init__.py +1 -1
  67. esphome/components/bme280_i2c/sensor.py +3 -2
  68. esphome/components/bme280_spi/sensor.py +3 -2
  69. esphome/components/bme680/sensor.py +4 -4
  70. esphome/components/bme680_bsec/__init__.py +1 -1
  71. esphome/components/bme680_bsec/sensor.py +3 -6
  72. esphome/components/bme680_bsec/text_sensor.py +3 -2
  73. esphome/components/bmi160/sensor.py +6 -6
  74. esphome/components/bmp085/sensor.py +1 -1
  75. esphome/components/bmp280_base/__init__.py +1 -1
  76. esphome/components/bmp280_i2c/sensor.py +3 -2
  77. esphome/components/bmp280_spi/sensor.py +3 -2
  78. esphome/components/bmp3xx_base/__init__.py +1 -1
  79. esphome/components/bmp3xx_i2c/sensor.py +2 -1
  80. esphome/components/bmp3xx_spi/sensor.py +2 -1
  81. esphome/components/bmp581/sensor.py +2 -1
  82. esphome/components/bp1658cj/__init__.py +2 -6
  83. esphome/components/bp1658cj/output.py +2 -1
  84. esphome/components/bp5758d/__init__.py +2 -6
  85. esphome/components/bp5758d/output.py +3 -2
  86. esphome/components/canbus/__init__.py +13 -2
  87. esphome/components/canbus/canbus.cpp +7 -1
  88. esphome/components/cap1188/__init__.py +2 -2
  89. esphome/components/cap1188/binary_sensor.py +3 -2
  90. esphome/components/captive_portal/__init__.py +3 -3
  91. esphome/components/ccs811/sensor.py +10 -10
  92. esphome/components/cd74hc4067/__init__.py +2 -5
  93. esphome/components/cd74hc4067/sensor.py +6 -5
  94. esphome/components/climate_ir/__init__.py +2 -2
  95. esphome/components/climate_ir_lg/climate.py +1 -1
  96. esphome/components/color/__init__.py +1 -2
  97. esphome/components/color_temperature/light.py +2 -2
  98. esphome/components/combination/sensor.py +1 -1
  99. esphome/components/coolix/climate.py +1 -1
  100. esphome/components/copy/binary_sensor/__init__.py +1 -1
  101. esphome/components/copy/button/__init__.py +1 -1
  102. esphome/components/copy/cover/__init__.py +1 -1
  103. esphome/components/copy/fan/__init__.py +2 -7
  104. esphome/components/copy/lock/__init__.py +2 -7
  105. esphome/components/copy/number/__init__.py +1 -1
  106. esphome/components/copy/select/__init__.py +2 -7
  107. esphome/components/copy/sensor/__init__.py +2 -2
  108. esphome/components/copy/switch/__init__.py +1 -1
  109. esphome/components/copy/text/__init__.py +2 -7
  110. esphome/components/copy/text_sensor/__init__.py +2 -6
  111. esphome/components/cs5460a/sensor.py +7 -7
  112. esphome/components/cse7761/sensor.py +2 -2
  113. esphome/components/cse7766/sensor.py +1 -1
  114. esphome/components/cst226/touchscreen/__init__.py +3 -4
  115. esphome/components/ct_clamp/sensor.py +1 -1
  116. esphome/components/current_based/cover.py +3 -4
  117. esphome/components/cwww/light.py +3 -3
  118. esphome/components/dac7678/__init__.py +1 -1
  119. esphome/components/dac7678/output.py +2 -1
  120. esphome/components/daikin/climate.py +1 -1
  121. esphome/components/daikin_arc/climate.py +1 -1
  122. esphome/components/daikin_brc/climate.py +1 -1
  123. esphome/components/dallas_temp/sensor.py +1 -1
  124. esphome/components/daly_bms/__init__.py +2 -2
  125. esphome/components/daly_bms/binary_sensor.py +3 -2
  126. esphome/components/daly_bms/sensor.py +14 -13
  127. esphome/components/daly_bms/text_sensor.py +3 -2
  128. esphome/components/dashboard_import/__init__.py +5 -5
  129. esphome/components/debug/sensor.py +7 -6
  130. esphome/components/debug/text_sensor.py +1 -1
  131. esphome/components/deep_sleep/__init__.py +12 -13
  132. esphome/components/delonghi/climate.py +1 -1
  133. esphome/components/demo/__init__.py +1 -1
  134. esphome/components/dfplayer/__init__.py +3 -3
  135. esphome/components/dfrobot_sen0395/__init__.py +3 -3
  136. esphome/components/dfrobot_sen0395/binary_sensor.py +2 -1
  137. esphome/components/dfrobot_sen0395/switch/__init__.py +2 -3
  138. esphome/components/dht/sensor.py +4 -5
  139. esphome/components/dht12/sensor.py +3 -3
  140. esphome/components/display/display.cpp +2 -2
  141. esphome/components/dps310/sensor.py +3 -3
  142. esphome/components/ds1307/time.py +2 -3
  143. esphome/components/dsmr/__init__.py +3 -7
  144. esphome/components/dsmr/sensor.py +5 -4
  145. esphome/components/dsmr/text_sensor.py +3 -2
  146. esphome/components/duty_cycle/sensor.py +3 -8
  147. esphome/components/duty_time/sensor.py +7 -7
  148. esphome/components/e131/__init__.py +3 -3
  149. esphome/components/ee895/sensor.py +5 -5
  150. esphome/components/ektf2232/touchscreen/__init__.py +2 -3
  151. esphome/components/emc2101/__init__.py +1 -1
  152. esphome/components/emc2101/output/__init__.py +3 -2
  153. esphome/components/emc2101/sensor/__init__.py +4 -3
  154. esphome/components/emmeti/climate.py +1 -1
  155. esphome/components/endstop/cover.py +3 -3
  156. esphome/components/ens160_base/__init__.py +1 -1
  157. esphome/components/ens160_i2c/sensor.py +2 -1
  158. esphome/components/ens160_spi/sensor.py +2 -1
  159. esphome/components/ens210/sensor.py +1 -1
  160. esphome/components/esp32/__init__.py +10 -0
  161. esphome/components/esp32_ble_tracker/__init__.py +135 -51
  162. esphome/components/esp32_camera/__init__.py +7 -8
  163. esphome/components/esp32_camera_web_server/__init__.py +2 -2
  164. esphome/components/esp32_can/canbus.py +21 -0
  165. esphome/components/esp32_can/esp32_can.cpp +1 -1
  166. esphome/components/esp32_can/esp32_can.h +4 -0
  167. esphome/components/esp32_dac/output.py +2 -2
  168. esphome/components/esp32_hall/sensor.py +2 -6
  169. esphome/components/esp32_touch/__init__.py +7 -7
  170. esphome/components/esp32_touch/binary_sensor.py +4 -7
  171. esphome/components/esp8266_pwm/output.py +3 -8
  172. esphome/components/ethernet/__init__.py +1 -0
  173. esphome/components/ethernet/ethernet_component.cpp +1 -1
  174. esphome/components/ethernet_info/ethernet_info_text_sensor.h +1 -0
  175. esphome/components/exposure_notifications/__init__.py +2 -2
  176. esphome/components/external_components/__init__.py +1 -1
  177. esphome/components/ezo/sensor.py +2 -2
  178. esphome/components/ezo_pmp/__init__.py +4 -4
  179. esphome/components/ezo_pmp/binary_sensor.py +4 -4
  180. esphome/components/ezo_pmp/sensor.py +4 -5
  181. esphome/components/ezo_pmp/text_sensor.py +2 -6
  182. esphome/components/factory_reset/button/__init__.py +2 -1
  183. esphome/components/factory_reset/switch/__init__.py +3 -2
  184. esphome/components/fastled_base/__init__.py +3 -3
  185. esphome/components/fastled_clockless/light.py +2 -2
  186. esphome/components/fastled_spi/light.py +2 -2
  187. esphome/components/feedback/cover.py +3 -3
  188. esphome/components/fingerprint_grow/__init__.py +5 -6
  189. esphome/components/fingerprint_grow/binary_sensor.py +2 -1
  190. esphome/components/fingerprint_grow/sensor.py +2 -1
  191. esphome/components/fs3000/sensor.py +2 -6
  192. esphome/components/ft5x06/touchscreen/__init__.py +2 -2
  193. esphome/components/ft63x6/touchscreen.py +2 -3
  194. esphome/components/fujitsu_general/climate.py +1 -1
  195. esphome/components/gcja5/sensor.py +4 -4
  196. esphome/components/gdk101/__init__.py +1 -1
  197. esphome/components/gdk101/binary_sensor.py +2 -1
  198. esphome/components/gdk101/sensor.py +5 -4
  199. esphome/components/globals/__init__.py +1 -2
  200. esphome/components/gp2y1010au0f/sensor.py +3 -3
  201. esphome/components/gp8403/__init__.py +1 -2
  202. esphome/components/gp8403/output/__init__.py +3 -4
  203. esphome/components/gpio/binary_sensor/__init__.py +3 -2
  204. esphome/components/gpio/one_wire/__init__.py +3 -2
  205. esphome/components/gpio/output/__init__.py +3 -2
  206. esphome/components/gpio/switch/__init__.py +3 -2
  207. esphome/components/gps/__init__.py +4 -5
  208. esphome/components/gps/time/__init__.py +3 -2
  209. esphome/components/graph/__init__.py +12 -12
  210. esphome/components/grove_tb6612fng/__init__.py +5 -6
  211. esphome/components/growatt_solar/sensor.py +1 -1
  212. esphome/components/gt911/binary_sensor/__init__.py +2 -2
  213. esphome/components/haier/binary_sensor/__init__.py +4 -10
  214. esphome/components/haier/button/__init__.py +3 -6
  215. esphome/components/haier/sensor/__init__.py +4 -6
  216. esphome/components/haier/switch/__init__.py +4 -7
  217. esphome/components/haier/text_sensor/__init__.py +4 -9
  218. esphome/components/havells_solar/sensor.py +1 -1
  219. esphome/components/hbridge/fan/__init__.py +6 -6
  220. esphome/components/hbridge/light/__init__.py +2 -1
  221. esphome/components/hdc1080/sensor.py +1 -1
  222. esphome/components/he60r/cover.py +2 -6
  223. esphome/components/heatpumpir/climate.py +1 -1
  224. esphome/components/hitachi_ac344/climate.py +1 -1
  225. esphome/components/hitachi_ac424/climate.py +1 -1
  226. esphome/components/hlw8012/sensor.py +6 -6
  227. esphome/components/hm3301/sensor.py +3 -3
  228. esphome/components/hmc5883l/sensor.py +4 -4
  229. esphome/components/homeassistant/time/__init__.py +2 -1
  230. esphome/components/honeywell_hih_i2c/sensor.py +3 -3
  231. esphome/components/honeywellabp/sensor.py +1 -2
  232. esphome/components/honeywellabp2_i2c/sensor.py +1 -2
  233. esphome/components/host/time/__init__.py +2 -2
  234. esphome/components/hrxl_maxsonar_wr/sensor.py +1 -1
  235. esphome/components/hte501/sensor.py +3 -3
  236. esphome/components/http_request/ota/__init__.py +5 -9
  237. esphome/components/http_request/update/__init__.py +3 -7
  238. esphome/components/htu21d/sensor.py +6 -6
  239. esphome/components/htu31d/sensor.py +1 -1
  240. esphome/components/hx711/sensor.py +3 -8
  241. esphome/components/hydreon_rgxx/binary_sensor.py +3 -7
  242. esphome/components/hydreon_rgxx/sensor.py +4 -4
  243. esphome/components/hyt271/sensor.py +1 -1
  244. esphome/components/i2c_device/__init__.py +1 -1
  245. esphome/components/i2s_audio/media_player/__init__.py +6 -8
  246. esphome/components/iaqcore/sensor.py +2 -2
  247. esphome/components/ina219/sensor.py +2 -2
  248. esphome/components/ina226/sensor.py +4 -4
  249. esphome/components/ina260/sensor.py +4 -4
  250. esphome/components/ina2xx_base/__init__.py +2 -2
  251. esphome/components/ina2xx_i2c/sensor.py +1 -1
  252. esphome/components/ina2xx_spi/sensor.py +1 -1
  253. esphome/components/ina3221/sensor.py +3 -3
  254. esphome/components/inkbird_ibsth1_mini/sensor.py +2 -2
  255. esphome/components/inkplate6/display.py +2 -2
  256. esphome/components/integration/sensor.py +4 -4
  257. esphome/components/internal_temperature/sensor.py +5 -7
  258. esphome/components/interval/__init__.py +1 -1
  259. esphome/components/jsn_sr04t/sensor.py +3 -3
  260. esphome/components/kamstrup_kmp/sensor.py +1 -1
  261. esphome/components/key_collector/__init__.py +2 -2
  262. esphome/components/kmeteriso/sensor.py +2 -2
  263. esphome/components/kuntze/sensor.py +5 -5
  264. esphome/components/lcd_base/__init__.py +2 -2
  265. esphome/components/lcd_gpio/display.py +4 -4
  266. esphome/components/lcd_menu/__init__.py +3 -7
  267. esphome/components/lcd_pcf8574/display.py +1 -1
  268. esphome/components/ld2410/__init__.py +4 -4
  269. esphome/components/ld2410/binary_sensor.py +5 -4
  270. esphome/components/ld2410/button/__init__.py +3 -2
  271. esphome/components/ld2410/number/__init__.py +5 -4
  272. esphome/components/ld2410/select/__init__.py +4 -3
  273. esphome/components/ld2410/sensor.py +6 -5
  274. esphome/components/ld2410/switch/__init__.py +2 -1
  275. esphome/components/ld2410/text_sensor.py +3 -2
  276. esphome/components/ld2420/__init__.py +1 -1
  277. esphome/components/ld2420/binary_sensor/__init__.py +4 -3
  278. esphome/components/ld2420/button/__init__.py +3 -2
  279. esphome/components/ld2420/number/__init__.py +3 -2
  280. esphome/components/ld2420/select/__init__.py +1 -0
  281. esphome/components/ld2420/sensor/__init__.py +3 -2
  282. esphome/components/ld2420/text_sensor/__init__.py +2 -6
  283. esphome/components/ld2450/__init__.py +2 -5
  284. esphome/components/ledc/output.py +3 -3
  285. esphome/components/libretiny/text_sensor.py +1 -1
  286. esphome/components/libretiny_pwm/output.py +3 -7
  287. esphome/components/lightwaverf/__init__.py +6 -8
  288. esphome/components/lilygo_t5_47/touchscreen/__init__.py +2 -3
  289. esphome/components/ltr390/sensor.py +1 -1
  290. esphome/components/ltr501/sensor.py +2 -2
  291. esphome/components/ltr_als_ps/sensor.py +2 -2
  292. esphome/components/lvgl/__init__.py +9 -12
  293. esphome/components/lvgl/automation.py +1 -1
  294. esphome/components/lvgl/defines.py +5 -2
  295. esphome/components/lvgl/lv_validation.py +17 -9
  296. esphome/components/lvgl/lvcode.py +9 -8
  297. esphome/components/lvgl/lvgl_esphome.h +19 -0
  298. esphome/components/lvgl/schemas.py +67 -18
  299. esphome/components/lvgl/styles.py +42 -11
  300. esphome/components/lvgl/switch/__init__.py +13 -8
  301. esphome/components/lvgl/switch/lvgl_switch.h +5 -16
  302. esphome/components/lvgl/trigger.py +10 -1
  303. esphome/components/lvgl/widgets/__init__.py +1 -2
  304. esphome/components/lvgl/widgets/canvas.py +403 -0
  305. esphome/components/lvgl/widgets/line.py +22 -32
  306. esphome/components/m5stack_8angle/__init__.py +1 -2
  307. esphome/components/m5stack_8angle/binary_sensor/__init__.py +2 -3
  308. esphome/components/m5stack_8angle/light/__init__.py +2 -4
  309. esphome/components/m5stack_8angle/sensor/__init__.py +2 -4
  310. esphome/components/matrix_keypad/binary_sensor/__init__.py +4 -3
  311. esphome/components/max31855/sensor.py +1 -1
  312. esphome/components/max31865/sensor.py +1 -1
  313. esphome/components/max44009/sensor.py +1 -1
  314. esphome/components/max6675/sensor.py +1 -1
  315. esphome/components/max6956/__init__.py +5 -5
  316. esphome/components/max6956/output/__init__.py +4 -3
  317. esphome/components/max7219/display.py +1 -1
  318. esphome/components/max7219digit/display.py +1 -1
  319. esphome/components/max9611/sensor.py +10 -10
  320. esphome/components/mcp23008/__init__.py +1 -1
  321. esphome/components/mcp23016/__init__.py +4 -4
  322. esphome/components/mcp23017/__init__.py +1 -1
  323. esphome/components/mcp23s08/__init__.py +1 -1
  324. esphome/components/mcp23s17/__init__.py +1 -1
  325. esphome/components/mcp23xxx_base/__init__.py +4 -4
  326. esphome/components/mcp2515/canbus.py +2 -2
  327. esphome/components/mcp3008/__init__.py +1 -1
  328. esphome/components/mcp3008/sensor/__init__.py +4 -4
  329. esphome/components/mcp3204/__init__.py +1 -1
  330. esphome/components/mcp3204/sensor/__init__.py +3 -2
  331. esphome/components/mcp4461/__init__.py +42 -0
  332. esphome/components/mcp4461/mcp4461.cpp +618 -0
  333. esphome/components/mcp4461/mcp4461.h +171 -0
  334. esphome/components/mcp4461/output/__init__.py +60 -0
  335. esphome/components/mcp4461/output/mcp4461_output.cpp +73 -0
  336. esphome/components/mcp4461/output/mcp4461_output.h +49 -0
  337. esphome/components/mcp4725/output.py +2 -2
  338. esphome/components/mcp4728/__init__.py +1 -1
  339. esphome/components/mcp4728/output/__init__.py +4 -3
  340. esphome/components/mcp47a1/output.py +2 -2
  341. esphome/components/mcp9808/sensor.py +1 -1
  342. esphome/components/mdns/__init__.py +1 -1
  343. esphome/components/mhz19/sensor.py +4 -4
  344. esphome/components/micronova/__init__.py +3 -5
  345. esphome/components/micronova/button/__init__.py +5 -5
  346. esphome/components/micronova/number/__init__.py +6 -10
  347. esphome/components/micronova/sensor/__init__.py +6 -6
  348. esphome/components/micronova/switch/__init__.py +6 -8
  349. esphome/components/micronova/text_sensor/__init__.py +5 -5
  350. esphome/components/microphone/__init__.py +2 -4
  351. esphome/components/midea/climate.py +6 -10
  352. esphome/components/midea_ir/climate.py +1 -1
  353. esphome/components/mitsubishi/climate.py +1 -1
  354. esphome/components/mlx90614/sensor.py +1 -1
  355. esphome/components/mmc5603/sensor.py +4 -4
  356. esphome/components/mmc5983/sensor.py +1 -1
  357. esphome/components/modbus/__init__.py +5 -9
  358. esphome/components/modbus_controller/__init__.py +1 -1
  359. esphome/components/monochromatic/light.py +2 -2
  360. esphome/components/mopeka_ble/__init__.py +1 -1
  361. esphome/components/mopeka_pro_check/sensor.py +12 -12
  362. esphome/components/mopeka_std_check/sensor.py +8 -8
  363. esphome/components/mpl3115a2/sensor.py +1 -1
  364. esphome/components/mpr121/__init__.py +3 -3
  365. esphome/components/mpr121/binary_sensor/__init__.py +5 -4
  366. esphome/components/mpu6050/sensor.py +4 -4
  367. esphome/components/mpu6886/sensor.py +4 -4
  368. esphome/components/mqtt_subscribe/sensor/__init__.py +3 -5
  369. esphome/components/mqtt_subscribe/text_sensor/__init__.py +1 -1
  370. esphome/components/ms5611/sensor.py +2 -2
  371. esphome/components/ms8607/sensor.py +1 -1
  372. esphome/components/my9231/__init__.py +1 -1
  373. esphome/components/my9231/output.py +2 -1
  374. esphome/components/nau7802/nau7802.cpp +0 -4
  375. esphome/components/nau7802/nau7802.h +0 -2
  376. esphome/components/neopixelbus/_methods.py +11 -9
  377. esphome/components/neopixelbus/light.py +11 -18
  378. esphome/components/nextion/binary_sensor/__init__.py +6 -14
  379. esphome/components/nextion/sensor/__init__.py +7 -10
  380. esphome/components/nextion/switch/__init__.py +3 -5
  381. esphome/components/nextion/text_sensor/__init__.py +3 -7
  382. esphome/components/noblex/climate.py +1 -1
  383. esphome/components/ntc/sensor.py +1 -1
  384. esphome/components/opentherm/__init__.py +6 -6
  385. esphome/components/opentherm/input.py +2 -1
  386. esphome/components/opentherm/number/__init__.py +5 -4
  387. esphome/components/opentherm/output/__init__.py +3 -2
  388. esphome/components/opentherm/schema.py +7 -7
  389. esphome/components/opentherm/switch/__init__.py +3 -2
  390. esphome/components/opentherm/validate.py +1 -1
  391. esphome/components/output/__init__.py +2 -3
  392. esphome/components/output/button/__init__.py +3 -2
  393. esphome/components/output/lock/__init__.py +2 -1
  394. esphome/components/output/switch/__init__.py +2 -1
  395. esphome/components/partition/light.py +4 -4
  396. esphome/components/pca6416a/__init__.py +4 -4
  397. esphome/components/pca9554/__init__.py +4 -4
  398. esphome/components/pca9685/__init__.py +2 -2
  399. esphome/components/pca9685/output.py +2 -1
  400. esphome/components/pcf85063/time.py +2 -3
  401. esphome/components/pcf8563/time.py +2 -2
  402. esphome/components/pcf8574/__init__.py +4 -4
  403. esphome/components/pid/climate.py +2 -2
  404. esphome/components/pid/sensor/__init__.py +4 -8
  405. esphome/components/pipsolar/__init__.py +1 -1
  406. esphome/components/pipsolar/binary_sensor/__init__.py +2 -2
  407. esphome/components/pipsolar/output/__init__.py +4 -3
  408. esphome/components/pipsolar/sensor/__init__.py +5 -4
  409. esphome/components/pipsolar/switch/__init__.py +2 -1
  410. esphome/components/pipsolar/text_sensor/__init__.py +2 -1
  411. esphome/components/pm1006/sensor.py +2 -2
  412. esphome/components/pmsa003i/sensor.py +4 -4
  413. esphome/components/pmsx003/sensor.py +10 -11
  414. esphome/components/pmwcs3/sensor.py +5 -5
  415. esphome/components/pn532/__init__.py +3 -3
  416. esphome/components/pn532_i2c/__init__.py +1 -1
  417. esphome/components/pn532_spi/__init__.py +1 -1
  418. esphome/components/pn7150/__init__.py +2 -2
  419. esphome/components/pn7150_i2c/__init__.py +1 -1
  420. esphome/components/pn7160/__init__.py +2 -2
  421. esphome/components/pn7160_i2c/__init__.py +1 -1
  422. esphome/components/pn7160_spi/__init__.py +1 -1
  423. esphome/components/power_supply/__init__.py +1 -1
  424. esphome/components/prometheus/__init__.py +3 -8
  425. esphome/components/psram/__init__.py +75 -11
  426. esphome/components/psram/psram.cpp +18 -7
  427. esphome/components/pulse_counter/sensor.py +4 -4
  428. esphome/components/pulse_meter/sensor.py +3 -3
  429. esphome/components/pulse_width/sensor.py +3 -8
  430. esphome/components/pvvx_mithermometer/display/__init__.py +1 -1
  431. esphome/components/pvvx_mithermometer/sensor.py +3 -3
  432. esphome/components/pylontech/__init__.py +1 -0
  433. esphome/components/pylontech/sensor/__init__.py +8 -13
  434. esphome/components/pylontech/text_sensor/__init__.py +2 -7
  435. esphome/components/pzem004t/sensor.py +3 -3
  436. esphome/components/pzemac/sensor.py +9 -9
  437. esphome/components/pzemdc/sensor.py +6 -6
  438. esphome/components/qmc5883l/sensor.py +5 -5
  439. esphome/components/qmp6988/sensor.py +3 -3
  440. esphome/components/qr_code/__init__.py +1 -1
  441. esphome/components/qspi_dbi/display.py +1 -1
  442. esphome/components/qspi_dbi/qspi_dbi.cpp +1 -1
  443. esphome/components/qspi_dbi/qspi_dbi.h +1 -1
  444. esphome/components/qwiic_pir/binary_sensor.py +2 -5
  445. esphome/components/radon_eye_ble/__init__.py +1 -1
  446. esphome/components/radon_eye_rd200/sensor.py +3 -4
  447. esphome/components/rc522/__init__.py +3 -3
  448. esphome/components/rc522_i2c/__init__.py +1 -1
  449. esphome/components/rc522_spi/__init__.py +1 -1
  450. esphome/components/rdm6300/__init__.py +2 -2
  451. esphome/components/rdm6300/binary_sensor.py +2 -1
  452. esphome/components/resistance/sensor.py +2 -2
  453. esphome/components/restart/button/__init__.py +1 -1
  454. esphome/components/restart/switch/__init__.py +2 -5
  455. esphome/components/rf_bridge/__init__.py +3 -3
  456. esphome/components/rgb/light.py +2 -2
  457. esphome/components/rgbct/light.py +3 -3
  458. esphome/components/rgbw/light.py +2 -2
  459. esphome/components/rgbww/light.py +4 -4
  460. esphome/components/rotary_encoder/sensor.py +8 -8
  461. esphome/components/rp2040_pio/__init__.py +0 -1
  462. esphome/components/rp2040_pio_led_strip/light.py +2 -4
  463. esphome/components/rp2040_pwm/output.py +3 -7
  464. esphome/components/rtttl/__init__.py +6 -6
  465. esphome/components/ruuvi_ble/__init__.py +1 -1
  466. esphome/components/ruuvitag/sensor.py +15 -15
  467. esphome/components/safe_mode/__init__.py +2 -3
  468. esphome/components/safe_mode/button/__init__.py +3 -2
  469. esphome/components/safe_mode/switch/__init__.py +4 -7
  470. esphome/components/scd30/sensor.py +5 -6
  471. esphome/components/scd4x/sensor.py +6 -8
  472. esphome/components/script/__init__.py +2 -2
  473. esphome/components/sdl/display.py +3 -3
  474. esphome/components/sdl/touchscreen/__init__.py +2 -2
  475. esphome/components/sdm_meter/sensor.py +3 -3
  476. esphome/components/sdp3x/sensor.py +1 -2
  477. esphome/components/sds011/sensor.py +4 -4
  478. esphome/components/seeed_mr24hpc1/__init__.py +1 -1
  479. esphome/components/seeed_mr24hpc1/binary_sensor.py +2 -5
  480. esphome/components/seeed_mr24hpc1/button/__init__.py +1 -0
  481. esphome/components/seeed_mr24hpc1/number/__init__.py +2 -4
  482. esphome/components/seeed_mr24hpc1/select/__init__.py +2 -3
  483. esphome/components/seeed_mr24hpc1/sensor.py +1 -0
  484. esphome/components/seeed_mr24hpc1/switch/__init__.py +2 -4
  485. esphome/components/seeed_mr24hpc1/text_sensor.py +1 -0
  486. esphome/components/seeed_mr60bha2/binary_sensor.py +2 -4
  487. esphome/components/seeed_mr60bha2/sensor.py +1 -1
  488. esphome/components/seeed_mr60fda2/button/__init__.py +1 -1
  489. esphome/components/seeed_mr60fda2/select/__init__.py +0 -1
  490. esphome/components/selec_meter/sensor.py +1 -1
  491. esphome/components/sen0321/sensor.py +2 -2
  492. esphome/components/sen21231/sensor.py +1 -1
  493. esphome/components/senseair/sensor.py +3 -3
  494. esphome/components/sensirion_common/__init__.py +0 -2
  495. esphome/components/servo/__init__.py +3 -3
  496. esphome/components/sfa30/sensor.py +4 -5
  497. esphome/components/sgp4x/sensor.py +2 -2
  498. esphome/components/shelly_dimmer/light.py +16 -16
  499. esphome/components/sht3xd/sensor.py +1 -1
  500. esphome/components/sht4x/sensor.py +6 -6
  501. esphome/components/shtcx/sensor.py +1 -1
  502. esphome/components/shutdown/button/__init__.py +2 -6
  503. esphome/components/shutdown/switch/__init__.py +2 -5
  504. esphome/components/sigma_delta_output/output.py +2 -7
  505. esphome/components/sim800l/__init__.py +3 -7
  506. esphome/components/sim800l/binary_sensor.py +3 -5
  507. esphome/components/sim800l/sensor.py +2 -1
  508. esphome/components/slow_pwm/output.py +4 -5
  509. esphome/components/sm10bit_base/__init__.py +2 -6
  510. esphome/components/sm16716/__init__.py +1 -1
  511. esphome/components/sm16716/output.py +2 -1
  512. esphome/components/sm2135/__init__.py +2 -6
  513. esphome/components/sm2135/output.py +2 -1
  514. esphome/components/sm2235/__init__.py +1 -1
  515. esphome/components/sm2235/output.py +2 -1
  516. esphome/components/sm2335/__init__.py +1 -1
  517. esphome/components/sm2335/output.py +2 -1
  518. esphome/components/sm300d2/sensor.py +13 -13
  519. esphome/components/sml/__init__.py +1 -1
  520. esphome/components/sml/sensor/__init__.py +1 -1
  521. esphome/components/sml/text_sensor/__init__.py +1 -1
  522. esphome/components/smt100/sensor.py +5 -6
  523. esphome/components/sn74hc165/__init__.py +5 -5
  524. esphome/components/sn74hc595/__init__.py +5 -5
  525. esphome/components/socket/__init__.py +1 -1
  526. esphome/components/sonoff_d1/light.py +2 -6
  527. esphome/components/speaker/media_player/speaker_media_player.cpp +47 -12
  528. esphome/components/speed/fan/__init__.py +2 -2
  529. esphome/components/spi/__init__.py +45 -36
  530. esphome/components/spi/spi.h +1 -0
  531. esphome/components/spi/spi_esp_idf.cpp +13 -5
  532. esphome/components/sprinkler/__init__.py +4 -5
  533. esphome/components/sps30/sensor.py +8 -8
  534. esphome/components/ssd1306_i2c/display.py +2 -2
  535. esphome/components/ssd1322_base/__init__.py +2 -2
  536. esphome/components/ssd1325_base/__init__.py +2 -2
  537. esphome/components/ssd1327_base/__init__.py +2 -2
  538. esphome/components/ssd1327_i2c/display.py +1 -1
  539. esphome/components/ssd1331_base/__init__.py +2 -2
  540. esphome/components/ssd1351_base/__init__.py +2 -2
  541. esphome/components/st7567_base/__init__.py +4 -4
  542. esphome/components/st7567_i2c/display.py +1 -1
  543. esphome/components/st7920/display.py +2 -2
  544. esphome/components/statsd/__init__.py +3 -3
  545. esphome/components/status/binary_sensor.py +2 -5
  546. esphome/components/status_led/__init__.py +1 -1
  547. esphome/components/status_led/light/__init__.py +2 -1
  548. esphome/components/stepper/__init__.py +2 -2
  549. esphome/components/sts3x/sensor.py +1 -1
  550. esphome/components/substitutions/__init__.py +2 -2
  551. esphome/components/sun/__init__.py +4 -4
  552. esphome/components/sun/sensor/__init__.py +4 -7
  553. esphome/components/sun/text_sensor/__init__.py +5 -4
  554. esphome/components/sun_gtil2/__init__.py +1 -1
  555. esphome/components/sun_gtil2/sensor.py +7 -6
  556. esphome/components/sun_gtil2/text_sensor.py +3 -2
  557. esphome/components/sx1509/__init__.py +5 -5
  558. esphome/components/sx1509/binary_sensor/__init__.py +3 -3
  559. esphome/components/sx1509/output/__init__.py +4 -3
  560. esphome/components/t6615/sensor.py +1 -1
  561. esphome/components/tca9548a/__init__.py +1 -1
  562. esphome/components/tcl112/climate.py +1 -1
  563. esphome/components/tcs34725/sensor.py +4 -4
  564. esphome/components/tee501/sensor.py +1 -1
  565. esphome/components/teleinfo/__init__.py +1 -1
  566. esphome/components/teleinfo/sensor/__init__.py +1 -7
  567. esphome/components/teleinfo/text_sensor/__init__.py +1 -1
  568. esphome/components/tem3200/sensor.py +1 -2
  569. esphome/components/template/alarm_control_panel/__init__.py +3 -10
  570. esphome/components/template/cover/__init__.py +4 -3
  571. esphome/components/template/datetime/__init__.py +8 -9
  572. esphome/components/template/event/__init__.py +2 -5
  573. esphome/components/template/fan/__init__.py +2 -6
  574. esphome/components/template/lock/__init__.py +3 -2
  575. esphome/components/template/number/__init__.py +3 -2
  576. esphome/components/template/output/__init__.py +4 -3
  577. esphome/components/template/select/__init__.py +3 -2
  578. esphome/components/template/sensor/__init__.py +4 -7
  579. esphome/components/template/switch/__init__.py +3 -2
  580. esphome/components/template/text/__init__.py +4 -3
  581. esphome/components/template/text_sensor/__init__.py +3 -2
  582. esphome/components/template/valve/__init__.py +3 -2
  583. esphome/components/time/real_time_clock.cpp +0 -4
  584. esphome/components/time/real_time_clock.h +4 -3
  585. esphome/components/time_based/cover.py +3 -3
  586. esphome/components/tlc59208f/__init__.py +1 -1
  587. esphome/components/tlc59208f/output.py +2 -1
  588. esphome/components/tlc5947/__init__.py +1 -1
  589. esphome/components/tlc5947/output/__init__.py +2 -1
  590. esphome/components/tlc5971/__init__.py +2 -8
  591. esphome/components/tlc5971/output/__init__.py +2 -1
  592. esphome/components/tm1621/display.py +3 -3
  593. esphome/components/tm1637/binary_sensor.py +1 -1
  594. esphome/components/tm1637/display.py +3 -3
  595. esphome/components/tm1651/__init__.py +4 -4
  596. esphome/components/tmp102/sensor.py +1 -1
  597. esphome/components/tmp1075/sensor.py +2 -2
  598. esphome/components/tmp117/sensor.py +1 -1
  599. esphome/components/tof10120/sensor.py +2 -2
  600. esphome/components/tormatic/cover.py +2 -6
  601. esphome/components/toshiba/climate.py +1 -1
  602. esphome/components/total_daily_energy/sensor.py +4 -4
  603. esphome/components/tsl2561/sensor.py +1 -1
  604. esphome/components/tsl2591/sensor.py +9 -9
  605. esphome/components/tt21100/binary_sensor/__init__.py +2 -2
  606. esphome/components/tt21100/touchscreen/__init__.py +2 -3
  607. esphome/components/ttp229_bsf/__init__.py +2 -2
  608. esphome/components/ttp229_bsf/binary_sensor.py +3 -2
  609. esphome/components/ttp229_lsf/__init__.py +1 -1
  610. esphome/components/ttp229_lsf/binary_sensor.py +3 -2
  611. esphome/components/tuya/__init__.py +3 -5
  612. esphome/components/tuya/binary_sensor/__init__.py +2 -2
  613. esphome/components/tuya/climate/__init__.py +6 -5
  614. esphome/components/tuya/cover/__init__.py +5 -4
  615. esphome/components/tuya/fan/__init__.py +3 -2
  616. esphome/components/tuya/light/__init__.py +9 -8
  617. esphome/components/tuya/number/__init__.py +6 -5
  618. esphome/components/tuya/select/__init__.py +4 -3
  619. esphome/components/tuya/sensor/__init__.py +3 -2
  620. esphome/components/tuya/switch/__init__.py +3 -2
  621. esphome/components/tuya/text_sensor/__init__.py +3 -2
  622. esphome/components/tx20/sensor.py +6 -6
  623. esphome/components/uart/__init__.py +20 -19
  624. esphome/components/uart/button/__init__.py +2 -1
  625. esphome/components/uart/switch/__init__.py +2 -1
  626. esphome/components/ufire_ise/sensor.py +2 -2
  627. esphome/components/uln2003/stepper.py +2 -2
  628. esphome/components/ultrasonic/sensor.py +4 -4
  629. esphome/components/uponor_smatrix/__init__.py +2 -6
  630. esphome/components/uponor_smatrix/climate/__init__.py +3 -3
  631. esphome/components/vbus/__init__.py +1 -1
  632. esphome/components/vbus/binary_sensor/__init__.py +7 -6
  633. esphome/components/vbus/sensor/__init__.py +7 -6
  634. esphome/components/veml3235/sensor.py +1 -1
  635. esphome/components/veml7700/sensor.py +1 -1
  636. esphome/components/version/text_sensor.py +2 -6
  637. esphome/components/vl53l0x/sensor.py +6 -6
  638. esphome/components/web_server_base/__init__.py +2 -2
  639. esphome/components/web_server_idf/__init__.py +1 -1
  640. esphome/components/weikai/__init__.py +1 -1
  641. esphome/components/whirlpool/climate.py +1 -1
  642. esphome/components/whynter/climate.py +1 -1
  643. esphome/components/wireguard/binary_sensor.py +1 -1
  644. esphome/components/wireguard/sensor.py +2 -5
  645. esphome/components/wireguard/text_sensor.py +2 -5
  646. esphome/components/wk2132_i2c/__init__.py +1 -1
  647. esphome/components/wk2132_spi/__init__.py +1 -2
  648. esphome/components/wk2168_i2c/__init__.py +3 -8
  649. esphome/components/wk2168_spi/__init__.py +3 -8
  650. esphome/components/wk2204_i2c/__init__.py +1 -1
  651. esphome/components/wk2204_spi/__init__.py +1 -1
  652. esphome/components/wk2212_i2c/__init__.py +3 -8
  653. esphome/components/wk2212_spi/__init__.py +3 -8
  654. esphome/components/wl_134/text_sensor.py +2 -4
  655. esphome/components/wled/__init__.py +2 -2
  656. esphome/components/x9c/output.py +4 -4
  657. esphome/components/xgzp68xx/sensor.py +5 -5
  658. esphome/components/xiaomi_ble/__init__.py +1 -1
  659. esphome/components/xiaomi_cgd1/sensor.py +3 -3
  660. esphome/components/xiaomi_cgdk2/sensor.py +3 -3
  661. esphome/components/xiaomi_cgg1/sensor.py +2 -2
  662. esphome/components/xiaomi_cgpr1/binary_sensor.py +6 -6
  663. esphome/components/xiaomi_gcls002/sensor.py +7 -7
  664. esphome/components/xiaomi_hhccjcy01/sensor.py +9 -9
  665. esphome/components/xiaomi_hhccjcy10/sensor.py +9 -9
  666. esphome/components/xiaomi_hhccpot002/sensor.py +7 -7
  667. esphome/components/xiaomi_jqjcy01ym/sensor.py +6 -6
  668. esphome/components/xiaomi_lywsd02/sensor.py +4 -4
  669. esphome/components/xiaomi_lywsd02mmc/sensor.py +5 -5
  670. esphome/components/xiaomi_lywsd03mmc/sensor.py +6 -6
  671. esphome/components/xiaomi_lywsdcgq/sensor.py +5 -5
  672. esphome/components/xiaomi_mhoc303/sensor.py +4 -4
  673. esphome/components/xiaomi_mhoc401/sensor.py +6 -6
  674. esphome/components/xiaomi_miscale/sensor.py +6 -6
  675. esphome/components/xiaomi_mjyd02yla/binary_sensor.py +8 -8
  676. esphome/components/xiaomi_mue4094rt/binary_sensor.py +2 -7
  677. esphome/components/xiaomi_rtcgq02lm/__init__.py +2 -3
  678. esphome/components/xiaomi_rtcgq02lm/binary_sensor.py +3 -3
  679. esphome/components/xiaomi_rtcgq02lm/sensor.py +3 -3
  680. esphome/components/xiaomi_wx08zm/binary_sensor.py +2 -3
  681. esphome/components/xl9535/__init__.py +2 -2
  682. esphome/components/yashima/climate.py +1 -1
  683. esphome/components/zhlt01/climate.py +1 -1
  684. esphome/components/zio_ultrasonic/sensor.py +2 -5
  685. esphome/components/zyaura/sensor.py +7 -7
  686. esphome/const.py +3 -1
  687. esphome/core/component.cpp +3 -1
  688. esphome/core/component.h +15 -2
  689. esphome/core/config.py +4 -0
  690. esphome/core/defines.h +21 -0
  691. esphome/core/helpers.cpp +6 -7
  692. esphome/core/scheduler.cpp +34 -67
  693. esphome/core/scheduler.h +7 -17
  694. esphome/dashboard/status/mqtt.py +0 -2
  695. {esphome-2025.3.2.dist-info → esphome-2025.4.0b1.dist-info}/METADATA +45 -44
  696. {esphome-2025.3.2.dist-info → esphome-2025.4.0b1.dist-info}/RECORD +700 -693
  697. {esphome-2025.3.2.dist-info → esphome-2025.4.0b1.dist-info}/WHEEL +1 -1
  698. {esphome-2025.3.2.dist-info → esphome-2025.4.0b1.dist-info}/entry_points.txt +0 -0
  699. {esphome-2025.3.2.dist-info → esphome-2025.4.0b1.dist-info/licenses}/LICENSE +0 -0
  700. {esphome-2025.3.2.dist-info → esphome-2025.4.0b1.dist-info}/top_level.txt +0 -0
@@ -1,17 +1,17 @@
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 sensor
4
+ import esphome.config_validation as cv
5
5
  from esphome.const import (
6
6
  CONF_CHANGE_MODE_EVERY,
7
- CONF_INITIAL_MODE,
8
7
  CONF_CURRENT,
9
8
  CONF_CURRENT_RESISTOR,
9
+ CONF_ENERGY,
10
10
  CONF_ID,
11
+ CONF_INITIAL_MODE,
12
+ CONF_MODEL,
11
13
  CONF_POWER,
12
- CONF_ENERGY,
13
14
  CONF_SEL_PIN,
14
- CONF_MODEL,
15
15
  CONF_VOLTAGE,
16
16
  CONF_VOLTAGE_DIVIDER,
17
17
  DEVICE_CLASS_CURRENT,
@@ -20,8 +20,8 @@ from esphome.const import (
20
20
  DEVICE_CLASS_VOLTAGE,
21
21
  STATE_CLASS_MEASUREMENT,
22
22
  STATE_CLASS_TOTAL_INCREASING,
23
- UNIT_VOLT,
24
23
  UNIT_AMPERE,
24
+ UNIT_VOLT,
25
25
  UNIT_WATT,
26
26
  UNIT_WATT_HOURS,
27
27
  )
@@ -1,18 +1,18 @@
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
+ CONF_PM_1_0,
6
7
  CONF_PM_2_5,
7
8
  CONF_PM_10_0,
8
- CONF_PM_1_0,
9
9
  DEVICE_CLASS_AQI,
10
10
  DEVICE_CLASS_PM1,
11
11
  DEVICE_CLASS_PM10,
12
12
  DEVICE_CLASS_PM25,
13
+ ICON_CHEMICAL_WEAPON,
13
14
  STATE_CLASS_MEASUREMENT,
14
15
  UNIT_MICROGRAMS_PER_CUBIC_METER,
15
- ICON_CHEMICAL_WEAPON,
16
16
  )
17
17
 
18
18
  DEPENDENCIES = ["i2c"]
@@ -1,6 +1,6 @@
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_ADDRESS,
6
6
  CONF_FIELD_STRENGTH_X,
@@ -10,12 +10,12 @@ from esphome.const import (
10
10
  CONF_ID,
11
11
  CONF_OVERSAMPLING,
12
12
  CONF_RANGE,
13
+ CONF_UPDATE_INTERVAL,
13
14
  ICON_MAGNET,
15
+ ICON_SCREEN_ROTATION,
14
16
  STATE_CLASS_MEASUREMENT,
15
- UNIT_MICROTESLA,
16
17
  UNIT_DEGREES,
17
- ICON_SCREEN_ROTATION,
18
- CONF_UPDATE_INTERVAL,
18
+ UNIT_MICROTESLA,
19
19
  )
20
20
 
21
21
  DEPENDENCIES = ["i2c"]
@@ -1,7 +1,8 @@
1
+ import esphome.codegen as cg
1
2
  from esphome.components import time as time_
2
3
  import esphome.config_validation as cv
3
- import esphome.codegen as cg
4
4
  from esphome.const import CONF_ID
5
+
5
6
  from .. import homeassistant_ns
6
7
 
7
8
  DEPENDENCIES = ["api"]
@@ -1,15 +1,15 @@
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_HUMIDITY,
6
6
  CONF_ID,
7
7
  CONF_TEMPERATURE,
8
+ DEVICE_CLASS_HUMIDITY,
9
+ DEVICE_CLASS_TEMPERATURE,
8
10
  STATE_CLASS_MEASUREMENT,
9
11
  UNIT_CELSIUS,
10
12
  UNIT_PERCENT,
11
- DEVICE_CLASS_TEMPERATURE,
12
- DEVICE_CLASS_HUMIDITY,
13
13
  )
14
14
 
15
15
  DEPENDENCIES = ["i2c"]
@@ -1,7 +1,6 @@
1
1
  import esphome.codegen as cg
2
+ from esphome.components import sensor, spi
2
3
  import esphome.config_validation as cv
3
- from esphome.components import sensor
4
- from esphome.components import spi
5
4
  from esphome.const import (
6
5
  CONF_ID,
7
6
  CONF_PRESSURE,
@@ -1,7 +1,6 @@
1
1
  import esphome.codegen as cg
2
+ from esphome.components import i2c, sensor
2
3
  import esphome.config_validation as cv
3
- from esphome.components import sensor
4
- from esphome.components import i2c
5
4
  from esphome.const import (
6
5
  CONF_ID,
7
6
  CONF_PRESSURE,
@@ -1,7 +1,7 @@
1
1
  import esphome.codegen as cg
2
- from esphome.const import CONF_ID
3
- import esphome.config_validation as cv
4
2
  from esphome.components import time as time_
3
+ import esphome.config_validation as cv
4
+ from esphome.const import CONF_ID
5
5
 
6
6
  CODEOWNERS = ["@clydebarrow"]
7
7
 
@@ -1,9 +1,9 @@
1
1
  import esphome.codegen as cg
2
2
  from esphome.components import sensor, uart
3
3
  from esphome.const import (
4
+ ICON_ARROW_EXPAND_VERTICAL,
4
5
  STATE_CLASS_MEASUREMENT,
5
6
  UNIT_METER,
6
- ICON_ARROW_EXPAND_VERTICAL,
7
7
  )
8
8
 
9
9
  CODEOWNERS = ["@netmikey"]
@@ -1,12 +1,12 @@
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
- CONF_ID,
6
5
  CONF_HUMIDITY,
6
+ CONF_ID,
7
7
  CONF_TEMPERATURE,
8
- DEVICE_CLASS_TEMPERATURE,
9
8
  DEVICE_CLASS_HUMIDITY,
9
+ DEVICE_CLASS_TEMPERATURE,
10
10
  STATE_CLASS_MEASUREMENT,
11
11
  UNIT_CELSIUS,
12
12
  UNIT_PERCENT,
@@ -1,15 +1,11 @@
1
+ from esphome import automation
1
2
  import esphome.codegen as cg
3
+ from esphome.components.ota import BASE_OTA_SCHEMA, OTAComponent, ota_to_code
2
4
  import esphome.config_validation as cv
3
- from esphome import automation
4
- from esphome.const import (
5
- CONF_ID,
6
- CONF_PASSWORD,
7
- CONF_URL,
8
- CONF_USERNAME,
9
- )
10
- from esphome.components.ota import BASE_OTA_SCHEMA, ota_to_code, OTAComponent
5
+ from esphome.const import CONF_ID, CONF_PASSWORD, CONF_URL, CONF_USERNAME
11
6
  from esphome.core import coroutine_with_priority
12
- from .. import CONF_HTTP_REQUEST_ID, http_request_ns, HttpRequestComponent
7
+
8
+ from .. import CONF_HTTP_REQUEST_ID, HttpRequestComponent, http_request_ns
13
9
 
14
10
  CODEOWNERS = ["@oarcher"]
15
11
 
@@ -1,15 +1,11 @@
1
- import esphome.config_validation as cv
2
1
  import esphome.codegen as cg
3
-
4
2
  from esphome.components import update
5
- from esphome.const import (
6
- CONF_SOURCE,
7
- )
3
+ import esphome.config_validation as cv
4
+ from esphome.const import CONF_SOURCE
8
5
 
9
- from .. import http_request_ns, CONF_HTTP_REQUEST_ID, HttpRequestComponent
6
+ from .. import CONF_HTTP_REQUEST_ID, HttpRequestComponent, http_request_ns
10
7
  from ..ota import OtaHttpRequestComponent
11
8
 
12
-
13
9
  AUTO_LOAD = ["json"]
14
10
  CODEOWNERS = ["@jesserockz"]
15
11
  DEPENDENCIES = ["ota.http_request"]
@@ -1,21 +1,21 @@
1
+ from esphome import automation
1
2
  import esphome.codegen as cg
2
- import esphome.config_validation as cv
3
3
  from esphome.components import i2c, sensor
4
- from esphome import automation
4
+ import esphome.config_validation as cv
5
5
  from esphome.const import (
6
+ CONF_HEATER,
6
7
  CONF_HUMIDITY,
7
8
  CONF_ID,
9
+ CONF_LEVEL,
8
10
  CONF_MODEL,
11
+ CONF_STATUS,
9
12
  CONF_TEMPERATURE,
10
13
  DEVICE_CLASS_HUMIDITY,
11
14
  DEVICE_CLASS_TEMPERATURE,
12
15
  STATE_CLASS_MEASUREMENT,
13
16
  UNIT_CELSIUS,
14
- UNIT_PERCENT,
15
- CONF_HEATER,
16
17
  UNIT_EMPTY,
17
- CONF_LEVEL,
18
- CONF_STATUS,
18
+ UNIT_PERCENT,
19
19
  )
20
20
 
21
21
  DEPENDENCIES = ["i2c"]
@@ -1,6 +1,6 @@
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_HUMIDITY,
6
6
  CONF_ID,
@@ -1,13 +1,8 @@
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 sensor
5
- from esphome.const import (
6
- CONF_CLK_PIN,
7
- CONF_GAIN,
8
- ICON_SCALE,
9
- STATE_CLASS_MEASUREMENT,
10
- )
4
+ import esphome.config_validation as cv
5
+ from esphome.const import CONF_CLK_PIN, CONF_GAIN, ICON_SCALE, STATE_CLASS_MEASUREMENT
11
6
 
12
7
  hx711_ns = cg.esphome_ns.namespace("hx711")
13
8
  HX711Sensor = hx711_ns.class_("HX711Sensor", sensor.Sensor, cg.PollingComponent)
@@ -1,13 +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
- from esphome.const import (
5
- CONF_ID,
6
- DEVICE_CLASS_COLD,
7
- DEVICE_CLASS_PROBLEM,
8
- )
3
+ import esphome.config_validation as cv
4
+ from esphome.const import CONF_ID, DEVICE_CLASS_COLD, DEVICE_CLASS_PROBLEM
9
5
 
10
- from . import hydreon_rgxx_ns, HydreonRGxxComponent
6
+ from . import HydreonRGxxComponent, hydreon_rgxx_ns
11
7
 
12
8
  CONF_HYDREON_RGXX_ID = "hydreon_rgxx_id"
13
9
  CONF_TOO_COLD = "too_cold"
@@ -1,22 +1,22 @@
1
1
  import esphome.codegen as cg
2
+ from esphome.components import sensor, uart
2
3
  import esphome.config_validation as cv
3
- from esphome.components import uart, sensor
4
4
  from esphome.const import (
5
5
  CONF_ID,
6
6
  CONF_MODEL,
7
7
  CONF_MOISTURE,
8
8
  CONF_RESOLUTION,
9
9
  CONF_TEMPERATURE,
10
- DEVICE_CLASS_PRECIPITATION_INTENSITY,
11
10
  DEVICE_CLASS_PRECIPITATION,
11
+ DEVICE_CLASS_PRECIPITATION_INTENSITY,
12
+ ICON_THERMOMETER,
12
13
  STATE_CLASS_MEASUREMENT,
13
14
  STATE_CLASS_TOTAL_INCREASING,
14
15
  UNIT_CELSIUS,
15
16
  UNIT_MILLIMETER,
16
- ICON_THERMOMETER,
17
17
  )
18
18
 
19
- from . import RGModel, RG15Resolution, HydreonRGxxComponent
19
+ from . import HydreonRGxxComponent, RG15Resolution, RGModel
20
20
 
21
21
  UNIT_INTENSITY = "intensity"
22
22
  UNIT_MILLIMETERS_PER_HOUR = "mm/h"
@@ -1,6 +1,6 @@
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_HUMIDITY,
6
6
  CONF_ID,
@@ -1,6 +1,6 @@
1
1
  import esphome.codegen as cg
2
- import esphome.config_validation as cv
3
2
  from esphome.components import i2c
3
+ import esphome.config_validation as cv
4
4
  from esphome.const import CONF_ID
5
5
 
6
6
  DEPENDENCIES = ["i2c"]
@@ -1,21 +1,19 @@
1
+ from esphome import pins
1
2
  import esphome.codegen as cg
2
- from esphome.components import media_player, esp32
3
+ from esphome.components import esp32, media_player
3
4
  import esphome.config_validation as cv
4
-
5
- from esphome import pins
6
-
7
5
  from esphome.const import CONF_ID, CONF_MODE
8
6
 
9
7
  from .. import (
10
- i2s_audio_ns,
11
- I2SAudioComponent,
12
- I2SAudioOut,
13
8
  CONF_I2S_AUDIO_ID,
14
9
  CONF_I2S_DOUT_PIN,
15
10
  CONF_LEFT,
16
- CONF_RIGHT,
17
11
  CONF_MONO,
12
+ CONF_RIGHT,
18
13
  CONF_STEREO,
14
+ I2SAudioComponent,
15
+ I2SAudioOut,
16
+ i2s_audio_ns,
19
17
  )
20
18
 
21
19
  CODEOWNERS = ["@jesserockz"]
@@ -1,6 +1,6 @@
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_CO2,
6
6
  CONF_ID,
@@ -8,8 +8,8 @@ from esphome.const import (
8
8
  DEVICE_CLASS_CARBON_DIOXIDE,
9
9
  DEVICE_CLASS_VOLATILE_ORGANIC_COMPOUNDS,
10
10
  STATE_CLASS_MEASUREMENT,
11
- UNIT_PARTS_PER_MILLION,
12
11
  UNIT_PARTS_PER_BILLION,
12
+ UNIT_PARTS_PER_MILLION,
13
13
  )
14
14
 
15
15
  DEPENDENCIES = ["i2c"]
@@ -1,6 +1,6 @@
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_BUS_VOLTAGE,
6
6
  CONF_CURRENT,
@@ -14,8 +14,8 @@ from esphome.const import (
14
14
  DEVICE_CLASS_POWER,
15
15
  DEVICE_CLASS_VOLTAGE,
16
16
  STATE_CLASS_MEASUREMENT,
17
- UNIT_VOLT,
18
17
  UNIT_AMPERE,
18
+ UNIT_VOLT,
19
19
  UNIT_WATT,
20
20
  )
21
21
 
@@ -1,6 +1,6 @@
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_BUS_VOLTAGE,
6
6
  CONF_CURRENT,
@@ -9,14 +9,14 @@ from esphome.const import (
9
9
  CONF_POWER,
10
10
  CONF_SHUNT_RESISTANCE,
11
11
  CONF_SHUNT_VOLTAGE,
12
- DEVICE_CLASS_VOLTAGE,
12
+ CONF_VOLTAGE,
13
13
  DEVICE_CLASS_CURRENT,
14
14
  DEVICE_CLASS_POWER,
15
+ DEVICE_CLASS_VOLTAGE,
15
16
  STATE_CLASS_MEASUREMENT,
16
- UNIT_VOLT,
17
17
  UNIT_AMPERE,
18
+ UNIT_VOLT,
18
19
  UNIT_WATT,
19
- CONF_VOLTAGE,
20
20
  )
21
21
 
22
22
  DEPENDENCIES = ["i2c"]
@@ -1,17 +1,17 @@
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
- CONF_ID,
6
5
  CONF_BUS_VOLTAGE,
7
6
  CONF_CURRENT,
7
+ CONF_ID,
8
8
  CONF_POWER,
9
- DEVICE_CLASS_VOLTAGE,
10
9
  DEVICE_CLASS_CURRENT,
11
10
  DEVICE_CLASS_POWER,
11
+ DEVICE_CLASS_VOLTAGE,
12
12
  STATE_CLASS_MEASUREMENT,
13
- UNIT_VOLT,
14
13
  UNIT_AMPERE,
14
+ UNIT_VOLT,
15
15
  UNIT_WATT,
16
16
  )
17
17
 
@@ -1,6 +1,6 @@
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 (
5
5
  CONF_BUS_VOLTAGE,
6
6
  CONF_CURRENT,
@@ -21,8 +21,8 @@ from esphome.const import (
21
21
  UNIT_AMPERE,
22
22
  UNIT_CELSIUS,
23
23
  UNIT_VOLT,
24
- UNIT_WATT_HOURS,
25
24
  UNIT_WATT,
25
+ UNIT_WATT_HOURS,
26
26
  )
27
27
 
28
28
  CODEOWNERS = ["@latonita"]
@@ -1,6 +1,6 @@
1
1
  import esphome.codegen as cg
2
+ from esphome.components import i2c, ina2xx_base
2
3
  import esphome.config_validation as cv
3
- from esphome.components import ina2xx_base, i2c
4
4
  from esphome.const import CONF_ID, CONF_MODEL
5
5
 
6
6
  AUTO_LOAD = ["ina2xx_base"]
@@ -1,6 +1,6 @@
1
1
  import esphome.codegen as cg
2
- import esphome.config_validation as cv
3
2
  from esphome.components import ina2xx_base, spi
3
+ import esphome.config_validation as cv
4
4
  from esphome.const import CONF_ID, CONF_MODEL
5
5
 
6
6
  AUTO_LOAD = ["ina2xx_base"]
@@ -1,6 +1,6 @@
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_BUS_VOLTAGE,
6
6
  CONF_CURRENT,
@@ -8,12 +8,12 @@ from esphome.const import (
8
8
  CONF_POWER,
9
9
  CONF_SHUNT_RESISTANCE,
10
10
  CONF_SHUNT_VOLTAGE,
11
- DEVICE_CLASS_VOLTAGE,
12
11
  DEVICE_CLASS_CURRENT,
13
12
  DEVICE_CLASS_POWER,
13
+ DEVICE_CLASS_VOLTAGE,
14
14
  STATE_CLASS_MEASUREMENT,
15
- UNIT_VOLT,
16
15
  UNIT_AMPERE,
16
+ UNIT_VOLT,
17
17
  UNIT_WATT,
18
18
  )
19
19
 
@@ -1,10 +1,11 @@
1
1
  import esphome.codegen as cg
2
+ from esphome.components import esp32_ble_tracker, sensor
2
3
  import esphome.config_validation as cv
3
- from esphome.components import sensor, esp32_ble_tracker
4
4
  from esphome.const import (
5
5
  CONF_BATTERY_LEVEL,
6
6
  CONF_EXTERNAL_TEMPERATURE,
7
7
  CONF_HUMIDITY,
8
+ CONF_ID,
8
9
  CONF_MAC_ADDRESS,
9
10
  CONF_TEMPERATURE,
10
11
  DEVICE_CLASS_BATTERY,
@@ -14,7 +15,6 @@ from esphome.const import (
14
15
  STATE_CLASS_MEASUREMENT,
15
16
  UNIT_CELSIUS,
16
17
  UNIT_PERCENT,
17
- CONF_ID,
18
18
  )
19
19
 
20
20
  CODEOWNERS = ["@fkirill"]
@@ -1,7 +1,7 @@
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 display, i2c
4
+ import esphome.config_validation as cv
5
5
  from esphome.const import (
6
6
  CONF_FULL_UPDATE_EVERY,
7
7
  CONF_ID,
@@ -1,14 +1,14 @@
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 sensor
4
+ import esphome.config_validation as cv
5
5
  from esphome.const import (
6
+ CONF_ACCURACY_DECIMALS,
6
7
  CONF_ICON,
7
8
  CONF_ID,
8
- CONF_SENSOR,
9
9
  CONF_RESTORE,
10
+ CONF_SENSOR,
10
11
  CONF_UNIT_OF_MEASUREMENT,
11
- CONF_ACCURACY_DECIMALS,
12
12
  )
13
13
  from esphome.core.entity_helpers import inherit_property_from
14
14
 
@@ -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
- VARIANT_ESP32S3,
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
- PLATFORM_BK72XX,
14
+ STATE_CLASS_MEASUREMENT,
15
+ UNIT_CELSIUS,
18
16
  )
19
17
  from esphome.core import CORE
20
18
 
@@ -1,6 +1,6 @@
1
+ from esphome import automation
1
2
  import esphome.codegen as cg
2
3
  import esphome.config_validation as cv
3
- from esphome import automation
4
4
  from esphome.const import CONF_ID, CONF_INTERVAL, CONF_STARTUP_DELAY
5
5
 
6
6
  CODEOWNERS = ["@esphome/core"]
@@ -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,6 +1,6 @@
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
5
  CONF_COMMAND,
6
6
  CONF_CUSTOM,
@@ -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"]