Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2025.2.0b1 #4661

Merged
merged 74 commits into from
Feb 12, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
74 commits
Select commit Hold shift + click to select a range
7db4bd0
Bump version to 2025.1.0-dev
jesserockz Dec 11, 2024
2072129
Merge branch 'beta' into next
jesserockz Dec 11, 2024
675af4c
Merge branch 'current' into next
jesserockz Dec 15, 2024
aadddd0
Merge branch 'beta' into next
jesserockz Dec 15, 2024
4c67645
Added description for OpenTherm new features (#4487)
olegtarasov Dec 15, 2024
18fb350
Merge branch 'current' into next
jesserockz Dec 17, 2024
c237cca
Merge branch 'beta' into next
jesserockz Dec 17, 2024
4ce13b8
[Midea] Update follow me action with Fahrenheit support (#4437)
DjordjeMandic Dec 18, 2024
2c069d1
Merge branch 'current' into next
jesserockz Dec 18, 2024
86550de
[esp32_rmt] Updates for IDF 5+ changes (#4480)
swoboda1337 Dec 19, 2024
d84b485
document QSPI changes (#4514)
clydebarrow Dec 19, 2024
cfbcccc
Merge branch 'current' into next
jesserockz Dec 19, 2024
7b98869
Merge branch 'current' into next
jesserockz Dec 19, 2024
34f5863
[lvgl] Clarify getting started (#4519)
clydebarrow Dec 20, 2024
3a283ae
Fixed a typo in ld2420 docs. (#4520)
mlewand Dec 20, 2024
9b23343
Update devboard_as_flasher.rst to additionally include ESP32 S series…
shvmm Dec 20, 2024
4b9fa9d
Merge branch 'current' into next
kbx81 Dec 21, 2024
65c1663
[esp32_rmt] IDF 5+ update fixes (#4531)
swoboda1337 Dec 24, 2024
ae04206
Document disp_bg_opa and `none` for `disp_bg_image` (#4545)
clydebarrow Dec 29, 2024
7af3664
Remove default state (#4559)
clydebarrow Jan 12, 2025
b26d08c
[lvgl] Document `lvgl.page.is_showing` (#4570)
clydebarrow Jan 12, 2025
5bb8927
Update auto_clear description (#4522)
clydebarrow Jan 12, 2025
5cac4ee
Log level (#4341)
briancw Jan 12, 2025
5196cbb
Add `set_brightness` action + copy fixes (#4550)
kbx81 Jan 13, 2025
75e64bd
Document image changes (#4506)
clydebarrow Jan 13, 2025
6eb3460
Adds documentation for Alarm Control Panel REST API endpoints (#4517)
heythisisnate Jan 13, 2025
6ee528f
[uptime] Document text_sensor (#4548)
clydebarrow Jan 14, 2025
c66171f
Document ili9xxx changes (#4581)
clydebarrow Jan 14, 2025
907eb96
document es7210 ADC component (#4534)
Jan 15, 2025
7e0d1f8
Merge branch 'current' into next
jesserockz Jan 16, 2025
90b55eb
Merge branch 'current' into next
jesserockz Jan 17, 2025
1436379
Merge branch 'current' into next
jesserockz Jan 17, 2025
3513102
Update send_wait_time text to reflect modbus timing changes (#4399)
exciton Jan 19, 2025
4310834
[image] Rename "use_transparency" to "transparency" (#4595)
guillempages Jan 19, 2025
8020bb8
FAQ updates/rewrite (#4593)
kbx81 Jan 20, 2025
7e4e87a
[audio_adc] Add/update docs for new component (#4588)
kbx81 Jan 21, 2025
70985dd
uptime text sensor docs (#4590)
clydebarrow Jan 21, 2025
229768c
Add docs for ES8156 audio DAC (#4583)
kbx81 Jan 21, 2025
79ace6b
Update api.rst - lambda example for condition connected (#4596)
mstuczko Jan 21, 2025
b561a36
[custom] Remove platforms (#4598)
kbx81 Jan 21, 2025
a35555c
Add: Human Presence and Target Count to the Seeed Studio MR60BHA2 (#4…
limengdu Jan 22, 2025
2a650cd
[es7243e] Add docs for ES7243E audio ADC (#4597)
kbx81 Jan 22, 2025
83fa58f
[esp32] Set logger default interface for C6 (#4599)
kbx81 Jan 22, 2025
bbde3c6
[ads1115] Add sample rate control (#4591)
brambo123 Jan 22, 2025
88d2adb
[online_image] Binary BMP support (#4600)
jesserockz Jan 23, 2025
92bfa9d
Add useful template examples for both text and numerical sensors (#4445)
jzucker2 Jan 24, 2025
b1b855e
[esp32_ble_server] Create custom BLE services, characteristics and de…
Rapsssito Jan 28, 2025
6f56b40
Document multicast support for udp component (#4576)
HeMan Jan 29, 2025
3edb515
Mac local installation update (#4516)
swifty99 Jan 30, 2025
91743b8
fix spelling (#4625)
bangert Jan 31, 2025
337a258
feat(core): Add support for <...> includes (#4611)
Rapsssito Feb 2, 2025
d0bba87
[resampler] Media Player Components Docs PR1 (#4628)
Feb 4, 2025
c3e0d97
[lvgl] Document swipe triggers (#4639)
clydebarrow Feb 4, 2025
bffe03c
Add xxtea docs (#4640)
clydebarrow Feb 4, 2025
f96159c
Update docs for flash_write_interval (#4642)
clydebarrow Feb 5, 2025
865070b
Update manual for uponor_smatrix component (esphome#7745) (#4435)
janschroeter Feb 5, 2025
73ddef8
Add docs for SDL binary sensor (#4644)
bdm310 Feb 5, 2025
0a25070
Add documentation for Toto remote transmitter/receiver protocol (#4633)
G-Two Feb 7, 2025
83f00e4
Fix example: wrong pin for the S3 Box 3 and specify channel (#4518)
Feb 9, 2025
2f2f419
[mixer] Media Player Components Docs PR2 (#4629)
Feb 9, 2025
588e429
Document logger changes (#4649)
clydebarrow Feb 10, 2025
3d528db
Merge branch 'current' into next
jesserockz Feb 10, 2025
6ee5356
add adc/sampling_mode doc (#4601)
blind-oracle Feb 10, 2025
2ecff11
[speaker] Media Player Components Docs PR3 (#4630)
Feb 10, 2025
2a93e61
add partial update of GDEW029T5 e-paper display (#4627)
mystster Feb 10, 2025
3f14af6
Added Waveshare e-paper display model "7.50inv2p" to the waveshare_ep…
tmpeh Feb 11, 2025
c3fd6f6
added Waveshare BWR Mode for the 4.2in Display (#4529)
itpcc Feb 11, 2025
c52fb8c
[online_image] Document JPEG support (#4617)
guillempages Feb 11, 2025
d597964
Add GDEY029T94 support (#4493)
danielkoek Feb 11, 2025
5853a2d
GDEY042T81 e-paper displays support (#4574)
mgruener Feb 11, 2025
10b2257
Adding doc for the Waveshare 7.3" ACeP 7-Color display (#3806)
NeilSCGH Feb 11, 2025
4f40a24
Bump version to 2025.2.0b1
jesserockz Feb 12, 2025
60c411e
Update changelog for 2025.2.0b1
jesserockz Feb 12, 2025
09beb03
Update supporters for 2025.2.0b1
jesserockz Feb 12, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Doxygen
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ PROJECT_NAME = "ESPHome"
# could be handy for archiving the generated documentation or if some version
# control system is used.

PROJECT_NUMBER = 2024.12.4
PROJECT_NUMBER = 2025.2.0b1

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
ESPHOME_PATH = ../esphome
ESPHOME_REF = 2024.12.4
ESPHOME_REF = 2025.2.0b1
PAGEFIND_VERSION=1.1.1
PAGEFIND=pagefind
NET_PAGEFIND=../pagefindbin/pagefind
Expand Down
14 changes: 14 additions & 0 deletions _redirects
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,20 @@
/components/sensor/mmc5063.html /components/sensor/mmc5603.html 301
/components/sensor/kalman_combinator.html /components/sensor/combination.html 301

/components/binary_sensor/custom* /guides/contributing#a-note-about-custom-components 301
/components/climate/custom* /guides/contributing#a-note-about-custom-components 301
/components/cover/custom* /guides/contributing#a-note-about-custom-components 301
/components/light/custom* /guides/contributing#a-note-about-custom-components 301
/components/output/custom* /guides/contributing#a-note-about-custom-components 301
/components/sensor/custom* /guides/contributing#a-note-about-custom-components 301
/components/switch/custom* /guides/contributing#a-note-about-custom-components 301
/components/text_sensor/custom* /guides/contributing#a-note-about-custom-components 301
/custom/custom_component* /guides/contributing#a-note-about-custom-components 301
/custom/i2c* /guides/contributing#a-note-about-custom-components 301
/custom/index* /guides/contributing#a-note-about-custom-components 301
/custom/spi* /guides/contributing#a-note-about-custom-components 301
/custom/uart* /guides/contributing#a-note-about-custom-components 301

/cookbook/brilliant-mirabella-genio-smart-plugs.html https://devices.esphome.io/devices/Mirabella-Genio-Wi-Fi-1-USB 301
/cookbook/zemismart-rgbw-downlights.html https://devices.esphome.io/devices/Zemismart-LED-RGBWW-Downlight 301
/cookbook/relay.html https://devices.esphome.io/devices/Generic-Relay 301
Expand Down
Binary file added _static/changelog-2025.2.0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion _static/version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2024.12.4
2025.2.0b1
2 changes: 2 additions & 0 deletions automations/all_actions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,12 @@
- **logger:** ``log``
- **max6956:** ``set_brightness_global``, ``set_brightness_mode``
- **media_player:** ``pause``, ``play``, ``play_media``, ``stop``, ``toggle``, ``volume_down``, ``volume_set``, ``volume_up``
- **media_player.speaker:** ``play_on_device_media_file``
- **mhz19:** ``abc_disable``, ``abc_enable``, ``calibrate_zero``
- **micro_wake_word:** ``start``, ``stop``
- **microphone:** ``capture``, ``stop_capture``
- **midea_ac:** ``beeper_off``, ``beeper_on``, ``display_toggle``, ``follow_me``, ``power_off``, ``power_on``, ``power_toggle``, ``swing_step``
- **mixer_speaker:** ``apply_ducking``
- **mqtt:** ``publish``, ``publish_json``
- **number:** ``decrement``, ``increment``, ``operation``, ``set``, ``to_max``, ``to_min``
- **output:** ``set_level``, ``turn_off``, ``turn_on``
Expand Down
297 changes: 297 additions & 0 deletions changelog/2025.2.0.rst

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion changelog/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Changelog
=========

.. redirect::
:url: /changelog/2024.12.0.html
:url: /changelog/2025.2.0.html

.. toctree::
:glob:
Expand Down
2 changes: 1 addition & 1 deletion changelog/v1.14.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,7 @@ Notable Changes & New Features
generated using automated scripts. This is a big step towards making the API more flexible, for
example cross-device communication (:esphomepr:`633`).
- New class :apiclass:`api::CustomAPIDevice` to declare user-defined services straight from custom components.
See the updated :doc:`custom component guide </custom/custom_component>`.
See the updated custom component guide.
- :ref:`Sensors <config-sensor>` have a new ``force_update`` option (:esphomepr:`783`).
- Add GPIO Switch :ref:`interlock_wait_time <switch-gpio-interlocking>` (:esphomepr:`777`).
- Add a configurable priority for WiFi network selection (:esphomepr:`658`, :doc:`docs </components/wifi>`).
Expand Down
15 changes: 6 additions & 9 deletions components/animation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ It adds additional lambda methods: ``next_frame()``, ``prev_frame()`` and ``set_
- file: "animation.gif"
id: my_animation
resize: 100x100
type: RGB565

The animation can be rendered just like the image component with the ``image()`` function of the display component.

Expand Down Expand Up @@ -50,18 +51,15 @@ Configuration variables:
in your display code.
- **resize** (*Optional*, string): If set, this will resize all the frames to fit inside the given dimensions ``WIDTHxHEIGHT``
and preserve the aspect ratio.
- **type** (*Optional*): Specifies how to encode each frame internally. Defaults to ``BINARY``.
- **type** (**Required**): Specifies how to encode image internally. See the :ref:`image component <display-image>` for more information.

- ``BINARY``: Two colors, suitable for 1 color displays or 2 color image in color displays. Uses 1 bit
per pixel, 8 pixels per byte.
- ``TRANSPARENT_BINARY``: One color, any pixel that is fully transparent will not be drawn, and any other pixel
will be the on color. Uses 1 bit per pixel, 8 pixels per byte.
per pixel, 8 pixels per byte. Only ``chroma_key`` transparency is available.
- ``GRAYSCALE``: Full scale grey. Uses 8 bits per pixel, 1 pixel per byte.
- ``RGB565``: Lossy RGB color stored. Uses 2 bytes per pixel.
- ``RGB24``: Full RGB color stored. Uses 3 bytes per pixel.
- ``RGBA``: Full RGB color stored. Uses 4 bytes per pixel. Any pixel with an alpha value < 127 will not be drawn.
- ``RGB565``: Lossy RGB color stored. Uses 2 bytes per pixel, 3 with an alpha channel.
- ``RGB``: Full RGB color stored. Uses 3 bytes per pixel, 4 with an alpha channel.

- **use_transparency** (*Optional*): If set the alpha channel of the input image will be taken into account, and pixels with alpha < 127 will not be drawn. For image types without explicit alpha channel, the color (0, 0, 1) (very dark blue) will be mapped to black, to be able to store transparency information within the image. Explicitly transparent types (``TRANSPARENT_BINARY`` and ``RGBA``) default to ``True`` and cannot be set to ``False``; other types default to ``False``.
- **transparency** (*Optional*): If set the alpha channel of the input image will be taken into account. The possible values are ``opaque`` (default), ``chroma_key`` and ``alpha_channel``. See discussion on transparency in the :ref:`image component <display-image>`.
- **loop** (*Optional*): If you want to loop over a subset of your animation (e.g. a fire animation where the fire "starts", then "burns" and "dies") you can specify some frames to loop over.

- **start_frame** (*Optional*, int): The frame to loop back to when ``end_frame`` is reached. Defaults to the first frame in the animation.
Expand All @@ -83,4 +81,3 @@ Actions:

- **id** (**Required**, :ref:`config-id`): The ID of the animation to animate.
- **frame** (**Required**, int): The frame index to show next.

2 changes: 2 additions & 0 deletions components/api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -295,6 +295,8 @@ if logs are shown remotely.
then:
- logger.log: API is connected!

The lambda equivalent for this is ``id(api_id).is_connected()``.

.. _api-device-actions:

User-defined Actions
Expand Down
73 changes: 73 additions & 0 deletions components/audio_adc/es7210.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
ES7210
======

.. seo::
:description: Instructions for using ESPHome's ES7210 platform to configure microphone inputs.
:image: es7210.svg
:keywords: ES7210, Audio, ADC, I2S, ESP32

The ``es7210`` platform allows your ESPHome devices to use the ES7210 high performance four channel audio ADC
(`datasheet <http://www.everest-semi.com/pdf/ES7210%20PB.pdf>`__).
This allows attached microphones to be used as a microphone input via :doc:`/components/microphone/i2s_audio`.

The :ref:`I²C bus <i2c>` is required in your configuration as this is used to communicate with the ES7210.

.. code-block:: yaml

# Example configuration entry
audio_adc:
- platform: es7210

.. _config-es7210:

Configuration variables:
------------------------

- **bits_per_sample** (*Optional*, enum): The bit depth of the audio samples. One of ``16bit``, ``24bit`` or ``32bit``.
Defaults to ``16bit``.
- **mic_gain** (*Optional*, enum): The gain applied to the ADC microphones. One of ``0DB``, ``3DB``, ``6DB``, ``9DB``,
``12DB``, ``15DB``, ``18DB``, ``21DB``, ``24DB``, ``27DB``, ``30DB``, ``33DB``, ``34.5DB``, ``36DB``, or ``37.5DB``.
Defaults to ``24DB``.
- **sample_rate** (*Optional*, positive integer): I2S sample rate. Defaults to ``16000``.
- **address** (*Optional*, int): The I²C address of the driver. Defaults to ``0x40``.
- **i2c_id** (*Optional*): The ID of the :ref:`I²C bus <i2c>` the ES7210 is connected to.
- All other options from :ref:`Audio ADC <config-audio_adc>`.

Automations
-----------

All :ref:`Audio ADC Automations <automations-audio_adc>` are supported by this platform.

Configuration Examples
----------------------

**ESP32 S3 Box 3**:

.. code-block:: yaml

audio_adc:
- platform: es7210
id: es7210_adc
bits_per_sample: 16bit
sample_rate: 16000

i2s_audio:
- id: i2s_audio_bus
i2s_lrclk_pin: GPIO45
i2s_bclk_pin: GPIO17
i2s_mclk_pin: GPIO2

microphone:
- platform: i2s_audio
id: box_mic
sample_rate: 16000
i2s_din_pin: GPIO16
bits_per_sample: 16bit
adc_type: external

See Also
--------

- :doc:`index`
- :apiref:`es7210/es7210.h`
- :ghedit:`Edit`
68 changes: 68 additions & 0 deletions components/audio_adc/es7243e.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
ES7243E
=======

.. seo::
:description: Instructions for using ESPHome's ES7243E platform to configure microphone inputs.
:image: es7243e.svg
:keywords: ES7243E, Audio, ADC, I2S, ESP32

The ``es7243e`` platform allows your ESPHome devices to use the ES7243E high performance four channel audio ADC
(`datasheet <https://www.lcsc.com/datasheet/lcsc_datasheet_2410121611_Everest-semi-Everest-Semiconductor-ES7243E_C2929446.pdf>`__).
This allows attached microphones to be used as a microphone input via :doc:`/components/microphone/i2s_audio`.

The :ref:`I²C bus <i2c>` is required in your configuration as this is used to communicate with the ES7243e.

.. code-block:: yaml

# Example configuration entry
audio_adc:
- platform: es7243e

.. _config-es7243e:

Configuration variables:
------------------------

- **mic_gain** (*Optional*, enum): The gain applied to the ADC microphones. One of ``0DB``, ``3DB``, ``6DB``, ``9DB``,
``12DB``, ``15DB``, ``18DB``, ``21DB``, ``24DB``, ``27DB``, ``30DB``, ``33DB``, ``34.5DB``, ``36DB``, or ``37.5DB``.
Defaults to ``24DB``.
- **address** (*Optional*, int): The I²C address of the driver. Defaults to ``0x40``.
- **i2c_id** (*Optional*): The ID of the :ref:`I²C bus <i2c>` the ES7243e is connected to.
- All other options from :ref:`Audio ADC <config-audio_adc>`.

Automations
-----------

All :ref:`Audio ADC Automations <automations-audio_adc>` are supported by this platform.

Configuration Examples
----------------------

**ESP32 S3 Box Lite**:

.. code-block:: yaml

audio_adc:
- platform: es7243e
id: es7243e_adc

i2s_audio:
- id: i2s_audio_bus
i2s_lrclk_pin: GPIO47
i2s_bclk_pin: GPIO17
i2s_mclk_pin: GPIO2

microphone:
- platform: i2s_audio
id: box_mic
sample_rate: 16000
i2s_din_pin: GPIO16
bits_per_sample: 16bit
adc_type: external

See Also
--------

- :doc:`index`
- :apiref:`es7243e/es7243e.h`
- :ghedit:`Edit`
53 changes: 53 additions & 0 deletions components/audio_adc/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
Audio ADC Core
==============

.. seo::
:description: Instructions for using ESPHome's Audio ADC Core component.
:image: i2s_audio.svg
:keywords: Audio, ADC, I2S, ESP32

The `audio_adc` component allows your ESPHome devices to use audio ADC hardware components, allowing the
capture/recording of audio via the microcontroller from a range of sources.

.. code-block:: yaml

# Example configuration entry
audio_adc:
- platform: ...

Platforms
---------

.. toctree::
:maxdepth: 1
:glob:

*

.. _config-audio_adc:

Configuration variables:
------------------------

- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.

.. _automations-audio_adc:

Automations
-----------

``audio_adc.set_mic_gain`` Action
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This action sets the (microphone) gain of the ADC.

Configuration variables:

- **id** (**Required**, :ref:`config-id`): The ID of the ``audio_adc`` platform.
- **mic_gain** (**Required**, percentage, :ref:`templatable <config-templatable>`): The desired gain level in decibels
for the input.

See Also
--------

- :ghedit:`Edit`
75 changes: 75 additions & 0 deletions components/audio_dac/es8156.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
ES8156
======

.. seo::
:description: Instructions for using ESPHome's ES8156 audio DAC platform to play media from your devices.
:image: es8156.svg
:keywords: ES8156, Audio, DAC, I2S, ESP32

The ``es8156`` platform allows your ESPHome devices to use the ES8156 low power mono audio codec.
This allows the playback of audio via the microcontroller from a range of sources via :doc:`/components/speaker/index` or
:doc:`/components/media_player/index`.

The :ref:`I²C bus <i2c>` is required in your configuration as this is used to communicate with the ES8156.

.. code-block:: yaml

# Example configuration entry
audio_dac:
- platform: es8156

.. _config-es8156:

Configuration variables:
------------------------

- **address** (*Optional*, int): The I²C address of the driver. Defaults to ``0x18``.
- **i2c_id** (*Optional*): The ID of the :ref:`I²C bus <i2c>` the ES8156 is connected to.
- All other options from :ref:`Audio DAC <config-audio_dac>`.

Automations
-----------

All :ref:`Audio DAC Automations <automations-audio_dac>` are supported by this platform.

Configuration Examples
----------------------

**ESP32 S3 Box 3 Lite**:

.. code-block:: yaml

audio_dac:
- platform: es8156
id: es8156_dac

i2s_audio:
- id: i2s_output
i2s_lrclk_pin: GPIO47
i2s_bclk_pin: GPIO17
i2s_mclk_pin: GPIO2

speaker:
- platform: i2s_audio
i2s_audio_id: i2s_output
id: speaker_id
i2s_dout_pin: GPIO15
dac_type: external
sample_rate: 16000
bits_per_sample: 16bit
channel: stereo
audio_dac: es8156_dac

switch:
- platform: gpio
name: "Speaker Enable"
pin: GPIO46
restore_mode: RESTORE_DEFAULT_ON

See Also
--------

- :doc:`index`
- :apiref:`es8156/es8156.h`
- :apiref:`audio_dac/audio_dac.h`
- :ghedit:`Edit`
Loading