esphome 2025.9.3__py3-none-any.whl → 2025.10.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 (343) hide show
  1. esphome/__main__.py +87 -31
  2. esphome/address_cache.py +142 -0
  3. esphome/automation.py +130 -32
  4. esphome/build_gen/platformio.py +1 -3
  5. esphome/codegen.py +1 -0
  6. esphome/components/animation/animation.cpp +2 -2
  7. esphome/components/api/__init__.py +166 -3
  8. esphome/components/api/api_connection.cpp +84 -41
  9. esphome/components/api/api_connection.h +22 -16
  10. esphome/components/api/api_frame_helper.cpp +33 -19
  11. esphome/components/api/api_frame_helper.h +19 -4
  12. esphome/components/api/api_frame_helper_noise.cpp +41 -53
  13. esphome/components/api/api_frame_helper_noise.h +1 -1
  14. esphome/components/api/api_frame_helper_plaintext.cpp +22 -31
  15. esphome/components/api/api_frame_helper_plaintext.h +1 -1
  16. esphome/components/api/api_pb2.cpp +189 -15
  17. esphome/components/api/api_pb2.h +132 -20
  18. esphome/components/api/api_pb2_dump.cpp +97 -9
  19. esphome/components/api/api_pb2_service.cpp +118 -160
  20. esphome/components/api/api_pb2_service.h +31 -3
  21. esphome/components/api/api_server.cpp +68 -10
  22. esphome/components/api/api_server.h +32 -4
  23. esphome/components/api/custom_api_device.h +8 -8
  24. esphome/components/api/homeassistant_service.h +123 -6
  25. esphome/components/api/proto.h +6 -2
  26. esphome/components/api/user_services.h +2 -2
  27. esphome/components/as7341/sensor.py +1 -1
  28. esphome/components/audio/__init__.py +1 -1
  29. esphome/components/audio/audio.cpp +1 -1
  30. esphome/components/audio/audio_decoder.cpp +9 -9
  31. esphome/components/bl0906/bl0906.cpp +2 -2
  32. esphome/components/bl0942/bl0942.cpp +2 -2
  33. esphome/components/ble_client/__init__.py +1 -1
  34. esphome/components/bluetooth_proxy/__init__.py +4 -30
  35. esphome/components/bluetooth_proxy/bluetooth_connection.cpp +11 -4
  36. esphome/components/bluetooth_proxy/bluetooth_connection.h +2 -2
  37. esphome/components/bluetooth_proxy/bluetooth_proxy.cpp +2 -2
  38. esphome/components/camera_encoder/__init__.py +2 -4
  39. esphome/components/camera_encoder/esp32_camera_jpeg_encoder.cpp +4 -2
  40. esphome/components/camera_encoder/esp32_camera_jpeg_encoder.h +3 -1
  41. esphome/components/canbus/canbus.cpp +7 -5
  42. esphome/components/canbus/canbus.h +4 -4
  43. esphome/components/captive_portal/__init__.py +18 -1
  44. esphome/components/captive_portal/captive_portal.cpp +40 -46
  45. esphome/components/captive_portal/captive_portal.h +20 -22
  46. esphome/components/captive_portal/dns_server_esp32_idf.cpp +205 -0
  47. esphome/components/captive_portal/dns_server_esp32_idf.h +27 -0
  48. esphome/components/ccs811/ccs811.cpp +1 -1
  49. esphome/components/climate/climate.cpp +10 -7
  50. esphome/components/cm1106/cm1106.cpp +1 -1
  51. esphome/components/copy/lock/copy_lock.cpp +1 -1
  52. esphome/components/cover/cover.cpp +1 -0
  53. esphome/components/daikin_arc/daikin_arc.cpp +19 -12
  54. esphome/components/deep_sleep/__init__.py +9 -2
  55. esphome/components/deep_sleep/deep_sleep_component.h +11 -9
  56. esphome/components/deep_sleep/deep_sleep_esp32.cpp +51 -27
  57. esphome/components/ektf2232/touchscreen/__init__.py +8 -5
  58. esphome/components/ektf2232/touchscreen/ektf2232.cpp +4 -4
  59. esphome/components/ektf2232/touchscreen/ektf2232.h +2 -2
  60. esphome/components/epaper_spi/__init__.py +1 -0
  61. esphome/components/epaper_spi/display.py +80 -0
  62. esphome/components/epaper_spi/epaper_spi.cpp +227 -0
  63. esphome/components/epaper_spi/epaper_spi.h +93 -0
  64. esphome/components/epaper_spi/epaper_spi_model_7p3in_spectra_e6.cpp +42 -0
  65. esphome/components/epaper_spi/epaper_spi_model_7p3in_spectra_e6.h +45 -0
  66. esphome/components/epaper_spi/epaper_spi_spectra_e6.cpp +135 -0
  67. esphome/components/epaper_spi/epaper_spi_spectra_e6.h +23 -0
  68. esphome/components/es7210/es7210.cpp +3 -3
  69. esphome/components/esp32/__init__.py +254 -339
  70. esphome/components/esp32/boards.py +81 -0
  71. esphome/components/esp32/preferences.cpp +23 -17
  72. esphome/components/esp32_ble/__init__.py +159 -44
  73. esphome/components/esp32_ble/ble.cpp +47 -3
  74. esphome/components/esp32_ble/ble.h +18 -0
  75. esphome/components/esp32_ble/ble_advertising.cpp +7 -3
  76. esphome/components/esp32_ble/ble_advertising.h +4 -0
  77. esphome/components/esp32_ble/ble_uuid.cpp +16 -42
  78. esphome/components/esp32_ble_beacon/__init__.py +3 -4
  79. esphome/components/esp32_ble_client/ble_client_base.cpp +14 -12
  80. esphome/components/esp32_ble_server/__init__.py +28 -14
  81. esphome/components/esp32_ble_server/ble_characteristic.cpp +67 -57
  82. esphome/components/esp32_ble_server/ble_characteristic.h +27 -16
  83. esphome/components/esp32_ble_server/ble_descriptor.cpp +4 -3
  84. esphome/components/esp32_ble_server/ble_descriptor.h +13 -9
  85. esphome/components/esp32_ble_server/ble_server.cpp +59 -24
  86. esphome/components/esp32_ble_server/ble_server.h +38 -20
  87. esphome/components/esp32_ble_server/ble_server_automations.cpp +49 -33
  88. esphome/components/esp32_ble_server/ble_server_automations.h +39 -24
  89. esphome/components/esp32_ble_tracker/__init__.py +25 -80
  90. esphome/components/esp32_ble_tracker/esp32_ble_tracker.cpp +2 -4
  91. esphome/components/esp32_ble_tracker/esp32_ble_tracker.h +0 -3
  92. esphome/components/esp32_camera/__init__.py +1 -3
  93. esphome/components/esp32_can/esp32_can.cpp +22 -4
  94. esphome/components/esp32_can/esp32_can.h +3 -0
  95. esphome/components/esp32_hosted/__init__.py +2 -1
  96. esphome/components/esp32_improv/esp32_improv_component.cpp +102 -44
  97. esphome/components/esp32_improv/esp32_improv_component.h +6 -1
  98. esphome/components/esp32_rmt_led_strip/led_strip.cpp +1 -1
  99. esphome/components/esp8266/__init__.py +3 -3
  100. esphome/components/esphome/ota/__init__.py +21 -2
  101. esphome/components/esphome/ota/ota_esphome.cpp +455 -145
  102. esphome/components/esphome/ota/ota_esphome.h +49 -2
  103. esphome/components/ethernet/__init__.py +39 -22
  104. esphome/components/ethernet/ethernet_component.cpp +28 -5
  105. esphome/components/ethernet/ethernet_component.h +5 -1
  106. esphome/components/external_components/__init__.py +8 -6
  107. esphome/components/fingerprint_grow/fingerprint_grow.cpp +1 -1
  108. esphome/components/fingerprint_grow/fingerprint_grow.h +2 -1
  109. esphome/components/font/__init__.py +5 -5
  110. esphome/components/graph/graph.cpp +1 -1
  111. esphome/components/graphical_display_menu/graphical_display_menu.cpp +3 -2
  112. esphome/components/haier/hon_climate.cpp +2 -2
  113. esphome/components/haier/hon_climate.h +1 -1
  114. esphome/components/hdc1080/hdc1080.cpp +42 -34
  115. esphome/components/hdc1080/hdc1080.h +1 -3
  116. esphome/components/homeassistant/number/homeassistant_number.cpp +2 -2
  117. esphome/components/homeassistant/switch/homeassistant_switch.cpp +2 -2
  118. esphome/components/http_request/__init__.py +3 -3
  119. esphome/components/htu21d/htu21d.cpp +13 -18
  120. esphome/components/htu21d/htu21d.h +1 -1
  121. esphome/components/i2s_audio/__init__.py +1 -2
  122. esphome/components/i2s_audio/speaker/i2s_audio_speaker.cpp +1 -1
  123. esphome/components/ili9xxx/ili9xxx_display.cpp +2 -2
  124. esphome/components/improv_serial/improv_serial_component.cpp +12 -15
  125. esphome/components/improv_serial/improv_serial_component.h +6 -8
  126. esphome/components/json/json_util.cpp +35 -43
  127. esphome/components/json/json_util.h +57 -0
  128. esphome/components/kamstrup_kmp/kamstrup_kmp.cpp +2 -2
  129. esphome/components/key_collector/key_collector.h +4 -4
  130. esphome/components/libretiny/__init__.py +6 -6
  131. esphome/components/libretiny/preferences.cpp +23 -16
  132. esphome/components/light/light_call.cpp +98 -120
  133. esphome/components/light/light_call.h +17 -7
  134. esphome/components/lm75b/__init__.py +0 -0
  135. esphome/components/lm75b/lm75b.cpp +39 -0
  136. esphome/components/lm75b/lm75b.h +19 -0
  137. esphome/components/lm75b/sensor.py +34 -0
  138. esphome/components/lock/lock.h +12 -6
  139. esphome/components/logger/__init__.py +15 -27
  140. esphome/components/logger/logger.cpp +10 -20
  141. esphome/components/logger/logger.h +105 -62
  142. esphome/components/logger/logger_esp32.cpp +0 -48
  143. esphome/components/logger/logger_zephyr.cpp +2 -3
  144. esphome/components/logger/select/logger_level_select.cpp +6 -7
  145. esphome/components/logger/select/logger_level_select.h +7 -0
  146. esphome/components/ltr501/ltr501.cpp +7 -6
  147. esphome/components/ltr_als_ps/ltr_als_ps.cpp +7 -6
  148. esphome/components/matrix_keypad/matrix_keypad.h +4 -4
  149. esphome/components/max7219digit/max7219digit.cpp +1 -1
  150. esphome/components/mcp2515/mcp2515.cpp +31 -3
  151. esphome/components/mcp2515/mcp2515_defs.h +3 -1
  152. esphome/components/md5/md5.cpp +0 -26
  153. esphome/components/md5/md5.h +10 -20
  154. esphome/components/mdns/__init__.py +19 -6
  155. esphome/components/mdns/mdns_component.cpp +27 -59
  156. esphome/components/mdns/mdns_component.h +23 -10
  157. esphome/components/mdns/mdns_esp32.cpp +7 -7
  158. esphome/components/mdns/mdns_esp8266.cpp +6 -6
  159. esphome/components/mdns/mdns_libretiny.cpp +3 -3
  160. esphome/components/mdns/mdns_rp2040.cpp +3 -3
  161. esphome/components/mipi/__init__.py +1 -5
  162. esphome/components/mipi_spi/display.py +24 -8
  163. esphome/components/mipi_spi/mipi_spi.h +3 -3
  164. esphome/components/mixer/speaker/mixer_speaker.cpp +3 -3
  165. esphome/components/mmc5603/mmc5603.cpp +3 -3
  166. esphome/components/modbus/modbus.cpp +27 -13
  167. esphome/components/modbus/modbus.h +5 -3
  168. esphome/components/modbus/modbus_definitions.h +86 -0
  169. esphome/components/modbus_controller/__init__.py +29 -1
  170. esphome/components/modbus_controller/const.py +4 -0
  171. esphome/components/modbus_controller/modbus_controller.cpp +38 -13
  172. esphome/components/modbus_controller/modbus_controller.h +18 -29
  173. esphome/components/mpr121/mpr121.cpp +41 -42
  174. esphome/components/mpr121/mpr121.h +0 -1
  175. esphome/components/nau7802/nau7802.cpp +2 -2
  176. esphome/components/network/__init__.py +7 -3
  177. esphome/components/nextion/display.py +4 -4
  178. esphome/components/nextion/nextion.cpp +8 -8
  179. esphome/components/number/__init__.py +2 -0
  180. esphome/components/number/number_call.cpp +23 -12
  181. esphome/components/number/number_call.h +5 -0
  182. esphome/components/online_image/bmp_image.cpp +2 -1
  183. esphome/components/online_image/jpeg_image.cpp +4 -2
  184. esphome/components/openthread/openthread.cpp +6 -7
  185. esphome/components/openthread/openthread.h +0 -1
  186. esphome/components/ota/ota_backend.h +1 -0
  187. esphome/components/packages/__init__.py +10 -8
  188. esphome/components/packet_transport/packet_transport.cpp +2 -0
  189. esphome/components/pid/pid_controller.cpp +1 -1
  190. esphome/components/prometheus/prometheus_handler.cpp +239 -239
  191. esphome/components/psram/__init__.py +30 -28
  192. esphome/components/qmc5883l/qmc5883l.cpp +15 -0
  193. esphome/components/qmc5883l/qmc5883l.h +3 -0
  194. esphome/components/qmc5883l/sensor.py +31 -12
  195. esphome/components/remote_base/gobox_protocol.cpp +3 -3
  196. esphome/components/remote_receiver/__init__.py +14 -2
  197. esphome/components/remote_receiver/{remote_receiver_esp8266.cpp → remote_receiver.cpp} +2 -2
  198. esphome/components/remote_receiver/remote_receiver.h +4 -0
  199. esphome/components/remote_receiver/remote_receiver_esp32.cpp +18 -1
  200. esphome/components/remote_transmitter/__init__.py +2 -2
  201. esphome/components/remote_transmitter/remote_transmitter.cpp +103 -0
  202. esphome/components/rp2040/__init__.py +11 -11
  203. esphome/components/rtttl/rtttl.cpp +2 -2
  204. esphome/components/scd30/sensor.py +1 -1
  205. esphome/components/script/__init__.py +1 -1
  206. esphome/components/script/script.h +7 -7
  207. esphome/components/select/select.cpp +5 -4
  208. esphome/components/select/select_call.cpp +1 -1
  209. esphome/components/sensirion_common/i2c_sensirion.cpp +2 -1
  210. esphome/components/sensor/__init__.py +2 -0
  211. esphome/components/sha256/__init__.py +22 -0
  212. esphome/components/sha256/sha256.cpp +116 -0
  213. esphome/components/sha256/sha256.h +60 -0
  214. esphome/components/socket/lwip_raw_tcp_impl.cpp +34 -6
  215. esphome/components/sonoff_d1/sonoff_d1.cpp +1 -1
  216. esphome/components/spi/__init__.py +0 -3
  217. esphome/components/split_buffer/__init__.py +5 -0
  218. esphome/components/split_buffer/split_buffer.cpp +133 -0
  219. esphome/components/split_buffer/split_buffer.h +40 -0
  220. esphome/components/sps30/sps30.cpp +14 -10
  221. esphome/components/sps30/sps30.h +2 -0
  222. esphome/components/st7567_i2c/st7567_i2c.cpp +3 -1
  223. esphome/components/st7789v/st7789v.cpp +3 -2
  224. esphome/components/statsd/statsd.cpp +1 -1
  225. esphome/components/substitutions/__init__.py +3 -1
  226. esphome/components/substitutions/jinja.py +13 -3
  227. esphome/components/sx126x/__init__.py +16 -0
  228. esphome/components/sx126x/sx126x.cpp +15 -1
  229. esphome/components/sx126x/sx126x.h +9 -1
  230. esphome/components/sx126x/sx126x_reg.h +2 -0
  231. esphome/components/text_sensor/text_sensor.cpp +16 -0
  232. esphome/components/text_sensor/text_sensor.h +3 -10
  233. esphome/components/tormatic/tormatic_cover.cpp +1 -1
  234. esphome/components/tuya/select/tuya_select.cpp +1 -1
  235. esphome/components/tuya/tuya.cpp +29 -4
  236. esphome/components/uart/__init__.py +36 -26
  237. esphome/components/uart/uart.h +6 -0
  238. esphome/components/uart/uart_component.cpp +8 -0
  239. esphome/components/uart/uart_component.h +28 -0
  240. esphome/components/uart/uart_component_esp_idf.cpp +64 -10
  241. esphome/components/uart/uart_component_esp_idf.h +5 -2
  242. esphome/components/uponor_smatrix/climate/uponor_smatrix_climate.cpp +1 -1
  243. esphome/components/uponor_smatrix/sensor/uponor_smatrix_sensor.cpp +1 -1
  244. esphome/components/uponor_smatrix/uponor_smatrix.cpp +3 -3
  245. esphome/components/usb_host/__init__.py +2 -1
  246. esphome/components/usb_host/usb_host.h +82 -13
  247. esphome/components/usb_host/usb_host_client.cpp +180 -24
  248. esphome/components/usb_host/usb_host_component.cpp +1 -1
  249. esphome/components/usb_uart/__init__.py +0 -1
  250. esphome/components/usb_uart/ch34x.cpp +4 -4
  251. esphome/components/usb_uart/cp210x.cpp +3 -3
  252. esphome/components/usb_uart/usb_uart.cpp +88 -32
  253. esphome/components/usb_uart/usb_uart.h +30 -6
  254. esphome/components/valve/valve.cpp +1 -0
  255. esphome/components/veml7700/veml7700.cpp +7 -6
  256. esphome/components/version/version_text_sensor.cpp +2 -1
  257. esphome/components/voice_assistant/voice_assistant.cpp +3 -2
  258. esphome/components/waveshare_epaper/waveshare_epaper.cpp +4 -4
  259. esphome/components/web_server/list_entities.cpp +3 -4
  260. esphome/components/web_server/list_entities.h +8 -10
  261. esphome/components/web_server/ota/__init__.py +1 -1
  262. esphome/components/web_server/ota/ota_web_server.cpp +9 -3
  263. esphome/components/web_server/web_server.cpp +509 -404
  264. esphome/components/web_server/web_server.h +5 -6
  265. esphome/components/web_server/web_server_v1.cpp +21 -19
  266. esphome/components/web_server_base/__init__.py +5 -2
  267. esphome/components/web_server_base/web_server_base.h +27 -7
  268. esphome/components/web_server_idf/__init__.py +1 -1
  269. esphome/components/web_server_idf/multipart.cpp +2 -2
  270. esphome/components/web_server_idf/multipart.h +2 -2
  271. esphome/components/web_server_idf/utils.cpp +2 -2
  272. esphome/components/web_server_idf/utils.h +2 -2
  273. esphome/components/web_server_idf/web_server_idf.cpp +118 -26
  274. esphome/components/web_server_idf/web_server_idf.h +12 -10
  275. esphome/components/wifi/__init__.py +13 -11
  276. esphome/components/wifi/wifi_component.cpp +73 -56
  277. esphome/components/wifi/wifi_component.h +4 -4
  278. esphome/components/wifi/wifi_component_esp8266.cpp +1 -1
  279. esphome/components/wifi/wifi_component_esp_idf.cpp +24 -4
  280. esphome/components/wireguard/__init__.py +1 -1
  281. esphome/components/wts01/__init__.py +0 -0
  282. esphome/components/wts01/sensor.py +41 -0
  283. esphome/components/wts01/wts01.cpp +91 -0
  284. esphome/components/wts01/wts01.h +27 -0
  285. esphome/components/zephyr/__init__.py +5 -5
  286. esphome/components/zwave_proxy/__init__.py +43 -0
  287. esphome/components/zwave_proxy/zwave_proxy.cpp +346 -0
  288. esphome/components/zwave_proxy/zwave_proxy.h +93 -0
  289. esphome/config.py +79 -24
  290. esphome/config_validation.py +13 -15
  291. esphome/const.py +9 -2
  292. esphome/core/__init__.py +31 -22
  293. esphome/core/component.cpp +28 -18
  294. esphome/core/component_iterator.h +2 -1
  295. esphome/core/config.py +15 -15
  296. esphome/core/defines.h +19 -0
  297. esphome/core/hash_base.h +56 -0
  298. esphome/core/helpers.cpp +19 -3
  299. esphome/core/helpers.h +26 -0
  300. esphome/core/scheduler.cpp +5 -21
  301. esphome/core/scheduler.h +19 -8
  302. esphome/core/string_ref.h +1 -1
  303. esphome/core/time.cpp +5 -5
  304. esphome/cpp_generator.py +4 -29
  305. esphome/dashboard/const.py +21 -4
  306. esphome/dashboard/core.py +10 -8
  307. esphome/dashboard/dns.py +15 -0
  308. esphome/dashboard/entries.py +15 -21
  309. esphome/dashboard/models.py +76 -0
  310. esphome/dashboard/settings.py +7 -7
  311. esphome/dashboard/status/mdns.py +46 -2
  312. esphome/dashboard/web_server.py +367 -93
  313. esphome/espota2.py +111 -31
  314. esphome/external_files.py +6 -7
  315. esphome/git.py +8 -0
  316. esphome/helpers.py +124 -77
  317. esphome/loader.py +8 -9
  318. esphome/platformio_api.py +25 -18
  319. esphome/storage_json.py +26 -21
  320. esphome/types.py +30 -2
  321. esphome/util.py +32 -16
  322. esphome/vscode.py +8 -8
  323. esphome/wizard.py +10 -10
  324. esphome/writer.py +50 -15
  325. esphome/yaml_util.py +37 -31
  326. esphome/zeroconf.py +12 -3
  327. {esphome-2025.9.3.dist-info → esphome-2025.10.0b1.dist-info}/METADATA +11 -11
  328. {esphome-2025.9.3.dist-info → esphome-2025.10.0b1.dist-info}/RECORD +332 -312
  329. esphome/components/event_emitter/__init__.py +0 -5
  330. esphome/components/event_emitter/event_emitter.cpp +0 -14
  331. esphome/components/event_emitter/event_emitter.h +0 -63
  332. esphome/components/remote_receiver/remote_receiver_libretiny.cpp +0 -125
  333. esphome/components/remote_transmitter/remote_transmitter_esp8266.cpp +0 -107
  334. esphome/components/remote_transmitter/remote_transmitter_libretiny.cpp +0 -110
  335. esphome/components/uart/uart_component_esp32_arduino.cpp +0 -214
  336. esphome/components/uart/uart_component_esp32_arduino.h +0 -60
  337. esphome/components/wifi/wifi_component_esp32_arduino.cpp +0 -860
  338. esphome/core/string_ref.cpp +0 -12
  339. esphome/dashboard/util/file.py +0 -63
  340. {esphome-2025.9.3.dist-info → esphome-2025.10.0b1.dist-info}/WHEEL +0 -0
  341. {esphome-2025.9.3.dist-info → esphome-2025.10.0b1.dist-info}/entry_points.txt +0 -0
  342. {esphome-2025.9.3.dist-info → esphome-2025.10.0b1.dist-info}/licenses/LICENSE +0 -0
  343. {esphome-2025.9.3.dist-info → esphome-2025.10.0b1.dist-info}/top_level.txt +0 -0
@@ -276,6 +276,13 @@ enum UpdateCommand : uint32_t {
276
276
  UPDATE_COMMAND_CHECK = 2,
277
277
  };
278
278
  #endif
279
+ #ifdef USE_ZWAVE_PROXY
280
+ enum ZWaveProxyRequestType : uint32_t {
281
+ ZWAVE_PROXY_REQUEST_TYPE_SUBSCRIBE = 0,
282
+ ZWAVE_PROXY_REQUEST_TYPE_UNSUBSCRIBE = 1,
283
+ ZWAVE_PROXY_REQUEST_TYPE_HOME_ID_CHANGE = 2,
284
+ };
285
+ #endif
279
286
 
280
287
  } // namespace enums
281
288
 
@@ -324,11 +331,12 @@ class CommandProtoMessage : public ProtoDecodableMessage {
324
331
  class HelloRequest final : public ProtoDecodableMessage {
325
332
  public:
326
333
  static constexpr uint8_t MESSAGE_TYPE = 1;
327
- static constexpr uint8_t ESTIMATED_SIZE = 17;
334
+ static constexpr uint8_t ESTIMATED_SIZE = 27;
328
335
  #ifdef HAS_PROTO_MESSAGE_DUMP
329
336
  const char *message_name() const override { return "hello_request"; }
330
337
  #endif
331
- std::string client_info{};
338
+ const uint8_t *client_info{nullptr};
339
+ uint16_t client_info_len{0};
332
340
  uint32_t api_version_major{0};
333
341
  uint32_t api_version_minor{0};
334
342
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -360,14 +368,16 @@ class HelloResponse final : public ProtoMessage {
360
368
 
361
369
  protected:
362
370
  };
363
- class ConnectRequest final : public ProtoDecodableMessage {
371
+ #ifdef USE_API_PASSWORD
372
+ class AuthenticationRequest final : public ProtoDecodableMessage {
364
373
  public:
365
374
  static constexpr uint8_t MESSAGE_TYPE = 3;
366
- static constexpr uint8_t ESTIMATED_SIZE = 9;
375
+ static constexpr uint8_t ESTIMATED_SIZE = 19;
367
376
  #ifdef HAS_PROTO_MESSAGE_DUMP
368
- const char *message_name() const override { return "connect_request"; }
377
+ const char *message_name() const override { return "authentication_request"; }
369
378
  #endif
370
- std::string password{};
379
+ const uint8_t *password{nullptr};
380
+ uint16_t password_len{0};
371
381
  #ifdef HAS_PROTO_MESSAGE_DUMP
372
382
  void dump_to(std::string &out) const override;
373
383
  #endif
@@ -375,12 +385,12 @@ class ConnectRequest final : public ProtoDecodableMessage {
375
385
  protected:
376
386
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
377
387
  };
378
- class ConnectResponse final : public ProtoMessage {
388
+ class AuthenticationResponse final : public ProtoMessage {
379
389
  public:
380
390
  static constexpr uint8_t MESSAGE_TYPE = 4;
381
391
  static constexpr uint8_t ESTIMATED_SIZE = 2;
382
392
  #ifdef HAS_PROTO_MESSAGE_DUMP
383
- const char *message_name() const override { return "connect_response"; }
393
+ const char *message_name() const override { return "authentication_response"; }
384
394
  #endif
385
395
  bool invalid_password{false};
386
396
  void encode(ProtoWriteBuffer buffer) const override;
@@ -391,6 +401,7 @@ class ConnectResponse final : public ProtoMessage {
391
401
 
392
402
  protected:
393
403
  };
404
+ #endif
394
405
  class DisconnectRequest final : public ProtoMessage {
395
406
  public:
396
407
  static constexpr uint8_t MESSAGE_TYPE = 5;
@@ -490,7 +501,7 @@ class DeviceInfo final : public ProtoMessage {
490
501
  class DeviceInfoResponse final : public ProtoMessage {
491
502
  public:
492
503
  static constexpr uint8_t MESSAGE_TYPE = 10;
493
- static constexpr uint8_t ESTIMATED_SIZE = 247;
504
+ static constexpr uint16_t ESTIMATED_SIZE = 257;
494
505
  #ifdef HAS_PROTO_MESSAGE_DUMP
495
506
  const char *message_name() const override { return "device_info_response"; }
496
507
  #endif
@@ -550,6 +561,12 @@ class DeviceInfoResponse final : public ProtoMessage {
550
561
  #endif
551
562
  #ifdef USE_AREAS
552
563
  AreaInfo area{};
564
+ #endif
565
+ #ifdef USE_ZWAVE_PROXY
566
+ uint32_t zwave_proxy_feature_flags{0};
567
+ #endif
568
+ #ifdef USE_ZWAVE_PROXY
569
+ uint32_t zwave_home_id{0};
553
570
  #endif
554
571
  void encode(ProtoWriteBuffer buffer) const override;
555
572
  void calculate_size(ProtoSize &size) const override;
@@ -1084,12 +1101,12 @@ class HomeassistantServiceMap final : public ProtoMessage {
1084
1101
 
1085
1102
  protected:
1086
1103
  };
1087
- class HomeassistantServiceResponse final : public ProtoMessage {
1104
+ class HomeassistantActionRequest final : public ProtoMessage {
1088
1105
  public:
1089
1106
  static constexpr uint8_t MESSAGE_TYPE = 35;
1090
- static constexpr uint8_t ESTIMATED_SIZE = 113;
1107
+ static constexpr uint8_t ESTIMATED_SIZE = 128;
1091
1108
  #ifdef HAS_PROTO_MESSAGE_DUMP
1092
- const char *message_name() const override { return "homeassistant_service_response"; }
1109
+ const char *message_name() const override { return "homeassistant_action_request"; }
1093
1110
  #endif
1094
1111
  StringRef service_ref_{};
1095
1112
  void set_service(const StringRef &ref) { this->service_ref_ = ref; }
@@ -1097,6 +1114,15 @@ class HomeassistantServiceResponse final : public ProtoMessage {
1097
1114
  std::vector<HomeassistantServiceMap> data_template{};
1098
1115
  std::vector<HomeassistantServiceMap> variables{};
1099
1116
  bool is_event{false};
1117
+ #ifdef USE_API_HOMEASSISTANT_ACTION_RESPONSES
1118
+ uint32_t call_id{0};
1119
+ #endif
1120
+ #ifdef USE_API_HOMEASSISTANT_ACTION_RESPONSES_JSON
1121
+ bool wants_response{false};
1122
+ #endif
1123
+ #ifdef USE_API_HOMEASSISTANT_ACTION_RESPONSES_JSON
1124
+ std::string response_template{};
1125
+ #endif
1100
1126
  void encode(ProtoWriteBuffer buffer) const override;
1101
1127
  void calculate_size(ProtoSize &size) const override;
1102
1128
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -1106,6 +1132,30 @@ class HomeassistantServiceResponse final : public ProtoMessage {
1106
1132
  protected:
1107
1133
  };
1108
1134
  #endif
1135
+ #ifdef USE_API_HOMEASSISTANT_ACTION_RESPONSES
1136
+ class HomeassistantActionResponse final : public ProtoDecodableMessage {
1137
+ public:
1138
+ static constexpr uint8_t MESSAGE_TYPE = 130;
1139
+ static constexpr uint8_t ESTIMATED_SIZE = 34;
1140
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1141
+ const char *message_name() const override { return "homeassistant_action_response"; }
1142
+ #endif
1143
+ uint32_t call_id{0};
1144
+ bool success{false};
1145
+ std::string error_message{};
1146
+ #ifdef USE_API_HOMEASSISTANT_ACTION_RESPONSES_JSON
1147
+ const uint8_t *response_data{nullptr};
1148
+ uint16_t response_data_len{0};
1149
+ #endif
1150
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1151
+ void dump_to(std::string &out) const override;
1152
+ #endif
1153
+
1154
+ protected:
1155
+ bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1156
+ bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1157
+ };
1158
+ #endif
1109
1159
  #ifdef USE_API_HOMEASSISTANT_STATES
1110
1160
  class SubscribeHomeAssistantStatesRequest final : public ProtoMessage {
1111
1161
  public:
@@ -1174,12 +1224,13 @@ class GetTimeRequest final : public ProtoMessage {
1174
1224
  class GetTimeResponse final : public ProtoDecodableMessage {
1175
1225
  public:
1176
1226
  static constexpr uint8_t MESSAGE_TYPE = 37;
1177
- static constexpr uint8_t ESTIMATED_SIZE = 14;
1227
+ static constexpr uint8_t ESTIMATED_SIZE = 24;
1178
1228
  #ifdef HAS_PROTO_MESSAGE_DUMP
1179
1229
  const char *message_name() const override { return "get_time_response"; }
1180
1230
  #endif
1181
1231
  uint32_t epoch_seconds{0};
1182
- std::string timezone{};
1232
+ const uint8_t *timezone{nullptr};
1233
+ uint16_t timezone_len{0};
1183
1234
  #ifdef HAS_PROTO_MESSAGE_DUMP
1184
1235
  void dump_to(std::string &out) const override;
1185
1236
  #endif
@@ -1971,14 +2022,15 @@ class BluetoothGATTReadResponse final : public ProtoMessage {
1971
2022
  class BluetoothGATTWriteRequest final : public ProtoDecodableMessage {
1972
2023
  public:
1973
2024
  static constexpr uint8_t MESSAGE_TYPE = 75;
1974
- static constexpr uint8_t ESTIMATED_SIZE = 19;
2025
+ static constexpr uint8_t ESTIMATED_SIZE = 29;
1975
2026
  #ifdef HAS_PROTO_MESSAGE_DUMP
1976
2027
  const char *message_name() const override { return "bluetooth_gatt_write_request"; }
1977
2028
  #endif
1978
2029
  uint64_t address{0};
1979
2030
  uint32_t handle{0};
1980
2031
  bool response{false};
1981
- std::string data{};
2032
+ const uint8_t *data{nullptr};
2033
+ uint16_t data_len{0};
1982
2034
  #ifdef HAS_PROTO_MESSAGE_DUMP
1983
2035
  void dump_to(std::string &out) const override;
1984
2036
  #endif
@@ -2006,13 +2058,14 @@ class BluetoothGATTReadDescriptorRequest final : public ProtoDecodableMessage {
2006
2058
  class BluetoothGATTWriteDescriptorRequest final : public ProtoDecodableMessage {
2007
2059
  public:
2008
2060
  static constexpr uint8_t MESSAGE_TYPE = 77;
2009
- static constexpr uint8_t ESTIMATED_SIZE = 17;
2061
+ static constexpr uint8_t ESTIMATED_SIZE = 27;
2010
2062
  #ifdef HAS_PROTO_MESSAGE_DUMP
2011
2063
  const char *message_name() const override { return "bluetooth_gatt_write_descriptor_request"; }
2012
2064
  #endif
2013
2065
  uint64_t address{0};
2014
2066
  uint32_t handle{0};
2015
- std::string data{};
2067
+ const uint8_t *data{nullptr};
2068
+ uint16_t data_len{0};
2016
2069
  #ifdef HAS_PROTO_MESSAGE_DUMP
2017
2070
  void dump_to(std::string &out) const override;
2018
2071
  #endif
@@ -2437,18 +2490,37 @@ class VoiceAssistantWakeWord final : public ProtoMessage {
2437
2490
 
2438
2491
  protected:
2439
2492
  };
2440
- class VoiceAssistantConfigurationRequest final : public ProtoMessage {
2493
+ class VoiceAssistantExternalWakeWord final : public ProtoDecodableMessage {
2494
+ public:
2495
+ std::string id{};
2496
+ std::string wake_word{};
2497
+ std::vector<std::string> trained_languages{};
2498
+ std::string model_type{};
2499
+ uint32_t model_size{0};
2500
+ std::string model_hash{};
2501
+ std::string url{};
2502
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2503
+ void dump_to(std::string &out) const override;
2504
+ #endif
2505
+
2506
+ protected:
2507
+ bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2508
+ bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2509
+ };
2510
+ class VoiceAssistantConfigurationRequest final : public ProtoDecodableMessage {
2441
2511
  public:
2442
2512
  static constexpr uint8_t MESSAGE_TYPE = 121;
2443
- static constexpr uint8_t ESTIMATED_SIZE = 0;
2513
+ static constexpr uint8_t ESTIMATED_SIZE = 34;
2444
2514
  #ifdef HAS_PROTO_MESSAGE_DUMP
2445
2515
  const char *message_name() const override { return "voice_assistant_configuration_request"; }
2446
2516
  #endif
2517
+ std::vector<VoiceAssistantExternalWakeWord> external_wake_words{};
2447
2518
  #ifdef HAS_PROTO_MESSAGE_DUMP
2448
2519
  void dump_to(std::string &out) const override;
2449
2520
  #endif
2450
2521
 
2451
2522
  protected:
2523
+ bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2452
2524
  };
2453
2525
  class VoiceAssistantConfigurationResponse final : public ProtoMessage {
2454
2526
  public:
@@ -2911,5 +2983,45 @@ class UpdateCommandRequest final : public CommandProtoMessage {
2911
2983
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2912
2984
  };
2913
2985
  #endif
2986
+ #ifdef USE_ZWAVE_PROXY
2987
+ class ZWaveProxyFrame final : public ProtoDecodableMessage {
2988
+ public:
2989
+ static constexpr uint8_t MESSAGE_TYPE = 128;
2990
+ static constexpr uint8_t ESTIMATED_SIZE = 19;
2991
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2992
+ const char *message_name() const override { return "z_wave_proxy_frame"; }
2993
+ #endif
2994
+ const uint8_t *data{nullptr};
2995
+ uint16_t data_len{0};
2996
+ void encode(ProtoWriteBuffer buffer) const override;
2997
+ void calculate_size(ProtoSize &size) const override;
2998
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2999
+ void dump_to(std::string &out) const override;
3000
+ #endif
3001
+
3002
+ protected:
3003
+ bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
3004
+ };
3005
+ class ZWaveProxyRequest final : public ProtoDecodableMessage {
3006
+ public:
3007
+ static constexpr uint8_t MESSAGE_TYPE = 129;
3008
+ static constexpr uint8_t ESTIMATED_SIZE = 21;
3009
+ #ifdef HAS_PROTO_MESSAGE_DUMP
3010
+ const char *message_name() const override { return "z_wave_proxy_request"; }
3011
+ #endif
3012
+ enums::ZWaveProxyRequestType type{};
3013
+ const uint8_t *data{nullptr};
3014
+ uint16_t data_len{0};
3015
+ void encode(ProtoWriteBuffer buffer) const override;
3016
+ void calculate_size(ProtoSize &size) const override;
3017
+ #ifdef HAS_PROTO_MESSAGE_DUMP
3018
+ void dump_to(std::string &out) const override;
3019
+ #endif
3020
+
3021
+ protected:
3022
+ bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
3023
+ bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
3024
+ };
3025
+ #endif
2914
3026
 
2915
3027
  } // namespace esphome::api
@@ -655,10 +655,26 @@ template<> const char *proto_enum_to_string<enums::UpdateCommand>(enums::UpdateC
655
655
  }
656
656
  }
657
657
  #endif
658
+ #ifdef USE_ZWAVE_PROXY
659
+ template<> const char *proto_enum_to_string<enums::ZWaveProxyRequestType>(enums::ZWaveProxyRequestType value) {
660
+ switch (value) {
661
+ case enums::ZWAVE_PROXY_REQUEST_TYPE_SUBSCRIBE:
662
+ return "ZWAVE_PROXY_REQUEST_TYPE_SUBSCRIBE";
663
+ case enums::ZWAVE_PROXY_REQUEST_TYPE_UNSUBSCRIBE:
664
+ return "ZWAVE_PROXY_REQUEST_TYPE_UNSUBSCRIBE";
665
+ case enums::ZWAVE_PROXY_REQUEST_TYPE_HOME_ID_CHANGE:
666
+ return "ZWAVE_PROXY_REQUEST_TYPE_HOME_ID_CHANGE";
667
+ default:
668
+ return "UNKNOWN";
669
+ }
670
+ }
671
+ #endif
658
672
 
659
673
  void HelloRequest::dump_to(std::string &out) const {
660
674
  MessageDumpHelper helper(out, "HelloRequest");
661
- dump_field(out, "client_info", this->client_info);
675
+ out.append(" client_info: ");
676
+ out.append(format_hex_pretty(this->client_info, this->client_info_len));
677
+ out.append("\n");
662
678
  dump_field(out, "api_version_major", this->api_version_major);
663
679
  dump_field(out, "api_version_minor", this->api_version_minor);
664
680
  }
@@ -669,8 +685,18 @@ void HelloResponse::dump_to(std::string &out) const {
669
685
  dump_field(out, "server_info", this->server_info_ref_);
670
686
  dump_field(out, "name", this->name_ref_);
671
687
  }
672
- void ConnectRequest::dump_to(std::string &out) const { dump_field(out, "password", this->password); }
673
- void ConnectResponse::dump_to(std::string &out) const { dump_field(out, "invalid_password", this->invalid_password); }
688
+ #ifdef USE_API_PASSWORD
689
+ void AuthenticationRequest::dump_to(std::string &out) const {
690
+ MessageDumpHelper helper(out, "AuthenticationRequest");
691
+ out.append(" password: ");
692
+ out.append(format_hex_pretty(this->password, this->password_len));
693
+ out.append("\n");
694
+ }
695
+ void AuthenticationResponse::dump_to(std::string &out) const {
696
+ MessageDumpHelper helper(out, "AuthenticationResponse");
697
+ dump_field(out, "invalid_password", this->invalid_password);
698
+ }
699
+ #endif
674
700
  void DisconnectRequest::dump_to(std::string &out) const { out.append("DisconnectRequest {}"); }
675
701
  void DisconnectResponse::dump_to(std::string &out) const { out.append("DisconnectResponse {}"); }
676
702
  void PingRequest::dump_to(std::string &out) const { out.append("PingRequest {}"); }
@@ -749,6 +775,12 @@ void DeviceInfoResponse::dump_to(std::string &out) const {
749
775
  this->area.dump_to(out);
750
776
  out.append("\n");
751
777
  #endif
778
+ #ifdef USE_ZWAVE_PROXY
779
+ dump_field(out, "zwave_proxy_feature_flags", this->zwave_proxy_feature_flags);
780
+ #endif
781
+ #ifdef USE_ZWAVE_PROXY
782
+ dump_field(out, "zwave_home_id", this->zwave_home_id);
783
+ #endif
752
784
  }
753
785
  void ListEntitiesRequest::dump_to(std::string &out) const { out.append("ListEntitiesRequest {}"); }
754
786
  void ListEntitiesDoneResponse::dump_to(std::string &out) const { out.append("ListEntitiesDoneResponse {}"); }
@@ -1071,8 +1103,8 @@ void HomeassistantServiceMap::dump_to(std::string &out) const {
1071
1103
  dump_field(out, "key", this->key_ref_);
1072
1104
  dump_field(out, "value", this->value);
1073
1105
  }
1074
- void HomeassistantServiceResponse::dump_to(std::string &out) const {
1075
- MessageDumpHelper helper(out, "HomeassistantServiceResponse");
1106
+ void HomeassistantActionRequest::dump_to(std::string &out) const {
1107
+ MessageDumpHelper helper(out, "HomeassistantActionRequest");
1076
1108
  dump_field(out, "service", this->service_ref_);
1077
1109
  for (const auto &it : this->data) {
1078
1110
  out.append(" data: ");
@@ -1090,6 +1122,28 @@ void HomeassistantServiceResponse::dump_to(std::string &out) const {
1090
1122
  out.append("\n");
1091
1123
  }
1092
1124
  dump_field(out, "is_event", this->is_event);
1125
+ #ifdef USE_API_HOMEASSISTANT_ACTION_RESPONSES
1126
+ dump_field(out, "call_id", this->call_id);
1127
+ #endif
1128
+ #ifdef USE_API_HOMEASSISTANT_ACTION_RESPONSES_JSON
1129
+ dump_field(out, "wants_response", this->wants_response);
1130
+ #endif
1131
+ #ifdef USE_API_HOMEASSISTANT_ACTION_RESPONSES_JSON
1132
+ dump_field(out, "response_template", this->response_template);
1133
+ #endif
1134
+ }
1135
+ #endif
1136
+ #ifdef USE_API_HOMEASSISTANT_ACTION_RESPONSES
1137
+ void HomeassistantActionResponse::dump_to(std::string &out) const {
1138
+ MessageDumpHelper helper(out, "HomeassistantActionResponse");
1139
+ dump_field(out, "call_id", this->call_id);
1140
+ dump_field(out, "success", this->success);
1141
+ dump_field(out, "error_message", this->error_message);
1142
+ #ifdef USE_API_HOMEASSISTANT_ACTION_RESPONSES_JSON
1143
+ out.append(" response_data: ");
1144
+ out.append(format_hex_pretty(this->response_data, this->response_data_len));
1145
+ out.append("\n");
1146
+ #endif
1093
1147
  }
1094
1148
  #endif
1095
1149
  #ifdef USE_API_HOMEASSISTANT_STATES
@@ -1113,7 +1167,9 @@ void GetTimeRequest::dump_to(std::string &out) const { out.append("GetTimeReques
1113
1167
  void GetTimeResponse::dump_to(std::string &out) const {
1114
1168
  MessageDumpHelper helper(out, "GetTimeResponse");
1115
1169
  dump_field(out, "epoch_seconds", this->epoch_seconds);
1116
- dump_field(out, "timezone", this->timezone);
1170
+ out.append(" timezone: ");
1171
+ out.append(format_hex_pretty(this->timezone, this->timezone_len));
1172
+ out.append("\n");
1117
1173
  }
1118
1174
  #ifdef USE_API_SERVICES
1119
1175
  void ListEntitiesServicesArgument::dump_to(std::string &out) const {
@@ -1626,7 +1682,7 @@ void BluetoothGATTWriteRequest::dump_to(std::string &out) const {
1626
1682
  dump_field(out, "handle", this->handle);
1627
1683
  dump_field(out, "response", this->response);
1628
1684
  out.append(" data: ");
1629
- out.append(format_hex_pretty(reinterpret_cast<const uint8_t *>(this->data.data()), this->data.size()));
1685
+ out.append(format_hex_pretty(this->data, this->data_len));
1630
1686
  out.append("\n");
1631
1687
  }
1632
1688
  void BluetoothGATTReadDescriptorRequest::dump_to(std::string &out) const {
@@ -1639,7 +1695,7 @@ void BluetoothGATTWriteDescriptorRequest::dump_to(std::string &out) const {
1639
1695
  dump_field(out, "address", this->address);
1640
1696
  dump_field(out, "handle", this->handle);
1641
1697
  out.append(" data: ");
1642
- out.append(format_hex_pretty(reinterpret_cast<const uint8_t *>(this->data.data()), this->data.size()));
1698
+ out.append(format_hex_pretty(this->data, this->data_len));
1643
1699
  out.append("\n");
1644
1700
  }
1645
1701
  void BluetoothGATTNotifyRequest::dump_to(std::string &out) const {
@@ -1792,8 +1848,25 @@ void VoiceAssistantWakeWord::dump_to(std::string &out) const {
1792
1848
  dump_field(out, "trained_languages", it, 4);
1793
1849
  }
1794
1850
  }
1851
+ void VoiceAssistantExternalWakeWord::dump_to(std::string &out) const {
1852
+ MessageDumpHelper helper(out, "VoiceAssistantExternalWakeWord");
1853
+ dump_field(out, "id", this->id);
1854
+ dump_field(out, "wake_word", this->wake_word);
1855
+ for (const auto &it : this->trained_languages) {
1856
+ dump_field(out, "trained_languages", it, 4);
1857
+ }
1858
+ dump_field(out, "model_type", this->model_type);
1859
+ dump_field(out, "model_size", this->model_size);
1860
+ dump_field(out, "model_hash", this->model_hash);
1861
+ dump_field(out, "url", this->url);
1862
+ }
1795
1863
  void VoiceAssistantConfigurationRequest::dump_to(std::string &out) const {
1796
- out.append("VoiceAssistantConfigurationRequest {}");
1864
+ MessageDumpHelper helper(out, "VoiceAssistantConfigurationRequest");
1865
+ for (const auto &it : this->external_wake_words) {
1866
+ out.append(" external_wake_words: ");
1867
+ it.dump_to(out);
1868
+ out.append("\n");
1869
+ }
1797
1870
  }
1798
1871
  void VoiceAssistantConfigurationResponse::dump_to(std::string &out) const {
1799
1872
  MessageDumpHelper helper(out, "VoiceAssistantConfigurationResponse");
@@ -2102,6 +2175,21 @@ void UpdateCommandRequest::dump_to(std::string &out) const {
2102
2175
  #endif
2103
2176
  }
2104
2177
  #endif
2178
+ #ifdef USE_ZWAVE_PROXY
2179
+ void ZWaveProxyFrame::dump_to(std::string &out) const {
2180
+ MessageDumpHelper helper(out, "ZWaveProxyFrame");
2181
+ out.append(" data: ");
2182
+ out.append(format_hex_pretty(this->data, this->data_len));
2183
+ out.append("\n");
2184
+ }
2185
+ void ZWaveProxyRequest::dump_to(std::string &out) const {
2186
+ MessageDumpHelper helper(out, "ZWaveProxyRequest");
2187
+ dump_field(out, "type", static_cast<enums::ZWaveProxyRequestType>(this->type));
2188
+ out.append(" data: ");
2189
+ out.append(format_hex_pretty(this->data, this->data_len));
2190
+ out.append("\n");
2191
+ }
2192
+ #endif
2105
2193
 
2106
2194
  } // namespace esphome::api
2107
2195