1
0

Compare commits

...

60 Commits

25 changed files with 847 additions and 149 deletions

10
.devcontainer/Dockerfile Normal file
View File

@@ -0,0 +1,10 @@
FROM ghcr.io/home-assistant/devcontainer:addons
RUN \
apt-get update \
&& apt-get install -y --no-install-recommends \
python3-pip
COPY script/requirements.txt /
RUN pip install -r /requirements.txt

View File

@@ -0,0 +1,36 @@
{
"name": "ESPHome Home Assistant add-on devcontainer",
"image": "ghcr.io/esphome/devcontainer:addons",
"appPort": [
"7123:8123",
"7357:4357"
],
"postStartCommand": "bash devcontainer_bootstrap",
"runArgs": [
"-e",
"GIT_EDITOR=code --wait",
"--privileged"
],
"containerEnv": {
"WORKSPACE_DIRECTORY": "${containerWorkspaceFolder}"
},
"extensions": [
"timonwong.shellcheck",
"esbenp.prettier-vscode"
],
"mounts": [
"type=volume,target=/var/lib/docker"
],
"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
}
}

View File

@@ -6,18 +6,36 @@ on:
version:
description: The version to release
required: true
content:
description: The content of the release-notes
required: true
jobs:
create-release:
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v3.0.2
- uses: actions/checkout@v3.3.0
- uses: actions/setup-python@v4
with:
python-version: '3.x'
- run: pip install -r script/requirements.txt
- run: script/bump-version.py ${{ github.event.inputs.version }}
- name: Write Beta changelog
run: |
cat > esphome-beta/CHANGELOG.md << 'EOF'
## ${{ github.event.inputs.version }}
${{ github.event.inputs.content }}
EOF
- name: Write Stable changelog
if: ${{ !contains(github.event.inputs.version, 'b') }}
run: |
cat > esphome/CHANGELOG.md << 'EOF'
## ${{ github.event.inputs.version }}
${{ github.event.inputs.content }}
EOF
- name: Commit version bump
id: commit_version
run: |
@@ -28,8 +46,7 @@ jobs:
git push
COMMIT=$(git rev-parse HEAD)
echo "::set-output name=commit_sha::${COMMIT}"
- if: ${{ contains(github.event.inputs.version, 'b') }}
name: Create Beta Release
- name: Create a Release
uses: actions/create-release@v1.1.4
continue-on-error: true
env:
@@ -37,18 +54,6 @@ jobs:
with:
tag_name: ${{ github.event.inputs.version }}
release_name: ${{ github.event.inputs.version }}
body: 'See https://beta.esphome.io/changelog/index.html'
prerelease: true
commitish: ${{ steps.commit_version.outputs.commit_sha }}
- if: ${{ !contains(github.event.inputs.version, 'b') }}
name: Create Stable Release
uses: actions/create-release@v1.1.4
continue-on-error: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.event.inputs.version }}
release_name: ${{ github.event.inputs.version }}
body: 'See https://esphome.io/changelog/index.html'
prerelease: false
body: ${{ github.event.inputs.content }}
prerelease: ${{ contains(github.event.inputs.version, 'b') }}
commitish: ${{ steps.commit_version.outputs.commit_sha }}

View File

@@ -0,0 +1,41 @@
name: Build devcontainer image
on:
workflow_dispatch:
push:
branches:
- main
paths:
- .devcontainer/**
schedule:
- cron: '0 0 1 * *'
pull_request:
branches:
- main
paths:
- .devcontainer/**
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3.3.0
- name: Log in to the GitHub container registry
uses: docker/login-action@v2.1.0
if: github.event_name != 'pull_request'
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Set up QEMU
uses: docker/setup-qemu-action@v2.1.0
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2.2.1
- name: Build and Push
uses: docker/build-push-action@v3.3.0
with:
context: .
file: .devcontainer/Dockerfile
tags: ghcr.io/${{ github.repository_owner }}/devcontainer:addons
push: ${{ github.event_name != 'pull_request' }}
platforms: linux/amd64,linux/arm64

View File

@@ -19,7 +19,7 @@ jobs:
channel: dev
steps:
- name: ⤵️ Check out code from GitHub
uses: actions/checkout@v3.0.2
uses: actions/checkout@v3.3.0
- name: 🛠 Setup Python
uses: actions/setup-python@v4
with:
@@ -29,6 +29,6 @@ jobs:
- name: 🛠 Generate files from template
run: python script/generate.py ${{ matrix.channels.channel }}
- name: 🚀 Run Home Assistant Add-on Lint on ${{ matrix.channels.channel }}
uses: frenck/action-addon-linter@v2.9.0
uses: frenck/action-addon-linter@v2.11.0
with:
path: "./${{ matrix.channels.folder }}"

19
.vscode/tasks.json vendored Normal file
View File

@@ -0,0 +1,19 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "Start Home Assistant",
"type": "shell",
"command": "supervisor_run",
"group": {
"kind": "test",
"isDefault": true
},
"presentation": {
"reveal": "always",
"panel": "new"
},
"problemMatcher": []
}
]
}

View File

@@ -1 +1,157 @@
See https://esphome.io/changelog/index.html
## 2023.2.0
## Full list of changes
### New Components
- Add Pca9554 component [esphome#4192](https://github.com/esphome/esphome/pull/4192) by [@hwstar](https://github.com/hwstar) (new-integration)
- Add support for BP5758D LED driver [esphome#4021](https://github.com/esphome/esphome/pull/4021) by [@Cossid](https://github.com/Cossid) (new-integration)
- Add support for BP1658CJ LED driver [esphome#4020](https://github.com/esphome/esphome/pull/4020) by [@Cossid](https://github.com/Cossid) (new-integration)
- Add support for SM2235 and SM2335 LED drivers [esphome#3924](https://github.com/esphome/esphome/pull/3924) by [@Cossid](https://github.com/Cossid) (new-integration)
- PCF85063 RTC chip [esphome#3873](https://github.com/esphome/esphome/pull/3873) by [@brogon](https://github.com/brogon) (new-integration)
- Add support for matrix keypads [esphome#4241](https://github.com/esphome/esphome/pull/4241) by [@ssieb](https://github.com/ssieb) (new-integration)
- Add X9C Potentiometer component [esphome#4183](https://github.com/esphome/esphome/pull/4183) by [@EtienneMD](https://github.com/EtienneMD) (new-integration)
- add key collector component [esphome#4242](https://github.com/esphome/esphome/pull/4242) by [@ssieb](https://github.com/ssieb) (new-integration)
- Add support for EE895 [esphome#3771](https://github.com/esphome/esphome/pull/3771) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- Add support for HTE501 [esphome#3772](https://github.com/esphome/esphome/pull/3772) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- Add support for TEE501 [esphome#3773](https://github.com/esphome/esphome/pull/3773) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- Implement a slow sigma-delta modulation based output [esphome#4132](https://github.com/esphome/esphome/pull/4132) by [@Cat-Ion](https://github.com/Cat-Ion) (new-integration)
- add Wiegand reader component [esphome#4288](https://github.com/esphome/esphome/pull/4288) by [@ssieb](https://github.com/ssieb) (new-integration)
- Add MICS-4514 gas sensor [esphome#4316](https://github.com/esphome/esphome/pull/4316) by [@jesserockz](https://github.com/jesserockz) (new-integration)
- Add next_url to improv serial component config [esphome#4343](https://github.com/esphome/esphome/pull/4343) by [@jesserockz](https://github.com/jesserockz) (new-integration)
- Add Ld2410 Support [esphome#3919](https://github.com/esphome/esphome/pull/3919) by [@sebcaps](https://github.com/sebcaps) (new-integration)
- add Resol VBus support [esphome#3976](https://github.com/esphome/esphome/pull/3976) by [@ssieb](https://github.com/ssieb) (new-integration)
### Breaking Changes
- Use NAN values for TSL2591 saturation [esphome#3931](https://github.com/esphome/esphome/pull/3931) by [@mdonoughe](https://github.com/mdonoughe) (breaking-change)
- set_retry: add retries remaining parameter to the provided function [esphome#4251](https://github.com/esphome/esphome/pull/4251) by [@e28eta](https://github.com/e28eta) (breaking-change)
### Beta Changes
- Bump curl version in docker [esphome#4403](https://github.com/esphome/esphome/pull/4403) by [@jesserockz](https://github.com/jesserockz)
- Fix release workflow [esphome#4405](https://github.com/esphome/esphome/pull/4405) by [@jesserockz](https://github.com/jesserockz)
- Climate PID Autotune Logging fixes [esphome#4136](https://github.com/esphome/esphome/pull/4136) by [@patrickcollins12](https://github.com/patrickcollins12)
- Add Clipping to displaybuffer [esphome#4271](https://github.com/esphome/esphome/pull/4271) by [@nielsnl68](https://github.com/nielsnl68)
- Fix check for empty clipping array [esphome#4421](https://github.com/esphome/esphome/pull/4421) by [@nielsnl68](https://github.com/nielsnl68)
- Ledc fix [esphome#4338](https://github.com/esphome/esphome/pull/4338) by [@xvil](https://github.com/xvil)
- Add version api endpoint [esphome#4429](https://github.com/esphome/esphome/pull/4429) by [@jesserockz](https://github.com/jesserockz)
- Handle uart.write in json-config endpoint [esphome#4430](https://github.com/esphome/esphome/pull/4430) by [@jesserockz](https://github.com/jesserockz)
- Bump esphome-dashboard to 20230214.0 [esphome#4431](https://github.com/esphome/esphome/pull/4431) by [@jesserockz](https://github.com/jesserockz)
- Fix setting wrong traits on midea climate component [esphome#4425](https://github.com/esphome/esphome/pull/4425) by [@dudanov](https://github.com/dudanov)
### All changes
- Expose lambda action to reset a cycle in `slow_pwm` [esphome#4158](https://github.com/esphome/esphome/pull/4158) by [@johndbritton](https://github.com/johndbritton)
- climate: Add features to generic Toshiba model [esphome#3912](https://github.com/esphome/esphome/pull/3912) by [@zagor](https://github.com/zagor)
- Fix UUID displaying incorrectly in BLE Tracker logs [esphome#4187](https://github.com/esphome/esphome/pull/4187) by [@deunlee](https://github.com/deunlee)
- Bump actions/stale from 6 to 7 [esphome#4217](https://github.com/esphome/esphome/pull/4217) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Add Pca9554 component [esphome#4192](https://github.com/esphome/esphome/pull/4192) by [@hwstar](https://github.com/hwstar) (new-integration)
- Bump aioesphomeapi from 13.0.1 to 13.0.2 [esphome#4188](https://github.com/esphome/esphome/pull/4188) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump pytest-asyncio from 0.20.2 to 0.20.3 [esphome#4164](https://github.com/esphome/esphome/pull/4164) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Handle deprecated sdkconfig option [esphome#4204](https://github.com/esphome/esphome/pull/4204) by [@mmakaay](https://github.com/mmakaay)
- feat: set a wider range for jpeg quality [esphome#3872](https://github.com/esphome/esphome/pull/3872) by [@sisco0](https://github.com/sisco0)
- Bump black from 22.10.0 to 22.12.0 [esphome#4167](https://github.com/esphome/esphome/pull/4167) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Use NAN values for TSL2591 saturation [esphome#3931](https://github.com/esphome/esphome/pull/3931) by [@mdonoughe](https://github.com/mdonoughe) (breaking-change)
- Ili9341 8bit indexed mode pt2 [esphome#2502](https://github.com/esphome/esphome/pull/2502) by [@davet2001](https://github.com/davet2001)
- Allow ignoring of failed Modbus response CRC [esphome#3930](https://github.com/esphome/esphome/pull/3930) by [@jangrewe](https://github.com/jangrewe)
- calc LEDC PWM Resolution with LEDC_TIMER_BIT_MAX [esphome#3820](https://github.com/esphome/esphome/pull/3820) by [@MFlasskamp](https://github.com/MFlasskamp)
- Component::set_retry updates [esphome#3305](https://github.com/esphome/esphome/pull/3305) by [@e28eta](https://github.com/e28eta)
- Fix race condition in web_server scheduler on ESP32 [esphome#3951](https://github.com/esphome/esphome/pull/3951) by [@tomaszduda23](https://github.com/tomaszduda23)
- Fix saving light state for restore modes LIGHT_RESTORE_AND_OFF/ON [esphome#4131](https://github.com/esphome/esphome/pull/4131) by [@myhomeiot](https://github.com/myhomeiot)
- Add precipitation device class [esphome#4219](https://github.com/esphome/esphome/pull/4219) by [@jesserockz](https://github.com/jesserockz)
- Add support for BP5758D LED driver [esphome#4021](https://github.com/esphome/esphome/pull/4021) by [@Cossid](https://github.com/Cossid) (new-integration)
- Add support for BP1658CJ LED driver [esphome#4020](https://github.com/esphome/esphome/pull/4020) by [@Cossid](https://github.com/Cossid) (new-integration)
- Add support for SM2235 and SM2335 LED drivers [esphome#3924](https://github.com/esphome/esphome/pull/3924) by [@Cossid](https://github.com/Cossid) (new-integration)
- Fix broken PULSE_METER [esphome#4199](https://github.com/esphome/esphome/pull/4199) by [@cstaahl](https://github.com/cstaahl)
- PCF85063 RTC chip [esphome#3873](https://github.com/esphome/esphome/pull/3873) by [@brogon](https://github.com/brogon) (new-integration)
- Add API for dashboard to get boards list by platform [esphome#4168](https://github.com/esphome/esphome/pull/4168) by [@kuba2k2](https://github.com/kuba2k2)
- Bump dashboard to 20221231.0 [esphome#4248](https://github.com/esphome/esphome/pull/4248) by [@balloob](https://github.com/balloob)
- Bump zeroconf to 0.47.1 [esphome#4268](https://github.com/esphome/esphome/pull/4268) by [@bdraco](https://github.com/bdraco)
- Don't match words containing "id" [esphome#4265](https://github.com/esphome/esphome/pull/4265) by [@ssieb](https://github.com/ssieb)
- Add support for matrix keypads [esphome#4241](https://github.com/esphome/esphome/pull/4241) by [@ssieb](https://github.com/ssieb) (new-integration)
- Fix Template Switch restore_mode support [esphome#4280](https://github.com/esphome/esphome/pull/4280) by [@SharpEdgeMarshall](https://github.com/SharpEdgeMarshall)
- Correct decimals in Growatt energy reporting [esphome#4277](https://github.com/esphome/esphome/pull/4277) by [@rfpronk](https://github.com/rfpronk)
- Bump pylint from 2.15.8 to 2.15.10 [esphome#4278](https://github.com/esphome/esphome/pull/4278) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Fix frequency limit for MCP9600 [esphome#4276](https://github.com/esphome/esphome/pull/4276) by [@jowgn](https://github.com/jowgn)
- fix: json compilation error on rp2040 [esphome#4273](https://github.com/esphome/esphome/pull/4273) by [@kellertk](https://github.com/kellertk)
- http_request: add request duration logging [esphome#4272](https://github.com/esphome/esphome/pull/4272) by [@stas-sl](https://github.com/stas-sl)
- Fix HttpRequestResponseTrigger [esphome#4270](https://github.com/esphome/esphome/pull/4270) by [@gmbuell](https://github.com/gmbuell)
- Fix HttpRequestResponseTrigger again [esphome#4285](https://github.com/esphome/esphome/pull/4285) by [@gmbuell](https://github.com/gmbuell)
- Add X9C Potentiometer component [esphome#4183](https://github.com/esphome/esphome/pull/4183) by [@EtienneMD](https://github.com/EtienneMD) (new-integration)
- small DisplayBuffer images and font update [esphome#4044](https://github.com/esphome/esphome/pull/4044) by [@nielsnl68](https://github.com/nielsnl68)
- Fix use of dangling pointers in esp-idf MQTT backend [esphome#4239](https://github.com/esphome/esphome/pull/4239) by [@aaliddell](https://github.com/aaliddell)
- Ensure we never write zero bytes [esphome#4284](https://github.com/esphome/esphome/pull/4284) by [@bdraco](https://github.com/bdraco)
- Fix off-by-one bedjet fan speed (#3873) [esphome#4292](https://github.com/esphome/esphome/pull/4292) by [@jhansche](https://github.com/jhansche)
- Clean up dashboard ping result post-rename/delete [esphome#4170](https://github.com/esphome/esphome/pull/4170) by [@balloob](https://github.com/balloob)
- Calculate PWM wrap dynamically whenever the frequency is changed [esphome#4294](https://github.com/esphome/esphome/pull/4294) by [@tradeJmark](https://github.com/tradeJmark)
- Remove baud check in tuya dump_config [esphome#4298](https://github.com/esphome/esphome/pull/4298) by [@jesserockz](https://github.com/jesserockz)
- Add friendly_name to device [esphome#4296](https://github.com/esphome/esphome/pull/4296) by [@jesserockz](https://github.com/jesserockz)
- allow multiple dsmr [esphome#4299](https://github.com/esphome/esphome/pull/4299) by [@ssieb](https://github.com/ssieb)
- Bump pytest from 7.2.0 to 7.2.1 [esphome#4300](https://github.com/esphome/esphome/pull/4300) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump aioesphomeapi from 13.0.2 to 13.1.0 [esphome#4301](https://github.com/esphome/esphome/pull/4301) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Display the configured esphome:comment on the WebServer [esphome#4246](https://github.com/esphome/esphome/pull/4246) by [@grillp](https://github.com/grillp)
- Allow 0xA8 ID for APDS9960 [esphome#4287](https://github.com/esphome/esphome/pull/4287) by [@reubn](https://github.com/reubn)
- Dont default CORE.friendly_name [esphome#4305](https://github.com/esphome/esphome/pull/4305) by [@jesserockz](https://github.com/jesserockz)
- add key collector component [esphome#4242](https://github.com/esphome/esphome/pull/4242) by [@ssieb](https://github.com/ssieb) (new-integration)
- Tsl2591 gain publish [esphome#4291](https://github.com/esphome/esphome/pull/4291) by [@z3liff](https://github.com/z3liff)
- Add support for EE895 [esphome#3771](https://github.com/esphome/esphome/pull/3771) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- Add support for HTE501 [esphome#3772](https://github.com/esphome/esphome/pull/3772) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- Add support for TEE501 [esphome#3773](https://github.com/esphome/esphome/pull/3773) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- PCA9685, fix reset device and add option EXTCLK [esphome#3845](https://github.com/esphome/esphome/pull/3845) by [@standahabich](https://github.com/standahabich)
- Implement a slow sigma-delta modulation based output [esphome#4132](https://github.com/esphome/esphome/pull/4132) by [@Cat-Ion](https://github.com/Cat-Ion) (new-integration)
- set_retry: add retries remaining parameter to the provided function [esphome#4251](https://github.com/esphome/esphome/pull/4251) by [@e28eta](https://github.com/e28eta) (breaking-change)
- add Wiegand reader component [esphome#4288](https://github.com/esphome/esphome/pull/4288) by [@ssieb](https://github.com/ssieb) (new-integration)
- Format docker/build.py [esphome#4313](https://github.com/esphome/esphome/pull/4313) by [@jesserockz](https://github.com/jesserockz)
- Add macro for sub sensor defining [esphome#4315](https://github.com/esphome/esphome/pull/4315) by [@jesserockz](https://github.com/jesserockz)
- Add friendly name in MDNS records if it is not empty [esphome#4317](https://github.com/esphome/esphome/pull/4317) by [@catalin2402](https://github.com/catalin2402)
- Add upload dashboard api [esphome#4318](https://github.com/esphome/esphome/pull/4318) by [@balloob](https://github.com/balloob)
- Bump esphome-dashboard to 20230120.0 [esphome#4319](https://github.com/esphome/esphome/pull/4319) by [@jesserockz](https://github.com/jesserockz)
- Hydreon: Use new device classes water and precipitation_intensity [esphome#3993](https://github.com/esphome/esphome/pull/3993) by [@functionpointer](https://github.com/functionpointer)
- Dont fail workflows if lint building fails [esphome#4336](https://github.com/esphome/esphome/pull/4336) by [@jesserockz](https://github.com/jesserockz)
- Add MICS-4514 gas sensor [esphome#4316](https://github.com/esphome/esphome/pull/4316) by [@jesserockz](https://github.com/jesserockz) (new-integration)
- Refactor esp32_ble_tracker to use esp32_ble core ble setup code [esphome#4173](https://github.com/esphome/esphome/pull/4173) by [@jesserockz](https://github.com/jesserockz)
- Add next_url to improv serial component config [esphome#4343](https://github.com/esphome/esphome/pull/4343) by [@jesserockz](https://github.com/jesserockz) (new-integration)
- Remove state class from uptime sensor [esphome#4345](https://github.com/esphome/esphome/pull/4345) by [@jesserockz](https://github.com/jesserockz)
- Fix esp32_ble_tracker setup priority [esphome#4346](https://github.com/esphome/esphome/pull/4346) by [@jesserockz](https://github.com/jesserockz)
- Fix in ble client base address parsing [esphome#4347](https://github.com/esphome/esphome/pull/4347) by [@jesserockz](https://github.com/jesserockz)
- Added support for ADS1015 [esphome#4281](https://github.com/esphome/esphome/pull/4281) by [@xvil](https://github.com/xvil)
- Fix "BLE server / advertising always on" [esphome#4353](https://github.com/esphome/esphome/pull/4353) by [@Mat931](https://github.com/Mat931)
- Dump full parsed config to json-config api call [esphome#4373](https://github.com/esphome/esphome/pull/4373) by [@jesserockz](https://github.com/jesserockz)
- Fix pressure compensation in SCD4X [esphome#4357](https://github.com/esphome/esphome/pull/4357) by [@CarlosGS](https://github.com/CarlosGS)
- Allow mdns services to be exposed by config [esphome#4202](https://github.com/esphome/esphome/pull/4202) by [@elupus](https://github.com/elupus)
- Allow final validate of uart stop bits and parity [esphome#4376](https://github.com/esphome/esphome/pull/4376) by [@jesserockz](https://github.com/jesserockz)
- Update sim800l.cpp [esphome#4223](https://github.com/esphome/esphome/pull/4223) by [@fbeek](https://github.com/fbeek)
- SCD30 Added support for manual calibration [esphome#4362](https://github.com/esphome/esphome/pull/4362) by [@ftrueck](https://github.com/ftrueck)
- Add Ld2410 Support [esphome#3919](https://github.com/esphome/esphome/pull/3919) by [@sebcaps](https://github.com/sebcaps) (new-integration)
- add Resol VBus support [esphome#3976](https://github.com/esphome/esphome/pull/3976) by [@ssieb](https://github.com/ssieb) (new-integration)
- Allow dashboard import to specify if api encryption key should be generated [esphome#4393](https://github.com/esphome/esphome/pull/4393) by [@jesserockz](https://github.com/jesserockz)
- modify SGP4X integration to report device_class as air quality index [esphome#4327](https://github.com/esphome/esphome/pull/4327) by [@alexd321](https://github.com/alexd321)
- Remove unneeded validation for esp32 gpio pins [esphome#4394](https://github.com/esphome/esphome/pull/4394) by [@jesserockz](https://github.com/jesserockz)
- Fix shelly dimmer current sensor device class [esphome#4385](https://github.com/esphome/esphome/pull/4385) by [@trvrnrth](https://github.com/trvrnrth)
- Added Ethernet Component for ESP IDF with JL1101 PHY driver [esphome#4009](https://github.com/esphome/esphome/pull/4009) by [@mobrembski](https://github.com/mobrembski)
- adds gpio INPUT_OUTPUT_OPEN_DRAIN [esphome#4360](https://github.com/esphome/esphome/pull/4360) by [@tomaszduda23](https://github.com/tomaszduda23)
- Merge components in packages [esphome#3555](https://github.com/esphome/esphome/pull/3555) by [@quentinmit](https://github.com/quentinmit)
- Update ld2410 logging [esphome#4395](https://github.com/esphome/esphome/pull/4395) by [@jesserockz](https://github.com/jesserockz)
- Update log for mics4514 to state 3 minute start time. [esphome#4396](https://github.com/esphome/esphome/pull/4396) by [@jesserockz](https://github.com/jesserockz)
- mDNS updates [esphome#4399](https://github.com/esphome/esphome/pull/4399) by [@jesserockz](https://github.com/jesserockz)
- Dont keep logging on improv start [esphome#4401](https://github.com/esphome/esphome/pull/4401) by [@jesserockz](https://github.com/jesserockz)
- Add support for Lippert LP sensors in mopeka_pro_check component [esphome#4118](https://github.com/esphome/esphome/pull/4118) by [@rperciaccante](https://github.com/rperciaccante)
- climate: add support for quiet fan mode [esphome#3609](https://github.com/esphome/esphome/pull/3609) by [@MichaelMure](https://github.com/MichaelMure)
- add MQTT preset support for Climate components [esphome#4379](https://github.com/esphome/esphome/pull/4379) by [@jmichiel](https://github.com/jmichiel)
- Added CanalSat and CanalSatLD protocol support [esphome#3513](https://github.com/esphome/esphome/pull/3513) by [@Emrvb](https://github.com/Emrvb)
- Remove unused manifest handler [esphome#4169](https://github.com/esphome/esphome/pull/4169) by [@balloob](https://github.com/balloob)
- Use the github-script action to call the workflow [esphome#4400](https://github.com/esphome/esphome/pull/4400) by [@jesserockz](https://github.com/jesserockz)
- Convert secrets constant to a tuple [esphome#4245](https://github.com/esphome/esphome/pull/4245) by [@balloob](https://github.com/balloob)
- Verify rel_path output is relative [esphome#4247](https://github.com/esphome/esphome/pull/4247) by [@balloob](https://github.com/balloob)
- Bump curl version in docker [esphome#4403](https://github.com/esphome/esphome/pull/4403) by [@jesserockz](https://github.com/jesserockz)
- Fix release workflow [esphome#4405](https://github.com/esphome/esphome/pull/4405) by [@jesserockz](https://github.com/jesserockz)
- Climate PID Autotune Logging fixes [esphome#4136](https://github.com/esphome/esphome/pull/4136) by [@patrickcollins12](https://github.com/patrickcollins12)
- Add Clipping to displaybuffer [esphome#4271](https://github.com/esphome/esphome/pull/4271) by [@nielsnl68](https://github.com/nielsnl68)
- Fix check for empty clipping array [esphome#4421](https://github.com/esphome/esphome/pull/4421) by [@nielsnl68](https://github.com/nielsnl68)
- Ledc fix [esphome#4338](https://github.com/esphome/esphome/pull/4338) by [@xvil](https://github.com/xvil)
- Add version api endpoint [esphome#4429](https://github.com/esphome/esphome/pull/4429) by [@jesserockz](https://github.com/jesserockz)
- Handle uart.write in json-config endpoint [esphome#4430](https://github.com/esphome/esphome/pull/4430) by [@jesserockz](https://github.com/jesserockz)
- Bump esphome-dashboard to 20230214.0 [esphome#4431](https://github.com/esphome/esphome/pull/4431) by [@jesserockz](https://github.com/jesserockz)
- Fix setting wrong traits on midea climate component [esphome#4425](https://github.com/esphome/esphome/pull/4425) by [@dudanov](https://github.com/dudanov)

View File

@@ -1,37 +1,42 @@
---
advanced: true
url: https://beta.esphome.io/
arch:
- amd64
- armv7
- aarch64
auth_api: true
backup_exclude:
- '*/*/'
description: Beta version of ESPHome add-on
hassio_api: true
auth_api: true
host_network: true
image: ghcr.io/esphome/esphome-hassio-{arch}
ingress: true
ingress_port: 0
panel_icon: mdi:chip
uart: true
ports:
6052/tcp: null
map:
- ssl:ro
- config:rw
name: ESPHome (beta)
panel_icon: mdi:chip
ports:
6052/tcp: null
ports_description:
6052/tcp: Web interface (not required for Home Assistant ingress)
discovery:
- esphome
schema:
certfile: str?
keyfile: str?
leave_front_door_open: bool?
relative_url: str?
ssl: bool?
status_use_ping: bool?
streamer_mode: bool?
home_assistant_dashboard_integration: bool?
default_compile_process_limit: int(1,)?
ssl: bool?
certfile: str?
keyfile: str?
relative_url: str?
leave_front_door_open: bool?
backup_exclude:
- '*/*/'
init: false
name: ESPHome (beta)
version: 2023.2.0
slug: esphome-beta
description: Beta version of ESPHome add-on
image: ghcr.io/esphome/esphome-hassio
stage: experimental
uart: true
url: https://beta.esphome.io/
version: 2022.9.3
advanced: true
options:
home_assistant_dashboard_integration: false

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -0,0 +1,67 @@
---
configuration:
certfile:
name: Certificate file
description: >-
The certificate file to use for SSL. Note that this file must
exist in the /ssl/ folder.
default_compile_process_limit:
name: Default compile process limit
description: >-
The default compile process limit. This is the maximum number of
simultaneous compile processes that ESPHome will run.
esphome_fork:
name: Install ESPHome from a fork or branch
description: >-
For example to test a pull request, use `pull/XXXX/head` where `XXXX` is
the PR number, or you can specify the username of the fork owner and
branch `username:branch` which assumes the repository is named `esphome`
still.
If you need to test the latest commit on dev branch before the image is
updated you can enter `dev` here.
Please note that the fork or branch you are using **must** be up to
date with ESPHome dev or the add-on **will not start**.
home_assistant_dashboard_integration:
name: Home Assistant Dashboard Integration
description: >-
Enables/Disables the ESPHome dashboard integrating with Home Assistant
for automatic configuration of devices and device updates. If you use
multiple version of the ESPHome add-on, make sure it is enabled on a
single add-on only.
keyfile:
name: Private key file
description: >-
The private key file to use for SSL. Note that this file must
exist in the /ssl/ folder.
leave_front_door_open:
name: Disable external authentication
description: >-
Disables external authentication when having opened the add-on
on an external port. **WARNING**: This is a security risk!
relative_url:
name: Relative URL
description: >-
Host the ESPHome dashboard under a relative URL, so that it can be
integrated into existing web proxies like NGINX under a relative URL.
Defaults to `/`.
ssl:
name: SSL
description: >-
Enables/Disables SSL (HTTPS) on the web interface.
status_use_ping:
name: Use ping for status
description: >-
By default the dashboard uses mDNS to check if nodes are online. This does
not work across subnets unless your router supports mDNS forwarding
or avahi. Enabling this option will use ICMP ping to check if nodes are
online.
streamer_mode:
name: Streamer mode
description: >-
Enables/Disables streamer mode, which makes ESPHome hide all
potentially private information. So for example WiFi (B)SSIDs (which could
be used to find your location), usernames, etc.
network:
6052/tcp: Web interface (to use without Home Assistant)

View File

@@ -1,40 +1,31 @@
# Home Assistant Community Add-on: ESPHome
# ESPHome DEV add on
## Installation
This is **development** version of the ESPHome add on.
The installation of this add-on is pretty straightforward and not different in comparison to installing any other Home Assistant add-on.
To deploy production nodes please use mainstream release add on.
1. Search for the “ESPHome” add-on in the Supervisor add-on store.
2. Press install to download the add-on and unpack it on your machine. This can take some time.
3. Optional: If you're using SSL/TLS certificates and want to encrypt your communication to this add-on, please enter `true` into the `ssl` field and set the `fullchain` and `certfile` options accordingly.
4. Start the add-on, check the logs of the add-on to see if everything went well.
5. Click "OPEN WEB UI" to open the ESPHome dashboard. You will be asked for your Home Assistant credentials - ESPHome uses Home Assistant's authentication system to log you in.
You can view the ESPHome documentation at https://esphome.io/
The add on uses a version of ESPHome built automatically every day at 02:00 UTC. and is used to test components in development. See the `esphome_fork` configuration below to properly configure the add on. Once you update the configuration make sure to rebuild the image.
## Configuration
**Note**: _Remember to restart the add-on when the configuration is changed._
Example add-on configuration:
```json
{
"ssl": false,
"certfile": "fullchain.pem",
"keyfile": "privkey.pem"
}
```
### Option: `esphome_fork`
Install ESPHome from a fork or branch.
For example to test a pull request, use `pull/XXXX/head` where `XXXX` is the PR number,
or you can specify the username of the fork owner and branch `username:branch` which
assumes the repository is named `esphome` still.
assumes the repository is named `esphome` still.
If you need to test the latest commit on dev branch before the image is updated you can enter `dev` here.
Please note that the fork or branch you are using **must** be up to date with ESPHome dev
or the add-on **will not start**.
or the add-on **will not start**.
## General ESPHome add on configurations
General options also available in other versions.
### Option: `ssl`

View File

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

View File

@@ -1,37 +1,42 @@
---
advanced: true
url: https://next.esphome.io/
arch:
- amd64
- armv7
- aarch64
auth_api: true
backup_exclude:
- '*/*/'
description: Development version of ESPHome add-on
hassio_api: true
auth_api: true
host_network: true
ingress: true
ingress_port: 0
panel_icon: mdi:chip
uart: true
ports:
6052/tcp: null
map:
- ssl:ro
- config:rw
name: ESPHome (dev)
panel_icon: mdi:chip
ports:
6052/tcp: null
ports_description:
6052/tcp: Web interface (not required for Home Assistant ingress)
discovery:
- esphome
schema:
certfile: str?
esphome_fork: str?
keyfile: str?
leave_front_door_open: bool?
relative_url: str?
ssl: bool?
status_use_ping: bool?
streamer_mode: bool?
slug: esphome-dev
stage: experimental
uart: true
url: https://next.esphome.io/
home_assistant_dashboard_integration: bool?
default_compile_process_limit: int(1,)?
esphome_fork: str?
ssl: bool?
certfile: str?
keyfile: str?
relative_url: str?
leave_front_door_open: bool?
backup_exclude:
- '*/*/'
init: false
name: ESPHome (dev)
version: dev
slug: esphome-dev
description: Development version of ESPHome add-on
stage: experimental
advanced: true
options:
home_assistant_dashboard_integration: false

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 12 KiB

7
esphome-dev/rootfs/etc/cont-init.d/30-esphome-fork.sh Normal file → Executable file
View File

@@ -25,10 +25,11 @@ if bashio::config.has_value 'esphome_fork'; then
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})..."
mkdir /esphome-fork
tar -zxf /tmp/esphome.tar.gz -C /esphome-fork --strip-components=1 \
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-fork || 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__)")

View File

@@ -0,0 +1,67 @@
---
configuration:
certfile:
name: Certificate file
description: >-
The certificate file to use for SSL. Note that this file must
exist in the /ssl/ folder.
default_compile_process_limit:
name: Default compile process limit
description: >-
The default compile process limit. This is the maximum number of
simultaneous compile processes that ESPHome will run.
esphome_fork:
name: Install ESPHome from a fork or branch
description: >-
For example to test a pull request, use `pull/XXXX/head` where `XXXX` is
the PR number, or you can specify the username of the fork owner and
branch `username:branch` which assumes the repository is named `esphome`
still.
If you need to test the latest commit on dev branch before the image is
updated you can enter `dev` here.
Please note that the fork or branch you are using **must** be up to
date with ESPHome dev or the add-on **will not start**.
home_assistant_dashboard_integration:
name: Home Assistant Dashboard Integration
description: >-
Enables/Disables the ESPHome dashboard integrating with Home Assistant
for automatic configuration of devices and device updates. If you use
multiple version of the ESPHome add-on, make sure it is enabled on a
single add-on only.
keyfile:
name: Private key file
description: >-
The private key file to use for SSL. Note that this file must
exist in the /ssl/ folder.
leave_front_door_open:
name: Disable external authentication
description: >-
Disables external authentication when having opened the add-on
on an external port. **WARNING**: This is a security risk!
relative_url:
name: Relative URL
description: >-
Host the ESPHome dashboard under a relative URL, so that it can be
integrated into existing web proxies like NGINX under a relative URL.
Defaults to `/`.
ssl:
name: SSL
description: >-
Enables/Disables SSL (HTTPS) on the web interface.
status_use_ping:
name: Use ping for status
description: >-
By default the dashboard uses mDNS to check if nodes are online. This does
not work across subnets unless your router supports mDNS forwarding
or avahi. Enabling this option will use ICMP ping to check if nodes are
online.
streamer_mode:
name: Streamer mode
description: >-
Enables/Disables streamer mode, which makes ESPHome hide all
potentially private information. So for example WiFi (B)SSIDs (which could
be used to find your location), usernames, etc.
network:
6052/tcp: Web interface (to use without Home Assistant)

View File

@@ -1 +1,157 @@
See https://esphome.io/changelog/index.html
## 2023.2.0
## Full list of changes
### New Components
- Add Pca9554 component [esphome#4192](https://github.com/esphome/esphome/pull/4192) by [@hwstar](https://github.com/hwstar) (new-integration)
- Add support for BP5758D LED driver [esphome#4021](https://github.com/esphome/esphome/pull/4021) by [@Cossid](https://github.com/Cossid) (new-integration)
- Add support for BP1658CJ LED driver [esphome#4020](https://github.com/esphome/esphome/pull/4020) by [@Cossid](https://github.com/Cossid) (new-integration)
- Add support for SM2235 and SM2335 LED drivers [esphome#3924](https://github.com/esphome/esphome/pull/3924) by [@Cossid](https://github.com/Cossid) (new-integration)
- PCF85063 RTC chip [esphome#3873](https://github.com/esphome/esphome/pull/3873) by [@brogon](https://github.com/brogon) (new-integration)
- Add support for matrix keypads [esphome#4241](https://github.com/esphome/esphome/pull/4241) by [@ssieb](https://github.com/ssieb) (new-integration)
- Add X9C Potentiometer component [esphome#4183](https://github.com/esphome/esphome/pull/4183) by [@EtienneMD](https://github.com/EtienneMD) (new-integration)
- add key collector component [esphome#4242](https://github.com/esphome/esphome/pull/4242) by [@ssieb](https://github.com/ssieb) (new-integration)
- Add support for EE895 [esphome#3771](https://github.com/esphome/esphome/pull/3771) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- Add support for HTE501 [esphome#3772](https://github.com/esphome/esphome/pull/3772) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- Add support for TEE501 [esphome#3773](https://github.com/esphome/esphome/pull/3773) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- Implement a slow sigma-delta modulation based output [esphome#4132](https://github.com/esphome/esphome/pull/4132) by [@Cat-Ion](https://github.com/Cat-Ion) (new-integration)
- add Wiegand reader component [esphome#4288](https://github.com/esphome/esphome/pull/4288) by [@ssieb](https://github.com/ssieb) (new-integration)
- Add MICS-4514 gas sensor [esphome#4316](https://github.com/esphome/esphome/pull/4316) by [@jesserockz](https://github.com/jesserockz) (new-integration)
- Add next_url to improv serial component config [esphome#4343](https://github.com/esphome/esphome/pull/4343) by [@jesserockz](https://github.com/jesserockz) (new-integration)
- Add Ld2410 Support [esphome#3919](https://github.com/esphome/esphome/pull/3919) by [@sebcaps](https://github.com/sebcaps) (new-integration)
- add Resol VBus support [esphome#3976](https://github.com/esphome/esphome/pull/3976) by [@ssieb](https://github.com/ssieb) (new-integration)
### Breaking Changes
- Use NAN values for TSL2591 saturation [esphome#3931](https://github.com/esphome/esphome/pull/3931) by [@mdonoughe](https://github.com/mdonoughe) (breaking-change)
- set_retry: add retries remaining parameter to the provided function [esphome#4251](https://github.com/esphome/esphome/pull/4251) by [@e28eta](https://github.com/e28eta) (breaking-change)
### Beta Changes
- Bump curl version in docker [esphome#4403](https://github.com/esphome/esphome/pull/4403) by [@jesserockz](https://github.com/jesserockz)
- Fix release workflow [esphome#4405](https://github.com/esphome/esphome/pull/4405) by [@jesserockz](https://github.com/jesserockz)
- Climate PID Autotune Logging fixes [esphome#4136](https://github.com/esphome/esphome/pull/4136) by [@patrickcollins12](https://github.com/patrickcollins12)
- Add Clipping to displaybuffer [esphome#4271](https://github.com/esphome/esphome/pull/4271) by [@nielsnl68](https://github.com/nielsnl68)
- Fix check for empty clipping array [esphome#4421](https://github.com/esphome/esphome/pull/4421) by [@nielsnl68](https://github.com/nielsnl68)
- Ledc fix [esphome#4338](https://github.com/esphome/esphome/pull/4338) by [@xvil](https://github.com/xvil)
- Add version api endpoint [esphome#4429](https://github.com/esphome/esphome/pull/4429) by [@jesserockz](https://github.com/jesserockz)
- Handle uart.write in json-config endpoint [esphome#4430](https://github.com/esphome/esphome/pull/4430) by [@jesserockz](https://github.com/jesserockz)
- Bump esphome-dashboard to 20230214.0 [esphome#4431](https://github.com/esphome/esphome/pull/4431) by [@jesserockz](https://github.com/jesserockz)
- Fix setting wrong traits on midea climate component [esphome#4425](https://github.com/esphome/esphome/pull/4425) by [@dudanov](https://github.com/dudanov)
### All changes
- Expose lambda action to reset a cycle in `slow_pwm` [esphome#4158](https://github.com/esphome/esphome/pull/4158) by [@johndbritton](https://github.com/johndbritton)
- climate: Add features to generic Toshiba model [esphome#3912](https://github.com/esphome/esphome/pull/3912) by [@zagor](https://github.com/zagor)
- Fix UUID displaying incorrectly in BLE Tracker logs [esphome#4187](https://github.com/esphome/esphome/pull/4187) by [@deunlee](https://github.com/deunlee)
- Bump actions/stale from 6 to 7 [esphome#4217](https://github.com/esphome/esphome/pull/4217) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Add Pca9554 component [esphome#4192](https://github.com/esphome/esphome/pull/4192) by [@hwstar](https://github.com/hwstar) (new-integration)
- Bump aioesphomeapi from 13.0.1 to 13.0.2 [esphome#4188](https://github.com/esphome/esphome/pull/4188) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump pytest-asyncio from 0.20.2 to 0.20.3 [esphome#4164](https://github.com/esphome/esphome/pull/4164) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Handle deprecated sdkconfig option [esphome#4204](https://github.com/esphome/esphome/pull/4204) by [@mmakaay](https://github.com/mmakaay)
- feat: set a wider range for jpeg quality [esphome#3872](https://github.com/esphome/esphome/pull/3872) by [@sisco0](https://github.com/sisco0)
- Bump black from 22.10.0 to 22.12.0 [esphome#4167](https://github.com/esphome/esphome/pull/4167) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Use NAN values for TSL2591 saturation [esphome#3931](https://github.com/esphome/esphome/pull/3931) by [@mdonoughe](https://github.com/mdonoughe) (breaking-change)
- Ili9341 8bit indexed mode pt2 [esphome#2502](https://github.com/esphome/esphome/pull/2502) by [@davet2001](https://github.com/davet2001)
- Allow ignoring of failed Modbus response CRC [esphome#3930](https://github.com/esphome/esphome/pull/3930) by [@jangrewe](https://github.com/jangrewe)
- calc LEDC PWM Resolution with LEDC_TIMER_BIT_MAX [esphome#3820](https://github.com/esphome/esphome/pull/3820) by [@MFlasskamp](https://github.com/MFlasskamp)
- Component::set_retry updates [esphome#3305](https://github.com/esphome/esphome/pull/3305) by [@e28eta](https://github.com/e28eta)
- Fix race condition in web_server scheduler on ESP32 [esphome#3951](https://github.com/esphome/esphome/pull/3951) by [@tomaszduda23](https://github.com/tomaszduda23)
- Fix saving light state for restore modes LIGHT_RESTORE_AND_OFF/ON [esphome#4131](https://github.com/esphome/esphome/pull/4131) by [@myhomeiot](https://github.com/myhomeiot)
- Add precipitation device class [esphome#4219](https://github.com/esphome/esphome/pull/4219) by [@jesserockz](https://github.com/jesserockz)
- Add support for BP5758D LED driver [esphome#4021](https://github.com/esphome/esphome/pull/4021) by [@Cossid](https://github.com/Cossid) (new-integration)
- Add support for BP1658CJ LED driver [esphome#4020](https://github.com/esphome/esphome/pull/4020) by [@Cossid](https://github.com/Cossid) (new-integration)
- Add support for SM2235 and SM2335 LED drivers [esphome#3924](https://github.com/esphome/esphome/pull/3924) by [@Cossid](https://github.com/Cossid) (new-integration)
- Fix broken PULSE_METER [esphome#4199](https://github.com/esphome/esphome/pull/4199) by [@cstaahl](https://github.com/cstaahl)
- PCF85063 RTC chip [esphome#3873](https://github.com/esphome/esphome/pull/3873) by [@brogon](https://github.com/brogon) (new-integration)
- Add API for dashboard to get boards list by platform [esphome#4168](https://github.com/esphome/esphome/pull/4168) by [@kuba2k2](https://github.com/kuba2k2)
- Bump dashboard to 20221231.0 [esphome#4248](https://github.com/esphome/esphome/pull/4248) by [@balloob](https://github.com/balloob)
- Bump zeroconf to 0.47.1 [esphome#4268](https://github.com/esphome/esphome/pull/4268) by [@bdraco](https://github.com/bdraco)
- Don't match words containing "id" [esphome#4265](https://github.com/esphome/esphome/pull/4265) by [@ssieb](https://github.com/ssieb)
- Add support for matrix keypads [esphome#4241](https://github.com/esphome/esphome/pull/4241) by [@ssieb](https://github.com/ssieb) (new-integration)
- Fix Template Switch restore_mode support [esphome#4280](https://github.com/esphome/esphome/pull/4280) by [@SharpEdgeMarshall](https://github.com/SharpEdgeMarshall)
- Correct decimals in Growatt energy reporting [esphome#4277](https://github.com/esphome/esphome/pull/4277) by [@rfpronk](https://github.com/rfpronk)
- Bump pylint from 2.15.8 to 2.15.10 [esphome#4278](https://github.com/esphome/esphome/pull/4278) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Fix frequency limit for MCP9600 [esphome#4276](https://github.com/esphome/esphome/pull/4276) by [@jowgn](https://github.com/jowgn)
- fix: json compilation error on rp2040 [esphome#4273](https://github.com/esphome/esphome/pull/4273) by [@kellertk](https://github.com/kellertk)
- http_request: add request duration logging [esphome#4272](https://github.com/esphome/esphome/pull/4272) by [@stas-sl](https://github.com/stas-sl)
- Fix HttpRequestResponseTrigger [esphome#4270](https://github.com/esphome/esphome/pull/4270) by [@gmbuell](https://github.com/gmbuell)
- Fix HttpRequestResponseTrigger again [esphome#4285](https://github.com/esphome/esphome/pull/4285) by [@gmbuell](https://github.com/gmbuell)
- Add X9C Potentiometer component [esphome#4183](https://github.com/esphome/esphome/pull/4183) by [@EtienneMD](https://github.com/EtienneMD) (new-integration)
- small DisplayBuffer images and font update [esphome#4044](https://github.com/esphome/esphome/pull/4044) by [@nielsnl68](https://github.com/nielsnl68)
- Fix use of dangling pointers in esp-idf MQTT backend [esphome#4239](https://github.com/esphome/esphome/pull/4239) by [@aaliddell](https://github.com/aaliddell)
- Ensure we never write zero bytes [esphome#4284](https://github.com/esphome/esphome/pull/4284) by [@bdraco](https://github.com/bdraco)
- Fix off-by-one bedjet fan speed (#3873) [esphome#4292](https://github.com/esphome/esphome/pull/4292) by [@jhansche](https://github.com/jhansche)
- Clean up dashboard ping result post-rename/delete [esphome#4170](https://github.com/esphome/esphome/pull/4170) by [@balloob](https://github.com/balloob)
- Calculate PWM wrap dynamically whenever the frequency is changed [esphome#4294](https://github.com/esphome/esphome/pull/4294) by [@tradeJmark](https://github.com/tradeJmark)
- Remove baud check in tuya dump_config [esphome#4298](https://github.com/esphome/esphome/pull/4298) by [@jesserockz](https://github.com/jesserockz)
- Add friendly_name to device [esphome#4296](https://github.com/esphome/esphome/pull/4296) by [@jesserockz](https://github.com/jesserockz)
- allow multiple dsmr [esphome#4299](https://github.com/esphome/esphome/pull/4299) by [@ssieb](https://github.com/ssieb)
- Bump pytest from 7.2.0 to 7.2.1 [esphome#4300](https://github.com/esphome/esphome/pull/4300) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump aioesphomeapi from 13.0.2 to 13.1.0 [esphome#4301](https://github.com/esphome/esphome/pull/4301) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Display the configured esphome:comment on the WebServer [esphome#4246](https://github.com/esphome/esphome/pull/4246) by [@grillp](https://github.com/grillp)
- Allow 0xA8 ID for APDS9960 [esphome#4287](https://github.com/esphome/esphome/pull/4287) by [@reubn](https://github.com/reubn)
- Dont default CORE.friendly_name [esphome#4305](https://github.com/esphome/esphome/pull/4305) by [@jesserockz](https://github.com/jesserockz)
- add key collector component [esphome#4242](https://github.com/esphome/esphome/pull/4242) by [@ssieb](https://github.com/ssieb) (new-integration)
- Tsl2591 gain publish [esphome#4291](https://github.com/esphome/esphome/pull/4291) by [@z3liff](https://github.com/z3liff)
- Add support for EE895 [esphome#3771](https://github.com/esphome/esphome/pull/3771) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- Add support for HTE501 [esphome#3772](https://github.com/esphome/esphome/pull/3772) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- Add support for TEE501 [esphome#3773](https://github.com/esphome/esphome/pull/3773) by [@Stock-M](https://github.com/Stock-M) (new-integration)
- PCA9685, fix reset device and add option EXTCLK [esphome#3845](https://github.com/esphome/esphome/pull/3845) by [@standahabich](https://github.com/standahabich)
- Implement a slow sigma-delta modulation based output [esphome#4132](https://github.com/esphome/esphome/pull/4132) by [@Cat-Ion](https://github.com/Cat-Ion) (new-integration)
- set_retry: add retries remaining parameter to the provided function [esphome#4251](https://github.com/esphome/esphome/pull/4251) by [@e28eta](https://github.com/e28eta) (breaking-change)
- add Wiegand reader component [esphome#4288](https://github.com/esphome/esphome/pull/4288) by [@ssieb](https://github.com/ssieb) (new-integration)
- Format docker/build.py [esphome#4313](https://github.com/esphome/esphome/pull/4313) by [@jesserockz](https://github.com/jesserockz)
- Add macro for sub sensor defining [esphome#4315](https://github.com/esphome/esphome/pull/4315) by [@jesserockz](https://github.com/jesserockz)
- Add friendly name in MDNS records if it is not empty [esphome#4317](https://github.com/esphome/esphome/pull/4317) by [@catalin2402](https://github.com/catalin2402)
- Add upload dashboard api [esphome#4318](https://github.com/esphome/esphome/pull/4318) by [@balloob](https://github.com/balloob)
- Bump esphome-dashboard to 20230120.0 [esphome#4319](https://github.com/esphome/esphome/pull/4319) by [@jesserockz](https://github.com/jesserockz)
- Hydreon: Use new device classes water and precipitation_intensity [esphome#3993](https://github.com/esphome/esphome/pull/3993) by [@functionpointer](https://github.com/functionpointer)
- Dont fail workflows if lint building fails [esphome#4336](https://github.com/esphome/esphome/pull/4336) by [@jesserockz](https://github.com/jesserockz)
- Add MICS-4514 gas sensor [esphome#4316](https://github.com/esphome/esphome/pull/4316) by [@jesserockz](https://github.com/jesserockz) (new-integration)
- Refactor esp32_ble_tracker to use esp32_ble core ble setup code [esphome#4173](https://github.com/esphome/esphome/pull/4173) by [@jesserockz](https://github.com/jesserockz)
- Add next_url to improv serial component config [esphome#4343](https://github.com/esphome/esphome/pull/4343) by [@jesserockz](https://github.com/jesserockz) (new-integration)
- Remove state class from uptime sensor [esphome#4345](https://github.com/esphome/esphome/pull/4345) by [@jesserockz](https://github.com/jesserockz)
- Fix esp32_ble_tracker setup priority [esphome#4346](https://github.com/esphome/esphome/pull/4346) by [@jesserockz](https://github.com/jesserockz)
- Fix in ble client base address parsing [esphome#4347](https://github.com/esphome/esphome/pull/4347) by [@jesserockz](https://github.com/jesserockz)
- Added support for ADS1015 [esphome#4281](https://github.com/esphome/esphome/pull/4281) by [@xvil](https://github.com/xvil)
- Fix "BLE server / advertising always on" [esphome#4353](https://github.com/esphome/esphome/pull/4353) by [@Mat931](https://github.com/Mat931)
- Dump full parsed config to json-config api call [esphome#4373](https://github.com/esphome/esphome/pull/4373) by [@jesserockz](https://github.com/jesserockz)
- Fix pressure compensation in SCD4X [esphome#4357](https://github.com/esphome/esphome/pull/4357) by [@CarlosGS](https://github.com/CarlosGS)
- Allow mdns services to be exposed by config [esphome#4202](https://github.com/esphome/esphome/pull/4202) by [@elupus](https://github.com/elupus)
- Allow final validate of uart stop bits and parity [esphome#4376](https://github.com/esphome/esphome/pull/4376) by [@jesserockz](https://github.com/jesserockz)
- Update sim800l.cpp [esphome#4223](https://github.com/esphome/esphome/pull/4223) by [@fbeek](https://github.com/fbeek)
- SCD30 Added support for manual calibration [esphome#4362](https://github.com/esphome/esphome/pull/4362) by [@ftrueck](https://github.com/ftrueck)
- Add Ld2410 Support [esphome#3919](https://github.com/esphome/esphome/pull/3919) by [@sebcaps](https://github.com/sebcaps) (new-integration)
- add Resol VBus support [esphome#3976](https://github.com/esphome/esphome/pull/3976) by [@ssieb](https://github.com/ssieb) (new-integration)
- Allow dashboard import to specify if api encryption key should be generated [esphome#4393](https://github.com/esphome/esphome/pull/4393) by [@jesserockz](https://github.com/jesserockz)
- modify SGP4X integration to report device_class as air quality index [esphome#4327](https://github.com/esphome/esphome/pull/4327) by [@alexd321](https://github.com/alexd321)
- Remove unneeded validation for esp32 gpio pins [esphome#4394](https://github.com/esphome/esphome/pull/4394) by [@jesserockz](https://github.com/jesserockz)
- Fix shelly dimmer current sensor device class [esphome#4385](https://github.com/esphome/esphome/pull/4385) by [@trvrnrth](https://github.com/trvrnrth)
- Added Ethernet Component for ESP IDF with JL1101 PHY driver [esphome#4009](https://github.com/esphome/esphome/pull/4009) by [@mobrembski](https://github.com/mobrembski)
- adds gpio INPUT_OUTPUT_OPEN_DRAIN [esphome#4360](https://github.com/esphome/esphome/pull/4360) by [@tomaszduda23](https://github.com/tomaszduda23)
- Merge components in packages [esphome#3555](https://github.com/esphome/esphome/pull/3555) by [@quentinmit](https://github.com/quentinmit)
- Update ld2410 logging [esphome#4395](https://github.com/esphome/esphome/pull/4395) by [@jesserockz](https://github.com/jesserockz)
- Update log for mics4514 to state 3 minute start time. [esphome#4396](https://github.com/esphome/esphome/pull/4396) by [@jesserockz](https://github.com/jesserockz)
- mDNS updates [esphome#4399](https://github.com/esphome/esphome/pull/4399) by [@jesserockz](https://github.com/jesserockz)
- Dont keep logging on improv start [esphome#4401](https://github.com/esphome/esphome/pull/4401) by [@jesserockz](https://github.com/jesserockz)
- Add support for Lippert LP sensors in mopeka_pro_check component [esphome#4118](https://github.com/esphome/esphome/pull/4118) by [@rperciaccante](https://github.com/rperciaccante)
- climate: add support for quiet fan mode [esphome#3609](https://github.com/esphome/esphome/pull/3609) by [@MichaelMure](https://github.com/MichaelMure)
- add MQTT preset support for Climate components [esphome#4379](https://github.com/esphome/esphome/pull/4379) by [@jmichiel](https://github.com/jmichiel)
- Added CanalSat and CanalSatLD protocol support [esphome#3513](https://github.com/esphome/esphome/pull/3513) by [@Emrvb](https://github.com/Emrvb)
- Remove unused manifest handler [esphome#4169](https://github.com/esphome/esphome/pull/4169) by [@balloob](https://github.com/balloob)
- Use the github-script action to call the workflow [esphome#4400](https://github.com/esphome/esphome/pull/4400) by [@jesserockz](https://github.com/jesserockz)
- Convert secrets constant to a tuple [esphome#4245](https://github.com/esphome/esphome/pull/4245) by [@balloob](https://github.com/balloob)
- Verify rel_path output is relative [esphome#4247](https://github.com/esphome/esphome/pull/4247) by [@balloob](https://github.com/balloob)
- Bump curl version in docker [esphome#4403](https://github.com/esphome/esphome/pull/4403) by [@jesserockz](https://github.com/jesserockz)
- Fix release workflow [esphome#4405](https://github.com/esphome/esphome/pull/4405) by [@jesserockz](https://github.com/jesserockz)
- Climate PID Autotune Logging fixes [esphome#4136](https://github.com/esphome/esphome/pull/4136) by [@patrickcollins12](https://github.com/patrickcollins12)
- Add Clipping to displaybuffer [esphome#4271](https://github.com/esphome/esphome/pull/4271) by [@nielsnl68](https://github.com/nielsnl68)
- Fix check for empty clipping array [esphome#4421](https://github.com/esphome/esphome/pull/4421) by [@nielsnl68](https://github.com/nielsnl68)
- Ledc fix [esphome#4338](https://github.com/esphome/esphome/pull/4338) by [@xvil](https://github.com/xvil)
- Add version api endpoint [esphome#4429](https://github.com/esphome/esphome/pull/4429) by [@jesserockz](https://github.com/jesserockz)
- Handle uart.write in json-config endpoint [esphome#4430](https://github.com/esphome/esphome/pull/4430) by [@jesserockz](https://github.com/jesserockz)
- Bump esphome-dashboard to 20230214.0 [esphome#4431](https://github.com/esphome/esphome/pull/4431) by [@jesserockz](https://github.com/jesserockz)
- Fix setting wrong traits on midea climate component [esphome#4425](https://github.com/esphome/esphome/pull/4425) by [@dudanov](https://github.com/dudanov)

View File

@@ -1,35 +1,38 @@
---
url: https://esphome.io/
arch:
- amd64
- armv7
- aarch64
auth_api: true
backup_exclude:
- '*/*/'
description: ESPHome add-on for intelligently managing all your ESP8266/ESP32 devices
hassio_api: true
auth_api: true
host_network: true
image: ghcr.io/esphome/esphome-hassio-{arch}
ingress: true
ingress_port: 0
panel_icon: mdi:chip
uart: true
ports:
6052/tcp: null
map:
- ssl:ro
- config:rw
name: ESPHome
panel_icon: mdi:chip
ports:
6052/tcp: null
ports_description:
6052/tcp: Web interface (not required for Home Assistant ingress)
discovery:
- esphome
schema:
certfile: str?
keyfile: str?
leave_front_door_open: bool?
relative_url: str?
ssl: bool?
status_use_ping: bool?
streamer_mode: bool?
home_assistant_dashboard_integration: bool?
default_compile_process_limit: int(1,)?
ssl: bool?
certfile: str?
keyfile: str?
relative_url: str?
leave_front_door_open: bool?
backup_exclude:
- '*/*/'
init: false
name: ESPHome
version: 2023.2.0
slug: esphome
uart: true
url: https://esphome.io/
version: 2022.9.3
description: ESPHome add-on for intelligently managing all your ESP8266/ESP32 devices
image: ghcr.io/esphome/esphome-hassio

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -0,0 +1,67 @@
---
configuration:
certfile:
name: Certificate file
description: >-
The certificate file to use for SSL. Note that this file must
exist in the /ssl/ folder.
default_compile_process_limit:
name: Default compile process limit
description: >-
The default compile process limit. This is the maximum number of
simultaneous compile processes that ESPHome will run.
esphome_fork:
name: Install ESPHome from a fork or branch
description: >-
For example to test a pull request, use `pull/XXXX/head` where `XXXX` is
the PR number, or you can specify the username of the fork owner and
branch `username:branch` which assumes the repository is named `esphome`
still.
If you need to test the latest commit on dev branch before the image is
updated you can enter `dev` here.
Please note that the fork or branch you are using **must** be up to
date with ESPHome dev or the add-on **will not start**.
home_assistant_dashboard_integration:
name: Home Assistant Dashboard Integration
description: >-
Enables/Disables the ESPHome dashboard integrating with Home Assistant
for automatic configuration of devices and device updates. If you use
multiple version of the ESPHome add-on, make sure it is enabled on a
single add-on only.
keyfile:
name: Private key file
description: >-
The private key file to use for SSL. Note that this file must
exist in the /ssl/ folder.
leave_front_door_open:
name: Disable external authentication
description: >-
Disables external authentication when having opened the add-on
on an external port. **WARNING**: This is a security risk!
relative_url:
name: Relative URL
description: >-
Host the ESPHome dashboard under a relative URL, so that it can be
integrated into existing web proxies like NGINX under a relative URL.
Defaults to `/`.
ssl:
name: SSL
description: >-
Enables/Disables SSL (HTTPS) on the web interface.
status_use_ping:
name: Use ping for status
description: >-
By default the dashboard uses mDNS to check if nodes are online. This does
not work across subnets unless your router supports mDNS forwarding
or avahi. Enabling this option will use ICMP ping to check if nodes are
online.
streamer_mode:
name: Streamer mode
description: >-
Enables/Disables streamer mode, which makes ESPHome hide all
potentially private information. So for example WiFi (B)SSIDs (which could
be used to find your location), usernames, etc.
network:
6052/tcp: Web interface (to use without Home Assistant)

View File

@@ -35,7 +35,7 @@ def main(args):
dir_ = root / conf.pop("directory")
path = dir_ / "config.yaml"
with open(path, "w") as f:
yaml.dump(conf, f, indent=2, sort_keys=True, explicit_start=True)
yaml.dump(conf, f, indent=2, sort_keys=False, explicit_start=True)
for file_, conf_ in copyf.items():
if Path.exists(templ / channel.value / file_):
@@ -51,7 +51,7 @@ def main(args):
path = dir_ / "build.yaml"
build_conf = {
"build_from": {
arch: base_image.format(arch=arch) for arch in conf["arch"]
arch: base_image for arch in conf["arch"]
}
}
with open(path, "w") as f:

View File

@@ -21,21 +21,25 @@ base: &base
uart: true
ports:
'6052/tcp': null
ports_description:
'6052/tcp': "Web interface (not required for Home Assistant ingress)"
map:
- ssl:ro
- config:rw
discovery:
- esphome
schema:
status_use_ping: bool?
streamer_mode: bool?
home_assistant_dashboard_integration: bool?
default_compile_process_limit: int(1,)?
ssl: bool?
certfile: str?
keyfile: str?
leave_front_door_open: bool?
streamer_mode: bool?
relative_url: str?
status_use_ping: bool?
leave_front_door_open: bool?
backup_exclude:
- "*/*/"
# Disable docker init for s6
init: false
esphome-dev:
<<: *base
@@ -48,40 +52,47 @@ esphome-dev:
stage: experimental
advanced: true
schema:
status_use_ping: bool?
streamer_mode: bool?
home_assistant_dashboard_integration: bool?
default_compile_process_limit: int(1,)?
esphome_fork: str?
ssl: bool?
certfile: str?
keyfile: str?
leave_front_door_open: bool?
streamer_mode: bool?
relative_url: str?
status_use_ping: bool?
esphome_fork: str?
base_image: ghcr.io/esphome/esphome-hassio-{arch}:dev
leave_front_door_open: bool?
base_image: ghcr.io/esphome/esphome-hassio:dev
options:
home_assistant_dashboard_integration: false
esphome-beta:
<<: *base
directory: esphome-beta
name: ESPHome (beta)
version: '2022.9.3' # BETA
version: '2023.2.0' # BETA
slug: esphome-beta
description: "Beta version of ESPHome add-on"
url: https://beta.esphome.io/
image: ghcr.io/esphome/esphome-hassio-{arch}
image: ghcr.io/esphome/esphome-hassio
stage: experimental
advanced: true
options:
home_assistant_dashboard_integration: false
esphome-stable:
<<: *base
directory: esphome
name: ESPHome
version: '2022.9.3' # STABLE
version: '2023.2.0' # STABLE
slug: esphome
description: "ESPHome add-on for intelligently managing all your ESP8266/ESP32 devices"
image: ghcr.io/esphome/esphome-hassio-{arch}
image: ghcr.io/esphome/esphome-hassio
copy_files:
CHANGELOG.md:
DOCS.md:
icon.png:
logo.png:
README.md:
DOCS.md:
CHANGELOG.md:
translations/en.yaml:

View File

@@ -1,40 +1,31 @@
# Home Assistant Community Add-on: ESPHome
# ESPHome DEV add on
## Installation
This is **development** version of the ESPHome add on.
The installation of this add-on is pretty straightforward and not different in comparison to installing any other Home Assistant add-on.
To deploy production nodes please use mainstream release add on.
1. Search for the “ESPHome” add-on in the Supervisor add-on store.
2. Press install to download the add-on and unpack it on your machine. This can take some time.
3. Optional: If you're using SSL/TLS certificates and want to encrypt your communication to this add-on, please enter `true` into the `ssl` field and set the `fullchain` and `certfile` options accordingly.
4. Start the add-on, check the logs of the add-on to see if everything went well.
5. Click "OPEN WEB UI" to open the ESPHome dashboard. You will be asked for your Home Assistant credentials - ESPHome uses Home Assistant's authentication system to log you in.
You can view the ESPHome documentation at https://esphome.io/
The add on uses a version of ESPHome built automatically every day at 02:00 UTC. and is used to test components in development. See the `esphome_fork` configuration below to properly configure the add on. Once you update the configuration make sure to rebuild the image.
## Configuration
**Note**: _Remember to restart the add-on when the configuration is changed._
Example add-on configuration:
```json
{
"ssl": false,
"certfile": "fullchain.pem",
"keyfile": "privkey.pem"
}
```
### Option: `esphome_fork`
Install ESPHome from a fork or branch.
For example to test a pull request, use `pull/XXXX/head` where `XXXX` is the PR number,
or you can specify the username of the fork owner and branch `username:branch` which
assumes the repository is named `esphome` still.
assumes the repository is named `esphome` still.
If you need to test the latest commit on dev branch before the image is updated you can enter `dev` here.
Please note that the fork or branch you are using **must** be up to date with ESPHome dev
or the add-on **will not start**.
or the add-on **will not start**.
## General ESPHome add on configurations
General options also available in other versions.
### Option: `ssl`

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -0,0 +1,67 @@
---
configuration:
certfile:
name: Certificate file
description: >-
The certificate file to use for SSL. Note that this file must
exist in the /ssl/ folder.
default_compile_process_limit:
name: Default compile process limit
description: >-
The default compile process limit. This is the maximum number of
simultaneous compile processes that ESPHome will run.
esphome_fork:
name: Install ESPHome from a fork or branch
description: >-
For example to test a pull request, use `pull/XXXX/head` where `XXXX` is
the PR number, or you can specify the username of the fork owner and
branch `username:branch` which assumes the repository is named `esphome`
still.
If you need to test the latest commit on dev branch before the image is
updated you can enter `dev` here.
Please note that the fork or branch you are using **must** be up to
date with ESPHome dev or the add-on **will not start**.
home_assistant_dashboard_integration:
name: Home Assistant Dashboard Integration
description: >-
Enables/Disables the ESPHome dashboard integrating with Home Assistant
for automatic configuration of devices and device updates. If you use
multiple version of the ESPHome add-on, make sure it is enabled on a
single add-on only.
keyfile:
name: Private key file
description: >-
The private key file to use for SSL. Note that this file must
exist in the /ssl/ folder.
leave_front_door_open:
name: Disable external authentication
description: >-
Disables external authentication when having opened the add-on
on an external port. **WARNING**: This is a security risk!
relative_url:
name: Relative URL
description: >-
Host the ESPHome dashboard under a relative URL, so that it can be
integrated into existing web proxies like NGINX under a relative URL.
Defaults to `/`.
ssl:
name: SSL
description: >-
Enables/Disables SSL (HTTPS) on the web interface.
status_use_ping:
name: Use ping for status
description: >-
By default the dashboard uses mDNS to check if nodes are online. This does
not work across subnets unless your router supports mDNS forwarding
or avahi. Enabling this option will use ICMP ping to check if nodes are
online.
streamer_mode:
name: Streamer mode
description: >-
Enables/Disables streamer mode, which makes ESPHome hide all
potentially private information. So for example WiFi (B)SSIDs (which could
be used to find your location), usernames, etc.
network:
6052/tcp: Web interface (to use without Home Assistant)