1
0

Compare commits

..

313 Commits

49 changed files with 638 additions and 427 deletions

View File

@@ -3,7 +3,12 @@ FROM ghcr.io/home-assistant/devcontainer:addons
RUN \ RUN \
apt-get update \ apt-get update \
&& apt-get install -y --no-install-recommends \ && apt-get install -y --no-install-recommends \
python3-pip python3-pip \
python3-venv
ENV VIRTUAL_ENV=/opt/venv
RUN python3 -m venv $VIRTUAL_ENV
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
COPY script/requirements.txt / COPY script/requirements.txt /

View File

@@ -14,23 +14,28 @@
"containerEnv": { "containerEnv": {
"WORKSPACE_DIRECTORY": "${containerWorkspaceFolder}" "WORKSPACE_DIRECTORY": "${containerWorkspaceFolder}"
}, },
"extensions": [ "customizations": {
"timonwong.shellcheck", "vscode": {
"esbenp.prettier-vscode" "extensions": [
], "timonwong.shellcheck",
"mounts": [ "esbenp.prettier-vscode",
"type=volume,target=/var/lib/docker" "ms-python.python"
], ],
"settings": { "mounts": [
"terminal.integrated.profiles.linux": { "type=volume,target=/var/lib/docker"
"zsh": { ],
"path": "/usr/bin/zsh" "settings": {
"terminal.integrated.profiles.linux": {
"zsh": {
"path": "/usr/bin/zsh"
}
},
"terminal.integrated.defaultProfile.linux": "zsh",
"editor.formatOnPaste": false,
"editor.formatOnSave": true,
"editor.formatOnType": true,
"files.trimTrailingWhitespace": true
} }
}, }
"terminal.integrated.defaultProfile.linux": "zsh",
"editor.formatOnPaste": false,
"editor.formatOnSave": true,
"editor.formatOnType": true,
"files.trimTrailingWhitespace": true
} }
} }

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@v3.3.0 - uses: actions/checkout@v4.1.7
- uses: actions/setup-python@v4 - uses: actions/setup-python@v5.1.1
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@v3.3.0 - uses: actions/checkout@v4.1.7
- name: Log in to the GitHub container registry - name: Log in to the GitHub container registry
uses: docker/login-action@v2.1.0 uses: docker/login-action@v3.2.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.1.0 uses: docker/setup-qemu-action@v3.1.0
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2.4.1 uses: docker/setup-buildx-action@v3.4.0
- name: Build and Push - name: Build and Push
uses: docker/build-push-action@v4.0.0 uses: docker/build-push-action@v6.4.1
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@v3.3.0 uses: actions/checkout@v4.1.7
- name: 🛠 Setup Python - name: 🛠 Setup Python
uses: actions/setup-python@v4 uses: actions/setup-python@v5.1.1
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.11.0 uses: frenck/action-addon-linter@v2.15.1
with: with:
path: "./${{ matrix.channels.folder }}" path: "./${{ matrix.channels.folder }}"

View File

@@ -1,101 +1,194 @@
## 2023.4.0 ## 2024.8.0
## Full list of changes ## Full list of changes
### New Features
- [update] Implement ``update.perform`` action and ``update.is_available`` condition [esphome#7165](https://github.com/esphome/esphome/pull/7165) by [@jesserockz](https://github.com/jesserockz) (new-feature)
### New Components ### New Components
- Added in mmc5603 code [esphome#4175](https://github.com/esphome/esphome/pull/4175) by [@benhoff](https://github.com/benhoff) (new-integration) - Feature/m5angle8: Add support for m5angle8 input device [esphome#6799](https://github.com/esphome/esphome/pull/6799) by [@rnauber](https://github.com/rnauber) (new-integration)
- Add push to talk voice assistant [esphome#4648](https://github.com/esphome/esphome/pull/4648) by [@jesserockz](https://github.com/jesserockz) (new-integration) - APDS9306 Ambient Light Sensor [esphome#6709](https://github.com/esphome/esphome/pull/6709) by [@aodrenah](https://github.com/aodrenah) (new-integration)
- [lvgl] base implementation [esphome#7116](https://github.com/esphome/esphome/pull/7116) by [@clydebarrow](https://github.com/clydebarrow) (new-integration)
- Add runtime online image support [esphome#4710](https://github.com/esphome/esphome/pull/4710) by [@guillempages](https://github.com/guillempages) (new-integration)
- [bme68x_bsec2_i2c] BME68X Temperature+Pressure+Humidity+Gas Sensor via BSEC2 [esphome#4585](https://github.com/esphome/esphome/pull/4585) by [@neffs](https://github.com/neffs) (new-integration)
- Add support for LYWSD02MMC Xiaomi device [esphome#7080](https://github.com/esphome/esphome/pull/7080) by [@juanluss31](https://github.com/juanluss31) (new-integration)
### New Platforms
- [homeassistant] Native switch entity import and control [esphome#7018](https://github.com/esphome/esphome/pull/7018) by [@Links2004](https://github.com/Links2004) (new-platform)
- [homeassistant] Native number entity import and control [esphome#6455](https://github.com/esphome/esphome/pull/6455) by [@landonr](https://github.com/landonr) (new-platform)
- Correct offset calibration [esphome#7228](https://github.com/esphome/esphome/pull/7228) by [@descipher](https://github.com/descipher) (new-platform)
### Breaking Changes ### Breaking Changes
- Disallow uart0/1/2 as ids in config [esphome#4446](https://github.com/esphome/esphome/pull/4446) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - Remove deprecated argument parser [esphome#7151](https://github.com/esphome/esphome/pull/7151) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Require step to be set when calling register_number [esphome#4622](https://github.com/esphome/esphome/pull/4622) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Fix restore [esphome#4655](https://github.com/esphome/esphome/pull/4655) by [@spacemanspiff2007](https://github.com/spacemanspiff2007) (breaking-change)
### Beta Changes ### Beta Changes
- debug component, allow without debug logging [esphome#4685](https://github.com/esphome/esphome/pull/4685) by [@jesserockz](https://github.com/jesserockz) - remove extra number from pronto [esphome#7263](https://github.com/esphome/esphome/pull/7263) by [@ssieb](https://github.com/ssieb)
- Fixed dns2 for ethernet [esphome#4698](https://github.com/esphome/esphome/pull/4698) by [@HeMan](https://github.com/HeMan) - [api] Bump noise-c library version [esphome#7288](https://github.com/esphome/esphome/pull/7288) by [@clydebarrow](https://github.com/clydebarrow)
- Add timeout to i2c write error logs [esphome#4697](https://github.com/esphome/esphome/pull/4697) by [@Szewcson](https://github.com/Szewcson) - fix some small rtttl issues [esphome#6817](https://github.com/esphome/esphome/pull/6817) by [@nielsnl68](https://github.com/nielsnl68)
- Add event triggers to voice_assistant [esphome#4699](https://github.com/esphome/esphome/pull/4699) by [@jesserockz](https://github.com/jesserockz) - Fix overflow in ESPColorCorrection object [esphome#7268](https://github.com/esphome/esphome/pull/7268) by [@g-kiss](https://github.com/g-kiss)
- Call on_error if no api client connected that handles voice [esphome#4709](https://github.com/esphome/esphome/pull/4709) by [@jesserockz](https://github.com/jesserockz) - [validation] Allow ``maybe_simple_value`` to not have default key in complex value [esphome#7294](https://github.com/esphome/esphome/pull/7294) by [@jesserockz](https://github.com/jesserockz)
- Add ethernet powerdown (fixes esphome/issues#4420) [esphome#4706](https://github.com/esphome/esphome/pull/4706) by [@tracestep](https://github.com/tracestep) - [network] Always allow ``enable_ipv6: false`` [esphome#7291](https://github.com/esphome/esphome/pull/7291) by [@dwmw2](https://github.com/dwmw2)
- Bump arduino platform version to 5.3.0 [esphome#4713](https://github.com/esphome/esphome/pull/4713) by [@jesserockz](https://github.com/jesserockz) - Revert "[validation] Allow ``maybe_simple_value`` to not have default key in complex value" [esphome#7305](https://github.com/esphome/esphome/pull/7305) by [@jesserockz](https://github.com/jesserockz)
- [lvgl] Bug fixes [esphome#7300](https://github.com/esphome/esphome/pull/7300) by [@clydebarrow](https://github.com/clydebarrow)
- [speaker] Fix header includes [esphome#7304](https://github.com/esphome/esphome/pull/7304) by [@nielsnl68](https://github.com/nielsnl68)
- [microphone] Fix header includes [esphome#7310](https://github.com/esphome/esphome/pull/7310) by [@jesserockz](https://github.com/jesserockz)
- Fix RP2040 Neopixel flickering issue [esphome#7307](https://github.com/esphome/esphome/pull/7307) by [@deCodeIt](https://github.com/deCodeIt)
- add the ability to add more idf components to an existing setup [esphome#7302](https://github.com/esphome/esphome/pull/7302) by [@nielsnl68](https://github.com/nielsnl68)
- Fix waveshare 2.13" epaper stride calculation error [esphome#7303](https://github.com/esphome/esphome/pull/7303) by [@serialx](https://github.com/serialx)
- [rtttl] fix STOPPED state [esphome#7323](https://github.com/esphome/esphome/pull/7323) by [@NewoPL](https://github.com/NewoPL)
### All changes ### All changes
- Mark unique_id() virtual method as deprecated [esphome#4538](https://github.com/esphome/esphome/pull/4538) by [@oxan](https://github.com/oxan) - [wifi] Fix EAP for IDF 5.1+, add test [esphome#7061](https://github.com/esphome/esphome/pull/7061) by [@kbx81](https://github.com/kbx81)
- Drop deprecated entity property base methods [esphome#4539](https://github.com/esphome/esphome/pull/4539) by [@oxan](https://github.com/oxan) - jsn_sr04t component: AJ_SR04M compatibility mode in checksum calculation [esphome#7044](https://github.com/esphome/esphome/pull/7044) by [@soeffi](https://github.com/soeffi)
- Format test files [esphome#4541](https://github.com/esphome/esphome/pull/4541) by [@jesserockz](https://github.com/jesserockz) - [CI] compile entire web_server during tests [esphome#7084](https://github.com/esphome/esphome/pull/7084) by [@tomaszduda23](https://github.com/tomaszduda23)
- EntityBase: Icon string can stay in flash. [esphome#4566](https://github.com/esphome/esphome/pull/4566) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [CI] Add more ``improv_serial`` tests [esphome#7081](https://github.com/esphome/esphome/pull/7081) by [@kbx81](https://github.com/kbx81)
- Update the delta filter to be able to take a percentage change [esphome#4391](https://github.com/esphome/esphome/pull/4391) by [@TrentHouliston](https://github.com/TrentHouliston) - Bump docker/build-push-action from 6.3.0 to 6.4.0 in /.github/actions/build-image [esphome#7089](https://github.com/esphome/esphome/pull/7089) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Added missing PM_1_0 and PM_10_0 for PMS5003T and PMS5003ST [esphome#4560](https://github.com/esphome/esphome/pull/4560) by [@genestealer](https://github.com/genestealer) - [CI] add web_server v1 test [esphome#7090](https://github.com/esphome/esphome/pull/7090) by [@tomaszduda23](https://github.com/tomaszduda23)
- Add an option to force SPI into software mode [esphome#4556](https://github.com/esphome/esphome/pull/4556) by [@wupeka](https://github.com/wupeka) - [wifi] Hostname may not be set as expected on Arduino platform [esphome#7050](https://github.com/esphome/esphome/pull/7050) by [@NewoPL](https://github.com/NewoPL)
- allow using a binary output for the status led [esphome#4532](https://github.com/esphome/esphome/pull/4532) by [@ssieb](https://github.com/ssieb) - Add host uart support for MacOS [esphome#7095](https://github.com/esphome/esphome/pull/7095) by [@clydebarrow](https://github.com/clydebarrow)
- Add option flip_x [esphome#4555](https://github.com/esphome/esphome/pull/4555) by [@rafal83](https://github.com/rafal83) - Bump docker/build-push-action from 6.4.0 to 6.4.1 in /.github/actions/build-image [esphome#7102](https://github.com/esphome/esphome/pull/7102) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump aioesphomeapi from 13.5.0 to 13.5.1 [esphome#4572](https://github.com/esphome/esphome/pull/4572) by [@dependabot[bot]](https://github.com/apps/dependabot) - [code-quality] Add some ruff configuration [esphome#7103](https://github.com/esphome/esphome/pull/7103) by [@jesserockz](https://github.com/jesserockz)
- Verbose output of define. [esphome#4576](https://github.com/esphome/esphome/pull/4576) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [web_server] move v1 code to separate file [esphome#7091](https://github.com/esphome/esphome/pull/7091) by [@tomaszduda23](https://github.com/tomaszduda23)
- Add support for ESP32 CAM 3MP and 5MP resolutions and arbitrary camera clock. [esphome#4580](https://github.com/esphome/esphome/pull/4580) by [@peterhalicky](https://github.com/peterhalicky) - [validation] Add ``host`` to ``require_framework_version`` [esphome#7107](https://github.com/esphome/esphome/pull/7107) by [@jesserockz](https://github.com/jesserockz)
- Add a simple 'skip_initial' filter [esphome#4582](https://github.com/esphome/esphome/pull/4582) by [@sybrenstuvel](https://github.com/sybrenstuvel) - [code-quality] Tidy up some duplicate CONFIG_SCHEMA assignments [esphome#7106](https://github.com/esphome/esphome/pull/7106) by [@jesserockz](https://github.com/jesserockz)
- Fix outdated filter string in platformio_api [esphome#4587](https://github.com/esphome/esphome/pull/4587) by [@LordMike](https://github.com/LordMike) - Move MQTT ip discovery to deticated config option. [esphome#6673](https://github.com/esphome/esphome/pull/6673) by [@Links2004](https://github.com/Links2004)
- Split test3.yaml [esphome#4591](https://github.com/esphome/esphome/pull/4591) by [@jesserockz](https://github.com/jesserockz) - Feature/m5angle8: Add support for m5angle8 input device [esphome#6799](https://github.com/esphome/esphome/pull/6799) by [@rnauber](https://github.com/rnauber) (new-integration)
- Disallow uart0/1/2 as ids in config [esphome#4446](https://github.com/esphome/esphome/pull/4446) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - use cache to build tests for compoenents [esphome#7059](https://github.com/esphome/esphome/pull/7059) by [@tomaszduda23](https://github.com/tomaszduda23)
- Upgrade clang-format to v13 [esphome#4535](https://github.com/esphome/esphome/pull/4535) by [@oxan](https://github.com/oxan) - [modbus_controller] Add on_command_sent trigger [esphome#7078](https://github.com/esphome/esphome/pull/7078) by [@leejoow](https://github.com/leejoow)
- B/W support for GooDisplay GDEY029T94 (as used on Adafruit MagTag) [esphome#4222](https://github.com/esphome/esphome/pull/4222) by [@AaronJackson](https://github.com/AaronJackson) - [ili9xxx] Rework delay handling [esphome#7115](https://github.com/esphome/esphome/pull/7115) by [@clydebarrow](https://github.com/clydebarrow)
- Fix negative sqrt root in ct_clamp_sensor.cpp [esphome#4236](https://github.com/esphome/esphome/pull/4236) by [@jerome992](https://github.com/jerome992) - Inherit `esp32_ble_beacon` from `esp32_ble` [esphome#6908](https://github.com/esphome/esphome/pull/6908) by [@jpbede](https://github.com/jpbede)
- Wrap ipv6 code a bit more [esphome#4574](https://github.com/esphome/esphome/pull/4574) by [@jesserockz](https://github.com/jesserockz) - APDS9306 Ambient Light Sensor [esphome#6709](https://github.com/esphome/esphome/pull/6709) by [@aodrenah](https://github.com/aodrenah) (new-integration)
- Remove EntityBase from sprinkler [esphome#4606](https://github.com/esphome/esphome/pull/4606) by [@jesserockz](https://github.com/jesserockz) - Bump docker/build-push-action from 6.4.1 to 6.5.0 in /.github/actions/build-image [esphome#7119](https://github.com/esphome/esphome/pull/7119) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Fix wrong port multiplexer name in dump GPIO function of sx1509 [esphome#4592](https://github.com/esphome/esphome/pull/4592) by [@skaldo](https://github.com/skaldo) - Bump docker/setup-qemu-action from 3.1.0 to 3.2.0 [esphome#7120](https://github.com/esphome/esphome/pull/7120) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump zeroconf from 0.47.3 to 0.47.4 [esphome#4597](https://github.com/esphome/esphome/pull/4597) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump docker/login-action from 3.2.0 to 3.3.0 [esphome#7121](https://github.com/esphome/esphome/pull/7121) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump pytest-asyncio from 0.20.3 to 0.21.0 [esphome#4599](https://github.com/esphome/esphome/pull/4599) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 [esphome#7122](https://github.com/esphome/esphome/pull/7122) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Limit range on filter time period for remote_receiver [esphome#4604](https://github.com/esphome/esphome/pull/4604) by [@RoboMagus](https://github.com/RoboMagus) - [fan] fix initial FanCall to properly set speed [esphome#7113](https://github.com/esphome/esphome/pull/7113) by [@kr0ner](https://github.com/kr0ner)
- add select_schema to select component [esphome#4545](https://github.com/esphome/esphome/pull/4545) by [@regevbr](https://github.com/regevbr) - Added ruff to pre-commit hooks [esphome#7124](https://github.com/esphome/esphome/pull/7124) by [@clydebarrow](https://github.com/clydebarrow)
- Add ability to clear the gatt cache [esphome#4621](https://github.com/esphome/esphome/pull/4621) by [@bdraco](https://github.com/bdraco) - Update webserver local assets to 20240724-013115 [esphome#7126](https://github.com/esphome/esphome/pull/7126) by [@esphomebot](https://github.com/esphomebot)
- Bump actions/stale from 7 to 8 [esphome#4615](https://github.com/esphome/esphome/pull/4615) by [@dependabot[bot]](https://github.com/apps/dependabot) - [http_request] Allow configure buffer size on ESP-IDF [esphome#7125](https://github.com/esphome/esphome/pull/7125) by [@dentra](https://github.com/dentra)
- Require step to be set when calling register_number [esphome#4622](https://github.com/esphome/esphome/pull/4622) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - Give more info on import errors. [esphome#7128](https://github.com/esphome/esphome/pull/7128) by [@clydebarrow](https://github.com/clydebarrow)
- Lower range of CONF_FREQUENCY [esphome#4619](https://github.com/esphome/esphome/pull/4619) by [@berendhaan](https://github.com/berendhaan) - [lvgl] base implementation [esphome#7116](https://github.com/esphome/esphome/pull/7116) by [@clydebarrow](https://github.com/clydebarrow) (new-integration)
- Allow entity names to be set to None [esphome#4607](https://github.com/esphome/esphome/pull/4607) by [@jesserockz](https://github.com/jesserockz) - Bump aioesphomeapi to 24.6.2 and cryptography to 43.0.0 [esphome#7131](https://github.com/esphome/esphome/pull/7131) by [@bdraco](https://github.com/bdraco)
- Fix platform restriction for bme680_bsec [esphome#4616](https://github.com/esphome/esphome/pull/4616) by [@jesserockz](https://github.com/jesserockz) - [dependabot] Group docker action bumps into single PR [esphome#7133](https://github.com/esphome/esphome/pull/7133) by [@jesserockz](https://github.com/jesserockz)
- Fix EzoCommandType enum [esphome#4593](https://github.com/esphome/esphome/pull/4593) by [@alfredopironti](https://github.com/alfredopironti) - Add ``--version`` handler to cli [esphome#7150](https://github.com/esphome/esphome/pull/7150) by [@jesserockz](https://github.com/jesserockz)
- `EntityBase` Name can stay in flash. [esphome#4594](https://github.com/esphome/esphome/pull/4594) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [code-quality] Organise ethernet related imports [esphome#7152](https://github.com/esphome/esphome/pull/7152) by [@jesserockz](https://github.com/jesserockz)
- feat: Add support to unsubscribe from BLE advertisements [esphome#4620](https://github.com/esphome/esphome/pull/4620) by [@richardhopton](https://github.com/richardhopton) - [code-quality] Organise wifi related imports [esphome#7153](https://github.com/esphome/esphome/pull/7153) by [@jesserockz](https://github.com/jesserockz)
- EntityBase: Move ObjectId to Flash [esphome#4569](https://github.com/esphome/esphome/pull/4569) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [code-quality] Organise core imports [esphome#7149](https://github.com/esphome/esphome/pull/7149) by [@jesserockz](https://github.com/jesserockz)
- Add workflow to sync device classes with HA dev [esphome#4629](https://github.com/esphome/esphome/pull/4629) by [@jesserockz](https://github.com/jesserockz) - Remove deprecated argument parser [esphome#7151](https://github.com/esphome/esphome/pull/7151) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Synchronise Device Classes from Home Assistant [esphome#4633](https://github.com/esphome/esphome/pull/4633) by [@github-actions[bot]](https://github.com/apps/github-actions) - Move ``CONF_ON_ERROR`` to const.py [esphome#7156](https://github.com/esphome/esphome/pull/7156) by [@jesserockz](https://github.com/jesserockz)
- Remove AUTO_LOAD from as3935 [esphome#4630](https://github.com/esphome/esphome/pull/4630) by [@jesserockz](https://github.com/jesserockz) - [code-quality] Organise esp32 imports [esphome#7154](https://github.com/esphome/esphome/pull/7154) by [@jesserockz](https://github.com/jesserockz)
- Add ifdef to new bt proxy unsubscribe [esphome#4634](https://github.com/esphome/esphome/pull/4634) by [@jesserockz](https://github.com/jesserockz) - Add microAmp and milliAmp to defined units [esphome#7157](https://github.com/esphome/esphome/pull/7157) by [@FreeBear-nc](https://github.com/FreeBear-nc)
- add bluetooth mac address in dump_config() [esphome#4628](https://github.com/esphome/esphome/pull/4628) by [@felixlungu](https://github.com/felixlungu) - Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 in the docker-actions group [esphome#7159](https://github.com/esphome/esphome/pull/7159) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Binary map bugfixes [esphome#4636](https://github.com/esphome/esphome/pull/4636) by [@kahrendt](https://github.com/kahrendt) - LVGL stage 2 [esphome#7129](https://github.com/esphome/esphome/pull/7129) by [@clydebarrow](https://github.com/clydebarrow)
- entity_base avoid padding bytes. [esphome#4637](https://github.com/esphome/esphome/pull/4637) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [pid] Add get_min_integral() and get_max_integral() [esphome#7162](https://github.com/esphome/esphome/pull/7162) by [@FreeBear-nc](https://github.com/FreeBear-nc)
- Avoid sensor padding. [esphome#4638](https://github.com/esphome/esphome/pull/4638) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [code-quality] Organise bluetooth related imports [esphome#7155](https://github.com/esphome/esphome/pull/7155) by [@jesserockz](https://github.com/jesserockz)
- Support advanced UART customization [esphome#4465](https://github.com/esphome/esphome/pull/4465) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - http_request watchdog as a component [esphome#7161](https://github.com/esphome/esphome/pull/7161) by [@oarcher](https://github.com/oarcher)
- Log calibration results at level INFO [esphome#4240](https://github.com/esphome/esphome/pull/4240) by [@Duckle29](https://github.com/Duckle29) - [touchscreen] Allow binary sensor to have multiple pages in config [esphome#7112](https://github.com/esphome/esphome/pull/7112) by [@jesserockz](https://github.com/jesserockz)
- Number step not optional [esphome#4649](https://github.com/esphome/esphome/pull/4649) by [@RoboMagus](https://github.com/RoboMagus) - [matrix_keypad] Add `pin->setup()` to rows and cols [esphome#7163](https://github.com/esphome/esphome/pull/7163) by [@AAllport](https://github.com/AAllport)
- VSCode / devcontainer updates [esphome#4647](https://github.com/esphome/esphome/pull/4647) by [@jesserockz](https://github.com/jesserockz) - [update] Implement ``update.perform`` action and ``update.is_available`` condition [esphome#7165](https://github.com/esphome/esphome/pull/7165) by [@jesserockz](https://github.com/jesserockz) (new-feature)
- Retry PN532_COMMAND_VERSION_DATA on setup() (fixes esphome/issues#3823) [esphome#4651](https://github.com/esphome/esphome/pull/4651) by [@tracestep](https://github.com/tracestep) - [lvgl] PR stage 3 [esphome#7160](https://github.com/esphome/esphome/pull/7160) by [@clydebarrow](https://github.com/clydebarrow)
- Bump pylint from 2.16.4 to 2.17.2 [esphome#4650](https://github.com/esphome/esphome/pull/4650) by [@dependabot[bot]](https://github.com/apps/dependabot) - [api] ``homeassistant.action`` replaces ``homeassistant.service`` [esphome#7171](https://github.com/esphome/esphome/pull/7171) by [@jesserockz](https://github.com/jesserockz)
- Bump black from 23.1.0 to 23.3.0 [esphome#4635](https://github.com/esphome/esphome/pull/4635) by [@dependabot[bot]](https://github.com/apps/dependabot) - ade7953_spi wrong size specified in read_array call [esphome#7172](https://github.com/esphome/esphome/pull/7172) by [@SimoPk](https://github.com/SimoPk)
- Added in mmc5603 code [esphome#4175](https://github.com/esphome/esphome/pull/4175) by [@benhoff](https://github.com/benhoff) (new-integration) - Bump improv library to 1.2.4 [esphome#7174](https://github.com/esphome/esphome/pull/7174) by [@jesserockz](https://github.com/jesserockz)
- fix compilation with latest esp-idf [esphome#4671](https://github.com/esphome/esphome/pull/4671) by [@Mic92](https://github.com/Mic92) - Implement 'round to nearest multiple' filter [esphome#7142](https://github.com/esphome/esphome/pull/7142) by [@MrEbbinghaus](https://github.com/MrEbbinghaus)
- Bump zeroconf from 0.47.4 to 0.56.0 [esphome#4674](https://github.com/esphome/esphome/pull/4674) by [@dependabot[bot]](https://github.com/apps/dependabot) - git ignore managed_components [esphome#7180](https://github.com/esphome/esphome/pull/7180) by [@oarcher](https://github.com/oarcher)
- Bump pytest from 7.2.2 to 7.3.0 [esphome#4673](https://github.com/esphome/esphome/pull/4673) by [@dependabot[bot]](https://github.com/apps/dependabot) - [core] Eliminate nuisance messages from `build_codeowners` [esphome#7185](https://github.com/esphome/esphome/pull/7185) by [@clydebarrow](https://github.com/clydebarrow)
- Add push to talk voice assistant [esphome#4648](https://github.com/esphome/esphome/pull/4648) by [@jesserockz](https://github.com/jesserockz) (new-integration) - [code-quality] More portable shebangs [esphome#7189](https://github.com/esphome/esphome/pull/7189) by [@jesserockz](https://github.com/jesserockz)
- Fix ESP32 SPI hardware assignment in Arduino fw [esphome#4669](https://github.com/esphome/esphome/pull/4669) by [@kbx81](https://github.com/kbx81) - Add support for doing update entity refresh/check via API. [esphome#7190](https://github.com/esphome/esphome/pull/7190) by [@jesserockz](https://github.com/jesserockz)
- Fix some NFC/PN532 crashes [esphome#4678](https://github.com/esphome/esphome/pull/4678) by [@kbx81](https://github.com/kbx81) - [lvgl] Stage 4 [esphome#7166](https://github.com/esphome/esphome/pull/7166) by [@clydebarrow](https://github.com/clydebarrow)
- Add support for SSD1306 72x40 displays [esphome#4659](https://github.com/esphome/esphome/pull/4659) by [@johnsto](https://github.com/johnsto) - [esp32_improv] Update Improv library to reference new repo/version [esphome#7195](https://github.com/esphome/esphome/pull/7195) by [@kahrendt](https://github.com/kahrendt)
- Fix pin schema for i2s microphone [esphome#4680](https://github.com/esphome/esphome/pull/4680) by [@jesserockz](https://github.com/jesserockz) - hydreon_rgxx: Fix parsing of data line [esphome#7192](https://github.com/esphome/esphome/pull/7192) by [@domob1812](https://github.com/domob1812)
- Fix BedJet setup priority [fixes esphome/issues#3807] [esphome#4677](https://github.com/esphome/esphome/pull/4677) by [@jhansche](https://github.com/jhansche) - Remove outdated version block [esphome#7177](https://github.com/esphome/esphome/pull/7177) by [@tomaszduda23](https://github.com/tomaszduda23)
- Add always trigger stop [esphome#4249](https://github.com/esphome/esphome/pull/4249) by [@X-Ryl669](https://github.com/X-Ryl669) - [lvgl] Stage 5 [esphome#7191](https://github.com/esphome/esphome/pull/7191) by [@clydebarrow](https://github.com/clydebarrow)
- Fix graph limits for negative values and other corner cases [esphome#4253](https://github.com/esphome/esphome/pull/4253) by [@unhold](https://github.com/unhold) - socket: socket::set_sockaddr() for IPv4 addresses in IPv6 builds [esphome#7196](https://github.com/esphome/esphome/pull/7196) by [@dwmw2](https://github.com/dwmw2)
- Fix cut-off on 2.13" waveshare/ttgo epaper displays [esphome#4255](https://github.com/esphome/esphome/pull/4255) by [@unhold](https://github.com/unhold) - Adds MQTT component to Alarm Control panel component [esphome#7188](https://github.com/esphome/esphome/pull/7188) by [@heythisisnate](https://github.com/heythisisnate)
- [Ethernet] Add PHY KSZ8081 support [esphome#4668](https://github.com/esphome/esphome/pull/4668) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [lvgl] Final stage [esphome#7184](https://github.com/esphome/esphome/pull/7184) by [@clydebarrow](https://github.com/clydebarrow)
- Fix restore [esphome#4655](https://github.com/esphome/esphome/pull/4655) by [@spacemanspiff2007](https://github.com/spacemanspiff2007) (breaking-change) - Move ``CONF_BACKGROUND_COLOR`` and ``CONF_FOREGROUND_COLOR`` to const.py [esphome#7202](https://github.com/esphome/esphome/pull/7202) by [@jesserockz](https://github.com/jesserockz)
- debug component, allow without debug logging [esphome#4685](https://github.com/esphome/esphome/pull/4685) by [@jesserockz](https://github.com/jesserockz) - [helpers] Set default flags of ExternalRAMAllocator to ALLOW_FAILURE [esphome#7201](https://github.com/esphome/esphome/pull/7201) by [@jesserockz](https://github.com/jesserockz)
- Fixed dns2 for ethernet [esphome#4698](https://github.com/esphome/esphome/pull/4698) by [@HeMan](https://github.com/HeMan) - Add runtime online image support [esphome#4710](https://github.com/esphome/esphome/pull/4710) by [@guillempages](https://github.com/guillempages) (new-integration)
- Add timeout to i2c write error logs [esphome#4697](https://github.com/esphome/esphome/pull/4697) by [@Szewcson](https://github.com/Szewcson) - Update i2s_audio_speaker.cppi2s_audio/speaker: Fix fallthrough compiler warning [esphome#7167](https://github.com/esphome/esphome/pull/7167) by [@Mimoja](https://github.com/Mimoja)
- Add event triggers to voice_assistant [esphome#4699](https://github.com/esphome/esphome/pull/4699) by [@jesserockz](https://github.com/jesserockz) - Move CONF_ITEMS/CONF_FONT/CONF_TEXT to const.py [esphome#7204](https://github.com/esphome/esphome/pull/7204) by [@jesserockz](https://github.com/jesserockz)
- Call on_error if no api client connected that handles voice [esphome#4709](https://github.com/esphome/esphome/pull/4709) by [@jesserockz](https://github.com/jesserockz) - [lvgl] Fix compile error when using encoder with buttons only. [esphome#7203](https://github.com/esphome/esphome/pull/7203) by [@clydebarrow](https://github.com/clydebarrow)
- Add ethernet powerdown (fixes esphome/issues#4420) [esphome#4706](https://github.com/esphome/esphome/pull/4706) by [@tracestep](https://github.com/tracestep) - Revert "Add null GPIO pin " [esphome#6621](https://github.com/esphome/esphome/pull/6621) by [@jesserockz](https://github.com/jesserockz)
- Bump arduino platform version to 5.3.0 [esphome#4713](https://github.com/esphome/esphome/pull/4713) by [@jesserockz](https://github.com/jesserockz) - [remote_transmitter] Change default carrier_frequency to valid value [esphome#7176](https://github.com/esphome/esphome/pull/7176) by [@iannisimo](https://github.com/iannisimo)
- [code-quality] Organise script imports [esphome#7198](https://github.com/esphome/esphome/pull/7198) by [@jesserockz](https://github.com/jesserockz)
- [max31856] Use cv.frequency as validator [esphome#7212](https://github.com/esphome/esphome/pull/7212) by [@jesserockz](https://github.com/jesserockz)
- [code-quality] Organise base entities imports [esphome#7208](https://github.com/esphome/esphome/pull/7208) by [@tomaszduda23](https://github.com/tomaszduda23)
- [spi] Remove ``SPIDelegateDummy`` [esphome#7215](https://github.com/esphome/esphome/pull/7215) by [@jesserockz](https://github.com/jesserockz)
- [code-quality] Apply ruff linting suggestions [esphome#7206](https://github.com/esphome/esphome/pull/7206) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] Organise logger imports [esphome#7205](https://github.com/esphome/esphome/pull/7205) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] Apply ruff linting suggestions to core [esphome#7207](https://github.com/esphome/esphome/pull/7207) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix clang-tidy sprinkler [esphome#7222](https://github.com/esphome/esphome/pull/7222) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] __attribute__((packed)) [esphome#7221](https://github.com/esphome/esphome/pull/7221) by [@tomaszduda23](https://github.com/tomaszduda23)
- hx711: Check for DOUT going high after a reading [esphome#7214](https://github.com/esphome/esphome/pull/7214) by [@dwmw2](https://github.com/dwmw2)
- [mqtt] Add extended device info [esphome#7194](https://github.com/esphome/esphome/pull/7194) by [@dentra](https://github.com/dentra)
- [code-quality] NOLINT readability-identifier-naming [esphome#7220](https://github.com/esphome/esphome/pull/7220) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] Organise time imports [esphome#7219](https://github.com/esphome/esphome/pull/7219) by [@tomaszduda23](https://github.com/tomaszduda23)
- [lvgl] Fix set state on updates [esphome#7227](https://github.com/esphome/esphome/pull/7227) by [@clydebarrow](https://github.com/clydebarrow)
- add missing override [esphome#7231](https://github.com/esphome/esphome/pull/7231) by [@tomaszduda23](https://github.com/tomaszduda23)
- Add text_align_to_string [esphome#7243](https://github.com/esphome/esphome/pull/7243) by [@MrMDavidson](https://github.com/MrMDavidson)
- [sml] Fixed crashing sml parser [esphome#7235](https://github.com/esphome/esphome/pull/7235) by [@eNBeWe](https://github.com/eNBeWe)
- Allow project name and version as improv_serial identity [esphome#7248](https://github.com/esphome/esphome/pull/7248) by [@AzonInc](https://github.com/AzonInc)
- [lvgl] Implement default group for encoders [esphome#7242](https://github.com/esphome/esphome/pull/7242) by [@clydebarrow](https://github.com/clydebarrow)
- [bme68x_bsec2_i2c] BME68X Temperature+Pressure+Humidity+Gas Sensor via BSEC2 [esphome#4585](https://github.com/esphome/esphome/pull/4585) by [@neffs](https://github.com/neffs) (new-integration)
- [code-quality] clang-tidy media_player [esphome#7238](https://github.com/esphome/esphome/pull/7238) by [@tomaszduda23](https://github.com/tomaszduda23)
- Bump docker/build-push-action from 6.5.0 to 6.6.1 in /.github/actions/build-image [esphome#7232](https://github.com/esphome/esphome/pull/7232) by [@dependabot[bot]](https://github.com/apps/dependabot)
- fix build error [esphome#7229](https://github.com/esphome/esphome/pull/7229) by [@tomaszduda23](https://github.com/tomaszduda23)
- adjust to new python pre-commit hooks [esphome#7178](https://github.com/esphome/esphome/pull/7178) by [@tomaszduda23](https://github.com/tomaszduda23)
- add windows script/setup.bat [esphome#7140](https://github.com/esphome/esphome/pull/7140) by [@nielsnl68](https://github.com/nielsnl68)
- [code-quality] add NOLINT haier_base [esphome#7236](https://github.com/esphome/esphome/pull/7236) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] clang-tidy bedjet [esphome#7251](https://github.com/esphome/esphome/pull/7251) by [@tomaszduda23](https://github.com/tomaszduda23)
- fix name conflict with zephyr macro [esphome#7252](https://github.com/esphome/esphome/pull/7252) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] Apply ruff linting suggestions [esphome#7239](https://github.com/esphome/esphome/pull/7239) by [@tomaszduda23](https://github.com/tomaszduda23)
- Add support for LYWSD02MMC Xiaomi device [esphome#7080](https://github.com/esphome/esphome/pull/7080) by [@juanluss31](https://github.com/juanluss31) (new-integration)
- [code-quality] fix clang-tidy web server [esphome#7230](https://github.com/esphome/esphome/pull/7230) by [@tomaszduda23](https://github.com/tomaszduda23)
- [test][web_server] Rejig test for v3 [esphome#7110](https://github.com/esphome/esphome/pull/7110) by [@RFDarter](https://github.com/RFDarter)
- [api] Error log when NONE Update command is sent [esphome#7247](https://github.com/esphome/esphome/pull/7247) by [@oarcher](https://github.com/oarcher)
- [api] Add new flag to request state/attribute once from HA only [esphome#7258](https://github.com/esphome/esphome/pull/7258) by [@jesserockz](https://github.com/jesserockz)
- [homeassistant] Add ``HOME_ASSISTANT_IMPORT_CONTROL_SCHEMA`` [esphome#7259](https://github.com/esphome/esphome/pull/7259) by [@jesserockz](https://github.com/jesserockz)
- [const] Add some units for future use and adjust case [esphome#7260](https://github.com/esphome/esphome/pull/7260) by [@nkinnan](https://github.com/nkinnan)
- [online_image] add option to show placeholder while downloading [esphome#7083](https://github.com/esphome/esphome/pull/7083) by [@guillempages](https://github.com/guillempages)
- [lvgl] Add initial_focus for encoders [esphome#7256](https://github.com/esphome/esphome/pull/7256) by [@clydebarrow](https://github.com/clydebarrow)
- [code-quality] fix order in esphome/const.py [esphome#7267](https://github.com/esphome/esphome/pull/7267) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix clang-tidy network [esphome#7266](https://github.com/esphome/esphome/pull/7266) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix clang-tidy core optional [esphome#7265](https://github.com/esphome/esphome/pull/7265) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] Fix variable naming in base_light_effects [esphome#7237](https://github.com/esphome/esphome/pull/7237) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix clang-tidy mqtt [esphome#7253](https://github.com/esphome/esphome/pull/7253) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix clang-tidy wifi related [esphome#7254](https://github.com/esphome/esphome/pull/7254) by [@tomaszduda23](https://github.com/tomaszduda23)
- Bump docker/build-push-action from 6.6.1 to 6.7.0 in /.github/actions/build-image [esphome#7269](https://github.com/esphome/esphome/pull/7269) by [@dependabot[bot]](https://github.com/apps/dependabot)
- [CI] Dont run full CI on ``build-image`` action changes [esphome#7270](https://github.com/esphome/esphome/pull/7270) by [@jesserockz](https://github.com/jesserockz)
- Implement ByteBuffer [esphome#6878](https://github.com/esphome/esphome/pull/6878) by [@clydebarrow](https://github.com/clydebarrow)
- Add min and max brightness parameters for Light dim_relative Action [esphome#6971](https://github.com/esphome/esphome/pull/6971) by [@PaoloTK](https://github.com/PaoloTK)
- [homeassistant] Native switch entity import and control [esphome#7018](https://github.com/esphome/esphome/pull/7018) by [@Links2004](https://github.com/Links2004) (new-platform)
- [homeassistant] Native number entity import and control [esphome#6455](https://github.com/esphome/esphome/pull/6455) by [@landonr](https://github.com/landonr) (new-platform)
- [lvgl] Rework events to avoid feedback loops [esphome#7262](https://github.com/esphome/esphome/pull/7262) by [@clydebarrow](https://github.com/clydebarrow)
- Add `color_filter_opa` style property [esphome#7276](https://github.com/esphome/esphome/pull/7276) by [@clydebarrow](https://github.com/clydebarrow)
- [code-quality] fix clang-tidy wake_on_lan [esphome#7275](https://github.com/esphome/esphome/pull/7275) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix readability-braces-around-statements [esphome#7273](https://github.com/esphome/esphome/pull/7273) by [@tomaszduda23](https://github.com/tomaszduda23)
- [mqtt] fix missing initializer in MQTTClientComponent::disable_discovery [esphome#7271](https://github.com/esphome/esphome/pull/7271) by [@oarcher](https://github.com/oarcher)
- [code-quality] fix readability-named-parameter [esphome#7272](https://github.com/esphome/esphome/pull/7272) by [@tomaszduda23](https://github.com/tomaszduda23)
- support illuminance for airthings wave plus device [esphome#5203](https://github.com/esphome/esphome/pull/5203) by [@MadMonkey87](https://github.com/MadMonkey87)
- [micro_wake_word] Bump ESPMicroSpeechFeatures version to 1.1.0 [esphome#7249](https://github.com/esphome/esphome/pull/7249) by [@kahrendt](https://github.com/kahrendt)
- Implement the finish() method and action. implement the is_stopped condition [esphome#7255](https://github.com/esphome/esphome/pull/7255) by [@nielsnl68](https://github.com/nielsnl68)
- Correct offset calibration [esphome#7228](https://github.com/esphome/esphome/pull/7228) by [@descipher](https://github.com/descipher) (new-platform)
- remove extra number from pronto [esphome#7263](https://github.com/esphome/esphome/pull/7263) by [@ssieb](https://github.com/ssieb)
- [api] Bump noise-c library version [esphome#7288](https://github.com/esphome/esphome/pull/7288) by [@clydebarrow](https://github.com/clydebarrow)
- fix some small rtttl issues [esphome#6817](https://github.com/esphome/esphome/pull/6817) by [@nielsnl68](https://github.com/nielsnl68)
- Fix overflow in ESPColorCorrection object [esphome#7268](https://github.com/esphome/esphome/pull/7268) by [@g-kiss](https://github.com/g-kiss)
- [validation] Allow ``maybe_simple_value`` to not have default key in complex value [esphome#7294](https://github.com/esphome/esphome/pull/7294) by [@jesserockz](https://github.com/jesserockz)
- [network] Always allow ``enable_ipv6: false`` [esphome#7291](https://github.com/esphome/esphome/pull/7291) by [@dwmw2](https://github.com/dwmw2)
- Revert "[validation] Allow ``maybe_simple_value`` to not have default key in complex value" [esphome#7305](https://github.com/esphome/esphome/pull/7305) by [@jesserockz](https://github.com/jesserockz)
- [lvgl] Bug fixes [esphome#7300](https://github.com/esphome/esphome/pull/7300) by [@clydebarrow](https://github.com/clydebarrow)
- [speaker] Fix header includes [esphome#7304](https://github.com/esphome/esphome/pull/7304) by [@nielsnl68](https://github.com/nielsnl68)
- [microphone] Fix header includes [esphome#7310](https://github.com/esphome/esphome/pull/7310) by [@jesserockz](https://github.com/jesserockz)
- Fix RP2040 Neopixel flickering issue [esphome#7307](https://github.com/esphome/esphome/pull/7307) by [@deCodeIt](https://github.com/deCodeIt)
- add the ability to add more idf components to an existing setup [esphome#7302](https://github.com/esphome/esphome/pull/7302) by [@nielsnl68](https://github.com/nielsnl68)
- Fix waveshare 2.13" epaper stride calculation error [esphome#7303](https://github.com/esphome/esphome/pull/7303) by [@serialx](https://github.com/serialx)
- [rtttl] fix STOPPED state [esphome#7323](https://github.com/esphome/esphome/pull/7323) by [@NewoPL](https://github.com/NewoPL)

View File

@@ -1,5 +1,4 @@
# Home Assistant Community Add-on: ESPHome # ESPHome Add-on
## Installation ## Installation
The installation of this add-on is pretty straightforward and not different in comparison to installing any other Home Assistant add-on. The installation of this add-on is pretty straightforward and not different in comparison to installing any other Home Assistant add-on.

View File

@@ -1,9 +1,8 @@
# ESPHome Home Assistant Add-On # ESPHome Beta Add-On
[![ESPHome logo](https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/logo.png)](https://esphome.io/) [![ESPHome logo][logo]][website]
[![GitHub stars](https://img.shields.io/github/stars/esphome/esphome.svg?style=social&label=Star&maxAge=2592000)](https://github.com/esphome/esphome) [![GitHub stars][github-stars-shield]][repository]
[![GitHub Release][releases-shield]][releases]
[![Discord][discord-shield]][discord] [![Discord][discord-shield]][discord]
## About ## About
@@ -14,10 +13,10 @@ is write YAML configuration files; the rest (over-the-air updates, compiling) is
handled by ESPHome. handled by ESPHome.
<p align="center"> <p align="center">
<img title="ESPHome dashboard screenshot" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/screenshot.png" width="700px"></img> <img title="ESPHome dashboard screenshot" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-beta/images/screenshot.png" width="700px"></img>
</p> </p>
[View the ESPHome documentation](https://esphome.io/) [View the ESPHome documentation][website]
## Example ## Example
@@ -26,15 +25,17 @@ firmware. For example, to include a [DHT22][dht22].
temperature and humidity sensor, you just need to include 8 lines of YAML temperature and humidity sensor, you just need to include 8 lines of YAML
in your configuration file: in your configuration file:
<img title="ESPHome DHT configuration example" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/dht-example.png" width="500px"></img> <img title="ESPHome DHT configuration example" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-beta/images/dht-example.png" width="500px"></img>
Then just click UPLOAD and the sensor will magically appear in Home Assistant: Then just click UPLOAD and the sensor will magically appear in Home Assistant:
<img title="ESPHome Home Assistant MQTT discovery" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/temperature-humidity.png" width="600px"></img> <img title="ESPHome Home Assistant discovery" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-beta/images/temperature-humidity.png" width="600px"></img>
[discord-shield]: https://img.shields.io/discord/429907082951524364.svg
[dht22]: https://esphome.io/components/sensor/dht.html
[discord]: https://discord.gg/KhAMKrd [discord]: https://discord.gg/KhAMKrd
[releases-shield]: https://img.shields.io/github/release/esphome/esphome.svg
[releases]: https://esphome.io/changelog/index.html
[repository]: https://github.com/esphome/esphome [repository]: https://github.com/esphome/esphome
[discord-shield]: https://img.shields.io/discord/429907082951524364.svg
[github-stars-shield]: https://img.shields.io/github/stars/esphome/esphome.svg?style=social&label=Star&maxAge=2592000
[dht22]: https://beta.esphome.io/components/sensor/dht.html
[releases]: https://beta.esphome.io/changelog/index.html
[logo]: https://github.com/esphome/home-assistant-addon/raw/main/esphome-beta/logo.png
[website]: https://beta.esphome.io/

View File

@@ -26,13 +26,13 @@ schema:
ssl: bool? ssl: bool?
certfile: str? certfile: str?
keyfile: str? keyfile: str?
relative_url: str?
leave_front_door_open: bool? leave_front_door_open: bool?
backup_exclude: backup_exclude:
- '*/*/' - '*/*/'
init: false init: false
startup: services
name: ESPHome (beta) name: ESPHome (beta)
version: 2023.4.0 version: 2024.8.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 8.0 KiB

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,9 +1,8 @@
# ESPHome Home Assistant Add-On # ESPHome Dev Add-On
[![ESPHome logo](https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/logo.png)](https://esphome.io/) [![ESPHome logo][logo]][website]
[![GitHub stars](https://img.shields.io/github/stars/esphome/esphome.svg?style=social&label=Star&maxAge=2592000)](https://github.com/esphome/esphome) [![GitHub stars][github-stars-shield]][repository]
[![GitHub Release][releases-shield]][releases]
[![Discord][discord-shield]][discord] [![Discord][discord-shield]][discord]
## About ## About
@@ -14,10 +13,10 @@ is write YAML configuration files; the rest (over-the-air updates, compiling) is
handled by ESPHome. handled by ESPHome.
<p align="center"> <p align="center">
<img title="ESPHome dashboard screenshot" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/screenshot.png" width="700px"></img> <img title="ESPHome dashboard screenshot" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-dev/images/screenshot.png" width="700px"></img>
</p> </p>
[View the ESPHome documentation](https://esphome.io/) [View the ESPHome documentation][website]
## Example ## Example
@@ -26,15 +25,17 @@ firmware. For example, to include a [DHT22][dht22].
temperature and humidity sensor, you just need to include 8 lines of YAML temperature and humidity sensor, you just need to include 8 lines of YAML
in your configuration file: in your configuration file:
<img title="ESPHome DHT configuration example" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/dht-example.png" width="500px"></img> <img title="ESPHome DHT configuration example" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-dev/images/dht-example.png" width="500px"></img>
Then just click UPLOAD and the sensor will magically appear in Home Assistant: Then just click UPLOAD and the sensor will magically appear in Home Assistant:
<img title="ESPHome Home Assistant MQTT discovery" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/temperature-humidity.png" width="600px"></img> <img title="ESPHome Home Assistant discovery" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-dev/images/temperature-humidity.png" width="600px"></img>
[discord-shield]: https://img.shields.io/discord/429907082951524364.svg
[dht22]: https://esphome.io/components/sensor/dht.html
[discord]: https://discord.gg/KhAMKrd [discord]: https://discord.gg/KhAMKrd
[releases-shield]: https://img.shields.io/github/release/esphome/esphome.svg
[releases]: https://esphome.io/changelog/index.html
[repository]: https://github.com/esphome/esphome [repository]: https://github.com/esphome/esphome
[discord-shield]: https://img.shields.io/discord/429907082951524364.svg
[github-stars-shield]: https://img.shields.io/github/stars/esphome/esphome.svg?style=social&label=Star&maxAge=2592000
[dht22]: https://next.esphome.io/components/sensor/dht.html
[releases]: https://next.esphome.io/changelog/index.html
[logo]: https://github.com/esphome/home-assistant-addon/raw/main/esphome-dev/logo.png
[website]: https://next.esphome.io/

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

@@ -27,15 +27,16 @@ schema:
ssl: bool? ssl: bool?
certfile: str? certfile: str?
keyfile: str? keyfile: str?
relative_url: str?
leave_front_door_open: bool? leave_front_door_open: bool?
backup_exclude: backup_exclude:
- '*/*/' - '*/*/'
init: false init: false
startup: services
name: ESPHome (dev) name: ESPHome (dev)
version: dev version: 2024.9.0-dev20240821
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: 2.9 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 7.7 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,101 +1,194 @@
## 2023.4.0 ## 2024.8.0
## Full list of changes ## Full list of changes
### New Features
- [update] Implement ``update.perform`` action and ``update.is_available`` condition [esphome#7165](https://github.com/esphome/esphome/pull/7165) by [@jesserockz](https://github.com/jesserockz) (new-feature)
### New Components ### New Components
- Added in mmc5603 code [esphome#4175](https://github.com/esphome/esphome/pull/4175) by [@benhoff](https://github.com/benhoff) (new-integration) - Feature/m5angle8: Add support for m5angle8 input device [esphome#6799](https://github.com/esphome/esphome/pull/6799) by [@rnauber](https://github.com/rnauber) (new-integration)
- Add push to talk voice assistant [esphome#4648](https://github.com/esphome/esphome/pull/4648) by [@jesserockz](https://github.com/jesserockz) (new-integration) - APDS9306 Ambient Light Sensor [esphome#6709](https://github.com/esphome/esphome/pull/6709) by [@aodrenah](https://github.com/aodrenah) (new-integration)
- [lvgl] base implementation [esphome#7116](https://github.com/esphome/esphome/pull/7116) by [@clydebarrow](https://github.com/clydebarrow) (new-integration)
- Add runtime online image support [esphome#4710](https://github.com/esphome/esphome/pull/4710) by [@guillempages](https://github.com/guillempages) (new-integration)
- [bme68x_bsec2_i2c] BME68X Temperature+Pressure+Humidity+Gas Sensor via BSEC2 [esphome#4585](https://github.com/esphome/esphome/pull/4585) by [@neffs](https://github.com/neffs) (new-integration)
- Add support for LYWSD02MMC Xiaomi device [esphome#7080](https://github.com/esphome/esphome/pull/7080) by [@juanluss31](https://github.com/juanluss31) (new-integration)
### New Platforms
- [homeassistant] Native switch entity import and control [esphome#7018](https://github.com/esphome/esphome/pull/7018) by [@Links2004](https://github.com/Links2004) (new-platform)
- [homeassistant] Native number entity import and control [esphome#6455](https://github.com/esphome/esphome/pull/6455) by [@landonr](https://github.com/landonr) (new-platform)
- Correct offset calibration [esphome#7228](https://github.com/esphome/esphome/pull/7228) by [@descipher](https://github.com/descipher) (new-platform)
### Breaking Changes ### Breaking Changes
- Disallow uart0/1/2 as ids in config [esphome#4446](https://github.com/esphome/esphome/pull/4446) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - Remove deprecated argument parser [esphome#7151](https://github.com/esphome/esphome/pull/7151) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Require step to be set when calling register_number [esphome#4622](https://github.com/esphome/esphome/pull/4622) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Fix restore [esphome#4655](https://github.com/esphome/esphome/pull/4655) by [@spacemanspiff2007](https://github.com/spacemanspiff2007) (breaking-change)
### Beta Changes ### Beta Changes
- debug component, allow without debug logging [esphome#4685](https://github.com/esphome/esphome/pull/4685) by [@jesserockz](https://github.com/jesserockz) - remove extra number from pronto [esphome#7263](https://github.com/esphome/esphome/pull/7263) by [@ssieb](https://github.com/ssieb)
- Fixed dns2 for ethernet [esphome#4698](https://github.com/esphome/esphome/pull/4698) by [@HeMan](https://github.com/HeMan) - [api] Bump noise-c library version [esphome#7288](https://github.com/esphome/esphome/pull/7288) by [@clydebarrow](https://github.com/clydebarrow)
- Add timeout to i2c write error logs [esphome#4697](https://github.com/esphome/esphome/pull/4697) by [@Szewcson](https://github.com/Szewcson) - fix some small rtttl issues [esphome#6817](https://github.com/esphome/esphome/pull/6817) by [@nielsnl68](https://github.com/nielsnl68)
- Add event triggers to voice_assistant [esphome#4699](https://github.com/esphome/esphome/pull/4699) by [@jesserockz](https://github.com/jesserockz) - Fix overflow in ESPColorCorrection object [esphome#7268](https://github.com/esphome/esphome/pull/7268) by [@g-kiss](https://github.com/g-kiss)
- Call on_error if no api client connected that handles voice [esphome#4709](https://github.com/esphome/esphome/pull/4709) by [@jesserockz](https://github.com/jesserockz) - [validation] Allow ``maybe_simple_value`` to not have default key in complex value [esphome#7294](https://github.com/esphome/esphome/pull/7294) by [@jesserockz](https://github.com/jesserockz)
- Add ethernet powerdown (fixes esphome/issues#4420) [esphome#4706](https://github.com/esphome/esphome/pull/4706) by [@tracestep](https://github.com/tracestep) - [network] Always allow ``enable_ipv6: false`` [esphome#7291](https://github.com/esphome/esphome/pull/7291) by [@dwmw2](https://github.com/dwmw2)
- Bump arduino platform version to 5.3.0 [esphome#4713](https://github.com/esphome/esphome/pull/4713) by [@jesserockz](https://github.com/jesserockz) - Revert "[validation] Allow ``maybe_simple_value`` to not have default key in complex value" [esphome#7305](https://github.com/esphome/esphome/pull/7305) by [@jesserockz](https://github.com/jesserockz)
- [lvgl] Bug fixes [esphome#7300](https://github.com/esphome/esphome/pull/7300) by [@clydebarrow](https://github.com/clydebarrow)
- [speaker] Fix header includes [esphome#7304](https://github.com/esphome/esphome/pull/7304) by [@nielsnl68](https://github.com/nielsnl68)
- [microphone] Fix header includes [esphome#7310](https://github.com/esphome/esphome/pull/7310) by [@jesserockz](https://github.com/jesserockz)
- Fix RP2040 Neopixel flickering issue [esphome#7307](https://github.com/esphome/esphome/pull/7307) by [@deCodeIt](https://github.com/deCodeIt)
- add the ability to add more idf components to an existing setup [esphome#7302](https://github.com/esphome/esphome/pull/7302) by [@nielsnl68](https://github.com/nielsnl68)
- Fix waveshare 2.13" epaper stride calculation error [esphome#7303](https://github.com/esphome/esphome/pull/7303) by [@serialx](https://github.com/serialx)
- [rtttl] fix STOPPED state [esphome#7323](https://github.com/esphome/esphome/pull/7323) by [@NewoPL](https://github.com/NewoPL)
### All changes ### All changes
- Mark unique_id() virtual method as deprecated [esphome#4538](https://github.com/esphome/esphome/pull/4538) by [@oxan](https://github.com/oxan) - [wifi] Fix EAP for IDF 5.1+, add test [esphome#7061](https://github.com/esphome/esphome/pull/7061) by [@kbx81](https://github.com/kbx81)
- Drop deprecated entity property base methods [esphome#4539](https://github.com/esphome/esphome/pull/4539) by [@oxan](https://github.com/oxan) - jsn_sr04t component: AJ_SR04M compatibility mode in checksum calculation [esphome#7044](https://github.com/esphome/esphome/pull/7044) by [@soeffi](https://github.com/soeffi)
- Format test files [esphome#4541](https://github.com/esphome/esphome/pull/4541) by [@jesserockz](https://github.com/jesserockz) - [CI] compile entire web_server during tests [esphome#7084](https://github.com/esphome/esphome/pull/7084) by [@tomaszduda23](https://github.com/tomaszduda23)
- EntityBase: Icon string can stay in flash. [esphome#4566](https://github.com/esphome/esphome/pull/4566) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [CI] Add more ``improv_serial`` tests [esphome#7081](https://github.com/esphome/esphome/pull/7081) by [@kbx81](https://github.com/kbx81)
- Update the delta filter to be able to take a percentage change [esphome#4391](https://github.com/esphome/esphome/pull/4391) by [@TrentHouliston](https://github.com/TrentHouliston) - Bump docker/build-push-action from 6.3.0 to 6.4.0 in /.github/actions/build-image [esphome#7089](https://github.com/esphome/esphome/pull/7089) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Added missing PM_1_0 and PM_10_0 for PMS5003T and PMS5003ST [esphome#4560](https://github.com/esphome/esphome/pull/4560) by [@genestealer](https://github.com/genestealer) - [CI] add web_server v1 test [esphome#7090](https://github.com/esphome/esphome/pull/7090) by [@tomaszduda23](https://github.com/tomaszduda23)
- Add an option to force SPI into software mode [esphome#4556](https://github.com/esphome/esphome/pull/4556) by [@wupeka](https://github.com/wupeka) - [wifi] Hostname may not be set as expected on Arduino platform [esphome#7050](https://github.com/esphome/esphome/pull/7050) by [@NewoPL](https://github.com/NewoPL)
- allow using a binary output for the status led [esphome#4532](https://github.com/esphome/esphome/pull/4532) by [@ssieb](https://github.com/ssieb) - Add host uart support for MacOS [esphome#7095](https://github.com/esphome/esphome/pull/7095) by [@clydebarrow](https://github.com/clydebarrow)
- Add option flip_x [esphome#4555](https://github.com/esphome/esphome/pull/4555) by [@rafal83](https://github.com/rafal83) - Bump docker/build-push-action from 6.4.0 to 6.4.1 in /.github/actions/build-image [esphome#7102](https://github.com/esphome/esphome/pull/7102) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump aioesphomeapi from 13.5.0 to 13.5.1 [esphome#4572](https://github.com/esphome/esphome/pull/4572) by [@dependabot[bot]](https://github.com/apps/dependabot) - [code-quality] Add some ruff configuration [esphome#7103](https://github.com/esphome/esphome/pull/7103) by [@jesserockz](https://github.com/jesserockz)
- Verbose output of define. [esphome#4576](https://github.com/esphome/esphome/pull/4576) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [web_server] move v1 code to separate file [esphome#7091](https://github.com/esphome/esphome/pull/7091) by [@tomaszduda23](https://github.com/tomaszduda23)
- Add support for ESP32 CAM 3MP and 5MP resolutions and arbitrary camera clock. [esphome#4580](https://github.com/esphome/esphome/pull/4580) by [@peterhalicky](https://github.com/peterhalicky) - [validation] Add ``host`` to ``require_framework_version`` [esphome#7107](https://github.com/esphome/esphome/pull/7107) by [@jesserockz](https://github.com/jesserockz)
- Add a simple 'skip_initial' filter [esphome#4582](https://github.com/esphome/esphome/pull/4582) by [@sybrenstuvel](https://github.com/sybrenstuvel) - [code-quality] Tidy up some duplicate CONFIG_SCHEMA assignments [esphome#7106](https://github.com/esphome/esphome/pull/7106) by [@jesserockz](https://github.com/jesserockz)
- Fix outdated filter string in platformio_api [esphome#4587](https://github.com/esphome/esphome/pull/4587) by [@LordMike](https://github.com/LordMike) - Move MQTT ip discovery to deticated config option. [esphome#6673](https://github.com/esphome/esphome/pull/6673) by [@Links2004](https://github.com/Links2004)
- Split test3.yaml [esphome#4591](https://github.com/esphome/esphome/pull/4591) by [@jesserockz](https://github.com/jesserockz) - Feature/m5angle8: Add support for m5angle8 input device [esphome#6799](https://github.com/esphome/esphome/pull/6799) by [@rnauber](https://github.com/rnauber) (new-integration)
- Disallow uart0/1/2 as ids in config [esphome#4446](https://github.com/esphome/esphome/pull/4446) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - use cache to build tests for compoenents [esphome#7059](https://github.com/esphome/esphome/pull/7059) by [@tomaszduda23](https://github.com/tomaszduda23)
- Upgrade clang-format to v13 [esphome#4535](https://github.com/esphome/esphome/pull/4535) by [@oxan](https://github.com/oxan) - [modbus_controller] Add on_command_sent trigger [esphome#7078](https://github.com/esphome/esphome/pull/7078) by [@leejoow](https://github.com/leejoow)
- B/W support for GooDisplay GDEY029T94 (as used on Adafruit MagTag) [esphome#4222](https://github.com/esphome/esphome/pull/4222) by [@AaronJackson](https://github.com/AaronJackson) - [ili9xxx] Rework delay handling [esphome#7115](https://github.com/esphome/esphome/pull/7115) by [@clydebarrow](https://github.com/clydebarrow)
- Fix negative sqrt root in ct_clamp_sensor.cpp [esphome#4236](https://github.com/esphome/esphome/pull/4236) by [@jerome992](https://github.com/jerome992) - Inherit `esp32_ble_beacon` from `esp32_ble` [esphome#6908](https://github.com/esphome/esphome/pull/6908) by [@jpbede](https://github.com/jpbede)
- Wrap ipv6 code a bit more [esphome#4574](https://github.com/esphome/esphome/pull/4574) by [@jesserockz](https://github.com/jesserockz) - APDS9306 Ambient Light Sensor [esphome#6709](https://github.com/esphome/esphome/pull/6709) by [@aodrenah](https://github.com/aodrenah) (new-integration)
- Remove EntityBase from sprinkler [esphome#4606](https://github.com/esphome/esphome/pull/4606) by [@jesserockz](https://github.com/jesserockz) - Bump docker/build-push-action from 6.4.1 to 6.5.0 in /.github/actions/build-image [esphome#7119](https://github.com/esphome/esphome/pull/7119) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Fix wrong port multiplexer name in dump GPIO function of sx1509 [esphome#4592](https://github.com/esphome/esphome/pull/4592) by [@skaldo](https://github.com/skaldo) - Bump docker/setup-qemu-action from 3.1.0 to 3.2.0 [esphome#7120](https://github.com/esphome/esphome/pull/7120) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump zeroconf from 0.47.3 to 0.47.4 [esphome#4597](https://github.com/esphome/esphome/pull/4597) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump docker/login-action from 3.2.0 to 3.3.0 [esphome#7121](https://github.com/esphome/esphome/pull/7121) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump pytest-asyncio from 0.20.3 to 0.21.0 [esphome#4599](https://github.com/esphome/esphome/pull/4599) by [@dependabot[bot]](https://github.com/apps/dependabot) - Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 [esphome#7122](https://github.com/esphome/esphome/pull/7122) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Limit range on filter time period for remote_receiver [esphome#4604](https://github.com/esphome/esphome/pull/4604) by [@RoboMagus](https://github.com/RoboMagus) - [fan] fix initial FanCall to properly set speed [esphome#7113](https://github.com/esphome/esphome/pull/7113) by [@kr0ner](https://github.com/kr0ner)
- add select_schema to select component [esphome#4545](https://github.com/esphome/esphome/pull/4545) by [@regevbr](https://github.com/regevbr) - Added ruff to pre-commit hooks [esphome#7124](https://github.com/esphome/esphome/pull/7124) by [@clydebarrow](https://github.com/clydebarrow)
- Add ability to clear the gatt cache [esphome#4621](https://github.com/esphome/esphome/pull/4621) by [@bdraco](https://github.com/bdraco) - Update webserver local assets to 20240724-013115 [esphome#7126](https://github.com/esphome/esphome/pull/7126) by [@esphomebot](https://github.com/esphomebot)
- Bump actions/stale from 7 to 8 [esphome#4615](https://github.com/esphome/esphome/pull/4615) by [@dependabot[bot]](https://github.com/apps/dependabot) - [http_request] Allow configure buffer size on ESP-IDF [esphome#7125](https://github.com/esphome/esphome/pull/7125) by [@dentra](https://github.com/dentra)
- Require step to be set when calling register_number [esphome#4622](https://github.com/esphome/esphome/pull/4622) by [@jesserockz](https://github.com/jesserockz) (breaking-change) - Give more info on import errors. [esphome#7128](https://github.com/esphome/esphome/pull/7128) by [@clydebarrow](https://github.com/clydebarrow)
- Lower range of CONF_FREQUENCY [esphome#4619](https://github.com/esphome/esphome/pull/4619) by [@berendhaan](https://github.com/berendhaan) - [lvgl] base implementation [esphome#7116](https://github.com/esphome/esphome/pull/7116) by [@clydebarrow](https://github.com/clydebarrow) (new-integration)
- Allow entity names to be set to None [esphome#4607](https://github.com/esphome/esphome/pull/4607) by [@jesserockz](https://github.com/jesserockz) - Bump aioesphomeapi to 24.6.2 and cryptography to 43.0.0 [esphome#7131](https://github.com/esphome/esphome/pull/7131) by [@bdraco](https://github.com/bdraco)
- Fix platform restriction for bme680_bsec [esphome#4616](https://github.com/esphome/esphome/pull/4616) by [@jesserockz](https://github.com/jesserockz) - [dependabot] Group docker action bumps into single PR [esphome#7133](https://github.com/esphome/esphome/pull/7133) by [@jesserockz](https://github.com/jesserockz)
- Fix EzoCommandType enum [esphome#4593](https://github.com/esphome/esphome/pull/4593) by [@alfredopironti](https://github.com/alfredopironti) - Add ``--version`` handler to cli [esphome#7150](https://github.com/esphome/esphome/pull/7150) by [@jesserockz](https://github.com/jesserockz)
- `EntityBase` Name can stay in flash. [esphome#4594](https://github.com/esphome/esphome/pull/4594) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [code-quality] Organise ethernet related imports [esphome#7152](https://github.com/esphome/esphome/pull/7152) by [@jesserockz](https://github.com/jesserockz)
- feat: Add support to unsubscribe from BLE advertisements [esphome#4620](https://github.com/esphome/esphome/pull/4620) by [@richardhopton](https://github.com/richardhopton) - [code-quality] Organise wifi related imports [esphome#7153](https://github.com/esphome/esphome/pull/7153) by [@jesserockz](https://github.com/jesserockz)
- EntityBase: Move ObjectId to Flash [esphome#4569](https://github.com/esphome/esphome/pull/4569) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [code-quality] Organise core imports [esphome#7149](https://github.com/esphome/esphome/pull/7149) by [@jesserockz](https://github.com/jesserockz)
- Add workflow to sync device classes with HA dev [esphome#4629](https://github.com/esphome/esphome/pull/4629) by [@jesserockz](https://github.com/jesserockz) - Remove deprecated argument parser [esphome#7151](https://github.com/esphome/esphome/pull/7151) by [@jesserockz](https://github.com/jesserockz) (breaking-change)
- Synchronise Device Classes from Home Assistant [esphome#4633](https://github.com/esphome/esphome/pull/4633) by [@github-actions[bot]](https://github.com/apps/github-actions) - Move ``CONF_ON_ERROR`` to const.py [esphome#7156](https://github.com/esphome/esphome/pull/7156) by [@jesserockz](https://github.com/jesserockz)
- Remove AUTO_LOAD from as3935 [esphome#4630](https://github.com/esphome/esphome/pull/4630) by [@jesserockz](https://github.com/jesserockz) - [code-quality] Organise esp32 imports [esphome#7154](https://github.com/esphome/esphome/pull/7154) by [@jesserockz](https://github.com/jesserockz)
- Add ifdef to new bt proxy unsubscribe [esphome#4634](https://github.com/esphome/esphome/pull/4634) by [@jesserockz](https://github.com/jesserockz) - Add microAmp and milliAmp to defined units [esphome#7157](https://github.com/esphome/esphome/pull/7157) by [@FreeBear-nc](https://github.com/FreeBear-nc)
- add bluetooth mac address in dump_config() [esphome#4628](https://github.com/esphome/esphome/pull/4628) by [@felixlungu](https://github.com/felixlungu) - Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 in the docker-actions group [esphome#7159](https://github.com/esphome/esphome/pull/7159) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Binary map bugfixes [esphome#4636](https://github.com/esphome/esphome/pull/4636) by [@kahrendt](https://github.com/kahrendt) - LVGL stage 2 [esphome#7129](https://github.com/esphome/esphome/pull/7129) by [@clydebarrow](https://github.com/clydebarrow)
- entity_base avoid padding bytes. [esphome#4637](https://github.com/esphome/esphome/pull/4637) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [pid] Add get_min_integral() and get_max_integral() [esphome#7162](https://github.com/esphome/esphome/pull/7162) by [@FreeBear-nc](https://github.com/FreeBear-nc)
- Avoid sensor padding. [esphome#4638](https://github.com/esphome/esphome/pull/4638) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [code-quality] Organise bluetooth related imports [esphome#7155](https://github.com/esphome/esphome/pull/7155) by [@jesserockz](https://github.com/jesserockz)
- Support advanced UART customization [esphome#4465](https://github.com/esphome/esphome/pull/4465) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - http_request watchdog as a component [esphome#7161](https://github.com/esphome/esphome/pull/7161) by [@oarcher](https://github.com/oarcher)
- Log calibration results at level INFO [esphome#4240](https://github.com/esphome/esphome/pull/4240) by [@Duckle29](https://github.com/Duckle29) - [touchscreen] Allow binary sensor to have multiple pages in config [esphome#7112](https://github.com/esphome/esphome/pull/7112) by [@jesserockz](https://github.com/jesserockz)
- Number step not optional [esphome#4649](https://github.com/esphome/esphome/pull/4649) by [@RoboMagus](https://github.com/RoboMagus) - [matrix_keypad] Add `pin->setup()` to rows and cols [esphome#7163](https://github.com/esphome/esphome/pull/7163) by [@AAllport](https://github.com/AAllport)
- VSCode / devcontainer updates [esphome#4647](https://github.com/esphome/esphome/pull/4647) by [@jesserockz](https://github.com/jesserockz) - [update] Implement ``update.perform`` action and ``update.is_available`` condition [esphome#7165](https://github.com/esphome/esphome/pull/7165) by [@jesserockz](https://github.com/jesserockz) (new-feature)
- Retry PN532_COMMAND_VERSION_DATA on setup() (fixes esphome/issues#3823) [esphome#4651](https://github.com/esphome/esphome/pull/4651) by [@tracestep](https://github.com/tracestep) - [lvgl] PR stage 3 [esphome#7160](https://github.com/esphome/esphome/pull/7160) by [@clydebarrow](https://github.com/clydebarrow)
- Bump pylint from 2.16.4 to 2.17.2 [esphome#4650](https://github.com/esphome/esphome/pull/4650) by [@dependabot[bot]](https://github.com/apps/dependabot) - [api] ``homeassistant.action`` replaces ``homeassistant.service`` [esphome#7171](https://github.com/esphome/esphome/pull/7171) by [@jesserockz](https://github.com/jesserockz)
- Bump black from 23.1.0 to 23.3.0 [esphome#4635](https://github.com/esphome/esphome/pull/4635) by [@dependabot[bot]](https://github.com/apps/dependabot) - ade7953_spi wrong size specified in read_array call [esphome#7172](https://github.com/esphome/esphome/pull/7172) by [@SimoPk](https://github.com/SimoPk)
- Added in mmc5603 code [esphome#4175](https://github.com/esphome/esphome/pull/4175) by [@benhoff](https://github.com/benhoff) (new-integration) - Bump improv library to 1.2.4 [esphome#7174](https://github.com/esphome/esphome/pull/7174) by [@jesserockz](https://github.com/jesserockz)
- fix compilation with latest esp-idf [esphome#4671](https://github.com/esphome/esphome/pull/4671) by [@Mic92](https://github.com/Mic92) - Implement 'round to nearest multiple' filter [esphome#7142](https://github.com/esphome/esphome/pull/7142) by [@MrEbbinghaus](https://github.com/MrEbbinghaus)
- Bump zeroconf from 0.47.4 to 0.56.0 [esphome#4674](https://github.com/esphome/esphome/pull/4674) by [@dependabot[bot]](https://github.com/apps/dependabot) - git ignore managed_components [esphome#7180](https://github.com/esphome/esphome/pull/7180) by [@oarcher](https://github.com/oarcher)
- Bump pytest from 7.2.2 to 7.3.0 [esphome#4673](https://github.com/esphome/esphome/pull/4673) by [@dependabot[bot]](https://github.com/apps/dependabot) - [core] Eliminate nuisance messages from `build_codeowners` [esphome#7185](https://github.com/esphome/esphome/pull/7185) by [@clydebarrow](https://github.com/clydebarrow)
- Add push to talk voice assistant [esphome#4648](https://github.com/esphome/esphome/pull/4648) by [@jesserockz](https://github.com/jesserockz) (new-integration) - [code-quality] More portable shebangs [esphome#7189](https://github.com/esphome/esphome/pull/7189) by [@jesserockz](https://github.com/jesserockz)
- Fix ESP32 SPI hardware assignment in Arduino fw [esphome#4669](https://github.com/esphome/esphome/pull/4669) by [@kbx81](https://github.com/kbx81) - Add support for doing update entity refresh/check via API. [esphome#7190](https://github.com/esphome/esphome/pull/7190) by [@jesserockz](https://github.com/jesserockz)
- Fix some NFC/PN532 crashes [esphome#4678](https://github.com/esphome/esphome/pull/4678) by [@kbx81](https://github.com/kbx81) - [lvgl] Stage 4 [esphome#7166](https://github.com/esphome/esphome/pull/7166) by [@clydebarrow](https://github.com/clydebarrow)
- Add support for SSD1306 72x40 displays [esphome#4659](https://github.com/esphome/esphome/pull/4659) by [@johnsto](https://github.com/johnsto) - [esp32_improv] Update Improv library to reference new repo/version [esphome#7195](https://github.com/esphome/esphome/pull/7195) by [@kahrendt](https://github.com/kahrendt)
- Fix pin schema for i2s microphone [esphome#4680](https://github.com/esphome/esphome/pull/4680) by [@jesserockz](https://github.com/jesserockz) - hydreon_rgxx: Fix parsing of data line [esphome#7192](https://github.com/esphome/esphome/pull/7192) by [@domob1812](https://github.com/domob1812)
- Fix BedJet setup priority [fixes esphome/issues#3807] [esphome#4677](https://github.com/esphome/esphome/pull/4677) by [@jhansche](https://github.com/jhansche) - Remove outdated version block [esphome#7177](https://github.com/esphome/esphome/pull/7177) by [@tomaszduda23](https://github.com/tomaszduda23)
- Add always trigger stop [esphome#4249](https://github.com/esphome/esphome/pull/4249) by [@X-Ryl669](https://github.com/X-Ryl669) - [lvgl] Stage 5 [esphome#7191](https://github.com/esphome/esphome/pull/7191) by [@clydebarrow](https://github.com/clydebarrow)
- Fix graph limits for negative values and other corner cases [esphome#4253](https://github.com/esphome/esphome/pull/4253) by [@unhold](https://github.com/unhold) - socket: socket::set_sockaddr() for IPv4 addresses in IPv6 builds [esphome#7196](https://github.com/esphome/esphome/pull/7196) by [@dwmw2](https://github.com/dwmw2)
- Fix cut-off on 2.13" waveshare/ttgo epaper displays [esphome#4255](https://github.com/esphome/esphome/pull/4255) by [@unhold](https://github.com/unhold) - Adds MQTT component to Alarm Control panel component [esphome#7188](https://github.com/esphome/esphome/pull/7188) by [@heythisisnate](https://github.com/heythisisnate)
- [Ethernet] Add PHY KSZ8081 support [esphome#4668](https://github.com/esphome/esphome/pull/4668) by [@Fabian-Schmidt](https://github.com/Fabian-Schmidt) - [lvgl] Final stage [esphome#7184](https://github.com/esphome/esphome/pull/7184) by [@clydebarrow](https://github.com/clydebarrow)
- Fix restore [esphome#4655](https://github.com/esphome/esphome/pull/4655) by [@spacemanspiff2007](https://github.com/spacemanspiff2007) (breaking-change) - Move ``CONF_BACKGROUND_COLOR`` and ``CONF_FOREGROUND_COLOR`` to const.py [esphome#7202](https://github.com/esphome/esphome/pull/7202) by [@jesserockz](https://github.com/jesserockz)
- debug component, allow without debug logging [esphome#4685](https://github.com/esphome/esphome/pull/4685) by [@jesserockz](https://github.com/jesserockz) - [helpers] Set default flags of ExternalRAMAllocator to ALLOW_FAILURE [esphome#7201](https://github.com/esphome/esphome/pull/7201) by [@jesserockz](https://github.com/jesserockz)
- Fixed dns2 for ethernet [esphome#4698](https://github.com/esphome/esphome/pull/4698) by [@HeMan](https://github.com/HeMan) - Add runtime online image support [esphome#4710](https://github.com/esphome/esphome/pull/4710) by [@guillempages](https://github.com/guillempages) (new-integration)
- Add timeout to i2c write error logs [esphome#4697](https://github.com/esphome/esphome/pull/4697) by [@Szewcson](https://github.com/Szewcson) - Update i2s_audio_speaker.cppi2s_audio/speaker: Fix fallthrough compiler warning [esphome#7167](https://github.com/esphome/esphome/pull/7167) by [@Mimoja](https://github.com/Mimoja)
- Add event triggers to voice_assistant [esphome#4699](https://github.com/esphome/esphome/pull/4699) by [@jesserockz](https://github.com/jesserockz) - Move CONF_ITEMS/CONF_FONT/CONF_TEXT to const.py [esphome#7204](https://github.com/esphome/esphome/pull/7204) by [@jesserockz](https://github.com/jesserockz)
- Call on_error if no api client connected that handles voice [esphome#4709](https://github.com/esphome/esphome/pull/4709) by [@jesserockz](https://github.com/jesserockz) - [lvgl] Fix compile error when using encoder with buttons only. [esphome#7203](https://github.com/esphome/esphome/pull/7203) by [@clydebarrow](https://github.com/clydebarrow)
- Add ethernet powerdown (fixes esphome/issues#4420) [esphome#4706](https://github.com/esphome/esphome/pull/4706) by [@tracestep](https://github.com/tracestep) - Revert "Add null GPIO pin " [esphome#6621](https://github.com/esphome/esphome/pull/6621) by [@jesserockz](https://github.com/jesserockz)
- Bump arduino platform version to 5.3.0 [esphome#4713](https://github.com/esphome/esphome/pull/4713) by [@jesserockz](https://github.com/jesserockz) - [remote_transmitter] Change default carrier_frequency to valid value [esphome#7176](https://github.com/esphome/esphome/pull/7176) by [@iannisimo](https://github.com/iannisimo)
- [code-quality] Organise script imports [esphome#7198](https://github.com/esphome/esphome/pull/7198) by [@jesserockz](https://github.com/jesserockz)
- [max31856] Use cv.frequency as validator [esphome#7212](https://github.com/esphome/esphome/pull/7212) by [@jesserockz](https://github.com/jesserockz)
- [code-quality] Organise base entities imports [esphome#7208](https://github.com/esphome/esphome/pull/7208) by [@tomaszduda23](https://github.com/tomaszduda23)
- [spi] Remove ``SPIDelegateDummy`` [esphome#7215](https://github.com/esphome/esphome/pull/7215) by [@jesserockz](https://github.com/jesserockz)
- [code-quality] Apply ruff linting suggestions [esphome#7206](https://github.com/esphome/esphome/pull/7206) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] Organise logger imports [esphome#7205](https://github.com/esphome/esphome/pull/7205) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] Apply ruff linting suggestions to core [esphome#7207](https://github.com/esphome/esphome/pull/7207) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix clang-tidy sprinkler [esphome#7222](https://github.com/esphome/esphome/pull/7222) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] __attribute__((packed)) [esphome#7221](https://github.com/esphome/esphome/pull/7221) by [@tomaszduda23](https://github.com/tomaszduda23)
- hx711: Check for DOUT going high after a reading [esphome#7214](https://github.com/esphome/esphome/pull/7214) by [@dwmw2](https://github.com/dwmw2)
- [mqtt] Add extended device info [esphome#7194](https://github.com/esphome/esphome/pull/7194) by [@dentra](https://github.com/dentra)
- [code-quality] NOLINT readability-identifier-naming [esphome#7220](https://github.com/esphome/esphome/pull/7220) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] Organise time imports [esphome#7219](https://github.com/esphome/esphome/pull/7219) by [@tomaszduda23](https://github.com/tomaszduda23)
- [lvgl] Fix set state on updates [esphome#7227](https://github.com/esphome/esphome/pull/7227) by [@clydebarrow](https://github.com/clydebarrow)
- add missing override [esphome#7231](https://github.com/esphome/esphome/pull/7231) by [@tomaszduda23](https://github.com/tomaszduda23)
- Add text_align_to_string [esphome#7243](https://github.com/esphome/esphome/pull/7243) by [@MrMDavidson](https://github.com/MrMDavidson)
- [sml] Fixed crashing sml parser [esphome#7235](https://github.com/esphome/esphome/pull/7235) by [@eNBeWe](https://github.com/eNBeWe)
- Allow project name and version as improv_serial identity [esphome#7248](https://github.com/esphome/esphome/pull/7248) by [@AzonInc](https://github.com/AzonInc)
- [lvgl] Implement default group for encoders [esphome#7242](https://github.com/esphome/esphome/pull/7242) by [@clydebarrow](https://github.com/clydebarrow)
- [bme68x_bsec2_i2c] BME68X Temperature+Pressure+Humidity+Gas Sensor via BSEC2 [esphome#4585](https://github.com/esphome/esphome/pull/4585) by [@neffs](https://github.com/neffs) (new-integration)
- [code-quality] clang-tidy media_player [esphome#7238](https://github.com/esphome/esphome/pull/7238) by [@tomaszduda23](https://github.com/tomaszduda23)
- Bump docker/build-push-action from 6.5.0 to 6.6.1 in /.github/actions/build-image [esphome#7232](https://github.com/esphome/esphome/pull/7232) by [@dependabot[bot]](https://github.com/apps/dependabot)
- fix build error [esphome#7229](https://github.com/esphome/esphome/pull/7229) by [@tomaszduda23](https://github.com/tomaszduda23)
- adjust to new python pre-commit hooks [esphome#7178](https://github.com/esphome/esphome/pull/7178) by [@tomaszduda23](https://github.com/tomaszduda23)
- add windows script/setup.bat [esphome#7140](https://github.com/esphome/esphome/pull/7140) by [@nielsnl68](https://github.com/nielsnl68)
- [code-quality] add NOLINT haier_base [esphome#7236](https://github.com/esphome/esphome/pull/7236) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] clang-tidy bedjet [esphome#7251](https://github.com/esphome/esphome/pull/7251) by [@tomaszduda23](https://github.com/tomaszduda23)
- fix name conflict with zephyr macro [esphome#7252](https://github.com/esphome/esphome/pull/7252) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] Apply ruff linting suggestions [esphome#7239](https://github.com/esphome/esphome/pull/7239) by [@tomaszduda23](https://github.com/tomaszduda23)
- Add support for LYWSD02MMC Xiaomi device [esphome#7080](https://github.com/esphome/esphome/pull/7080) by [@juanluss31](https://github.com/juanluss31) (new-integration)
- [code-quality] fix clang-tidy web server [esphome#7230](https://github.com/esphome/esphome/pull/7230) by [@tomaszduda23](https://github.com/tomaszduda23)
- [test][web_server] Rejig test for v3 [esphome#7110](https://github.com/esphome/esphome/pull/7110) by [@RFDarter](https://github.com/RFDarter)
- [api] Error log when NONE Update command is sent [esphome#7247](https://github.com/esphome/esphome/pull/7247) by [@oarcher](https://github.com/oarcher)
- [api] Add new flag to request state/attribute once from HA only [esphome#7258](https://github.com/esphome/esphome/pull/7258) by [@jesserockz](https://github.com/jesserockz)
- [homeassistant] Add ``HOME_ASSISTANT_IMPORT_CONTROL_SCHEMA`` [esphome#7259](https://github.com/esphome/esphome/pull/7259) by [@jesserockz](https://github.com/jesserockz)
- [const] Add some units for future use and adjust case [esphome#7260](https://github.com/esphome/esphome/pull/7260) by [@nkinnan](https://github.com/nkinnan)
- [online_image] add option to show placeholder while downloading [esphome#7083](https://github.com/esphome/esphome/pull/7083) by [@guillempages](https://github.com/guillempages)
- [lvgl] Add initial_focus for encoders [esphome#7256](https://github.com/esphome/esphome/pull/7256) by [@clydebarrow](https://github.com/clydebarrow)
- [code-quality] fix order in esphome/const.py [esphome#7267](https://github.com/esphome/esphome/pull/7267) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix clang-tidy network [esphome#7266](https://github.com/esphome/esphome/pull/7266) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix clang-tidy core optional [esphome#7265](https://github.com/esphome/esphome/pull/7265) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] Fix variable naming in base_light_effects [esphome#7237](https://github.com/esphome/esphome/pull/7237) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix clang-tidy mqtt [esphome#7253](https://github.com/esphome/esphome/pull/7253) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix clang-tidy wifi related [esphome#7254](https://github.com/esphome/esphome/pull/7254) by [@tomaszduda23](https://github.com/tomaszduda23)
- Bump docker/build-push-action from 6.6.1 to 6.7.0 in /.github/actions/build-image [esphome#7269](https://github.com/esphome/esphome/pull/7269) by [@dependabot[bot]](https://github.com/apps/dependabot)
- [CI] Dont run full CI on ``build-image`` action changes [esphome#7270](https://github.com/esphome/esphome/pull/7270) by [@jesserockz](https://github.com/jesserockz)
- Implement ByteBuffer [esphome#6878](https://github.com/esphome/esphome/pull/6878) by [@clydebarrow](https://github.com/clydebarrow)
- Add min and max brightness parameters for Light dim_relative Action [esphome#6971](https://github.com/esphome/esphome/pull/6971) by [@PaoloTK](https://github.com/PaoloTK)
- [homeassistant] Native switch entity import and control [esphome#7018](https://github.com/esphome/esphome/pull/7018) by [@Links2004](https://github.com/Links2004) (new-platform)
- [homeassistant] Native number entity import and control [esphome#6455](https://github.com/esphome/esphome/pull/6455) by [@landonr](https://github.com/landonr) (new-platform)
- [lvgl] Rework events to avoid feedback loops [esphome#7262](https://github.com/esphome/esphome/pull/7262) by [@clydebarrow](https://github.com/clydebarrow)
- Add `color_filter_opa` style property [esphome#7276](https://github.com/esphome/esphome/pull/7276) by [@clydebarrow](https://github.com/clydebarrow)
- [code-quality] fix clang-tidy wake_on_lan [esphome#7275](https://github.com/esphome/esphome/pull/7275) by [@tomaszduda23](https://github.com/tomaszduda23)
- [code-quality] fix readability-braces-around-statements [esphome#7273](https://github.com/esphome/esphome/pull/7273) by [@tomaszduda23](https://github.com/tomaszduda23)
- [mqtt] fix missing initializer in MQTTClientComponent::disable_discovery [esphome#7271](https://github.com/esphome/esphome/pull/7271) by [@oarcher](https://github.com/oarcher)
- [code-quality] fix readability-named-parameter [esphome#7272](https://github.com/esphome/esphome/pull/7272) by [@tomaszduda23](https://github.com/tomaszduda23)
- support illuminance for airthings wave plus device [esphome#5203](https://github.com/esphome/esphome/pull/5203) by [@MadMonkey87](https://github.com/MadMonkey87)
- [micro_wake_word] Bump ESPMicroSpeechFeatures version to 1.1.0 [esphome#7249](https://github.com/esphome/esphome/pull/7249) by [@kahrendt](https://github.com/kahrendt)
- Implement the finish() method and action. implement the is_stopped condition [esphome#7255](https://github.com/esphome/esphome/pull/7255) by [@nielsnl68](https://github.com/nielsnl68)
- Correct offset calibration [esphome#7228](https://github.com/esphome/esphome/pull/7228) by [@descipher](https://github.com/descipher) (new-platform)
- remove extra number from pronto [esphome#7263](https://github.com/esphome/esphome/pull/7263) by [@ssieb](https://github.com/ssieb)
- [api] Bump noise-c library version [esphome#7288](https://github.com/esphome/esphome/pull/7288) by [@clydebarrow](https://github.com/clydebarrow)
- fix some small rtttl issues [esphome#6817](https://github.com/esphome/esphome/pull/6817) by [@nielsnl68](https://github.com/nielsnl68)
- Fix overflow in ESPColorCorrection object [esphome#7268](https://github.com/esphome/esphome/pull/7268) by [@g-kiss](https://github.com/g-kiss)
- [validation] Allow ``maybe_simple_value`` to not have default key in complex value [esphome#7294](https://github.com/esphome/esphome/pull/7294) by [@jesserockz](https://github.com/jesserockz)
- [network] Always allow ``enable_ipv6: false`` [esphome#7291](https://github.com/esphome/esphome/pull/7291) by [@dwmw2](https://github.com/dwmw2)
- Revert "[validation] Allow ``maybe_simple_value`` to not have default key in complex value" [esphome#7305](https://github.com/esphome/esphome/pull/7305) by [@jesserockz](https://github.com/jesserockz)
- [lvgl] Bug fixes [esphome#7300](https://github.com/esphome/esphome/pull/7300) by [@clydebarrow](https://github.com/clydebarrow)
- [speaker] Fix header includes [esphome#7304](https://github.com/esphome/esphome/pull/7304) by [@nielsnl68](https://github.com/nielsnl68)
- [microphone] Fix header includes [esphome#7310](https://github.com/esphome/esphome/pull/7310) by [@jesserockz](https://github.com/jesserockz)
- Fix RP2040 Neopixel flickering issue [esphome#7307](https://github.com/esphome/esphome/pull/7307) by [@deCodeIt](https://github.com/deCodeIt)
- add the ability to add more idf components to an existing setup [esphome#7302](https://github.com/esphome/esphome/pull/7302) by [@nielsnl68](https://github.com/nielsnl68)
- Fix waveshare 2.13" epaper stride calculation error [esphome#7303](https://github.com/esphome/esphome/pull/7303) by [@serialx](https://github.com/serialx)
- [rtttl] fix STOPPED state [esphome#7323](https://github.com/esphome/esphome/pull/7323) by [@NewoPL](https://github.com/NewoPL)

View File

@@ -1,5 +1,4 @@
# Home Assistant Community Add-on: ESPHome # ESPHome Add-on
## Installation ## Installation
The installation of this add-on is pretty straightforward and not different in comparison to installing any other Home Assistant add-on. The installation of this add-on is pretty straightforward and not different in comparison to installing any other Home Assistant add-on.

View File

@@ -1,9 +1,8 @@
# ESPHome Home Assistant Add-On # ESPHome Add-On
[![ESPHome logo](https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/logo.png)](https://esphome.io/) [![ESPHome logo][logo]][website]
[![GitHub stars](https://img.shields.io/github/stars/esphome/esphome.svg?style=social&label=Star&maxAge=2592000)](https://github.com/esphome/esphome) [![GitHub stars][github-stars-shield]][repository]
[![GitHub Release][releases-shield]][releases]
[![Discord][discord-shield]][discord] [![Discord][discord-shield]][discord]
## About ## About
@@ -14,10 +13,10 @@ is write YAML configuration files; the rest (over-the-air updates, compiling) is
handled by ESPHome. handled by ESPHome.
<p align="center"> <p align="center">
<img title="ESPHome dashboard screenshot" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/screenshot.png" width="700px"></img> <img title="ESPHome dashboard screenshot" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome/images/screenshot.png" width="700px"></img>
</p> </p>
[View the ESPHome documentation](https://esphome.io/) [View the ESPHome documentation][website]
## Example ## Example
@@ -26,15 +25,17 @@ firmware. For example, to include a [DHT22][dht22].
temperature and humidity sensor, you just need to include 8 lines of YAML temperature and humidity sensor, you just need to include 8 lines of YAML
in your configuration file: in your configuration file:
<img title="ESPHome DHT configuration example" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/dht-example.png" width="500px"></img> <img title="ESPHome DHT configuration example" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome/images/dht-example.png" width="500px"></img>
Then just click UPLOAD and the sensor will magically appear in Home Assistant: Then just click UPLOAD and the sensor will magically appear in Home Assistant:
<img title="ESPHome Home Assistant MQTT discovery" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/temperature-humidity.png" width="600px"></img> <img title="ESPHome Home Assistant discovery" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome/images/temperature-humidity.png" width="600px"></img>
[discord-shield]: https://img.shields.io/discord/429907082951524364.svg
[dht22]: https://esphome.io/components/sensor/dht.html
[discord]: https://discord.gg/KhAMKrd [discord]: https://discord.gg/KhAMKrd
[releases-shield]: https://img.shields.io/github/release/esphome/esphome.svg
[releases]: https://esphome.io/changelog/index.html
[repository]: https://github.com/esphome/esphome [repository]: https://github.com/esphome/esphome
[discord-shield]: https://img.shields.io/discord/429907082951524364.svg
[github-stars-shield]: https://img.shields.io/github/stars/esphome/esphome.svg?style=social&label=Star&maxAge=2592000
[dht22]: https://esphome.io/components/sensor/dht.html
[releases]: https://esphome.io/changelog/index.html
[logo]: https://github.com/esphome/home-assistant-addon/raw/main/esphome/logo.png
[website]: https://esphome.io/

View File

@@ -26,13 +26,13 @@ schema:
ssl: bool? ssl: bool?
certfile: str? certfile: str?
keyfile: str? keyfile: str?
relative_url: str?
leave_front_door_open: bool? leave_front_door_open: bool?
backup_exclude: backup_exclude:
- '*/*/' - '*/*/'
init: false init: false
startup: services
name: ESPHome name: ESPHome
version: 2023.4.0 version: 2024.8.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

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,11 +1,13 @@
#!/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 yaml
class Channel(Enum): class Channel(Enum):
@@ -24,39 +26,29 @@ 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_, conf_ in copyf.items(): for file_ in copyf:
os.makedirs(dir_ / Path(file_).parent, exist_ok=True)
if Path.exists(templ / channel.value / file_): if Path.exists(templ / channel.value / file_):
copyfile(templ / channel.value / file_, dir_ / file_) copyfile(templ / channel.value / file_, dir_ / file_)
else: else:
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

@@ -1 +0,0 @@
See https://esphome.io/changelog/index.html

View File

@@ -1,5 +1,4 @@
# Home Assistant Community Add-on: ESPHome # ESPHome Add-on
## Installation ## Installation
The installation of this add-on is pretty straightforward and not different in comparison to installing any other Home Assistant add-on. The installation of this add-on is pretty straightforward and not different in comparison to installing any other Home Assistant add-on.

View File

@@ -1,9 +1,8 @@
# ESPHome Home Assistant Add-On # ESPHome Add-On
[![ESPHome logo](https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/logo.png)](https://esphome.io/) [![ESPHome logo][logo]][website]
[![GitHub stars](https://img.shields.io/github/stars/esphome/esphome.svg?style=social&label=Star&maxAge=2592000)](https://github.com/esphome/esphome) [![GitHub stars][github-stars-shield]][repository]
[![GitHub Release][releases-shield]][releases]
[![Discord][discord-shield]][discord] [![Discord][discord-shield]][discord]
## About ## About
@@ -14,10 +13,10 @@ is write YAML configuration files; the rest (over-the-air updates, compiling) is
handled by ESPHome. handled by ESPHome.
<p align="center"> <p align="center">
<img title="ESPHome dashboard screenshot" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/screenshot.png" width="700px"></img> <img title="ESPHome dashboard screenshot" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome/images/screenshot.png" width="700px"></img>
</p> </p>
[View the ESPHome documentation](https://esphome.io/) [View the ESPHome documentation][website]
## Example ## Example
@@ -26,15 +25,17 @@ firmware. For example, to include a [DHT22][dht22].
temperature and humidity sensor, you just need to include 8 lines of YAML temperature and humidity sensor, you just need to include 8 lines of YAML
in your configuration file: in your configuration file:
<img title="ESPHome DHT configuration example" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/dht-example.png" width="500px"></img> <img title="ESPHome DHT configuration example" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome/images/dht-example.png" width="500px"></img>
Then just click UPLOAD and the sensor will magically appear in Home Assistant: Then just click UPLOAD and the sensor will magically appear in Home Assistant:
<img title="ESPHome Home Assistant MQTT discovery" src="https://raw.githubusercontent.com/esphome/hassio/main/esphome-dev/images/temperature-humidity.png" width="600px"></img> <img title="ESPHome Home Assistant discovery" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome/images/temperature-humidity.png" width="600px"></img>
[discord-shield]: https://img.shields.io/discord/429907082951524364.svg
[dht22]: https://esphome.io/components/sensor/dht.html
[discord]: https://discord.gg/KhAMKrd [discord]: https://discord.gg/KhAMKrd
[releases-shield]: https://img.shields.io/github/release/esphome/esphome.svg
[releases]: https://esphome.io/changelog/index.html
[repository]: https://github.com/esphome/esphome [repository]: https://github.com/esphome/esphome
[discord-shield]: https://img.shields.io/discord/429907082951524364.svg
[github-stars-shield]: https://img.shields.io/github/stars/esphome/esphome.svg?style=social&label=Star&maxAge=2592000
[dht22]: https://esphome.io/components/sensor/dht.html
[releases]: https://esphome.io/changelog/index.html
[logo]: https://github.com/esphome/home-assistant-addon/raw/main/esphome/logo.png
[website]: https://esphome.io/

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
@@ -34,21 +34,23 @@ base: &base
ssl: bool? ssl: bool?
certfile: str? certfile: str?
keyfile: str? keyfile: str?
relative_url: str?
leave_front_door_open: bool? leave_front_door_open: bool?
backup_exclude: backup_exclude:
- "*/*/" - "*/*/"
# 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.9.0-dev20240821" # 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,17 +62,15 @@ esphome-dev:
ssl: bool? ssl: bool?
certfile: str? certfile: str?
keyfile: str? keyfile: str?
relative_url: 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.4.0' # BETA version: "2024.8.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/
@@ -78,21 +78,23 @@ 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.4.0' # STABLE version: "2024.8.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
copy_files: copy_files:
CHANGELOG.md: - DOCS.md
DOCS.md: - icon.png
icon.png: - logo.png
logo.png: - README.md
README.md: - translations/en.yaml
translations/en.yaml: - images/dht-example.png
- images/screenshot.png
- images/temperature-humidity.png

41
template/beta/README.md Normal file
View File

@@ -0,0 +1,41 @@
# ESPHome Beta Add-On
[![ESPHome logo][logo]][website]
[![GitHub stars][github-stars-shield]][repository]
[![Discord][discord-shield]][discord]
## About
This add-on allows you to manage and program your ESP8266 and ESP32 based microcontrollers
directly through Home Assistant **with no programming experience required**. All you need to do
is write YAML configuration files; the rest (over-the-air updates, compiling) is all
handled by ESPHome.
<p align="center">
<img title="ESPHome dashboard screenshot" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-beta/images/screenshot.png" width="700px"></img>
</p>
[View the ESPHome documentation][website]
## Example
With ESPHome, you can go from a few lines of YAML straight to a custom-made
firmware. For example, to include a [DHT22][dht22].
temperature and humidity sensor, you just need to include 8 lines of YAML
in your configuration file:
<img title="ESPHome DHT configuration example" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-beta/images/dht-example.png" width="500px"></img>
Then just click UPLOAD and the sensor will magically appear in Home Assistant:
<img title="ESPHome Home Assistant discovery" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-beta/images/temperature-humidity.png" width="600px"></img>
[discord]: https://discord.gg/KhAMKrd
[repository]: https://github.com/esphome/esphome
[discord-shield]: https://img.shields.io/discord/429907082951524364.svg
[github-stars-shield]: https://img.shields.io/github/stars/esphome/esphome.svg?style=social&label=Star&maxAge=2592000
[dht22]: https://beta.esphome.io/components/sensor/dht.html
[releases]: https://beta.esphome.io/changelog/index.html
[logo]: https://github.com/esphome/home-assistant-addon/raw/main/esphome-beta/logo.png
[website]: https://beta.esphome.io/

BIN
template/beta/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
template/beta/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

41
template/dev/README.md Normal file
View File

@@ -0,0 +1,41 @@
# ESPHome Dev Add-On
[![ESPHome logo][logo]][website]
[![GitHub stars][github-stars-shield]][repository]
[![Discord][discord-shield]][discord]
## About
This add-on allows you to manage and program your ESP8266 and ESP32 based microcontrollers
directly through Home Assistant **with no programming experience required**. All you need to do
is write YAML configuration files; the rest (over-the-air updates, compiling) is all
handled by ESPHome.
<p align="center">
<img title="ESPHome dashboard screenshot" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-dev/images/screenshot.png" width="700px"></img>
</p>
[View the ESPHome documentation][website]
## Example
With ESPHome, you can go from a few lines of YAML straight to a custom-made
firmware. For example, to include a [DHT22][dht22].
temperature and humidity sensor, you just need to include 8 lines of YAML
in your configuration file:
<img title="ESPHome DHT configuration example" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-dev/images/dht-example.png" width="500px"></img>
Then just click UPLOAD and the sensor will magically appear in Home Assistant:
<img title="ESPHome Home Assistant discovery" src="https://github.com/esphome/home-assistant-addon/raw/main/esphome-dev/images/temperature-humidity.png" width="600px"></img>
[discord]: https://discord.gg/KhAMKrd
[repository]: https://github.com/esphome/esphome
[discord-shield]: https://img.shields.io/discord/429907082951524364.svg
[github-stars-shield]: https://img.shields.io/github/stars/esphome/esphome.svg?style=social&label=Star&maxAge=2592000
[dht22]: https://next.esphome.io/components/sensor/dht.html
[releases]: https://next.esphome.io/changelog/index.html
[logo]: https://github.com/esphome/home-assistant-addon/raw/main/esphome-dev/logo.png
[website]: https://next.esphome.io/

BIN
template/dev/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
template/dev/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB