esphome-docs/changelog/2024.3.0.rst

312 lines
18 KiB
ReStructuredText

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
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.
ESPHome Dates require Home Assistant 2024.4 or later.
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_address()`` or ``ethernet::global_eth_component->get_ip_address()``,
these functions have been renamed to ``::get_ip_addresses()`` respectively and now return a list of all IP addresses.
Release 2024.3.1 - March 27
---------------------------
- AHT10: Fix bug :esphomepr:`6409` by :ghuser:`clydebarrow`
- microWakeWord: Fix model path joining :esphomepr:`6426` by :ghuser:`ebw44`
- Don't compile strptime unless its required :esphomepr:`6424` by :ghuser:`gabest11`
- Fix editor live validation :esphomepr:`6431` by :ghuser:`bdraco`
Release 2024.3.2 - April 4
--------------------------
- Fix logger compile error on ESP32-C6 :esphomepr:`6323` by :ghuser:`DAVe3283`
- Add missing ethernet types :esphomepr:`6444` by :ghuser:`ssieb`
- fix: changing the content source when playing is paused blocks the player :esphomepr:`6454` by :ghuser:`NewoPL`
Thank you for your support
--------------------------
We would like to thank all Home Assistant Cloud subscribers for their support. It allows `Nabu Casa <https://nabucasa.com/>`__ to
employ two developers to maintain and further develop the ESPHome project.
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)
New Platforms
^^^^^^^^^^^^^
- Additional sensors and binary sensors support for Haier Climate :esphomepr:`6257` by :ghuser:`paveldn` (breaking-change) (new-platform)
- add template fan :esphomepr:`6310` by :ghuser:`ssieb` (breaking-change) (new-platform)
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) (new-platform)
- add template fan :esphomepr:`6310` by :ghuser:`ssieb` (breaking-change) (new-platform)
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`
- Fix bug in ``remote_base`` conditional :esphomepr:`6281` by :ghuser:`swoboda1337`
- Fix sending packets to uponor_smatrix devices :esphomepr:`6392` by :ghuser:`kroimon`
- Fix wrong initialization of vectors in ade7953_i2c :esphomepr:`6393` by :ghuser:`kroimon`
- ld2420: Firmware v1.5.4+ bug workaround :esphomepr:`6168` by :ghuser:`descipher`
- Require xsrf/csrf when using a password :esphomepr:`6396` by :ghuser:`jesserockz`
- AHT10: Use state machine to avoid blocking delay :esphomepr:`6401` by :ghuser:`clydebarrow`
- Show component warnings and errors in the log; :esphomepr:`6400` by :ghuser:`clydebarrow`
- web_server support for v3 :esphomepr:`6203` by :ghuser:`RFDarter`
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) (new-platform)
- 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) (new-platform)
- 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`
- Fix bug in ``remote_base`` conditional :esphomepr:`6281` by :ghuser:`swoboda1337`
- Fix sending packets to uponor_smatrix devices :esphomepr:`6392` by :ghuser:`kroimon`
- Fix wrong initialization of vectors in ade7953_i2c :esphomepr:`6393` by :ghuser:`kroimon`
- ld2420: Firmware v1.5.4+ bug workaround :esphomepr:`6168` by :ghuser:`descipher`
- Require xsrf/csrf when using a password :esphomepr:`6396` by :ghuser:`jesserockz`
- AHT10: Use state machine to avoid blocking delay :esphomepr:`6401` by :ghuser:`clydebarrow`
- Show component warnings and errors in the log; :esphomepr:`6400` by :ghuser:`clydebarrow`
- web_server support for v3 :esphomepr:`6203` by :ghuser:`RFDarter`
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`