Skip to content

Commit 0edb4d0

Browse files
authored
Merge branch 'next' into feat/add-support-for-wts01
2 parents e90b2ef + 965aba9 commit 0edb4d0

File tree

12 files changed

+167
-15
lines changed

12 files changed

+167
-15
lines changed

content/changelog/2025.9.0.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ developer tools while maintaining backward compatibility for most use cases.
2121
**Key Highlights:**
2222

2323
- **MIPI RGB Display support** for high-performance color displays with dedicated hardware acceleration
24+
- **ESPHome Builder improvements** with support for uploading existing YAML files and blank configurations
2425
- **Camera JPEG encoder** enabling efficient image compression and streaming capabilities
2526
- **Enhanced NRF52 features** including DFU (Device Firmware Update) support
2627
- **Extensive memory optimizations** reducing flash and RAM usage across all platforms
@@ -62,6 +63,15 @@ ESPHome 2025.9.0 introduces comprehensive support for MIPI RGB displays through
6263
MIPI RGB displays offer superior performance for applications requiring high-quality graphics, smooth animations, and
6364
professional-grade user interfaces.
6465

66+
## ESPHome Builder Enhancements
67+
68+
The ESPHome Builder web interface now offers improved flexibility for getting started with your projects:
69+
70+
**New Capabilities:**
71+
72+
- **Upload existing YAML files** to continue working on configurations created elsewhere
73+
- **Start with a blank configuration** for complete customization from scratch
74+
6575
## Camera JPEG Encoder
6676

6777
The new {{< docref "/components/camera/camera_encoder" >}} component adds efficient JPEG compression capabilities to
@@ -148,6 +158,18 @@ and advanced setups may require updates.
148158

149159
<!-- markdownlint-disable MD013 -->
150160

161+
## Release 2025.9.1 - September 19
162+
163+
<details>
164+
<summary></summary>
165+
166+
- [mqtt] Fix KeyError when MQTT logging configured without explicit level [esphome#10774](https://github.com/esphome/esphome/pull/10774) by [@bdraco](https://github.com/bdraco)
167+
- fix(packet_transport): Add initialization for sensor configuration in packet transport [esphome#10765](https://github.com/esphome/esphome/pull/10765) by [@TMaYaD](https://github.com/TMaYaD)
168+
- [core] Fix ESP8266 mDNS compilation failure caused by incorrect coroutine priorities [esphome#10773](https://github.com/esphome/esphome/pull/10773) by [@bdraco](https://github.com/bdraco)
169+
- [gpio] Fix unused function warnings when compiling with log level below DEBUG [esphome#10779](https://github.com/esphome/esphome/pull/10779) by [@bdraco](https://github.com/bdraco)
170+
171+
</details>
172+
151173
## Full list of changes
152174

153175
### New Features

content/components/_index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1050,6 +1050,7 @@ ESPHome to cellular networks. **Does not encompass Wi-Fi.**
10501050
"Status LED","components/status_led","led-on.svg","dark-invert"
10511051
"Sun","components/sun","weather-sunny.svg","dark-invert"
10521052
"Tuya MCU","components/tuya","tuya.png",""
1053+
"Z-Wave Proxy","components/zwave_proxy","z-wave.svg",""
10531054
{{< /imgtable >}}
10541055

10551056
## Cookbook

content/components/bluetooth_proxy.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,10 +51,9 @@ bluetooth_proxy:
5151
```
5252

5353
- **active** (*Optional*, boolean): Enables proxying active connections. Defaults to `true`.
54-
- **cache_services** (*Optional*, boolean): Enables caching GATT services in NVS flash storage which significantly speeds up active connections. Defaults to `true` when using the ESP-IDF framework.
54+
- **cache_services** (*Optional*, boolean): Enables caching GATT services in NVS flash storage which significantly speeds up active connections. Defaults to `true`.
5555
- **connection_slots** (*Optional*, int): The maximum number of BLE connection slots to use.
56-
Each configured slot consumes ~1KB of RAM. This can only be adjusted when using
57-
the `esp-idf` framework up to a maximum of `9`. It is recommended not to exceed `5`
56+
Each configured slot consumes ~1KB of RAM, with a maximum of `9`. It is recommended not to exceed `5`
5857
connection slots to avoid memory issues. Defaults to `3`.
5958
The value must not exceed the total configured `max_connections`
6059
for {{< docref "esp32_ble_tracker/" >}}.

content/components/esp32_ble.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ The `disable_bt_logs` option intelligently disables only the Bluetooth logging c
5454

5555
{{< /note >}}
5656

57-
- **connection_timeout** (*Optional*, [Time](#config-time)): The maximum time to wait for a BLE connection to be established. Only available when using ESP-IDF framework. Defaults to `20s`.
57+
- **connection_timeout** (*Optional*, [Time](#config-time)): The maximum time to wait for a BLE connection to be established. Defaults to `20s`.
5858

5959
- Range: 10 to 180 seconds
6060
- This timeout should align with the timeout used by your BLE client software to prevent connection slot waste
@@ -72,7 +72,7 @@ The `advertising` option is an advanced feature that manually enables BLE advert
7272
{{< /note >}}
7373

7474
- **advertising_cycle_time** (*Optional*, [Time](#config-time)): The time interval for cycling through multiple advertisements. Only applicable when advertising is enabled. Defaults to `10s`.
75-
- **max_notifications** (*Optional*, integer): The maximum number of BLE characteristics that can have notifications enabled across all connections. Only available when using ESP-IDF framework. Defaults to `12`.
75+
- **max_notifications** (*Optional*, integer): The maximum number of BLE characteristics that can have notifications enabled across all connections. Defaults to `12`.
7676

7777
- Range: 1 to 64
7878
- This is a global limit shared across all BLE connections

content/components/esp32_ble_tracker.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,7 @@ you can use OTA updates again.
9999
- **id** (*Optional*, [ID](#config-id)): Manually specify the ID for this ESP32 BLE Hub.
100100
- **max_connections** (*Optional*, int): The maximum number of BLE connection slots to use.
101101
Each configured slot consumes ~1KB of RAM. It is recommended not to exceed `5`
102-
connection slots to avoid memory issues. Defaults to `3`.
103-
This can only be adjusted when using the `esp-idf` framework up to a maximum of `9`.
102+
connection slots to avoid memory issues. Defaults to `3`, with a maximum of `9`.
104103
This value cannot exceed the total number of `connection_slots` for the
105104
{{< docref "bluetooth_proxy/" >}} component combined with the total
106105
configured {{< docref "ble_client/" >}} instances.
Lines changed: 1 addition & 0 deletions
Loading

content/components/substitutions.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,21 @@ In addition to the Jinja expressions, ESPHome supports a number of built-in func
151151

152152
{{< anchor "substitute-include-variables" >}}
153153

154+
## Disabling Jinja and substitutions
155+
156+
You can prevent ESPHome from substituting variables or processing Jinja by means of the `!literal` tag before any value:
157+
158+
```yaml
159+
substitutions:
160+
value: "Test Value"
161+
lvgl:
162+
widgets:
163+
- label:
164+
text: !literal "This is a ${value}"
165+
```
166+
167+
In the above example, the value of the `text` property will be, literally, `This is a ${value}`.
168+
154169
## Substitute !include variables
155170

156171
ESPHome's `!include` accepts a list of variables that can be substituted within the included file.

content/components/touchscreen/ektf2232.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,13 @@ The [I²C](#i2c) is required to be set up in your configuration for this sensor
1616
touchscreen:
1717
- platform: ektf2232
1818
interrupt_pin: GPIOXX
19-
rts_pin: GPIOXX
19+
reset_pin: GPIOXX
2020
```
2121
2222
## Configuration variables
2323
2424
- **id** (*Optional*, [ID](#config-id)): Manually set the ID of this touchscreen.
25-
- **rts_pin** (*Optional*, [Pin Schema](#config-pin_schema)): The reset pin of the controller.
25+
- **reset_pin** (*Optional*, [Pin Schema](#config-pin_schema)): The reset pin of the controller.
2626
- **interrupt_pin** (*Optional*, [Pin Schema](#config-pin_schema)): The touch detection pin.
2727
2828
- All other options from [Base Touchscreen Configuration](#config-touchscreen).

content/components/uart.md

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,17 @@ uart:
6565
- **rx_pin** (*Optional*, [Pin](#config-pin)): The pin to receive data on from the ESP's perspective. Use the full pin
6666
schema and set `inverted: true` to invert logic levels. Not supported by host platform.
6767

68+
- **flow_control_pin** (*Optional*, [Pin](#config-pin)): ESP32 only. The pin used to for hardware RS485 flow control.
69+
Use of this setting enables half-duplex mode. Use the full pin schema and set `inverted: true` to invert logic levels.
70+
6871
- **port** (*Optional*, string): Host platform only. Unix style name of the port to use.
6972
- **rx_buffer_size** (*Optional*, int): The size of the buffer used for receiving UART messages. Increase if you use an
7073
integration that needs to read big payloads from UART. Defaults to `256`.
7174

75+
- **rx_full_threshold** (*Optional*, int): ESP32 only. After receiving this number of bytes, the data becomes available for processing.
76+
The default is calculated at compilation time to be approximately ten milliseconds (about 8 bytes at 9600 baud, 114 bytes at 115200 baud).
77+
78+
- **rx_timeout** (*Optional*, int): ESP32 only. This value specifies a number of bytes used to determine the duration of the timeout. The duration of the timeout is based on the amount of time it would take to receive this number of bytes. In other words, for a given value and baud rate, doubling the baud rate will halve the duration of the timeout. After the timeout has elapsed, the data becomes available for processing. Defaults to ``2``.
7279
- **data_bits** (*Optional*, int): The number of data bits used on the UART bus. Options: 5 to 8. Defaults to 8.
7380
- **parity** (*Optional*): The parity used on the UART bus. Options: `NONE`, `EVEN`, `ODD`. Defaults to `NONE`.
7481
- **stop_bits** (*Optional*, int): The number of stop bits to send. Options: 1, 2. Defaults to 1.
@@ -88,8 +95,8 @@ be accurate at higher baud rates.
8895
logger and leave others available. If you have configured the logger to use a different hardware UART, the pins
8996
used for hardware sharing change accordingly.
9097

91-
The ESP32 has three UARTs. ESP32 lite variant chips (ESP32-C3, ESP32-S2, ESP32-S3, etc) may have fewer UARTs
92-
(usually two). Any pair of GPIO pins can be used, as long as they support the proper output/input modes.
98+
The original ESP32 has three UARTs. ESP32 variants (ESP32-C3, ESP32-S2, etc.) may have a different number of UARTs
99+
(usually between two to six). Any pair of GPIO pins can be used, as long as they support the proper output/input modes.
93100

94101
The ESP8266 has two UARTs; the second of which is TX-only. Only a limited set of pins can be used. `UART0` may
95102
use either `tx_pin: GPIO1` and `rx_pin: GPIO3`, or `tx_pin: GPIO15` and `rx_pin: GPIO13`. `UART1` must
@@ -213,6 +220,10 @@ Below are the methods to read current settings and modify them dynamically:
213220
```cpp
214221
// RX buffer size
215222
id(my_uart).get_rx_buffer_size();
223+
// RX FIFO full threshold
224+
id(my_uart).get_rx_full_threshold();
225+
// RX timeout
226+
id(my_uart).get_rx_timeout();
216227
// Stop bits
217228
id(my_uart).get_stop_bits();
218229
// Data bits
@@ -261,11 +272,18 @@ Below are the methods to read current settings and modify them dynamically:
261272
Available methods for runtime changes:
262273

263274
```cpp
264-
// Set TX/RX pins
275+
// Set TX/RX/Flow control pins
265276
id(my_uart).set_tx_pin(InternalGPIOPin *tx_pin);
266277
id(my_uart).set_rx_pin(InternalGPIOPin *rx_pin);
278+
id(my_uart).set_flow_control_pin(InternalGPIOPin *flow_control_pin);
267279
// RX buffer size
268280
id(my_uart).set_rx_buffer_size(size_t rx_buffer_size);
281+
// RX FIFO full threshold (in bytes units)
282+
id(my_uart).set_rx_full_threshold(size_t rx_full_threshold);
283+
// RX FIFO full threshold (in time units)
284+
id(my_uart).set_rx_full_threshold_ms(uint8_t time);
285+
// RX timeout
286+
id(my_uart).set_rx_timeout(size_t rx_timeout);
269287
// Stop bits
270288
id(my_uart).set_stop_bits(uint8_t stop_bits);
271289
// Data bits

content/components/wifi.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,8 +104,8 @@ wifi:
104104
- **passive_scan** (*Optional*, boolean): If enabled, then the device will perform WiFi scans in a passive fashion.
105105
Defaults to `false`.
106106

107-
- **enable_btm** (*Optional*, bool): Only on `esp32` with `esp-idf`. Enable 802.11v BSS Transition Management support.
108-
- **enable_rrm** (*Optional*, bool): Only on `esp32` with `esp-idf`. Enable 802.11k Radio Resource Management support.
107+
- **enable_btm** (*Optional*, bool): Only on `esp32`. Enable 802.11v BSS Transition Management support.
108+
- **enable_rrm** (*Optional*, bool): Only on `esp32`. Enable 802.11k Radio Resource Management support.
109109

110110
- **on_connect** (*Optional*, [Automation](#automation)): An action to be performed when a connection is established.
111111
- **on_disconnect** (*Optional*, [Automation](#automation)): An action to be performed when the connection is dropped.

0 commit comments

Comments
 (0)