ESPHome 2024.3.0 - 20th March 2024 ================================== .. seo:: :description: Changelog for ESPHome 2024.3.0. :image: /_static/changelog-2024.3.0.png :author: Jesse Hills :author_twitter: @jesserockz .. imgtable:: :columns: 5 Datetime Core, components/datetime/index, clock-outline.svg, dark-invert Template Datetime, components/datetime/template, description.svg, dark-invert AM2315C, components/sensor/am2315c, am2315c.jpg HTU31D, components/sensor/htu31d, htu31d.jpg, MS8607, components/sensor/ms8607, ms8607.jpg AGS10, components/sensor/ags10, ags10.jpg VEML6030, components/sensor/veml7700, veml6030.jpg VEML7700, components/sensor/veml7700, veml7700.jpg MR24HPC1 mmWave, components/seeed_mr24hpc1, seeed-mr24hpc1.jpg ADS1118, components/sensor/ads1118, ads1118.jpg CST816, components/touchscreen/cst816, cst816.jpg CST226, components/touchscreen/cst226, t4-s3.jpg RPI_DPI_RGB, components/display/rpi_dpi_rgb, waveshare_touch-s3.jpg Quad SPI AMOLED, components/display/qspi_amoled, t4-s3.jpg ST7701S, components/display/st7701s, indicator.jpg ADE7880, components/sensor/ade7880, ade7880.svg Emmeti, components/climate/climate_ir, air-conditioner-ir.svg, dark-invert Uponor Smatrix, components/uponor_smatrix, uponor.svg Kamstrup KMP, components/sensor/kamstrup_kmp, kamstrup_kmp.jpg Template Fan, components/fan/template, description.svg, dark-invert Notes to be written... Dates ----- ESPHome now has support for ``date`` entities that can be set from the frontend (like Home Assistant) for you to check against and execute automations in the future. IPv6 ---- ESPHome is now prepared for the future! The future that is the old IPv6 that is. Dualstack is added and it could now have up to 5 ip addresses of any type, and communication with Home assistant, MQTT and NTP works with IPv6. ESPHome still depends on IPv4, but the crystal ball shows sign of IPv6-only networks. If you are building an :doc:`/components/external_components` or you use ``network::get_ip_address()``, ``wifi::global_wifi_component->get_ip_addresses()`` or ``ethernet::global_eth_component->get_ip_addresses()``, these functions have been renamed to ``::get_ip_addresses()`` respectively and now return a list of all IP addresses. Full list of changes -------------------- New Components ^^^^^^^^^^^^^^ - New component: ADE7880 voltage/current/power/energy sensor :esphomepr:`5242` by :ghuser:`kpfleming` (new-integration) - Add Uponor Smatrix component :esphomepr:`5769` by :ghuser:`kroimon` (new-integration) - Support for MS8607 PHT (Pressure Humidity Temperature) sensor :esphomepr:`3307` by :ghuser:`e28eta` (new-integration) - Add datetime date entities :esphomepr:`6191` by :ghuser:`RFDarter` (new-integration) - Add AGS10 Sensor :esphomepr:`6070` by :ghuser:`mak-42` (new-integration) - ads1118 component :esphomepr:`5711` by :ghuser:`solomondg1` (new-integration) - Add CST816 touchscreen driver :esphomepr:`5941` by :ghuser:`clydebarrow` (new-integration) - AM2315C Temperature + Humidity Sensor :esphomepr:`6266` by :ghuser:`swoboda1337` (new-integration) - Touchscreen: add support for CST226 controller chip :esphomepr:`6151` by :ghuser:`clydebarrow` (new-integration) - Drivers for RGB 16 bit parallel displays :esphomepr:`5872` by :ghuser:`clydebarrow` (new-integration) - VEML7700 and VEML6030 light sensors :esphomepr:`6067` by :ghuser:`latonita` (new-integration) - Add Seeed Studio mmWave Kit MR24HPC1 :esphomepr:`5761` by :ghuser:`limengdu` (new-integration) - Add driver for quad SPI AMOLED displays :esphomepr:`6354` by :ghuser:`clydebarrow` (new-integration) - feat: Add HTU31D Support :esphomepr:`5805` by :ghuser:`betterengineering` (new-integration) - Emmeti infrared climate support :esphomepr:`5197` by :ghuser:`E440QF` (new-integration) - Added Kamstrup Multical 40x component :esphomepr:`4200` by :ghuser:`cfeenstra1024` (new-integration) - add template fan :esphomepr:`6310` by :ghuser:`ssieb` (breaking-change) Breaking Changes ^^^^^^^^^^^^^^^^ - LTR390 - Multiple bugfixes :esphomepr:`6161` by :ghuser:`sjtrny` (breaking-change) - Touchscreen component and driver fixes :esphomepr:`5997` by :ghuser:`nielsnl68` (breaking-change) - Additional sensors and binary sensors support for Haier Climate :esphomepr:`6257` by :ghuser:`paveldn` (breaking-change) - add template fan :esphomepr:`6310` by :ghuser:`ssieb` (breaking-change) Beta Changes ^^^^^^^^^^^^ - SPI: Revert clk_pin to standard output pin schema :esphomepr:`6368` by :ghuser:`clydebarrow` - Allow actions in web_server to be executed via GET method :esphomepr:`5938` by :ghuser:`afarago` - fix servo restore :esphomepr:`6370` by :ghuser:`ssieb` - Don't try to get IPv6 addresses when disabled :esphomepr:`6366` by :ghuser:`HeMan` - Use AQI device class :esphomepr:`6376` by :ghuser:`fgsch` - Fix list-components when PR is not targeting dev :esphomepr:`6375` by :ghuser:`jesserockz` - allow negative ppm for sensair :esphomepr:`6385` by :ghuser:`ssieb` - microWakeWord - add new ops and small improvements :esphomepr:`6360` by :ghuser:`kahrendt` - Fix compilation for uponor_smatrix without time component :esphomepr:`6389` by :ghuser:`kroimon` - Shows component operation time in ``ms`` :esphomepr:`6388` by :ghuser:`edwardtfn` - IPv6 can't be enabled for libretiny :esphomepr:`6387` by :ghuser:`HeMan` - Replace name and friendly name in full adopted configs :esphomepr:`4456` by :ghuser:`jesserockz` All changes ^^^^^^^^^^^ - Bump openssh-client to 1:9.2p1-2+deb12u2 :esphomepr:`6216` by :ghuser:`jesserockz` - Add support for 1.8V-powered devices :esphomepr:`6234` by :ghuser:`bisbastuner` - Adjust HeatpumpIR dependency :esphomepr:`6222` by :ghuser:`ivankravets` - INA226 - fixed improper work with signed values, added configurable ADC parameters :esphomepr:`6172` by :ghuser:`latonita` - Prevent network config on rpipico board :esphomepr:`5832` by :ghuser:`carlosV2` - Bump pytest-asyncio from 0.23.3 to 0.23.5 :esphomepr:`6201` by :ghuser:`dependabot[bot]` - New component: ADE7880 voltage/current/power/energy sensor :esphomepr:`5242` by :ghuser:`kpfleming` (new-integration) - Add some components to the new testing framework (D) :esphomepr:`6175` by :ghuser:`kbx81` - Provide example devcontainer config for mdns and USB passthrough :esphomepr:`6094` by :ghuser:`linkedupbits` - Bump black from 23.12.1 to 24.2.0 :esphomepr:`6221` by :ghuser:`dependabot[bot]` - Bump pytest from 7.4.4 to 8.0.1 :esphomepr:`6246` by :ghuser:`dependabot[bot]` - Bump codecov/codecov-action from 3 to 4 :esphomepr:`6160` by :ghuser:`dependabot[bot]` - Bump peter-evans/create-pull-request from 5.0.2 to 6.0.0 :esphomepr:`6159` by :ghuser:`dependabot[bot]` - Bump frenck/action-yamllint from 1.4.2 to 1.5.0 :esphomepr:`6236` by :ghuser:`dependabot[bot]` - Bump voluptuous from 0.14.1 to 0.14.2 :esphomepr:`6181` by :ghuser:`dependabot[bot]` - Bump pyupgrade from 3.15.0 to 3.15.1 :esphomepr:`6247` by :ghuser:`dependabot[bot]` - LTR390 - Multiple bugfixes :esphomepr:`6161` by :ghuser:`sjtrny` (breaking-change) - Fix yamllint :esphomepr:`6253` by :ghuser:`jesserockz` - Improve the error message on OTA version mismatch :esphomepr:`6259` by :ghuser:`sybrenstuvel` - Bump aioesphomeapi from 21.0.2 to 22.0.0 :esphomepr:`6263` by :ghuser:`dependabot[bot]` - Allow ESP8266 to use multiple i2c busses :esphomepr:`6145` by :ghuser:`LouDou` - Add Uponor Smatrix component :esphomepr:`5769` by :ghuser:`kroimon` (new-integration) - Fix test_build_components for macOS sed :esphomepr:`6278` by :ghuser:`kbx81` - Allow to specify global build directory :esphomepr:`6276` by :ghuser:`werwolfby` - Add device class support to text sensor :esphomepr:`6202` by :ghuser:`dougiteixeira` - Bump pytest from 8.0.1 to 8.0.2 :esphomepr:`6288` by :ghuser:`dependabot[bot]` - Improve dualstack and IPv6 support :esphomepr:`5449` by :ghuser:`HeMan` - Waveshare e-ink 2IN9_V2 - fix full and partial update based on vendorā€¦ :esphomepr:`5481` by :ghuser:`darianndd` - Add RTTTL volume control. :esphomepr:`5968` by :ghuser:`nielsnl68` - Touchscreen component and driver fixes :esphomepr:`5997` by :ghuser:`nielsnl68` (breaking-change) - Add `on_update` trigger for Project versions :esphomepr:`6298` by :ghuser:`jesserockz` - Bump peter-evans/create-pull-request from 6.0.0 to 6.0.1 :esphomepr:`6302` by :ghuser:`dependabot[bot]` - CSE7766 Apparent Power & Power Factor calculations :esphomepr:`6292` by :ghuser:`DAVe3283` - Adding W5500 support to ethernet component :esphomepr:`4424` by :ghuser:`JeroenVanOort` - Fix numbering of ip_address sensors :esphomepr:`6305` by :ghuser:`HeMan` - Bump aioesphomeapi from 22.0.0 to 23.0.0 :esphomepr:`6293` by :ghuser:`dependabot[bot]` - Add regular polygon shapes to display component :esphomepr:`6108` by :ghuser:`mathieu-mp` - Fix return value in `core/automation.h` :esphomepr:`6314` by :ghuser:`FlyingFeng2021` - aht10: Added new CMD and renamed existing CMD to match datasheet :esphomepr:`6303` by :ghuser:`cptskippy` - handling with the negative temperature in the sensor tmp102 :esphomepr:`6316` by :ghuser:`FlyingFeng2021` - x9c: fix off by 1 error :esphomepr:`6318` by :ghuser:`andynumber2` - Support for MS8607 PHT (Pressure Humidity Temperature) sensor :esphomepr:`3307` by :ghuser:`e28eta` (new-integration) - Separate logger implementations for each hardware platform into different files :esphomepr:`6167` by :ghuser:`tomaszduda23` - Additional sensors and binary sensors support for Haier Climate :esphomepr:`6257` by :ghuser:`paveldn` (breaking-change) - Add toggle command to cover web_server endpoint :esphomepr:`6319` by :ghuser:`heythisisnate` - Improv: support connecting to hidden networks :esphomepr:`6322` by :ghuser:`jesserockz` - Update mDNS for IDF >= 5.0 :esphomepr:`6328` by :ghuser:`HeMan` - DFPlayer: refix Bug created with PR 4758 :esphomepr:`5861` by :ghuser:`sandronidi` - Fix build failures on host platform caused by #6167 :esphomepr:`6338` by :ghuser:`clydebarrow` - Update bang_bang to log two decimal places in config dump :esphomepr:`6304` by :ghuser:`rafalw1277` - Add datetime date entities :esphomepr:`6191` by :ghuser:`RFDarter` (new-integration) - Add AGS10 Sensor :esphomepr:`6070` by :ghuser:`mak-42` (new-integration) - Bump aioesphomeapi from 23.0.0 to 23.1.0 :esphomepr:`6332` by :ghuser:`dependabot[bot]` - Bump pytest-asyncio from 0.23.5 to 0.23.5.post1 :esphomepr:`6334` by :ghuser:`dependabot[bot]` - Bump docker/setup-buildx-action from 3.0.0 to 3.1.0 :esphomepr:`6295` by :ghuser:`dependabot[bot]` - Set dependabot to look at composite actions versions :esphomepr:`6343` by :ghuser:`jesserockz` - ads1118 component :esphomepr:`5711` by :ghuser:`solomondg1` (new-integration) - Bump actions/cache from 4.0.0 to 4.0.1 :esphomepr:`6306` by :ghuser:`dependabot[bot]` - Bump docker/build-push-action from 5.0.0 to 5.2.0 in /.github/actions/build-image :esphomepr:`6347` by :ghuser:`dependabot[bot]` - fix: modbus_textsensor response is too long in some cases :esphomepr:`6333` by :ghuser:`NewoPL` - add template fan :esphomepr:`6310` by :ghuser:`ssieb` (breaking-change) - dump config after logging CDC port is opened by host :esphomepr:`6169` by :ghuser:`tomaszduda23` - Add IRK support to allow tracking of devices with random MAC addresses :esphomepr:`6335` by :ghuser:`chbmuc` - [Fingerprint_grow] Implements Sleep Mode feature :esphomepr:`6116` by :ghuser:`alexborro` - cleanup ili9xxx component by removing data rate define :esphomepr:`6350` by :ghuser:`nielsnl68` - web_server_idf: support x-www-form-urlencoded POST requests :esphomepr:`6037` by :ghuser:`dentra` - feat(MQTT): Add QoS option for each MQTT component :esphomepr:`6279` by :ghuser:`Rapsssito` - Check permissions :esphomepr:`6255` by :ghuser:`OdileVidrine` - Add CST816 touchscreen driver :esphomepr:`5941` by :ghuser:`clydebarrow` (new-integration) - ILI9XXX: Lazily allocate buffer :esphomepr:`6352` by :ghuser:`clydebarrow` - AM2315C Temperature + Humidity Sensor :esphomepr:`6266` by :ghuser:`swoboda1337` (new-integration) - Add ble_presence binary sensor timeout config value. :esphomepr:`6024` by :ghuser:`clydebarrow` - Add state listeners to `rotary_encoder` :esphomepr:`6035` by :ghuser:`clydebarrow` - ili9xxx: Add support for GC9A01A display :esphomepr:`6351` by :ghuser:`clydebarrow` - Touchscreen: add support for CST226 controller chip :esphomepr:`6151` by :ghuser:`clydebarrow` (new-integration) - font: add anti-aliasing and other features :esphomepr:`6198` by :ghuser:`clydebarrow` - Mhz19 warmup :esphomepr:`6214` by :ghuser:`fornellas` - Refactor ATM90E32 to reduce blocking time and improve accuracy. :esphomepr:`5670` by :ghuser:`descipher` - Bump aioesphomeapi from 23.1.0 to 23.1.1 :esphomepr:`6348` by :ghuser:`dependabot[bot]` - Bump pytest from 8.0.2 to 8.1.1 :esphomepr:`6346` by :ghuser:`dependabot[bot]` - Add support for Waveshare 2.13" V2 display :esphomepr:`6337` by :ghuser:`manuelkasper` - Mitsubishi Climate updates :esphomepr:`3886` by :ghuser:`RubyBailey` - Drivers for RGB 16 bit parallel displays :esphomepr:`5872` by :ghuser:`clydebarrow` (new-integration) - hydreon_rgxx - add resolution option :esphomepr:`6077` by :ghuser:`mrtoy-me` - SPI schema now uses typed_schema with `type` key :esphomepr:`6353` by :ghuser:`clydebarrow` - VEML7700 and VEML6030 light sensors :esphomepr:`6067` by :ghuser:`latonita` (new-integration) - Add Seeed Studio mmWave Kit MR24HPC1 :esphomepr:`5761` by :ghuser:`limengdu` (new-integration) - Add getter for font glyph data :esphomepr:`6355` by :ghuser:`clydebarrow` - Require reset_pin for certain waveshare_epaper models in YAML validation :esphomepr:`6357` by :ghuser:`manuelkasper` - touchscreen driver fixes :esphomepr:`6356` by :ghuser:`clydebarrow` - Make USE_HOST compilable on msys2 :esphomepr:`6359` by :ghuser:`maruel` - download font from url on build :esphomepr:`5254` by :ghuser:`landonr` - Add driver for quad SPI AMOLED displays :esphomepr:`6354` by :ghuser:`clydebarrow` (new-integration) - ADE7953: Add the ability to use accumulating energy registers, more precise power reporting :esphomepr:`6311` by :ghuser:`isorin` - feat: Add HTU31D Support :esphomepr:`5805` by :ghuser:`betterengineering` (new-integration) - Emmeti infrared climate support :esphomepr:`5197` by :ghuser:`E440QF` (new-integration) - Added Kamstrup Multical 40x component :esphomepr:`4200` by :ghuser:`cfeenstra1024` (new-integration) - add possibility to provide different conversion times for Bus Voltageā€¦ :esphomepr:`6327` by :ghuser:`kev300` - SPI: Revert clk_pin to standard output pin schema :esphomepr:`6368` by :ghuser:`clydebarrow` - Allow actions in web_server to be executed via GET method :esphomepr:`5938` by :ghuser:`afarago` - fix servo restore :esphomepr:`6370` by :ghuser:`ssieb` - Don't try to get IPv6 addresses when disabled :esphomepr:`6366` by :ghuser:`HeMan` - Use AQI device class :esphomepr:`6376` by :ghuser:`fgsch` - Fix list-components when PR is not targeting dev :esphomepr:`6375` by :ghuser:`jesserockz` - allow negative ppm for sensair :esphomepr:`6385` by :ghuser:`ssieb` - microWakeWord - add new ops and small improvements :esphomepr:`6360` by :ghuser:`kahrendt` - Fix compilation for uponor_smatrix without time component :esphomepr:`6389` by :ghuser:`kroimon` - Shows component operation time in ``ms`` :esphomepr:`6388` by :ghuser:`edwardtfn` - IPv6 can't be enabled for libretiny :esphomepr:`6387` by :ghuser:`HeMan` - Replace name and friendly name in full adopted configs :esphomepr:`4456` by :ghuser:`jesserockz` Past Changelogs --------------- - :doc:`2024.2.0` - :doc:`2023.12.0` - :doc:`2023.11.0` - :doc:`2023.10.0` - :doc:`2023.9.0` - :doc:`2023.8.0` - :doc:`2023.7.0` - :doc:`2023.6.0` - :doc:`2023.5.0` - :doc:`2023.4.0` - :doc:`2023.3.0` - :doc:`2023.2.0` - :doc:`2022.12.0` - :doc:`2022.11.0` - :doc:`2022.10.0` - :doc:`2022.9.0` - :doc:`2022.8.0` - :doc:`2022.6.0` - :doc:`2022.5.0` - :doc:`2022.4.0` - :doc:`2022.3.0` - :doc:`2022.2.0` - :doc:`2022.1.0` - :doc:`2021.12.0` - :doc:`2021.11.0` - :doc:`2021.10.0` - :doc:`2021.9.0` - :doc:`2021.8.0` - :doc:`v1.20.0` - :doc:`v1.19.0` - :doc:`v1.18.0` - :doc:`v1.17.0` - :doc:`v1.16.0` - :doc:`v1.15.0` - :doc:`v1.14.0` - :doc:`v1.13.0` - :doc:`v1.12.0` - :doc:`v1.11.0` - :doc:`v1.10.0` - :doc:`v1.9.0` - :doc:`v1.8.0` - :doc:`v1.7.0`