1
0

Compare commits

..

116 Commits

16 changed files with 450 additions and 438 deletions

View File

@@ -15,45 +15,47 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
continue-on-error: true continue-on-error: true
steps: steps:
- uses: actions/checkout@v4.0.0 - uses: actions/checkout@v4.1.5
- uses: actions/setup-python@v4 - uses: actions/setup-python@v5.1.0
with: with:
python-version: '3.x' python-version: "3.11"
- run: pip install -r script/requirements.txt - run: pip install -r script/requirements.txt
- run: script/bump-version.py ${{ github.event.inputs.version }} - run: script/bump-version.py ${{ github.event.inputs.version }}
- name: Write Beta changelog - name: Write Beta changelog
run: | if: ${{ !contains(github.event.inputs.version, 'dev') }}
cat > esphome-beta/CHANGELOG.md << 'EOF' run: |
## ${{ github.event.inputs.version }} cat > esphome-beta/CHANGELOG.md << 'EOF'
## ${{ github.event.inputs.version }}
${{ github.event.inputs.content }} ${{ github.event.inputs.content }}
EOF EOF
- name: Write Stable changelog - name: Write Stable changelog
if: ${{ !contains(github.event.inputs.version, 'b') }} if: ${{ !contains(github.event.inputs.version, 'b') && !contains(github.event.inputs.version, 'dev') }}
run: | run: |
cat > esphome/CHANGELOG.md << 'EOF' cat > esphome/CHANGELOG.md << 'EOF'
## ${{ github.event.inputs.version }} ## ${{ github.event.inputs.version }}
${{ github.event.inputs.content }} ${{ github.event.inputs.content }}
EOF EOF
- name: Commit version bump - name: Commit version bump
id: commit_version id: commit_version
run: | run: |
git config user.name esphomebot git config user.name esphomebot
git config user.email esphome@nabucasa.com git config user.email esphome@nabucasa.com
git add . git add .
git commit -m "Bump version to ${{ github.event.inputs.version }}" git commit -m "Bump version to ${{ github.event.inputs.version }}"
git push git push
COMMIT=$(git rev-parse HEAD) COMMIT=$(git rev-parse HEAD)
echo "::set-output name=commit_sha::${COMMIT}" echo "::set-output name=commit_sha::${COMMIT}"
- name: Create a Release - name: Create a Release
uses: actions/create-release@v1.1.4 uses: actions/create-release@v1.1.4
continue-on-error: true continue-on-error: true
env: if: ${{ !contains(github.event.inputs.version, 'dev') }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} env:
with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
tag_name: ${{ github.event.inputs.version }} with:
release_name: ${{ github.event.inputs.version }} tag_name: ${{ github.event.inputs.version }}
body: ${{ github.event.inputs.content }} release_name: ${{ github.event.inputs.version }}
prerelease: ${{ contains(github.event.inputs.version, 'b') }} body: ${{ github.event.inputs.content }}
commitish: ${{ steps.commit_version.outputs.commit_sha }} prerelease: ${{ contains(github.event.inputs.version, 'b') }}
commitish: ${{ steps.commit_version.outputs.commit_sha }}

View File

@@ -19,20 +19,20 @@ jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4.0.0 - uses: actions/checkout@v4.1.5
- name: Log in to the GitHub container registry - name: Log in to the GitHub container registry
uses: docker/login-action@v2.2.0 uses: docker/login-action@v3.1.0
if: github.event_name != 'pull_request' if: github.event_name != 'pull_request'
with: with:
registry: ghcr.io registry: ghcr.io
username: ${{ github.repository_owner }} username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }} password: ${{ secrets.GITHUB_TOKEN }}
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v2.2.0 uses: docker/setup-qemu-action@v3.0.0
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2.10.0 uses: docker/setup-buildx-action@v3.3.0
- name: Build and Push - name: Build and Push
uses: docker/build-push-action@v4.1.1 uses: docker/build-push-action@v5.3.0
with: with:
context: . context: .
file: .devcontainer/Dockerfile file: .devcontainer/Dockerfile

View File

@@ -19,16 +19,16 @@ jobs:
channel: dev channel: dev
steps: steps:
- name: ⤵️ Check out code from GitHub - name: ⤵️ Check out code from GitHub
uses: actions/checkout@v4.0.0 uses: actions/checkout@v4.1.5
- name: 🛠 Setup Python - name: 🛠 Setup Python
uses: actions/setup-python@v4 uses: actions/setup-python@v5.1.0
with: with:
python-version: '3.x' python-version: '3.11'
- name: 🛠 Install dependencies - name: 🛠 Install dependencies
run: pip install -r script/requirements.txt run: pip install -r script/requirements.txt
- name: 🛠 Generate files from template - name: 🛠 Generate files from template
run: python script/generate.py ${{ matrix.channels.channel }} run: python script/generate.py ${{ matrix.channels.channel }}
- name: 🚀 Run Home Assistant Add-on Lint on ${{ matrix.channels.channel }} - name: 🚀 Run Home Assistant Add-on Lint on ${{ matrix.channels.channel }}
uses: frenck/action-addon-linter@v2.13.2 uses: frenck/action-addon-linter@v2.15.1
with: with:
path: "./${{ matrix.channels.folder }}" path: "./${{ matrix.channels.folder }}"

View File

@@ -1,149 +1,188 @@
## 2023.9.0 ## 2024.5.0
## Full list of changes ## Full list of changes
### New Components ### New Components
- Add pmwcs3 capacitive soil moisture & temperature sensor component [esphome#4624](https://github.com/esphome/esphome/pull/4624) by [@SeByDocKy](https://github.com/SeByDocKy) (new-integration) - Add valve component [esphome#6447](https://github.com/esphome/esphome/pull/6447) by [@kbx81](https://github.com/kbx81) (new-integration)
- Support for LibreTiny platform (RTL8710, BK7231 & other modules) [esphome#3509](https://github.com/esphome/esphome/pull/3509) by [@kuba2k2](https://github.com/kuba2k2) (new-integration) - Add the WeiKai SPI/I2C UART/IO Expander components to esphome [esphome#5218](https://github.com/esphome/esphome/pull/5218) by [@DrCoolzic](https://github.com/DrCoolzic) (new-integration)
- Adding DFRobot Ozone Sensor Support (sen0321) [esphome#4782](https://github.com/esphome/esphome/pull/4782) by [@notjj](https://github.com/notjj) (new-integration) - Event entity support [esphome#6451](https://github.com/esphome/esphome/pull/6451) by [@nohat](https://github.com/nohat) (new-integration)
- Integration LightwaveRF switches [esphome#4812](https://github.com/esphome/esphome/pull/4812) by [@max246](https://github.com/max246) (new-integration) - SPI and I2C for BMP390 and BMP380 [esphome#6652](https://github.com/esphome/esphome/pull/6652) by [@latonita](https://github.com/latonita) (new-integration) (breaking-change)
- Refactor SPI code; Add ESP-IDF hardware support [esphome#5311](https://github.com/esphome/esphome/pull/5311) by [@clydebarrow](https://github.com/clydebarrow) (new-integration)
- Add BMI160 support [esphome#5143](https://github.com/esphome/esphome/pull/5143) by [@flaviut](https://github.com/flaviut) (new-integration)
- Native SPI RGB LED component [esphome#5288](https://github.com/esphome/esphome/pull/5288) by [@clydebarrow](https://github.com/clydebarrow) (new-integration)
- Wireguard component [esphome#4256](https://github.com/esphome/esphome/pull/4256) by [@lhoracek](https://github.com/lhoracek) (new-integration)
### Breaking Changes ### Breaking Changes
- Synchronise Device Classes from Home Assistant [esphome#5328](https://github.com/esphome/esphome/pull/5328) by [@esphomebot](https://github.com/esphomebot) (breaking-change) - Add DNS sensor and simplify format [esphome#6450](https://github.com/esphome/esphome/pull/6450) by [@HeMan](https://github.com/HeMan) (breaking-change)
- Use /data directory for .esphome folder when running as HA add-on [esphome#5374](https://github.com/esphome/esphome/pull/5374) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - SM2135 - Use standard channel ordering. [esphome#6573](https://github.com/esphome/esphome/pull/6573) by [@Cossid](https://github.com/Cossid) (breaking-change)
- [sn74hc595] Enforce type field to distinguish gpio vs spi mode [esphome#6609](https://github.com/esphome/esphome/pull/6609) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Add datetime entities [esphome#6513](https://github.com/esphome/esphome/pull/6513) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- SPI and I2C for BMP390 and BMP380 [esphome#6652](https://github.com/esphome/esphome/pull/6652) by [@latonita](https://github.com/latonita) (new-integration) (breaking-change)
### Beta Changes ### Beta Changes
- Add patch to apt install [esphome#5389](https://github.com/esphome/esphome/pull/5389) by [@synesthesiam](https://github.com/synesthesiam) - [github] Upgrade to actions/[upload,download]-artifact v4 [esphome#6698](https://github.com/esphome/esphome/pull/6698) by [@jesserockz](https://github.com/jesserockz)
- Fix Waveshare 7.5v2 epaper screens are always powered on [esphome#5283](https://github.com/esphome/esphome/pull/5283) by [@phoenixswiss](https://github.com/phoenixswiss) - [nextion] Replace flags to `USE_ARDUINO` [esphome#6700](https://github.com/esphome/esphome/pull/6700) by [@edwardtfn](https://github.com/edwardtfn)
- Update radon_eye_listener.cpp [esphome#5401](https://github.com/esphome/esphome/pull/5401) by [@rmmacias](https://github.com/rmmacias) - [remote_receiver, remote_transmitter] Improve error messages on the ESP32 [esphome#6701](https://github.com/esphome/esphome/pull/6701) by [@Mat931](https://github.com/Mat931)
- Add shelly-dimmer-stm32 51.7 to known versions [esphome#5400](https://github.com/esphome/esphome/pull/5400) by [@trvrnrth](https://github.com/trvrnrth) - [ethernet] Use constexpr instead of inline define for KSZ80XX_PC2R_REG_ADDR [esphome#6705](https://github.com/esphome/esphome/pull/6705) by [@jesserockz](https://github.com/jesserockz)
- Add E-Trailer Gaslevel support to Mopeka Std Check [esphome#5397](https://github.com/esphome/esphome/pull/5397) by [@Phhere](https://github.com/Phhere) - Add PHY register writes to enable external clock on Ethernet with RTL8201 [esphome#6704](https://github.com/esphome/esphome/pull/6704) by [@heythisisnate](https://github.com/heythisisnate)
- fix disabled wifi power on 8266 [esphome#5409](https://github.com/esphome/esphome/pull/5409) by [@ssieb](https://github.com/ssieb) - Bump recommended ESP-IDF to 4.4.7 [esphome#6703](https://github.com/esphome/esphome/pull/6703) by [@bdraco](https://github.com/bdraco)
- fix handling of web server version [esphome#5405](https://github.com/esphome/esphome/pull/5405) by [@ssieb](https://github.com/ssieb) - [core] Ensure that a generated ID name is distinct from its type. [esphome#6706](https://github.com/esphome/esphome/pull/6706) by [@clydebarrow](https://github.com/clydebarrow)
- Climate preset fix [esphome#5407](https://github.com/esphome/esphome/pull/5407) by [@Jorre05](https://github.com/Jorre05) - [color] Fix crash when hex color parses as int, improve error reporting. [esphome#6707](https://github.com/esphome/esphome/pull/6707) by [@clydebarrow](https://github.com/clydebarrow)
- Remove Wi-Fi dependency from Midea component [esphome#5394](https://github.com/esphome/esphome/pull/5394) by [@AnthonyMaiorani](https://github.com/AnthonyMaiorani) - [github] Fix digest artifact name [esphome#6710](https://github.com/esphome/esphome/pull/6710) by [@jesserockz](https://github.com/jesserockz)
- http_request: Cleanups and safety improvements [esphome#5360](https://github.com/esphome/esphome/pull/5360) by [@kpfleming](https://github.com/kpfleming) - fix(ltr390): stuck ALS values when configured for ALS+UV readings [esphome#6723](https://github.com/esphome/esphome/pull/6723) by [@CodeInPolish](https://github.com/CodeInPolish)
- Make the pulse meter timeout on startup when no pulses are received [esphome#5388](https://github.com/esphome/esphome/pull/5388) by [@TrentHouliston](https://github.com/TrentHouliston) - Set FEATURE_API_AUDIO flag also if the speaker component is not used [esphome#6712](https://github.com/esphome/esphome/pull/6712) by [@gnumpi](https://github.com/gnumpi)
- Wizard: fix colored text in input prompts [esphome#5313](https://github.com/esphome/esphome/pull/5313) by [@kuba2k2](https://github.com/kuba2k2) - Bump platformio from 6.1.13 to 6.1.15 [esphome#6634](https://github.com/esphome/esphome/pull/6634) by [@dependabot[bot]](https://github.com/apps/dependabot)
- support keypads with pulldowns [esphome#5404](https://github.com/esphome/esphome/pull/5404) by [@ssieb](https://github.com/ssieb) - Fix ESPHOME_PROJECT_VERSION_30 [esphome#6731](https://github.com/esphome/esphome/pull/6731) by [@jesserockz](https://github.com/jesserockz)
- Fix SPI inverted clock on ESP8266 [esphome#5416](https://github.com/esphome/esphome/pull/5416) by [@clydebarrow](https://github.com/clydebarrow) - Voice-Assistant: Start-order change for VAD disabled: start va-pipeline when microphon… [esphome#6391](https://github.com/esphome/esphome/pull/6391) by [@gnumpi](https://github.com/gnumpi)
- [RP2040W] Fix WiFi bootloop upon LibreTiny support [esphome#5414](https://github.com/esphome/esphome/pull/5414) by [@hostcc](https://github.com/hostcc) - Add ANNOUNCING state to media_player. [esphome#6691](https://github.com/esphome/esphome/pull/6691) by [@gnumpi](https://github.com/gnumpi)
- dallas: limit addresses to 64 bits [esphome#5413](https://github.com/esphome/esphome/pull/5413) by [@oddstr13](https://github.com/oddstr13) - [adc] Fix 11db deprecation warning [esphome#6749](https://github.com/esphome/esphome/pull/6749) by [@jesserockz](https://github.com/jesserockz) (notable-change)
- Bump zeroconf from 0.108.0 to 0.112.0 [esphome#5392](https://github.com/esphome/esphome/pull/5392) by [@dependabot[bot]](https://github.com/apps/dependabot)
- LibreTiny: enable MQTT, bump to v1.4.1 [esphome#5419](https://github.com/esphome/esphome/pull/5419) by [@kuba2k2](https://github.com/kuba2k2) ### Notable Changes
- Wireguard keepalive remove uint16 type [esphome#5430](https://github.com/esphome/esphome/pull/5430) by [@glmnet](https://github.com/glmnet)
- Fix #4896 and #4903 [esphome#5433](https://github.com/esphome/esphome/pull/5433) by [@clydebarrow](https://github.com/clydebarrow) - [adc] Fix 11db deprecation warning [esphome#6749](https://github.com/esphome/esphome/pull/6749) by [@jesserockz](https://github.com/jesserockz) (notable-change)
### All changes ### All changes
- Updated my username in Code Owners [esphome#5247](https://github.com/esphome/esphome/pull/5247) by [@mreditor97](https://github.com/mreditor97) - Add some components to the new testing framework (H) [esphome#6179](https://github.com/esphome/esphome/pull/6179) by [@kbx81](https://github.com/kbx81)
- remote_base: change dumpers log level [esphome#5253](https://github.com/esphome/esphome/pull/5253) by [@dudanov](https://github.com/dudanov) - Added Htu21d model option [esphome#6511](https://github.com/esphome/esphome/pull/6511) by [@MRemy2](https://github.com/MRemy2)
- Add `libfreetype-dev` Debian package for armv7 Docker builds [esphome#5262](https://github.com/esphome/esphome/pull/5262) by [@pierlon](https://github.com/pierlon) - Add bk72xx base test file [esphome#6522](https://github.com/esphome/esphome/pull/6522) by [@jesserockz](https://github.com/jesserockz)
- Add delay before enabling ipv6 [esphome#5256](https://github.com/esphome/esphome/pull/5256) by [@HeMan](https://github.com/HeMan) - Add "log" alias for "logs" command [esphome#6519](https://github.com/esphome/esphome/pull/6519) by [@pzich](https://github.com/pzich)
- Bump zeroconf from 0.74.0 to 0.80.0 [esphome#5260](https://github.com/esphome/esphome/pull/5260) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add DNS sensor and simplify format [esphome#6450](https://github.com/esphome/esphome/pull/6450) by [@HeMan](https://github.com/HeMan) (breaking-change)
- Bump click from 8.1.6 to 8.1.7 [esphome#5272](https://github.com/esphome/esphome/pull/5272) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add all missing `remote_receiver` `on_...` tests [esphome#6524](https://github.com/esphome/esphome/pull/6524) by [@kbx81](https://github.com/kbx81)
- Remove support for ESP-IDF version < 4 [esphome#5261](https://github.com/esphome/esphome/pull/5261) by [@HeMan](https://github.com/HeMan) - Add actions to http_request tests [esphome#6529](https://github.com/esphome/esphome/pull/6529) by [@kbx81](https://github.com/kbx81)
- Add pmwcs3 capacitive soil moisture & temperature sensor component [esphome#4624](https://github.com/esphome/esphome/pull/4624) by [@SeByDocKy](https://github.com/SeByDocKy) (new-integration) - Update homeassistant component tests with actions [esphome#6528](https://github.com/esphome/esphome/pull/6528) by [@kbx81](https://github.com/kbx81)
- Add manufacturer data config to BLE server [esphome#5251](https://github.com/esphome/esphome/pull/5251) by [@clydebarrow](https://github.com/clydebarrow) - Define `USE_PSRAM` [esphome#6526](https://github.com/esphome/esphome/pull/6526) by [@edwardtfn](https://github.com/edwardtfn)
- Add support for ESP32-{S2,S3,C3} to debug component [esphome#4731](https://github.com/esphome/esphome/pull/4731) by [@jayme-github](https://github.com/jayme-github) - Bump black from 24.2.0 to 24.4.0 [esphome#6539](https://github.com/esphome/esphome/pull/6539) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Support for ESP32-C2 & ESP32-C6 [esphome#4377](https://github.com/esphome/esphome/pull/4377) by [@vidplace7](https://github.com/vidplace7) - Bump peter-evans/create-pull-request from 6.0.2 to 6.0.3 [esphome#6525](https://github.com/esphome/esphome/pull/6525) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump arduino-heatpumpir to v1.0.23 [esphome#5269](https://github.com/esphome/esphome/pull/5269) by [@rob-deutsch](https://github.com/rob-deutsch) - Bump python version in sync-device-classes workflow to 3.12 for HA [esphome#6541](https://github.com/esphome/esphome/pull/6541) by [@jesserockz](https://github.com/jesserockz)
- Fix equality check when setting current-based cover position [esphome#5167](https://github.com/esphome/esphome/pull/5167) by [@kroimon](https://github.com/kroimon) - Bump pylint from 3.0.3 to 3.1.0 [esphome#6287](https://github.com/esphome/esphome/pull/6287) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump platformio from 6.1.9 to 6.1.10 [esphome#5237](https://github.com/esphome/esphome/pull/5237) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump aioesphomeapi from 23.2.0 to 24.0.0 [esphome#6544](https://github.com/esphome/esphome/pull/6544) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Add Invert method for SSD1306 [esphome#5292](https://github.com/esphome/esphome/pull/5292) by [@max246](https://github.com/max246) - Bump pyupgrade from 3.15.1 to 3.15.2 [esphome#6543](https://github.com/esphome/esphome/pull/6543) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Update PSRAM config params for IDF4+ [esphome#5298](https://github.com/esphome/esphome/pull/5298) by [@kbx81](https://github.com/kbx81) - Add enum option to typed_schema [esphome#6546](https://github.com/esphome/esphome/pull/6546) by [@jesserockz](https://github.com/jesserockz)
- Fix legacy zeroconf record update method [esphome#5294](https://github.com/esphome/esphome/pull/5294) by [@bdraco](https://github.com/bdraco) - Move esphome-fork startup script to main repo. [esphome#6523](https://github.com/esphome/esphome/pull/6523) by [@jesserockz](https://github.com/jesserockz)
- Bump zeroconf from 0.80.0 to 0.86.0 [esphome#5308](https://github.com/esphome/esphome/pull/5308) by [@dependabot[bot]](https://github.com/apps/dependabot) - Call workflow for addon with dev version [esphome#6549](https://github.com/esphome/esphome/pull/6549) by [@jesserockz](https://github.com/jesserockz)
- Add PSRAM mode and speed config [esphome#5312](https://github.com/esphome/esphome/pull/5312) by [@kbx81](https://github.com/kbx81) - Use trusted publishing token for pypi [esphome#6545](https://github.com/esphome/esphome/pull/6545) by [@jesserockz](https://github.com/jesserockz)
- Add extra SLPOUT for waking up some ST7789 chips [esphome#5319](https://github.com/esphome/esphome/pull/5319) by [@clydebarrow](https://github.com/clydebarrow) - Fix uart to work with new enum definition in esp-idf-v5.2.1 [esphome#6487](https://github.com/esphome/esphome/pull/6487) by [@luar123](https://github.com/luar123)
- 7789 controller fixes take 2 [esphome#5320](https://github.com/esphome/esphome/pull/5320) by [@clydebarrow](https://github.com/clydebarrow) - Housecleaning: Use walrus operator in datetime [esphome#6552](https://github.com/esphome/esphome/pull/6552) by [@jesserockz](https://github.com/jesserockz)
- Bump Arduino Pico to 3.4.0 [esphome#5321](https://github.com/esphome/esphome/pull/5321) by [@HeMan](https://github.com/HeMan) - Housecleaning: Use walrus operator in text [esphome#6560](https://github.com/esphome/esphome/pull/6560) by [@jesserockz](https://github.com/jesserockz)
- Use gzip compression for the web server component's static resources [esphome#5291](https://github.com/esphome/esphome/pull/5291) by [@EternityForest](https://github.com/EternityForest) - Housecleaning: Use walrus operator in light [esphome#6556](https://github.com/esphome/esphome/pull/6556) by [@jesserockz](https://github.com/jesserockz)
- Bump zeroconf from 0.86.0 to 0.88.0 [esphome#5315](https://github.com/esphome/esphome/pull/5315) by [@dependabot[bot]](https://github.com/apps/dependabot) - Housecleaning: Use walrus operator in select [esphome#6557](https://github.com/esphome/esphome/pull/6557) by [@jesserockz](https://github.com/jesserockz)
- Adding heating coil and fan icons, enum device_class [esphome#5325](https://github.com/esphome/esphome/pull/5325) by [@barndawgie](https://github.com/barndawgie) - Housecleaning: Use walrus operator in number [esphome#6561](https://github.com/esphome/esphome/pull/6561) by [@jesserockz](https://github.com/jesserockz)
- Add dashboard API to get firmware binaries [esphome#4675](https://github.com/esphome/esphome/pull/4675) by [@kuba2k2](https://github.com/kuba2k2) - Housecleaning: Use walrus operator in cover [esphome#6562](https://github.com/esphome/esphome/pull/6562) by [@jesserockz](https://github.com/jesserockz)
- Make uart error message go away [esphome#5329](https://github.com/esphome/esphome/pull/5329) by [@clydebarrow](https://github.com/clydebarrow) - Housecleaning: Use walrus operator in climate [esphome#6551](https://github.com/esphome/esphome/pull/6551) by [@jesserockz](https://github.com/jesserockz)
- add heating functionality to SI7021 [esphome#4828](https://github.com/esphome/esphome/pull/4828) by [@max246](https://github.com/max246) - Housecleaning: Use walrus operator in fan [esphome#6555](https://github.com/esphome/esphome/pull/6555) by [@jesserockz](https://github.com/jesserockz)
- Bump esphome-dashboard to 20230904.0 [esphome#5339](https://github.com/esphome/esphome/pull/5339) by [@jesserockz](https://github.com/jesserockz) - Housecleaning: Use walrus operator in text_sensor [esphome#6559](https://github.com/esphome/esphome/pull/6559) by [@jesserockz](https://github.com/jesserockz)
- Added Handling for Nack "file not found" [esphome#5338](https://github.com/esphome/esphome/pull/5338) by [@croessi](https://github.com/croessi) - Bump zeroconf to 0.132.2 [esphome#6548](https://github.com/esphome/esphome/pull/6548) by [@bdraco](https://github.com/bdraco)
- Prepare api and time for ESP-IDF >= 5 [esphome#5332](https://github.com/esphome/esphome/pull/5332) by [@HeMan](https://github.com/HeMan) - Housecleaning: Use walrus operator in switch [esphome#6558](https://github.com/esphome/esphome/pull/6558) by [@jesserockz](https://github.com/jesserockz)
- Tweak Improv serial to build in IDF 5 [esphome#5331](https://github.com/esphome/esphome/pull/5331) by [@kbx81](https://github.com/kbx81) - Housecleaning: Use walrus operator in lock [esphome#6554](https://github.com/esphome/esphome/pull/6554) by [@jesserockz](https://github.com/jesserockz)
- Support for LibreTiny platform (RTL8710, BK7231 & other modules) [esphome#3509](https://github.com/esphome/esphome/pull/3509) by [@kuba2k2](https://github.com/kuba2k2) (new-integration) - Housecleaning: Use walrus operator in sensor [esphome#6553](https://github.com/esphome/esphome/pull/6553) by [@jesserockz](https://github.com/jesserockz)
- Extend ESP32 CAN bit rates /bus speed support [esphome#5280](https://github.com/esphome/esphome/pull/5280) by [@mkaiser](https://github.com/mkaiser) - Bump pytest-mock from 3.12.0 to 3.14.0 [esphome#6572](https://github.com/esphome/esphome/pull/6572) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Debug component: add free PSRAM sensor [esphome#5334](https://github.com/esphome/esphome/pull/5334) by [@kahrendt](https://github.com/kahrendt) - Bump peter-evans/create-pull-request from 6.0.3 to 6.0.4 [esphome#6569](https://github.com/esphome/esphome/pull/6569) by [@dependabot[bot]](https://github.com/apps/dependabot)
- libretiny: fix uart_port framework config [esphome#5343](https://github.com/esphome/esphome/pull/5343) by [@jesserockz](https://github.com/jesserockz) - Nextion - Review set_protocol_reparse_mode() [esphome#6567](https://github.com/esphome/esphome/pull/6567) by [@edwardtfn](https://github.com/edwardtfn)
- Bump actions/checkout from 3 to 4 [esphome#5341](https://github.com/esphome/esphome/pull/5341) by [@dependabot[bot]](https://github.com/apps/dependabot) - Allow component final_validate [esphome#6475](https://github.com/esphome/esphome/pull/6475) by [@kbx81](https://github.com/kbx81)
- Add Lilygo T-Embed to st7789v display config. [esphome#5337](https://github.com/esphome/esphome/pull/5337) by [@clydebarrow](https://github.com/clydebarrow) - SM2135 - Use standard channel ordering. [esphome#6573](https://github.com/esphome/esphome/pull/6573) by [@Cossid](https://github.com/Cossid) (breaking-change)
- Disable IPv6 when config explicitly says false [esphome#5310](https://github.com/esphome/esphome/pull/5310) by [@HeMan](https://github.com/HeMan) - Nextion - Do not refresh sensors while updating [esphome#6566](https://github.com/esphome/esphome/pull/6566) by [@edwardtfn](https://github.com/edwardtfn)
- Add defines.h to ethernet_component.h for ENABLE_IPV6 [esphome#5344](https://github.com/esphome/esphome/pull/5344) by [@kbx81](https://github.com/kbx81) - Nextion - Review types [esphome#6565](https://github.com/esphome/esphome/pull/6565) by [@edwardtfn](https://github.com/edwardtfn)
- Synchronise Device Classes from Home Assistant [esphome#5328](https://github.com/esphome/esphome/pull/5328) by [@esphomebot](https://github.com/esphomebot) (breaking-change) - On failure, dump the output of preceding jobs in CI status [esphome#6564](https://github.com/esphome/esphome/pull/6564) by [@clydebarrow](https://github.com/clydebarrow)
- Bump pytest from 7.4.0 to 7.4.1 [esphome#5342](https://github.com/esphome/esphome/pull/5342) by [@dependabot[bot]](https://github.com/apps/dependabot) - Nextion `send_command` method [esphome#6540](https://github.com/esphome/esphome/pull/6540) by [@edwardtfn](https://github.com/edwardtfn)
- Fixed default temperature step values for haier climate [esphome#5330](https://github.com/esphome/esphome/pull/5330) by [@paveldn](https://github.com/paveldn) - Fix some printf formats for size_t. [esphome#6542](https://github.com/esphome/esphome/pull/6542) by [@clydebarrow](https://github.com/clydebarrow)
- Add debug component to all tests [esphome#5333](https://github.com/esphome/esphome/pull/5333) by [@HeMan](https://github.com/HeMan) - remove delay from tmp102 [esphome#6577](https://github.com/esphome/esphome/pull/6577) by [@ssieb](https://github.com/ssieb)
- Support MaxBotix XL in addition to HRXL [esphome#4510](https://github.com/esphome/esphome/pull/4510) by [@notjj](https://github.com/notjj) - Create ``component_dir`` substitution for local files to be included in… [esphome#6575](https://github.com/esphome/esphome/pull/6575) by [@jesserockz](https://github.com/jesserockz)
- Adding DFRobot Ozone Sensor Support (sen0321) [esphome#4782](https://github.com/esphome/esphome/pull/4782) by [@notjj](https://github.com/notjj) (new-integration) - Define `USE_ESP32_BLE` [esphome#6585](https://github.com/esphome/esphome/pull/6585) by [@edwardtfn](https://github.com/edwardtfn)
- mdns: bump IDF mdns component to 1.2.0 [esphome#5217](https://github.com/esphome/esphome/pull/5217) by [@stintel](https://github.com/stintel) - Bump aioesphomeapi from 24.0.0 to 24.3.0 [esphome#6602](https://github.com/esphome/esphome/pull/6602) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Integration LightwaveRF switches [esphome#4812](https://github.com/esphome/esphome/pull/4812) by [@max246](https://github.com/max246) (new-integration) - Add yamllint and clang-format to pre-commit hooks [esphome#6578](https://github.com/esphome/esphome/pull/6578) by [@clydebarrow](https://github.com/clydebarrow)
- Bump flake8 from 6.0.0 to 6.1.0 [esphome#5171](https://github.com/esphome/esphome/pull/5171) by [@dependabot[bot]](https://github.com/apps/dependabot) - Use clang-format version from requirements_dev file [esphome#6606](https://github.com/esphome/esphome/pull/6606) by [@jesserockz](https://github.com/jesserockz)
- Bump tornado from 6.3.2 to 6.3.3 [esphome#5236](https://github.com/esphome/esphome/pull/5236) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add some components to the new testing framework (P) [esphome#6213](https://github.com/esphome/esphome/pull/6213) by [@kbx81](https://github.com/kbx81)
- Bump platformio from 6.1.10 to 6.1.11 [esphome#5323](https://github.com/esphome/esphome/pull/5323) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add some components to the new testing framework (M part 1) [esphome#6207](https://github.com/esphome/esphome/pull/6207) by [@kbx81](https://github.com/kbx81)
- Only run ci-docker when ci-docker workflow changes [esphome#5347](https://github.com/esphome/esphome/pull/5347) by [@jesserockz](https://github.com/jesserockz) - Add some components to the new testing framework (M part 2) [esphome#6208](https://github.com/esphome/esphome/pull/6208) by [@kbx81](https://github.com/kbx81)
- esp32: Extra build customization [esphome#5322](https://github.com/esphome/esphome/pull/5322) by [@jesserockz](https://github.com/jesserockz) - Add some components to the new testing framework (O) [esphome#6211](https://github.com/esphome/esphome/pull/6211) by [@kbx81](https://github.com/kbx81)
- Allow upload command to flash file via serial [esphome#5274](https://github.com/esphome/esphome/pull/5274) by [@jesserockz](https://github.com/jesserockz) - [mopeka_std_check] Fix test file indentation [esphome#6610](https://github.com/esphome/esphome/pull/6610) by [@jesserockz](https://github.com/jesserockz)
- Allow "--device SERIAL" on cli to flash only via serial [esphome#5351](https://github.com/esphome/esphome/pull/5351) by [@jesserockz](https://github.com/jesserockz) - Add valve component [esphome#6447](https://github.com/esphome/esphome/pull/6447) by [@kbx81](https://github.com/kbx81) (new-integration)
- Fix PN532 for IDF 5 and ultralight enhancements [esphome#5352](https://github.com/esphome/esphome/pull/5352) by [@kbx81](https://github.com/kbx81) - Add some components to the new testing framework (R) [esphome#6219](https://github.com/esphome/esphome/pull/6219) by [@kbx81](https://github.com/kbx81)
- Fix cpu_ll_get_cycle_count() deprecated warning [esphome#5353](https://github.com/esphome/esphome/pull/5353) by [@kbx81](https://github.com/kbx81) - [sn74hc595] Enforce type field to distinguish gpio vs spi mode [esphome#6609](https://github.com/esphome/esphome/pull/6609) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Refactor SPI code; Add ESP-IDF hardware support [esphome#5311](https://github.com/esphome/esphome/pull/5311) by [@clydebarrow](https://github.com/clydebarrow) (new-integration) - [tests] Run yaml tests in groups if over 100 to run [esphome#6612](https://github.com/esphome/esphome/pull/6612) by [@jesserockz](https://github.com/jesserockz)
- Bump actions/cache from 3.3.1 to 3.3.2 [esphome#5367](https://github.com/esphome/esphome/pull/5367) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add some components to the new testing framework (I) [esphome#6185](https://github.com/esphome/esphome/pull/6185) by [@kbx81](https://github.com/kbx81)
- Bump zeroconf from 0.88.0 to 0.102.0 [esphome#5368](https://github.com/esphome/esphome/pull/5368) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add some components to the new testing framework (T) [esphome#6229](https://github.com/esphome/esphome/pull/6229) by [@kbx81](https://github.com/kbx81)
- Fix repeat.count = 0 case [esphome#5364](https://github.com/esphome/esphome/pull/5364) by [@Xmister](https://github.com/Xmister) - Add some components to the new testing framework (S part 1) [esphome#6224](https://github.com/esphome/esphome/pull/6224) by [@kbx81](https://github.com/kbx81)
- Fix dashboard download for ESP32 variants [esphome#5355](https://github.com/esphome/esphome/pull/5355) by [@kuba2k2](https://github.com/kuba2k2) - Add some components to the new testing framework (S part 2) [esphome#6227](https://github.com/esphome/esphome/pull/6227) by [@kbx81](https://github.com/kbx81)
- Bump pytest from 7.4.1 to 7.4.2 [esphome#5357](https://github.com/esphome/esphome/pull/5357) by [@dependabot[bot]](https://github.com/apps/dependabot) - `graphical_display_menu` requires a Display, not DisplayBuffer [esphome#6614](https://github.com/esphome/esphome/pull/6614) by [@clydebarrow](https://github.com/clydebarrow)
- [ADC] Support measuring VCC on Raspberry Pico (W) [esphome#5335](https://github.com/esphome/esphome/pull/5335) by [@hostcc](https://github.com/hostcc) - Add null GPIO pin [esphome#6611](https://github.com/esphome/esphome/pull/6611) by [@clydebarrow](https://github.com/clydebarrow)
- Move CONF_PHASE_A/B/C constants to const.py. [esphome#5304](https://github.com/esphome/esphome/pull/5304) by [@kpfleming](https://github.com/kpfleming) - Allow UART to be AUTO LOADed [esphome#6617](https://github.com/esphome/esphome/pull/6617) by [@jesserockz](https://github.com/jesserockz)
- Add BMI160 support [esphome#5143](https://github.com/esphome/esphome/pull/5143) by [@flaviut](https://github.com/flaviut) (new-integration) - Add the WeiKai SPI/I2C UART/IO Expander components to esphome [esphome#5218](https://github.com/esphome/esphome/pull/5218) by [@DrCoolzic](https://github.com/DrCoolzic) (new-integration)
- Use black-pre-commit-mirror to speed up pre-commit runs. [esphome#5372](https://github.com/esphome/esphome/pull/5372) by [@kpfleming](https://github.com/kpfleming) - Sort mqtt_const alphabetically [esphome#6619](https://github.com/esphome/esphome/pull/6619) by [@jesserockz](https://github.com/jesserockz)
- Native SPI RGB LED component [esphome#5288](https://github.com/esphome/esphome/pull/5288) by [@clydebarrow](https://github.com/clydebarrow) (new-integration) - Limit Rx wait loop time to 3 seconds. [esphome#6594](https://github.com/esphome/esphome/pull/6594) by [@descipher](https://github.com/descipher)
- Wireguard component [esphome#4256](https://github.com/esphome/esphome/pull/4256) by [@lhoracek](https://github.com/lhoracek) (new-integration) - Event entity support [esphome#6451](https://github.com/esphome/esphome/pull/6451) by [@nohat](https://github.com/nohat) (new-integration)
- Bump LibreTiny version to 1.4.0 [esphome#5375](https://github.com/esphome/esphome/pull/5375) by [@kuba2k2](https://github.com/kuba2k2) - Only check c/c++ files with clang-format [esphome#6620](https://github.com/esphome/esphome/pull/6620) by [@jesserockz](https://github.com/jesserockz)
- time: Make std::string version of strftime() avoid runaway memory allocations [esphome#5348](https://github.com/esphome/esphome/pull/5348) by [@kpfleming](https://github.com/kpfleming) - Added base64 helper [esphome#4866](https://github.com/esphome/esphome/pull/4866) by [@freekode](https://github.com/freekode)
- Fix disabled wifi crash on boot [esphome#5370](https://github.com/esphome/esphome/pull/5370) by [@Xmister](https://github.com/Xmister) - Add Roomba IR protocol [esphome#4595](https://github.com/esphome/esphome/pull/4595) by [@rforro](https://github.com/rforro)
- debug: add ESP32-C6 support [esphome#5354](https://github.com/esphome/esphome/pull/5354) by [@stintel](https://github.com/stintel) - Fix issue when setting cw/ww brightness via temperature [esphome#5976](https://github.com/esphome/esphome/pull/5976) by [@patagonaa](https://github.com/patagonaa)
- Make string globals persist-able using fixed size allocations [esphome#5296](https://github.com/esphome/esphome/pull/5296) by [@EternityForest](https://github.com/EternityForest) - Add get/set color temperature functions in Kelvin [esphome#5006](https://github.com/esphome/esphome/pull/5006) by [@danielkent-net](https://github.com/danielkent-net)
- Use /data directory for .esphome folder when running as HA add-on [esphome#5374](https://github.com/esphome/esphome/pull/5374) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - Move CONF_PLATFORM_VERSION to global const.py [esphome#6629](https://github.com/esphome/esphome/pull/6629) by [@tomaszduda23](https://github.com/tomaszduda23)
- Bump zeroconf from 0.102.0 to 0.108.0 [esphome#5376](https://github.com/esphome/esphome/pull/5376) by [@dependabot[bot]](https://github.com/apps/dependabot) - Ble client fixes for proxy [esphome#6596](https://github.com/esphome/esphome/pull/6596) by [@elupus](https://github.com/elupus)
- Bump black from 23.7.0 to 23.9.1 [esphome#5377](https://github.com/esphome/esphome/pull/5377) by [@dependabot[bot]](https://github.com/apps/dependabot) - Fix for #6614- use background_color, improve anti-aliasing [esphome#6618](https://github.com/esphome/esphome/pull/6618) by [@clydebarrow](https://github.com/clydebarrow)
- Attempt to fix rp2040 adc with vcc [esphome#5378](https://github.com/esphome/esphome/pull/5378) by [@jesserockz](https://github.com/jesserockz) - Fix graph hangs when y <= 0 [esphome#6593](https://github.com/esphome/esphome/pull/6593) by [@chiahsing](https://github.com/chiahsing)
- Enable IPv6 for ESP8266 and Raspberry pi pico w (RP2040) [esphome#4759](https://github.com/esphome/esphome/pull/4759) by [@HeMan](https://github.com/HeMan) - Feature add last_operation to time based cover [esphome#6084](https://github.com/esphome/esphome/pull/6084) by [@xprofiler](https://github.com/xprofiler)
- Workflow updates [esphome#5384](https://github.com/esphome/esphome/pull/5384) by [@jesserockz](https://github.com/jesserockz) - Add `event`, `text_sensor` and `valve` device classes to sync script [esphome#6624](https://github.com/esphome/esphome/pull/6624) by [@kbx81](https://github.com/kbx81)
- Modbus Controller added some features [esphome#5318](https://github.com/esphome/esphome/pull/5318) by [@0x3333](https://github.com/0x3333) - Add datetime entities [esphome#6513](https://github.com/esphome/esphome/pull/6513) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Force heater off on setup [esphome#5161](https://github.com/esphome/esphome/pull/5161) by [@rufuswilson](https://github.com/rufuswilson) - Multiple Daly-BMS support [esphome#6615](https://github.com/esphome/esphome/pull/6615) by [@latonita](https://github.com/latonita)
- Add IDF 5 test yaml, add adc to IDF tests, fix adc for IDF 5 [esphome#5379](https://github.com/esphome/esphome/pull/5379) by [@kbx81](https://github.com/kbx81) - Remove text_sensor from sync-device-class job [esphome#6637](https://github.com/esphome/esphome/pull/6637) by [@kbx81](https://github.com/kbx81)
- Add patch to apt install [esphome#5389](https://github.com/esphome/esphome/pull/5389) by [@synesthesiam](https://github.com/synesthesiam) - Synchronise Device Classes from Home Assistant [esphome#6638](https://github.com/esphome/esphome/pull/6638) by [@esphomebot](https://github.com/esphomebot)
- Fix Waveshare 7.5v2 epaper screens are always powered on [esphome#5283](https://github.com/esphome/esphome/pull/5283) by [@phoenixswiss](https://github.com/phoenixswiss) - Display: add diagnostic test_card option [esphome#6608](https://github.com/esphome/esphome/pull/6608) by [@nielsnl68](https://github.com/nielsnl68)
- Update radon_eye_listener.cpp [esphome#5401](https://github.com/esphome/esphome/pull/5401) by [@rmmacias](https://github.com/rmmacias) - waveshare_epaper: Add 2.90in-dke [esphome#6492](https://github.com/esphome/esphome/pull/6492) by [@polyfloyd](https://github.com/polyfloyd)
- Add shelly-dimmer-stm32 51.7 to known versions [esphome#5400](https://github.com/esphome/esphome/pull/5400) by [@trvrnrth](https://github.com/trvrnrth) - Extract core comments from #6241 [esphome#6643](https://github.com/esphome/esphome/pull/6643) by [@javawizard](https://github.com/javawizard)
- Add E-Trailer Gaslevel support to Mopeka Std Check [esphome#5397](https://github.com/esphome/esphome/pull/5397) by [@Phhere](https://github.com/Phhere) - [hm3301] Updated the AQI based on the airnow document [esphome#6004](https://github.com/esphome/esphome/pull/6004) by [@optimusprimespace](https://github.com/optimusprimespace)
- fix disabled wifi power on 8266 [esphome#5409](https://github.com/esphome/esphome/pull/5409) by [@ssieb](https://github.com/ssieb) - Fix command line substitutions without any yaml substitutions [esphome#6644](https://github.com/esphome/esphome/pull/6644) by [@jesserockz](https://github.com/jesserockz)
- fix handling of web server version [esphome#5405](https://github.com/esphome/esphome/pull/5405) by [@ssieb](https://github.com/ssieb) - Allow platform dependencies [esphome#6623](https://github.com/esphome/esphome/pull/6623) by [@kbx81](https://github.com/kbx81)
- Climate preset fix [esphome#5407](https://github.com/esphome/esphome/pull/5407) by [@Jorre05](https://github.com/Jorre05) - [light] Add transition_length to strobe effect. [esphome#6595](https://github.com/esphome/esphome/pull/6595) by [@lhartmann](https://github.com/lhartmann)
- Remove Wi-Fi dependency from Midea component [esphome#5394](https://github.com/esphome/esphome/pull/5394) by [@AnthonyMaiorani](https://github.com/AnthonyMaiorani) - Fixed the issue that graph draws out of the boundary. [esphome#6651](https://github.com/esphome/esphome/pull/6651) by [@chiahsing](https://github.com/chiahsing)
- http_request: Cleanups and safety improvements [esphome#5360](https://github.com/esphome/esphome/pull/5360) by [@kpfleming](https://github.com/kpfleming) - Fix upload command. MQTT user and password is missing from configuration. #5093 [esphome#5766](https://github.com/esphome/esphome/pull/5766) by [@dylan09](https://github.com/dylan09)
- Make the pulse meter timeout on startup when no pulses are received [esphome#5388](https://github.com/esphome/esphome/pull/5388) by [@TrentHouliston](https://github.com/TrentHouliston) - patch esphome cli to skip mqtt based device discovery if --device option is specified [esphome#6371](https://github.com/esphome/esphome/pull/6371) by [@quigleymd](https://github.com/quigleymd)
- Wizard: fix colored text in input prompts [esphome#5313](https://github.com/esphome/esphome/pull/5313) by [@kuba2k2](https://github.com/kuba2k2) - Fix for #4866 - inconsistent arguments [esphome#6639](https://github.com/esphome/esphome/pull/6639) by [@clydebarrow](https://github.com/clydebarrow)
- support keypads with pulldowns [esphome#5404](https://github.com/esphome/esphome/pull/5404) by [@ssieb](https://github.com/ssieb) - [template/text] Fix lambda config [esphome#6655](https://github.com/esphome/esphome/pull/6655) by [@asergunov](https://github.com/asergunov)
- Fix SPI inverted clock on ESP8266 [esphome#5416](https://github.com/esphome/esphome/pull/5416) by [@clydebarrow](https://github.com/clydebarrow) - web_server: Add support for v3 local server_index [esphome#6563](https://github.com/esphome/esphome/pull/6563) by [@pzich](https://github.com/pzich)
- [RP2040W] Fix WiFi bootloop upon LibreTiny support [esphome#5414](https://github.com/esphome/esphome/pull/5414) by [@hostcc](https://github.com/hostcc) - Update webserver local assets to 20240429-211523 [esphome#6657](https://github.com/esphome/esphome/pull/6657) by [@esphomebot](https://github.com/esphomebot)
- dallas: limit addresses to 64 bits [esphome#5413](https://github.com/esphome/esphome/pull/5413) by [@oddstr13](https://github.com/oddstr13) - [nextion] Exit reparse before update TFT [esphome#6589](https://github.com/esphome/esphome/pull/6589) by [@edwardtfn](https://github.com/edwardtfn)
- Bump zeroconf from 0.108.0 to 0.112.0 [esphome#5392](https://github.com/esphome/esphome/pull/5392) by [@dependabot[bot]](https://github.com/apps/dependabot) - [nextion] Set alternative TFT update baud rate [esphome#6587](https://github.com/esphome/esphome/pull/6587) by [@edwardtfn](https://github.com/edwardtfn)
- LibreTiny: enable MQTT, bump to v1.4.1 [esphome#5419](https://github.com/esphome/esphome/pull/5419) by [@kuba2k2](https://github.com/kuba2k2) - [TM1637] Let turn off the display [esphome#6656](https://github.com/esphome/esphome/pull/6656) by [@asergunov](https://github.com/asergunov)
- Wireguard keepalive remove uint16 type [esphome#5430](https://github.com/esphome/esphome/pull/5430) by [@glmnet](https://github.com/glmnet) - [nextion] Use persistent http connection for TFT upload (Arduino) [esphome#6582](https://github.com/esphome/esphome/pull/6582) by [@edwardtfn](https://github.com/edwardtfn)
- Fix #4896 and #4903 [esphome#5433](https://github.com/esphome/esphome/pull/5433) by [@clydebarrow](https://github.com/clydebarrow) - Extend MQTT tests [esphome#6648](https://github.com/esphome/esphome/pull/6648) by [@kbx81](https://github.com/kbx81)
- Extend and consolidate `script` tests [esphome#6663](https://github.com/esphome/esphome/pull/6663) by [@kbx81](https://github.com/kbx81)
- [nextion] Use persistent http connection for TFT upload (ESP-IDF) [esphome#6576](https://github.com/esphome/esphome/pull/6576) by [@edwardtfn](https://github.com/edwardtfn)
- Add a function to return the loop_interval [esphome#6666](https://github.com/esphome/esphome/pull/6666) by [@tronikos](https://github.com/tronikos)
- Remote receiver improvements [esphome#4642](https://github.com/esphome/esphome/pull/4642) by [@Mat931](https://github.com/Mat931)
- Make fast update intervals in qmc5883l work [esphome#6647](https://github.com/esphome/esphome/pull/6647) by [@tronikos](https://github.com/tronikos)
- SPI and I2C for BMP390 and BMP380 [esphome#6652](https://github.com/esphome/esphome/pull/6652) by [@latonita](https://github.com/latonita) (new-integration) (breaking-change)
- Set "CONF_" CI counter to fail on 3 or more definitions [esphome#6668](https://github.com/esphome/esphome/pull/6668) by [@jesserockz](https://github.com/jesserockz)
- [core] Rename ALWAYS_INLINE to ESPHOME_ALWAYS_INLINE [esphome#6636](https://github.com/esphome/esphome/pull/6636) by [@tomaszduda23](https://github.com/tomaszduda23)
- print task name if logger is called from other than main thread [esphome#6630](https://github.com/esphome/esphome/pull/6630) by [@tomaszduda23](https://github.com/tomaszduda23)
- Fix recent definitions into `defines.h` [esphome#6667](https://github.com/esphome/esphome/pull/6667) by [@edwardtfn](https://github.com/edwardtfn)
- Add fast update to HMC5883L [esphome#6669](https://github.com/esphome/esphome/pull/6669) by [@mkmer](https://github.com/mkmer)
- Minor tidy up of BME280 code [esphome#6672](https://github.com/esphome/esphome/pull/6672) by [@latonita](https://github.com/latonita)
- External components: optional configurable path for git source [esphome#6677](https://github.com/esphome/esphome/pull/6677) by [@twasilczyk](https://github.com/twasilczyk)
- Use clang-apply-replacements when clang-apply-replacements-14 does not exist [esphome#6684](https://github.com/esphome/esphome/pull/6684) by [@Links2004](https://github.com/Links2004)
- fix conflict with EMPTY macro in zephyr [esphome#6679](https://github.com/esphome/esphome/pull/6679) by [@tomaszduda23](https://github.com/tomaszduda23)
- Bump actions/checkout from 4.1.1 to 4.1.5 [esphome#6685](https://github.com/esphome/esphome/pull/6685) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Fix Datetime-Datetime compiler error [esphome#6686](https://github.com/esphome/esphome/pull/6686) by [@RFDarter](https://github.com/RFDarter)
- Bump esphome/ESPAsyncWebServer-esphome to 3.2.0 [esphome#6687](https://github.com/esphome/esphome/pull/6687) by [@jesserockz](https://github.com/jesserockz)
- fix date_time validation [esphome#6688](https://github.com/esphome/esphome/pull/6688) by [@RFDarter](https://github.com/RFDarter)
- proceed if AP mode is set up [esphome#6631](https://github.com/esphome/esphome/pull/6631) by [@ssieb](https://github.com/ssieb)
- Migrate some constants to core code [esphome#6692](https://github.com/esphome/esphome/pull/6692) by [@clydebarrow](https://github.com/clydebarrow)
- Consolidate test files where all tests are identical [esphome#6690](https://github.com/esphome/esphome/pull/6690) by [@kbx81](https://github.com/kbx81)
- Make `pulse_meter` PULSE filter report the pulse as soon as it can [esphome#6014](https://github.com/esphome/esphome/pull/6014) by [@TrentHouliston](https://github.com/TrentHouliston)
- Update webserver local assets to 20240507-231331 [esphome#6696](https://github.com/esphome/esphome/pull/6696) by [@esphomebot](https://github.com/esphomebot)
- [github] Upgrade to actions/[upload,download]-artifact v4 [esphome#6698](https://github.com/esphome/esphome/pull/6698) by [@jesserockz](https://github.com/jesserockz)
- [nextion] Replace flags to `USE_ARDUINO` [esphome#6700](https://github.com/esphome/esphome/pull/6700) by [@edwardtfn](https://github.com/edwardtfn)
- [remote_receiver, remote_transmitter] Improve error messages on the ESP32 [esphome#6701](https://github.com/esphome/esphome/pull/6701) by [@Mat931](https://github.com/Mat931)
- [ethernet] Use constexpr instead of inline define for KSZ80XX_PC2R_REG_ADDR [esphome#6705](https://github.com/esphome/esphome/pull/6705) by [@jesserockz](https://github.com/jesserockz)
- Add PHY register writes to enable external clock on Ethernet with RTL8201 [esphome#6704](https://github.com/esphome/esphome/pull/6704) by [@heythisisnate](https://github.com/heythisisnate)
- Bump recommended ESP-IDF to 4.4.7 [esphome#6703](https://github.com/esphome/esphome/pull/6703) by [@bdraco](https://github.com/bdraco)
- [core] Ensure that a generated ID name is distinct from its type. [esphome#6706](https://github.com/esphome/esphome/pull/6706) by [@clydebarrow](https://github.com/clydebarrow)
- [color] Fix crash when hex color parses as int, improve error reporting. [esphome#6707](https://github.com/esphome/esphome/pull/6707) by [@clydebarrow](https://github.com/clydebarrow)
- [github] Fix digest artifact name [esphome#6710](https://github.com/esphome/esphome/pull/6710) by [@jesserockz](https://github.com/jesserockz)
- fix(ltr390): stuck ALS values when configured for ALS+UV readings [esphome#6723](https://github.com/esphome/esphome/pull/6723) by [@CodeInPolish](https://github.com/CodeInPolish)
- Set FEATURE_API_AUDIO flag also if the speaker component is not used [esphome#6712](https://github.com/esphome/esphome/pull/6712) by [@gnumpi](https://github.com/gnumpi)
- Bump platformio from 6.1.13 to 6.1.15 [esphome#6634](https://github.com/esphome/esphome/pull/6634) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Fix ESPHOME_PROJECT_VERSION_30 [esphome#6731](https://github.com/esphome/esphome/pull/6731) by [@jesserockz](https://github.com/jesserockz)
- Voice-Assistant: Start-order change for VAD disabled: start va-pipeline when microphon… [esphome#6391](https://github.com/esphome/esphome/pull/6391) by [@gnumpi](https://github.com/gnumpi)
- Add ANNOUNCING state to media_player. [esphome#6691](https://github.com/esphome/esphome/pull/6691) by [@gnumpi](https://github.com/gnumpi)
- [adc] Fix 11db deprecation warning [esphome#6749](https://github.com/esphome/esphome/pull/6749) by [@jesserockz](https://github.com/jesserockz) (notable-change)

View File

@@ -30,8 +30,9 @@ schema:
backup_exclude: backup_exclude:
- '*/*/' - '*/*/'
init: false init: false
startup: services
name: ESPHome (beta) name: ESPHome (beta)
version: 2023.9.0 version: 2024.5.0
slug: esphome-beta slug: esphome-beta
description: Beta version of ESPHome add-on description: Beta version of ESPHome add-on
image: ghcr.io/esphome/esphome-hassio image: ghcr.io/esphome/esphome-hassio

View File

@@ -1 +1 @@
See https://esphome.io/changelog/index.html See https://github.com/esphome/esphome/commits/dev

View File

@@ -1,10 +0,0 @@
ARG BUILD_FROM=esphome/esphome-hassio-amd64:dev
FROM ${BUILD_FROM}
# Copy root filesystem
COPY rootfs /
# Labels
LABEL \
io.hass.type="addon" \
io.hass.version=dev

View File

@@ -1,5 +0,0 @@
---
build_from:
aarch64: ghcr.io/esphome/esphome-hassio:dev
amd64: ghcr.io/esphome/esphome-hassio:dev
armv7: ghcr.io/esphome/esphome-hassio:dev

View File

@@ -31,10 +31,12 @@ schema:
backup_exclude: backup_exclude:
- '*/*/' - '*/*/'
init: false init: false
startup: services
name: ESPHome (dev) name: ESPHome (dev)
version: dev version: 2024.6.0-dev20240515
slug: esphome-dev slug: esphome-dev
description: Development version of ESPHome add-on description: Development version of ESPHome add-on
image: ghcr.io/esphome/esphome-hassio
stage: experimental stage: experimental
advanced: true advanced: true
options: options:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 69 KiB

View File

@@ -1,47 +0,0 @@
#!/usr/bin/with-contenv bashio
# ==============================================================================
# Community Hass.io Add-ons: ESPHome
# This files installs the user ESPHome fork if specified
# The fork must be up to date with the latest ESPHome dev branch
# and have no conflicts
# ==============================================================================
declare esphome_fork
if bashio::config.has_value 'esphome_fork'; then
esphome_fork=$(bashio::config 'esphome_fork')
if [[ $esphome_fork == *":"* ]]; then
IFS=':' read -r -a array <<< "$esphome_fork"
username=${array[0]}
ref=${array[1]}
else
username="esphome"
ref=$esphome_fork
fi
full_url="https://github.com/${username}/esphome/archive/${ref}.tar.gz"
bashio::log.info "Checking forked ESPHome"
dev_version=$(python3 -c "from esphome.const import __version__; print(__version__)")
bashio::log.info "Downloading ESPHome from fork '${esphome_fork}' (${full_url})..."
curl -L -o /tmp/esphome.tar.gz "${full_url}" -qq \
|| bashio::exit.nok "Failed downloading ESPHome fork."
bashio::log.info "Installing ESPHome from fork '${esphome_fork}' (${full_url})..."
rm -rf /esphome || bashio::exit.nok "Failed to remove ESPHome."
mkdir /esphome
tar -zxf /tmp/esphome.tar.gz -C /esphome --strip-components=1 \
|| bashio::exit.nok "Failed installing ESPHome from fork."
pip install -U -e /esphome || bashio::exit.nok "Failed installing ESPHome from fork."
rm -f /tmp/esphome.tar.gz
fork_version=$(python3 -c "from esphome.const import __version__; print(__version__)")
if [[ "$fork_version" != "$dev_version" ]]; then
bashio::log.error "############################"
bashio::log.error "Uninstalled fork as version does not match"
bashio::log.error "Update (or ask the author to update) the branch"
bashio::log.error "This is important as the dev addon and the dev ESPHome"
bashio::log.error "branch can have changes that are not compatible with old forks"
bashio::log.error "and get reported as bugs which we cannot solve easily."
bashio::log.error "############################"
bashio::exit.nok
fi
bashio::log.info "Installed ESPHome from fork '${esphome_fork}' (${full_url})..."
fi

View File

@@ -1,149 +1,188 @@
## 2023.9.0 ## 2024.5.0
## Full list of changes ## Full list of changes
### New Components ### New Components
- Add pmwcs3 capacitive soil moisture & temperature sensor component [esphome#4624](https://github.com/esphome/esphome/pull/4624) by [@SeByDocKy](https://github.com/SeByDocKy) (new-integration) - Add valve component [esphome#6447](https://github.com/esphome/esphome/pull/6447) by [@kbx81](https://github.com/kbx81) (new-integration)
- Support for LibreTiny platform (RTL8710, BK7231 & other modules) [esphome#3509](https://github.com/esphome/esphome/pull/3509) by [@kuba2k2](https://github.com/kuba2k2) (new-integration) - Add the WeiKai SPI/I2C UART/IO Expander components to esphome [esphome#5218](https://github.com/esphome/esphome/pull/5218) by [@DrCoolzic](https://github.com/DrCoolzic) (new-integration)
- Adding DFRobot Ozone Sensor Support (sen0321) [esphome#4782](https://github.com/esphome/esphome/pull/4782) by [@notjj](https://github.com/notjj) (new-integration) - Event entity support [esphome#6451](https://github.com/esphome/esphome/pull/6451) by [@nohat](https://github.com/nohat) (new-integration)
- Integration LightwaveRF switches [esphome#4812](https://github.com/esphome/esphome/pull/4812) by [@max246](https://github.com/max246) (new-integration) - SPI and I2C for BMP390 and BMP380 [esphome#6652](https://github.com/esphome/esphome/pull/6652) by [@latonita](https://github.com/latonita) (new-integration) (breaking-change)
- Refactor SPI code; Add ESP-IDF hardware support [esphome#5311](https://github.com/esphome/esphome/pull/5311) by [@clydebarrow](https://github.com/clydebarrow) (new-integration)
- Add BMI160 support [esphome#5143](https://github.com/esphome/esphome/pull/5143) by [@flaviut](https://github.com/flaviut) (new-integration)
- Native SPI RGB LED component [esphome#5288](https://github.com/esphome/esphome/pull/5288) by [@clydebarrow](https://github.com/clydebarrow) (new-integration)
- Wireguard component [esphome#4256](https://github.com/esphome/esphome/pull/4256) by [@lhoracek](https://github.com/lhoracek) (new-integration)
### Breaking Changes ### Breaking Changes
- Synchronise Device Classes from Home Assistant [esphome#5328](https://github.com/esphome/esphome/pull/5328) by [@esphomebot](https://github.com/esphomebot) (breaking-change) - Add DNS sensor and simplify format [esphome#6450](https://github.com/esphome/esphome/pull/6450) by [@HeMan](https://github.com/HeMan) (breaking-change)
- Use /data directory for .esphome folder when running as HA add-on [esphome#5374](https://github.com/esphome/esphome/pull/5374) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - SM2135 - Use standard channel ordering. [esphome#6573](https://github.com/esphome/esphome/pull/6573) by [@Cossid](https://github.com/Cossid) (breaking-change)
- [sn74hc595] Enforce type field to distinguish gpio vs spi mode [esphome#6609](https://github.com/esphome/esphome/pull/6609) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Add datetime entities [esphome#6513](https://github.com/esphome/esphome/pull/6513) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- SPI and I2C for BMP390 and BMP380 [esphome#6652](https://github.com/esphome/esphome/pull/6652) by [@latonita](https://github.com/latonita) (new-integration) (breaking-change)
### Beta Changes ### Beta Changes
- Add patch to apt install [esphome#5389](https://github.com/esphome/esphome/pull/5389) by [@synesthesiam](https://github.com/synesthesiam) - [github] Upgrade to actions/[upload,download]-artifact v4 [esphome#6698](https://github.com/esphome/esphome/pull/6698) by [@jesserockz](https://github.com/jesserockz)
- Fix Waveshare 7.5v2 epaper screens are always powered on [esphome#5283](https://github.com/esphome/esphome/pull/5283) by [@phoenixswiss](https://github.com/phoenixswiss) - [nextion] Replace flags to `USE_ARDUINO` [esphome#6700](https://github.com/esphome/esphome/pull/6700) by [@edwardtfn](https://github.com/edwardtfn)
- Update radon_eye_listener.cpp [esphome#5401](https://github.com/esphome/esphome/pull/5401) by [@rmmacias](https://github.com/rmmacias) - [remote_receiver, remote_transmitter] Improve error messages on the ESP32 [esphome#6701](https://github.com/esphome/esphome/pull/6701) by [@Mat931](https://github.com/Mat931)
- Add shelly-dimmer-stm32 51.7 to known versions [esphome#5400](https://github.com/esphome/esphome/pull/5400) by [@trvrnrth](https://github.com/trvrnrth) - [ethernet] Use constexpr instead of inline define for KSZ80XX_PC2R_REG_ADDR [esphome#6705](https://github.com/esphome/esphome/pull/6705) by [@jesserockz](https://github.com/jesserockz)
- Add E-Trailer Gaslevel support to Mopeka Std Check [esphome#5397](https://github.com/esphome/esphome/pull/5397) by [@Phhere](https://github.com/Phhere) - Add PHY register writes to enable external clock on Ethernet with RTL8201 [esphome#6704](https://github.com/esphome/esphome/pull/6704) by [@heythisisnate](https://github.com/heythisisnate)
- fix disabled wifi power on 8266 [esphome#5409](https://github.com/esphome/esphome/pull/5409) by [@ssieb](https://github.com/ssieb) - Bump recommended ESP-IDF to 4.4.7 [esphome#6703](https://github.com/esphome/esphome/pull/6703) by [@bdraco](https://github.com/bdraco)
- fix handling of web server version [esphome#5405](https://github.com/esphome/esphome/pull/5405) by [@ssieb](https://github.com/ssieb) - [core] Ensure that a generated ID name is distinct from its type. [esphome#6706](https://github.com/esphome/esphome/pull/6706) by [@clydebarrow](https://github.com/clydebarrow)
- Climate preset fix [esphome#5407](https://github.com/esphome/esphome/pull/5407) by [@Jorre05](https://github.com/Jorre05) - [color] Fix crash when hex color parses as int, improve error reporting. [esphome#6707](https://github.com/esphome/esphome/pull/6707) by [@clydebarrow](https://github.com/clydebarrow)
- Remove Wi-Fi dependency from Midea component [esphome#5394](https://github.com/esphome/esphome/pull/5394) by [@AnthonyMaiorani](https://github.com/AnthonyMaiorani) - [github] Fix digest artifact name [esphome#6710](https://github.com/esphome/esphome/pull/6710) by [@jesserockz](https://github.com/jesserockz)
- http_request: Cleanups and safety improvements [esphome#5360](https://github.com/esphome/esphome/pull/5360) by [@kpfleming](https://github.com/kpfleming) - fix(ltr390): stuck ALS values when configured for ALS+UV readings [esphome#6723](https://github.com/esphome/esphome/pull/6723) by [@CodeInPolish](https://github.com/CodeInPolish)
- Make the pulse meter timeout on startup when no pulses are received [esphome#5388](https://github.com/esphome/esphome/pull/5388) by [@TrentHouliston](https://github.com/TrentHouliston) - Set FEATURE_API_AUDIO flag also if the speaker component is not used [esphome#6712](https://github.com/esphome/esphome/pull/6712) by [@gnumpi](https://github.com/gnumpi)
- Wizard: fix colored text in input prompts [esphome#5313](https://github.com/esphome/esphome/pull/5313) by [@kuba2k2](https://github.com/kuba2k2) - Bump platformio from 6.1.13 to 6.1.15 [esphome#6634](https://github.com/esphome/esphome/pull/6634) by [@dependabot[bot]](https://github.com/apps/dependabot)
- support keypads with pulldowns [esphome#5404](https://github.com/esphome/esphome/pull/5404) by [@ssieb](https://github.com/ssieb) - Fix ESPHOME_PROJECT_VERSION_30 [esphome#6731](https://github.com/esphome/esphome/pull/6731) by [@jesserockz](https://github.com/jesserockz)
- Fix SPI inverted clock on ESP8266 [esphome#5416](https://github.com/esphome/esphome/pull/5416) by [@clydebarrow](https://github.com/clydebarrow) - Voice-Assistant: Start-order change for VAD disabled: start va-pipeline when microphon… [esphome#6391](https://github.com/esphome/esphome/pull/6391) by [@gnumpi](https://github.com/gnumpi)
- [RP2040W] Fix WiFi bootloop upon LibreTiny support [esphome#5414](https://github.com/esphome/esphome/pull/5414) by [@hostcc](https://github.com/hostcc) - Add ANNOUNCING state to media_player. [esphome#6691](https://github.com/esphome/esphome/pull/6691) by [@gnumpi](https://github.com/gnumpi)
- dallas: limit addresses to 64 bits [esphome#5413](https://github.com/esphome/esphome/pull/5413) by [@oddstr13](https://github.com/oddstr13) - [adc] Fix 11db deprecation warning [esphome#6749](https://github.com/esphome/esphome/pull/6749) by [@jesserockz](https://github.com/jesserockz) (notable-change)
- Bump zeroconf from 0.108.0 to 0.112.0 [esphome#5392](https://github.com/esphome/esphome/pull/5392) by [@dependabot[bot]](https://github.com/apps/dependabot)
- LibreTiny: enable MQTT, bump to v1.4.1 [esphome#5419](https://github.com/esphome/esphome/pull/5419) by [@kuba2k2](https://github.com/kuba2k2) ### Notable Changes
- Wireguard keepalive remove uint16 type [esphome#5430](https://github.com/esphome/esphome/pull/5430) by [@glmnet](https://github.com/glmnet)
- Fix #4896 and #4903 [esphome#5433](https://github.com/esphome/esphome/pull/5433) by [@clydebarrow](https://github.com/clydebarrow) - [adc] Fix 11db deprecation warning [esphome#6749](https://github.com/esphome/esphome/pull/6749) by [@jesserockz](https://github.com/jesserockz) (notable-change)
### All changes ### All changes
- Updated my username in Code Owners [esphome#5247](https://github.com/esphome/esphome/pull/5247) by [@mreditor97](https://github.com/mreditor97) - Add some components to the new testing framework (H) [esphome#6179](https://github.com/esphome/esphome/pull/6179) by [@kbx81](https://github.com/kbx81)
- remote_base: change dumpers log level [esphome#5253](https://github.com/esphome/esphome/pull/5253) by [@dudanov](https://github.com/dudanov) - Added Htu21d model option [esphome#6511](https://github.com/esphome/esphome/pull/6511) by [@MRemy2](https://github.com/MRemy2)
- Add `libfreetype-dev` Debian package for armv7 Docker builds [esphome#5262](https://github.com/esphome/esphome/pull/5262) by [@pierlon](https://github.com/pierlon) - Add bk72xx base test file [esphome#6522](https://github.com/esphome/esphome/pull/6522) by [@jesserockz](https://github.com/jesserockz)
- Add delay before enabling ipv6 [esphome#5256](https://github.com/esphome/esphome/pull/5256) by [@HeMan](https://github.com/HeMan) - Add "log" alias for "logs" command [esphome#6519](https://github.com/esphome/esphome/pull/6519) by [@pzich](https://github.com/pzich)
- Bump zeroconf from 0.74.0 to 0.80.0 [esphome#5260](https://github.com/esphome/esphome/pull/5260) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add DNS sensor and simplify format [esphome#6450](https://github.com/esphome/esphome/pull/6450) by [@HeMan](https://github.com/HeMan) (breaking-change)
- Bump click from 8.1.6 to 8.1.7 [esphome#5272](https://github.com/esphome/esphome/pull/5272) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add all missing `remote_receiver` `on_...` tests [esphome#6524](https://github.com/esphome/esphome/pull/6524) by [@kbx81](https://github.com/kbx81)
- Remove support for ESP-IDF version < 4 [esphome#5261](https://github.com/esphome/esphome/pull/5261) by [@HeMan](https://github.com/HeMan) - Add actions to http_request tests [esphome#6529](https://github.com/esphome/esphome/pull/6529) by [@kbx81](https://github.com/kbx81)
- Add pmwcs3 capacitive soil moisture & temperature sensor component [esphome#4624](https://github.com/esphome/esphome/pull/4624) by [@SeByDocKy](https://github.com/SeByDocKy) (new-integration) - Update homeassistant component tests with actions [esphome#6528](https://github.com/esphome/esphome/pull/6528) by [@kbx81](https://github.com/kbx81)
- Add manufacturer data config to BLE server [esphome#5251](https://github.com/esphome/esphome/pull/5251) by [@clydebarrow](https://github.com/clydebarrow) - Define `USE_PSRAM` [esphome#6526](https://github.com/esphome/esphome/pull/6526) by [@edwardtfn](https://github.com/edwardtfn)
- Add support for ESP32-{S2,S3,C3} to debug component [esphome#4731](https://github.com/esphome/esphome/pull/4731) by [@jayme-github](https://github.com/jayme-github) - Bump black from 24.2.0 to 24.4.0 [esphome#6539](https://github.com/esphome/esphome/pull/6539) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Support for ESP32-C2 & ESP32-C6 [esphome#4377](https://github.com/esphome/esphome/pull/4377) by [@vidplace7](https://github.com/vidplace7) - Bump peter-evans/create-pull-request from 6.0.2 to 6.0.3 [esphome#6525](https://github.com/esphome/esphome/pull/6525) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump arduino-heatpumpir to v1.0.23 [esphome#5269](https://github.com/esphome/esphome/pull/5269) by [@rob-deutsch](https://github.com/rob-deutsch) - Bump python version in sync-device-classes workflow to 3.12 for HA [esphome#6541](https://github.com/esphome/esphome/pull/6541) by [@jesserockz](https://github.com/jesserockz)
- Fix equality check when setting current-based cover position [esphome#5167](https://github.com/esphome/esphome/pull/5167) by [@kroimon](https://github.com/kroimon) - Bump pylint from 3.0.3 to 3.1.0 [esphome#6287](https://github.com/esphome/esphome/pull/6287) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump platformio from 6.1.9 to 6.1.10 [esphome#5237](https://github.com/esphome/esphome/pull/5237) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump aioesphomeapi from 23.2.0 to 24.0.0 [esphome#6544](https://github.com/esphome/esphome/pull/6544) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Add Invert method for SSD1306 [esphome#5292](https://github.com/esphome/esphome/pull/5292) by [@max246](https://github.com/max246) - Bump pyupgrade from 3.15.1 to 3.15.2 [esphome#6543](https://github.com/esphome/esphome/pull/6543) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Update PSRAM config params for IDF4+ [esphome#5298](https://github.com/esphome/esphome/pull/5298) by [@kbx81](https://github.com/kbx81) - Add enum option to typed_schema [esphome#6546](https://github.com/esphome/esphome/pull/6546) by [@jesserockz](https://github.com/jesserockz)
- Fix legacy zeroconf record update method [esphome#5294](https://github.com/esphome/esphome/pull/5294) by [@bdraco](https://github.com/bdraco) - Move esphome-fork startup script to main repo. [esphome#6523](https://github.com/esphome/esphome/pull/6523) by [@jesserockz](https://github.com/jesserockz)
- Bump zeroconf from 0.80.0 to 0.86.0 [esphome#5308](https://github.com/esphome/esphome/pull/5308) by [@dependabot[bot]](https://github.com/apps/dependabot) - Call workflow for addon with dev version [esphome#6549](https://github.com/esphome/esphome/pull/6549) by [@jesserockz](https://github.com/jesserockz)
- Add PSRAM mode and speed config [esphome#5312](https://github.com/esphome/esphome/pull/5312) by [@kbx81](https://github.com/kbx81) - Use trusted publishing token for pypi [esphome#6545](https://github.com/esphome/esphome/pull/6545) by [@jesserockz](https://github.com/jesserockz)
- Add extra SLPOUT for waking up some ST7789 chips [esphome#5319](https://github.com/esphome/esphome/pull/5319) by [@clydebarrow](https://github.com/clydebarrow) - Fix uart to work with new enum definition in esp-idf-v5.2.1 [esphome#6487](https://github.com/esphome/esphome/pull/6487) by [@luar123](https://github.com/luar123)
- 7789 controller fixes take 2 [esphome#5320](https://github.com/esphome/esphome/pull/5320) by [@clydebarrow](https://github.com/clydebarrow) - Housecleaning: Use walrus operator in datetime [esphome#6552](https://github.com/esphome/esphome/pull/6552) by [@jesserockz](https://github.com/jesserockz)
- Bump Arduino Pico to 3.4.0 [esphome#5321](https://github.com/esphome/esphome/pull/5321) by [@HeMan](https://github.com/HeMan) - Housecleaning: Use walrus operator in text [esphome#6560](https://github.com/esphome/esphome/pull/6560) by [@jesserockz](https://github.com/jesserockz)
- Use gzip compression for the web server component's static resources [esphome#5291](https://github.com/esphome/esphome/pull/5291) by [@EternityForest](https://github.com/EternityForest) - Housecleaning: Use walrus operator in light [esphome#6556](https://github.com/esphome/esphome/pull/6556) by [@jesserockz](https://github.com/jesserockz)
- Bump zeroconf from 0.86.0 to 0.88.0 [esphome#5315](https://github.com/esphome/esphome/pull/5315) by [@dependabot[bot]](https://github.com/apps/dependabot) - Housecleaning: Use walrus operator in select [esphome#6557](https://github.com/esphome/esphome/pull/6557) by [@jesserockz](https://github.com/jesserockz)
- Adding heating coil and fan icons, enum device_class [esphome#5325](https://github.com/esphome/esphome/pull/5325) by [@barndawgie](https://github.com/barndawgie) - Housecleaning: Use walrus operator in number [esphome#6561](https://github.com/esphome/esphome/pull/6561) by [@jesserockz](https://github.com/jesserockz)
- Add dashboard API to get firmware binaries [esphome#4675](https://github.com/esphome/esphome/pull/4675) by [@kuba2k2](https://github.com/kuba2k2) - Housecleaning: Use walrus operator in cover [esphome#6562](https://github.com/esphome/esphome/pull/6562) by [@jesserockz](https://github.com/jesserockz)
- Make uart error message go away [esphome#5329](https://github.com/esphome/esphome/pull/5329) by [@clydebarrow](https://github.com/clydebarrow) - Housecleaning: Use walrus operator in climate [esphome#6551](https://github.com/esphome/esphome/pull/6551) by [@jesserockz](https://github.com/jesserockz)
- add heating functionality to SI7021 [esphome#4828](https://github.com/esphome/esphome/pull/4828) by [@max246](https://github.com/max246) - Housecleaning: Use walrus operator in fan [esphome#6555](https://github.com/esphome/esphome/pull/6555) by [@jesserockz](https://github.com/jesserockz)
- Bump esphome-dashboard to 20230904.0 [esphome#5339](https://github.com/esphome/esphome/pull/5339) by [@jesserockz](https://github.com/jesserockz) - Housecleaning: Use walrus operator in text_sensor [esphome#6559](https://github.com/esphome/esphome/pull/6559) by [@jesserockz](https://github.com/jesserockz)
- Added Handling for Nack "file not found" [esphome#5338](https://github.com/esphome/esphome/pull/5338) by [@croessi](https://github.com/croessi) - Bump zeroconf to 0.132.2 [esphome#6548](https://github.com/esphome/esphome/pull/6548) by [@bdraco](https://github.com/bdraco)
- Prepare api and time for ESP-IDF >= 5 [esphome#5332](https://github.com/esphome/esphome/pull/5332) by [@HeMan](https://github.com/HeMan) - Housecleaning: Use walrus operator in switch [esphome#6558](https://github.com/esphome/esphome/pull/6558) by [@jesserockz](https://github.com/jesserockz)
- Tweak Improv serial to build in IDF 5 [esphome#5331](https://github.com/esphome/esphome/pull/5331) by [@kbx81](https://github.com/kbx81) - Housecleaning: Use walrus operator in lock [esphome#6554](https://github.com/esphome/esphome/pull/6554) by [@jesserockz](https://github.com/jesserockz)
- Support for LibreTiny platform (RTL8710, BK7231 & other modules) [esphome#3509](https://github.com/esphome/esphome/pull/3509) by [@kuba2k2](https://github.com/kuba2k2) (new-integration) - Housecleaning: Use walrus operator in sensor [esphome#6553](https://github.com/esphome/esphome/pull/6553) by [@jesserockz](https://github.com/jesserockz)
- Extend ESP32 CAN bit rates /bus speed support [esphome#5280](https://github.com/esphome/esphome/pull/5280) by [@mkaiser](https://github.com/mkaiser) - Bump pytest-mock from 3.12.0 to 3.14.0 [esphome#6572](https://github.com/esphome/esphome/pull/6572) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Debug component: add free PSRAM sensor [esphome#5334](https://github.com/esphome/esphome/pull/5334) by [@kahrendt](https://github.com/kahrendt) - Bump peter-evans/create-pull-request from 6.0.3 to 6.0.4 [esphome#6569](https://github.com/esphome/esphome/pull/6569) by [@dependabot[bot]](https://github.com/apps/dependabot)
- libretiny: fix uart_port framework config [esphome#5343](https://github.com/esphome/esphome/pull/5343) by [@jesserockz](https://github.com/jesserockz) - Nextion - Review set_protocol_reparse_mode() [esphome#6567](https://github.com/esphome/esphome/pull/6567) by [@edwardtfn](https://github.com/edwardtfn)
- Bump actions/checkout from 3 to 4 [esphome#5341](https://github.com/esphome/esphome/pull/5341) by [@dependabot[bot]](https://github.com/apps/dependabot) - Allow component final_validate [esphome#6475](https://github.com/esphome/esphome/pull/6475) by [@kbx81](https://github.com/kbx81)
- Add Lilygo T-Embed to st7789v display config. [esphome#5337](https://github.com/esphome/esphome/pull/5337) by [@clydebarrow](https://github.com/clydebarrow) - SM2135 - Use standard channel ordering. [esphome#6573](https://github.com/esphome/esphome/pull/6573) by [@Cossid](https://github.com/Cossid) (breaking-change)
- Disable IPv6 when config explicitly says false [esphome#5310](https://github.com/esphome/esphome/pull/5310) by [@HeMan](https://github.com/HeMan) - Nextion - Do not refresh sensors while updating [esphome#6566](https://github.com/esphome/esphome/pull/6566) by [@edwardtfn](https://github.com/edwardtfn)
- Add defines.h to ethernet_component.h for ENABLE_IPV6 [esphome#5344](https://github.com/esphome/esphome/pull/5344) by [@kbx81](https://github.com/kbx81) - Nextion - Review types [esphome#6565](https://github.com/esphome/esphome/pull/6565) by [@edwardtfn](https://github.com/edwardtfn)
- Synchronise Device Classes from Home Assistant [esphome#5328](https://github.com/esphome/esphome/pull/5328) by [@esphomebot](https://github.com/esphomebot) (breaking-change) - On failure, dump the output of preceding jobs in CI status [esphome#6564](https://github.com/esphome/esphome/pull/6564) by [@clydebarrow](https://github.com/clydebarrow)
- Bump pytest from 7.4.0 to 7.4.1 [esphome#5342](https://github.com/esphome/esphome/pull/5342) by [@dependabot[bot]](https://github.com/apps/dependabot) - Nextion `send_command` method [esphome#6540](https://github.com/esphome/esphome/pull/6540) by [@edwardtfn](https://github.com/edwardtfn)
- Fixed default temperature step values for haier climate [esphome#5330](https://github.com/esphome/esphome/pull/5330) by [@paveldn](https://github.com/paveldn) - Fix some printf formats for size_t. [esphome#6542](https://github.com/esphome/esphome/pull/6542) by [@clydebarrow](https://github.com/clydebarrow)
- Add debug component to all tests [esphome#5333](https://github.com/esphome/esphome/pull/5333) by [@HeMan](https://github.com/HeMan) - remove delay from tmp102 [esphome#6577](https://github.com/esphome/esphome/pull/6577) by [@ssieb](https://github.com/ssieb)
- Support MaxBotix XL in addition to HRXL [esphome#4510](https://github.com/esphome/esphome/pull/4510) by [@notjj](https://github.com/notjj) - Create ``component_dir`` substitution for local files to be included in… [esphome#6575](https://github.com/esphome/esphome/pull/6575) by [@jesserockz](https://github.com/jesserockz)
- Adding DFRobot Ozone Sensor Support (sen0321) [esphome#4782](https://github.com/esphome/esphome/pull/4782) by [@notjj](https://github.com/notjj) (new-integration) - Define `USE_ESP32_BLE` [esphome#6585](https://github.com/esphome/esphome/pull/6585) by [@edwardtfn](https://github.com/edwardtfn)
- mdns: bump IDF mdns component to 1.2.0 [esphome#5217](https://github.com/esphome/esphome/pull/5217) by [@stintel](https://github.com/stintel) - Bump aioesphomeapi from 24.0.0 to 24.3.0 [esphome#6602](https://github.com/esphome/esphome/pull/6602) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Integration LightwaveRF switches [esphome#4812](https://github.com/esphome/esphome/pull/4812) by [@max246](https://github.com/max246) (new-integration) - Add yamllint and clang-format to pre-commit hooks [esphome#6578](https://github.com/esphome/esphome/pull/6578) by [@clydebarrow](https://github.com/clydebarrow)
- Bump flake8 from 6.0.0 to 6.1.0 [esphome#5171](https://github.com/esphome/esphome/pull/5171) by [@dependabot[bot]](https://github.com/apps/dependabot) - Use clang-format version from requirements_dev file [esphome#6606](https://github.com/esphome/esphome/pull/6606) by [@jesserockz](https://github.com/jesserockz)
- Bump tornado from 6.3.2 to 6.3.3 [esphome#5236](https://github.com/esphome/esphome/pull/5236) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add some components to the new testing framework (P) [esphome#6213](https://github.com/esphome/esphome/pull/6213) by [@kbx81](https://github.com/kbx81)
- Bump platformio from 6.1.10 to 6.1.11 [esphome#5323](https://github.com/esphome/esphome/pull/5323) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add some components to the new testing framework (M part 1) [esphome#6207](https://github.com/esphome/esphome/pull/6207) by [@kbx81](https://github.com/kbx81)
- Only run ci-docker when ci-docker workflow changes [esphome#5347](https://github.com/esphome/esphome/pull/5347) by [@jesserockz](https://github.com/jesserockz) - Add some components to the new testing framework (M part 2) [esphome#6208](https://github.com/esphome/esphome/pull/6208) by [@kbx81](https://github.com/kbx81)
- esp32: Extra build customization [esphome#5322](https://github.com/esphome/esphome/pull/5322) by [@jesserockz](https://github.com/jesserockz) - Add some components to the new testing framework (O) [esphome#6211](https://github.com/esphome/esphome/pull/6211) by [@kbx81](https://github.com/kbx81)
- Allow upload command to flash file via serial [esphome#5274](https://github.com/esphome/esphome/pull/5274) by [@jesserockz](https://github.com/jesserockz) - [mopeka_std_check] Fix test file indentation [esphome#6610](https://github.com/esphome/esphome/pull/6610) by [@jesserockz](https://github.com/jesserockz)
- Allow "--device SERIAL" on cli to flash only via serial [esphome#5351](https://github.com/esphome/esphome/pull/5351) by [@jesserockz](https://github.com/jesserockz) - Add valve component [esphome#6447](https://github.com/esphome/esphome/pull/6447) by [@kbx81](https://github.com/kbx81) (new-integration)
- Fix PN532 for IDF 5 and ultralight enhancements [esphome#5352](https://github.com/esphome/esphome/pull/5352) by [@kbx81](https://github.com/kbx81) - Add some components to the new testing framework (R) [esphome#6219](https://github.com/esphome/esphome/pull/6219) by [@kbx81](https://github.com/kbx81)
- Fix cpu_ll_get_cycle_count() deprecated warning [esphome#5353](https://github.com/esphome/esphome/pull/5353) by [@kbx81](https://github.com/kbx81) - [sn74hc595] Enforce type field to distinguish gpio vs spi mode [esphome#6609](https://github.com/esphome/esphome/pull/6609) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Refactor SPI code; Add ESP-IDF hardware support [esphome#5311](https://github.com/esphome/esphome/pull/5311) by [@clydebarrow](https://github.com/clydebarrow) (new-integration) - [tests] Run yaml tests in groups if over 100 to run [esphome#6612](https://github.com/esphome/esphome/pull/6612) by [@jesserockz](https://github.com/jesserockz)
- Bump actions/cache from 3.3.1 to 3.3.2 [esphome#5367](https://github.com/esphome/esphome/pull/5367) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add some components to the new testing framework (I) [esphome#6185](https://github.com/esphome/esphome/pull/6185) by [@kbx81](https://github.com/kbx81)
- Bump zeroconf from 0.88.0 to 0.102.0 [esphome#5368](https://github.com/esphome/esphome/pull/5368) by [@dependabot[bot]](https://github.com/apps/dependabot) - Add some components to the new testing framework (T) [esphome#6229](https://github.com/esphome/esphome/pull/6229) by [@kbx81](https://github.com/kbx81)
- Fix repeat.count = 0 case [esphome#5364](https://github.com/esphome/esphome/pull/5364) by [@Xmister](https://github.com/Xmister) - Add some components to the new testing framework (S part 1) [esphome#6224](https://github.com/esphome/esphome/pull/6224) by [@kbx81](https://github.com/kbx81)
- Fix dashboard download for ESP32 variants [esphome#5355](https://github.com/esphome/esphome/pull/5355) by [@kuba2k2](https://github.com/kuba2k2) - Add some components to the new testing framework (S part 2) [esphome#6227](https://github.com/esphome/esphome/pull/6227) by [@kbx81](https://github.com/kbx81)
- Bump pytest from 7.4.1 to 7.4.2 [esphome#5357](https://github.com/esphome/esphome/pull/5357) by [@dependabot[bot]](https://github.com/apps/dependabot) - `graphical_display_menu` requires a Display, not DisplayBuffer [esphome#6614](https://github.com/esphome/esphome/pull/6614) by [@clydebarrow](https://github.com/clydebarrow)
- [ADC] Support measuring VCC on Raspberry Pico (W) [esphome#5335](https://github.com/esphome/esphome/pull/5335) by [@hostcc](https://github.com/hostcc) - Add null GPIO pin [esphome#6611](https://github.com/esphome/esphome/pull/6611) by [@clydebarrow](https://github.com/clydebarrow)
- Move CONF_PHASE_A/B/C constants to const.py. [esphome#5304](https://github.com/esphome/esphome/pull/5304) by [@kpfleming](https://github.com/kpfleming) - Allow UART to be AUTO LOADed [esphome#6617](https://github.com/esphome/esphome/pull/6617) by [@jesserockz](https://github.com/jesserockz)
- Add BMI160 support [esphome#5143](https://github.com/esphome/esphome/pull/5143) by [@flaviut](https://github.com/flaviut) (new-integration) - Add the WeiKai SPI/I2C UART/IO Expander components to esphome [esphome#5218](https://github.com/esphome/esphome/pull/5218) by [@DrCoolzic](https://github.com/DrCoolzic) (new-integration)
- Use black-pre-commit-mirror to speed up pre-commit runs. [esphome#5372](https://github.com/esphome/esphome/pull/5372) by [@kpfleming](https://github.com/kpfleming) - Sort mqtt_const alphabetically [esphome#6619](https://github.com/esphome/esphome/pull/6619) by [@jesserockz](https://github.com/jesserockz)
- Native SPI RGB LED component [esphome#5288](https://github.com/esphome/esphome/pull/5288) by [@clydebarrow](https://github.com/clydebarrow) (new-integration) - Limit Rx wait loop time to 3 seconds. [esphome#6594](https://github.com/esphome/esphome/pull/6594) by [@descipher](https://github.com/descipher)
- Wireguard component [esphome#4256](https://github.com/esphome/esphome/pull/4256) by [@lhoracek](https://github.com/lhoracek) (new-integration) - Event entity support [esphome#6451](https://github.com/esphome/esphome/pull/6451) by [@nohat](https://github.com/nohat) (new-integration)
- Bump LibreTiny version to 1.4.0 [esphome#5375](https://github.com/esphome/esphome/pull/5375) by [@kuba2k2](https://github.com/kuba2k2) - Only check c/c++ files with clang-format [esphome#6620](https://github.com/esphome/esphome/pull/6620) by [@jesserockz](https://github.com/jesserockz)
- time: Make std::string version of strftime() avoid runaway memory allocations [esphome#5348](https://github.com/esphome/esphome/pull/5348) by [@kpfleming](https://github.com/kpfleming) - Added base64 helper [esphome#4866](https://github.com/esphome/esphome/pull/4866) by [@freekode](https://github.com/freekode)
- Fix disabled wifi crash on boot [esphome#5370](https://github.com/esphome/esphome/pull/5370) by [@Xmister](https://github.com/Xmister) - Add Roomba IR protocol [esphome#4595](https://github.com/esphome/esphome/pull/4595) by [@rforro](https://github.com/rforro)
- debug: add ESP32-C6 support [esphome#5354](https://github.com/esphome/esphome/pull/5354) by [@stintel](https://github.com/stintel) - Fix issue when setting cw/ww brightness via temperature [esphome#5976](https://github.com/esphome/esphome/pull/5976) by [@patagonaa](https://github.com/patagonaa)
- Make string globals persist-able using fixed size allocations [esphome#5296](https://github.com/esphome/esphome/pull/5296) by [@EternityForest](https://github.com/EternityForest) - Add get/set color temperature functions in Kelvin [esphome#5006](https://github.com/esphome/esphome/pull/5006) by [@danielkent-net](https://github.com/danielkent-net)
- Use /data directory for .esphome folder when running as HA add-on [esphome#5374](https://github.com/esphome/esphome/pull/5374) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - Move CONF_PLATFORM_VERSION to global const.py [esphome#6629](https://github.com/esphome/esphome/pull/6629) by [@tomaszduda23](https://github.com/tomaszduda23)
- Bump zeroconf from 0.102.0 to 0.108.0 [esphome#5376](https://github.com/esphome/esphome/pull/5376) by [@dependabot[bot]](https://github.com/apps/dependabot) - Ble client fixes for proxy [esphome#6596](https://github.com/esphome/esphome/pull/6596) by [@elupus](https://github.com/elupus)
- Bump black from 23.7.0 to 23.9.1 [esphome#5377](https://github.com/esphome/esphome/pull/5377) by [@dependabot[bot]](https://github.com/apps/dependabot) - Fix for #6614- use background_color, improve anti-aliasing [esphome#6618](https://github.com/esphome/esphome/pull/6618) by [@clydebarrow](https://github.com/clydebarrow)
- Attempt to fix rp2040 adc with vcc [esphome#5378](https://github.com/esphome/esphome/pull/5378) by [@jesserockz](https://github.com/jesserockz) - Fix graph hangs when y <= 0 [esphome#6593](https://github.com/esphome/esphome/pull/6593) by [@chiahsing](https://github.com/chiahsing)
- Enable IPv6 for ESP8266 and Raspberry pi pico w (RP2040) [esphome#4759](https://github.com/esphome/esphome/pull/4759) by [@HeMan](https://github.com/HeMan) - Feature add last_operation to time based cover [esphome#6084](https://github.com/esphome/esphome/pull/6084) by [@xprofiler](https://github.com/xprofiler)
- Workflow updates [esphome#5384](https://github.com/esphome/esphome/pull/5384) by [@jesserockz](https://github.com/jesserockz) - Add `event`, `text_sensor` and `valve` device classes to sync script [esphome#6624](https://github.com/esphome/esphome/pull/6624) by [@kbx81](https://github.com/kbx81)
- Modbus Controller added some features [esphome#5318](https://github.com/esphome/esphome/pull/5318) by [@0x3333](https://github.com/0x3333) - Add datetime entities [esphome#6513](https://github.com/esphome/esphome/pull/6513) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Force heater off on setup [esphome#5161](https://github.com/esphome/esphome/pull/5161) by [@rufuswilson](https://github.com/rufuswilson) - Multiple Daly-BMS support [esphome#6615](https://github.com/esphome/esphome/pull/6615) by [@latonita](https://github.com/latonita)
- Add IDF 5 test yaml, add adc to IDF tests, fix adc for IDF 5 [esphome#5379](https://github.com/esphome/esphome/pull/5379) by [@kbx81](https://github.com/kbx81) - Remove text_sensor from sync-device-class job [esphome#6637](https://github.com/esphome/esphome/pull/6637) by [@kbx81](https://github.com/kbx81)
- Add patch to apt install [esphome#5389](https://github.com/esphome/esphome/pull/5389) by [@synesthesiam](https://github.com/synesthesiam) - Synchronise Device Classes from Home Assistant [esphome#6638](https://github.com/esphome/esphome/pull/6638) by [@esphomebot](https://github.com/esphomebot)
- Fix Waveshare 7.5v2 epaper screens are always powered on [esphome#5283](https://github.com/esphome/esphome/pull/5283) by [@phoenixswiss](https://github.com/phoenixswiss) - Display: add diagnostic test_card option [esphome#6608](https://github.com/esphome/esphome/pull/6608) by [@nielsnl68](https://github.com/nielsnl68)
- Update radon_eye_listener.cpp [esphome#5401](https://github.com/esphome/esphome/pull/5401) by [@rmmacias](https://github.com/rmmacias) - waveshare_epaper: Add 2.90in-dke [esphome#6492](https://github.com/esphome/esphome/pull/6492) by [@polyfloyd](https://github.com/polyfloyd)
- Add shelly-dimmer-stm32 51.7 to known versions [esphome#5400](https://github.com/esphome/esphome/pull/5400) by [@trvrnrth](https://github.com/trvrnrth) - Extract core comments from #6241 [esphome#6643](https://github.com/esphome/esphome/pull/6643) by [@javawizard](https://github.com/javawizard)
- Add E-Trailer Gaslevel support to Mopeka Std Check [esphome#5397](https://github.com/esphome/esphome/pull/5397) by [@Phhere](https://github.com/Phhere) - [hm3301] Updated the AQI based on the airnow document [esphome#6004](https://github.com/esphome/esphome/pull/6004) by [@optimusprimespace](https://github.com/optimusprimespace)
- fix disabled wifi power on 8266 [esphome#5409](https://github.com/esphome/esphome/pull/5409) by [@ssieb](https://github.com/ssieb) - Fix command line substitutions without any yaml substitutions [esphome#6644](https://github.com/esphome/esphome/pull/6644) by [@jesserockz](https://github.com/jesserockz)
- fix handling of web server version [esphome#5405](https://github.com/esphome/esphome/pull/5405) by [@ssieb](https://github.com/ssieb) - Allow platform dependencies [esphome#6623](https://github.com/esphome/esphome/pull/6623) by [@kbx81](https://github.com/kbx81)
- Climate preset fix [esphome#5407](https://github.com/esphome/esphome/pull/5407) by [@Jorre05](https://github.com/Jorre05) - [light] Add transition_length to strobe effect. [esphome#6595](https://github.com/esphome/esphome/pull/6595) by [@lhartmann](https://github.com/lhartmann)
- Remove Wi-Fi dependency from Midea component [esphome#5394](https://github.com/esphome/esphome/pull/5394) by [@AnthonyMaiorani](https://github.com/AnthonyMaiorani) - Fixed the issue that graph draws out of the boundary. [esphome#6651](https://github.com/esphome/esphome/pull/6651) by [@chiahsing](https://github.com/chiahsing)
- http_request: Cleanups and safety improvements [esphome#5360](https://github.com/esphome/esphome/pull/5360) by [@kpfleming](https://github.com/kpfleming) - Fix upload command. MQTT user and password is missing from configuration. #5093 [esphome#5766](https://github.com/esphome/esphome/pull/5766) by [@dylan09](https://github.com/dylan09)
- Make the pulse meter timeout on startup when no pulses are received [esphome#5388](https://github.com/esphome/esphome/pull/5388) by [@TrentHouliston](https://github.com/TrentHouliston) - patch esphome cli to skip mqtt based device discovery if --device option is specified [esphome#6371](https://github.com/esphome/esphome/pull/6371) by [@quigleymd](https://github.com/quigleymd)
- Wizard: fix colored text in input prompts [esphome#5313](https://github.com/esphome/esphome/pull/5313) by [@kuba2k2](https://github.com/kuba2k2) - Fix for #4866 - inconsistent arguments [esphome#6639](https://github.com/esphome/esphome/pull/6639) by [@clydebarrow](https://github.com/clydebarrow)
- support keypads with pulldowns [esphome#5404](https://github.com/esphome/esphome/pull/5404) by [@ssieb](https://github.com/ssieb) - [template/text] Fix lambda config [esphome#6655](https://github.com/esphome/esphome/pull/6655) by [@asergunov](https://github.com/asergunov)
- Fix SPI inverted clock on ESP8266 [esphome#5416](https://github.com/esphome/esphome/pull/5416) by [@clydebarrow](https://github.com/clydebarrow) - web_server: Add support for v3 local server_index [esphome#6563](https://github.com/esphome/esphome/pull/6563) by [@pzich](https://github.com/pzich)
- [RP2040W] Fix WiFi bootloop upon LibreTiny support [esphome#5414](https://github.com/esphome/esphome/pull/5414) by [@hostcc](https://github.com/hostcc) - Update webserver local assets to 20240429-211523 [esphome#6657](https://github.com/esphome/esphome/pull/6657) by [@esphomebot](https://github.com/esphomebot)
- dallas: limit addresses to 64 bits [esphome#5413](https://github.com/esphome/esphome/pull/5413) by [@oddstr13](https://github.com/oddstr13) - [nextion] Exit reparse before update TFT [esphome#6589](https://github.com/esphome/esphome/pull/6589) by [@edwardtfn](https://github.com/edwardtfn)
- Bump zeroconf from 0.108.0 to 0.112.0 [esphome#5392](https://github.com/esphome/esphome/pull/5392) by [@dependabot[bot]](https://github.com/apps/dependabot) - [nextion] Set alternative TFT update baud rate [esphome#6587](https://github.com/esphome/esphome/pull/6587) by [@edwardtfn](https://github.com/edwardtfn)
- LibreTiny: enable MQTT, bump to v1.4.1 [esphome#5419](https://github.com/esphome/esphome/pull/5419) by [@kuba2k2](https://github.com/kuba2k2) - [TM1637] Let turn off the display [esphome#6656](https://github.com/esphome/esphome/pull/6656) by [@asergunov](https://github.com/asergunov)
- Wireguard keepalive remove uint16 type [esphome#5430](https://github.com/esphome/esphome/pull/5430) by [@glmnet](https://github.com/glmnet) - [nextion] Use persistent http connection for TFT upload (Arduino) [esphome#6582](https://github.com/esphome/esphome/pull/6582) by [@edwardtfn](https://github.com/edwardtfn)
- Fix #4896 and #4903 [esphome#5433](https://github.com/esphome/esphome/pull/5433) by [@clydebarrow](https://github.com/clydebarrow) - Extend MQTT tests [esphome#6648](https://github.com/esphome/esphome/pull/6648) by [@kbx81](https://github.com/kbx81)
- Extend and consolidate `script` tests [esphome#6663](https://github.com/esphome/esphome/pull/6663) by [@kbx81](https://github.com/kbx81)
- [nextion] Use persistent http connection for TFT upload (ESP-IDF) [esphome#6576](https://github.com/esphome/esphome/pull/6576) by [@edwardtfn](https://github.com/edwardtfn)
- Add a function to return the loop_interval [esphome#6666](https://github.com/esphome/esphome/pull/6666) by [@tronikos](https://github.com/tronikos)
- Remote receiver improvements [esphome#4642](https://github.com/esphome/esphome/pull/4642) by [@Mat931](https://github.com/Mat931)
- Make fast update intervals in qmc5883l work [esphome#6647](https://github.com/esphome/esphome/pull/6647) by [@tronikos](https://github.com/tronikos)
- SPI and I2C for BMP390 and BMP380 [esphome#6652](https://github.com/esphome/esphome/pull/6652) by [@latonita](https://github.com/latonita) (new-integration) (breaking-change)
- Set "CONF_" CI counter to fail on 3 or more definitions [esphome#6668](https://github.com/esphome/esphome/pull/6668) by [@jesserockz](https://github.com/jesserockz)
- [core] Rename ALWAYS_INLINE to ESPHOME_ALWAYS_INLINE [esphome#6636](https://github.com/esphome/esphome/pull/6636) by [@tomaszduda23](https://github.com/tomaszduda23)
- print task name if logger is called from other than main thread [esphome#6630](https://github.com/esphome/esphome/pull/6630) by [@tomaszduda23](https://github.com/tomaszduda23)
- Fix recent definitions into `defines.h` [esphome#6667](https://github.com/esphome/esphome/pull/6667) by [@edwardtfn](https://github.com/edwardtfn)
- Add fast update to HMC5883L [esphome#6669](https://github.com/esphome/esphome/pull/6669) by [@mkmer](https://github.com/mkmer)
- Minor tidy up of BME280 code [esphome#6672](https://github.com/esphome/esphome/pull/6672) by [@latonita](https://github.com/latonita)
- External components: optional configurable path for git source [esphome#6677](https://github.com/esphome/esphome/pull/6677) by [@twasilczyk](https://github.com/twasilczyk)
- Use clang-apply-replacements when clang-apply-replacements-14 does not exist [esphome#6684](https://github.com/esphome/esphome/pull/6684) by [@Links2004](https://github.com/Links2004)
- fix conflict with EMPTY macro in zephyr [esphome#6679](https://github.com/esphome/esphome/pull/6679) by [@tomaszduda23](https://github.com/tomaszduda23)
- Bump actions/checkout from 4.1.1 to 4.1.5 [esphome#6685](https://github.com/esphome/esphome/pull/6685) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Fix Datetime-Datetime compiler error [esphome#6686](https://github.com/esphome/esphome/pull/6686) by [@RFDarter](https://github.com/RFDarter)
- Bump esphome/ESPAsyncWebServer-esphome to 3.2.0 [esphome#6687](https://github.com/esphome/esphome/pull/6687) by [@jesserockz](https://github.com/jesserockz)
- fix date_time validation [esphome#6688](https://github.com/esphome/esphome/pull/6688) by [@RFDarter](https://github.com/RFDarter)
- proceed if AP mode is set up [esphome#6631](https://github.com/esphome/esphome/pull/6631) by [@ssieb](https://github.com/ssieb)
- Migrate some constants to core code [esphome#6692](https://github.com/esphome/esphome/pull/6692) by [@clydebarrow](https://github.com/clydebarrow)
- Consolidate test files where all tests are identical [esphome#6690](https://github.com/esphome/esphome/pull/6690) by [@kbx81](https://github.com/kbx81)
- Make `pulse_meter` PULSE filter report the pulse as soon as it can [esphome#6014](https://github.com/esphome/esphome/pull/6014) by [@TrentHouliston](https://github.com/TrentHouliston)
- Update webserver local assets to 20240507-231331 [esphome#6696](https://github.com/esphome/esphome/pull/6696) by [@esphomebot](https://github.com/esphomebot)
- [github] Upgrade to actions/[upload,download]-artifact v4 [esphome#6698](https://github.com/esphome/esphome/pull/6698) by [@jesserockz](https://github.com/jesserockz)
- [nextion] Replace flags to `USE_ARDUINO` [esphome#6700](https://github.com/esphome/esphome/pull/6700) by [@edwardtfn](https://github.com/edwardtfn)
- [remote_receiver, remote_transmitter] Improve error messages on the ESP32 [esphome#6701](https://github.com/esphome/esphome/pull/6701) by [@Mat931](https://github.com/Mat931)
- [ethernet] Use constexpr instead of inline define for KSZ80XX_PC2R_REG_ADDR [esphome#6705](https://github.com/esphome/esphome/pull/6705) by [@jesserockz](https://github.com/jesserockz)
- Add PHY register writes to enable external clock on Ethernet with RTL8201 [esphome#6704](https://github.com/esphome/esphome/pull/6704) by [@heythisisnate](https://github.com/heythisisnate)
- Bump recommended ESP-IDF to 4.4.7 [esphome#6703](https://github.com/esphome/esphome/pull/6703) by [@bdraco](https://github.com/bdraco)
- [core] Ensure that a generated ID name is distinct from its type. [esphome#6706](https://github.com/esphome/esphome/pull/6706) by [@clydebarrow](https://github.com/clydebarrow)
- [color] Fix crash when hex color parses as int, improve error reporting. [esphome#6707](https://github.com/esphome/esphome/pull/6707) by [@clydebarrow](https://github.com/clydebarrow)
- [github] Fix digest artifact name [esphome#6710](https://github.com/esphome/esphome/pull/6710) by [@jesserockz](https://github.com/jesserockz)
- fix(ltr390): stuck ALS values when configured for ALS+UV readings [esphome#6723](https://github.com/esphome/esphome/pull/6723) by [@CodeInPolish](https://github.com/CodeInPolish)
- Set FEATURE_API_AUDIO flag also if the speaker component is not used [esphome#6712](https://github.com/esphome/esphome/pull/6712) by [@gnumpi](https://github.com/gnumpi)
- Bump platformio from 6.1.13 to 6.1.15 [esphome#6634](https://github.com/esphome/esphome/pull/6634) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Fix ESPHOME_PROJECT_VERSION_30 [esphome#6731](https://github.com/esphome/esphome/pull/6731) by [@jesserockz](https://github.com/jesserockz)
- Voice-Assistant: Start-order change for VAD disabled: start va-pipeline when microphon… [esphome#6391](https://github.com/esphome/esphome/pull/6391) by [@gnumpi](https://github.com/gnumpi)
- Add ANNOUNCING state to media_player. [esphome#6691](https://github.com/esphome/esphome/pull/6691) by [@gnumpi](https://github.com/gnumpi)
- [adc] Fix 11db deprecation warning [esphome#6749](https://github.com/esphome/esphome/pull/6749) by [@jesserockz](https://github.com/jesserockz) (notable-change)

View File

@@ -30,8 +30,9 @@ schema:
backup_exclude: backup_exclude:
- '*/*/' - '*/*/'
init: false init: false
startup: services
name: ESPHome name: ESPHome
version: 2023.9.0 version: 2024.5.0
slug: esphome slug: esphome
description: ESPHome add-on for intelligently managing all your ESP8266/ESP32 devices description: ESPHome add-on for intelligently managing all your ESP8266/ESP32 devices
image: ghcr.io/esphome/esphome-hassio image: ghcr.io/esphome/esphome-hassio

View File

@@ -2,7 +2,6 @@
import argparse import argparse
import re import re
import subprocess
from dataclasses import dataclass from dataclasses import dataclass
import sys import sys
import os import os
@@ -17,72 +16,71 @@ class Version:
minor: int minor: int
patch: int patch: int
beta: int = 0 beta: int = 0
dev: bool = False dev: str = ""
def __str__(self): def __str__(self):
return f'{self.major}.{self.minor}.{self.full_patch}' return f"{self.major}.{self.minor}.{self.full_patch}"
@property @property
def full_patch(self): def full_patch(self):
res = f'{self.patch}' res = f"{self.patch}"
if self.beta > 0: if self.beta > 0:
res += f'b{self.beta}' res += f"b{self.beta}"
if self.dev: if self.dev:
res += '-dev' res += f"-dev{self.dev}"
return res return res
@classmethod @classmethod
def parse(cls, value): def parse(cls, value):
match = re.match(r'(\d+).(\d+).(\d+)(b\d+)?(-dev)?', value) match = re.match(r"(\d+).(\d+).(\d+)(b\d+)?(-dev\d+)?", value)
assert match is not None assert match is not None
major = int(match[1]) major = int(match[1])
minor = int(match[2]) minor = int(match[2])
patch = int(match[3]) patch = int(match[3])
beta = int(match[4][1:]) if match[4] else 0 beta = int(match[4][1:]) if match[4] else 0
dev = bool(match[5]) dev = str(match[5][4:]) if match[5] else ""
return Version( return Version(major=major, minor=minor, patch=patch, beta=beta, dev=dev)
major=major, minor=minor, patch=patch,
beta=beta, dev=dev
)
def sub(path, pattern, repl, expected_count=1): def _sub(path, pattern, repl, expected_count=1):
with open(path) as fh: with open(path, encoding="utf-8") as fh:
content = fh.read() content = fh.read()
content, count = re.subn(pattern, repl, content, flags=re.MULTILINE) content, count = re.subn(pattern, repl, content, flags=re.NOFLAG)
if expected_count is not None: if expected_count is not None:
assert count == expected_count, f"Pattern {pattern} replacement failed!" assert count == expected_count, f"Pattern {pattern} replacement failed!"
with open(path, "wt") as fh: with open(path, "wt", encoding="utf-8") as fh:
fh.write(content) fh.write(content)
def write_version(target: str, version: Version): def _write_version(target: str, version: Version):
# version: '1.14.5' # BETA # version: "2024.5.0-dev20240412" # DEV
# version: '1.14.5' # STABLE # version: "1.14.5" # BETA
sub( # version: "1.14.5" # STABLE
'template/addon_config.yaml', _sub(
r" version: '[^']+' # {}".format(target.upper()), "template/addon_config.yaml",
f" version: '{version}' # {target.upper()}" f' version: "[^"]+" # {target.upper()}',
f' version: "{version}" # {target.upper()}',
) )
def main(): def main():
parser = argparse.ArgumentParser() parser = argparse.ArgumentParser()
parser.add_argument('new_version', type=str) parser.add_argument("new_version", type=str)
args = parser.parse_args() args = parser.parse_args()
version = Version.parse(args.new_version) version = Version.parse(args.new_version)
assert not version.dev
print(f"Bumping to {version}") print(f"Bumping to {version}")
if version.beta: if version.dev:
write_version('beta', version) _write_version("dev", version)
generate.main(['beta']) generate.main(["dev"])
elif version.beta:
_write_version("beta", version)
generate.main(["beta"])
else: else:
assert not version.beta _write_version("stable", version)
write_version('stable', version) _write_version("beta", version)
write_version('beta', version) generate.main(["stable", "beta"])
generate.main(['stable', 'beta'])
return 0 return 0

View File

@@ -1,13 +1,14 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
import argparse import argparse
import yaml
from pathlib import Path from pathlib import Path
from enum import Enum from enum import Enum
from shutil import copyfile from shutil import copyfile
import sys import sys
import os import os
import yaml
class Channel(Enum): class Channel(Enum):
stable = "stable" stable = "stable"
@@ -25,17 +26,16 @@ def main(args):
root = Path(__file__).parent.parent root = Path(__file__).parent.parent
templ = root / "template" templ = root / "template"
with open(templ / "addon_config.yaml", "r") as f: with open(templ / "addon_config.yaml", "r", encoding="utf-8") as f:
config = yaml.safe_load(f) config = yaml.safe_load(f)
copyf = config["copy_files"] copyf = config["copy_files"]
for channel in args.channels: for channel in args.channels:
conf = config[f"esphome-{channel.value}"] conf = config[f"esphome-{channel.value}"]
base_image = conf.pop("base_image", None)
dir_ = root / conf.pop("directory") dir_ = root / conf.pop("directory")
path = dir_ / "config.yaml" path = dir_ / "config.yaml"
with open(path, "w") as f: with open(path, "w", encoding="utf-8") as f:
yaml.dump(conf, f, indent=2, sort_keys=False, explicit_start=True) yaml.dump(conf, f, indent=2, sort_keys=False, explicit_start=True)
for file_ in copyf: for file_ in copyf:
@@ -46,19 +46,9 @@ def main(args):
copyfile(templ / file_, dir_ / file_) copyfile(templ / file_, dir_ / file_)
path = dir_ / "FILES ARE GENERATED DO NOT EDIT" path = dir_ / "FILES ARE GENERATED DO NOT EDIT"
with open(path, "w") as f: with open(path, "w", encoding="utf-8") as f:
f.write("Any edits should be made to the files in the 'template' directory") f.write("Any edits should be made to the files in the 'template' directory")
if channel == Channel.dev:
path = dir_ / "build.yaml"
build_conf = {
"build_from": {
arch: base_image for arch in conf["arch"]
}
}
with open(path, "w") as f:
yaml.dump(build_conf, f, indent=2, sort_keys=True, explicit_start=True)
if __name__ == "__main__": if __name__ == "__main__":
main(sys.argv[1:]) main(sys.argv[1:])

View File

@@ -16,11 +16,11 @@ base: &base
# Ingress settings # Ingress settings
ingress: true ingress: true
ingress_port: 0 ingress_port: 0
panel_icon: 'mdi:chip' panel_icon: "mdi:chip"
# Automatically add UART devices to add-on # Automatically add UART devices to add-on
uart: true uart: true
ports: ports:
'6052/tcp': null "6052/tcp": null
map: map:
- ssl:ro - ssl:ro
- config:rw - config:rw
@@ -39,15 +39,18 @@ base: &base
- "*/*/" - "*/*/"
# Disable docker init for s6 # Disable docker init for s6
init: false init: false
# Make sure dashboard is available for core
startup: services
esphome-dev: esphome-dev:
<<: *base <<: *base
directory: esphome-dev directory: esphome-dev
name: ESPHome (dev) name: ESPHome (dev)
version: 'dev' # DEV version: "2024.6.0-dev20240515" # DEV
slug: esphome-dev slug: esphome-dev
description: "Development version of ESPHome add-on" description: "Development version of ESPHome add-on"
url: https://next.esphome.io/ url: https://next.esphome.io/
image: ghcr.io/esphome/esphome-hassio
stage: experimental stage: experimental
advanced: true advanced: true
schema: schema:
@@ -60,15 +63,14 @@ esphome-dev:
certfile: str? certfile: str?
keyfile: str? keyfile: str?
leave_front_door_open: bool? leave_front_door_open: bool?
base_image: ghcr.io/esphome/esphome-hassio:dev
options: options:
home_assistant_dashboard_integration: false home_assistant_dashboard_integration: false
esphome-beta: esphome-beta:
<<: *base <<: *base
directory: esphome-beta directory: esphome-beta
name: ESPHome (beta) name: ESPHome (beta)
version: '2023.9.0' # BETA version: "2024.5.0" # BETA
slug: esphome-beta slug: esphome-beta
description: "Beta version of ESPHome add-on" description: "Beta version of ESPHome add-on"
url: https://beta.esphome.io/ url: https://beta.esphome.io/
@@ -76,13 +78,13 @@ esphome-beta:
stage: experimental stage: experimental
advanced: true advanced: true
options: options:
home_assistant_dashboard_integration: false home_assistant_dashboard_integration: false
esphome-stable: esphome-stable:
<<: *base <<: *base
directory: esphome directory: esphome
name: ESPHome name: ESPHome
version: '2023.9.0' # STABLE version: "2024.5.0" # STABLE
slug: esphome slug: esphome
description: "ESPHome add-on for intelligently managing all your ESP8266/ESP32 devices" description: "ESPHome add-on for intelligently managing all your ESP8266/ESP32 devices"
image: ghcr.io/esphome/esphome-hassio image: ghcr.io/esphome/esphome-hassio