mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-18 14:56:53 +00:00
Merge branch 'current' into next
This commit is contained in:
commit
56df0c9e75
4
.github/workflows/test.yml
vendored
4
.github/workflows/test.yml
vendored
@ -8,7 +8,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out files from GitHub
|
||||
uses: actions/checkout@v4.2.0
|
||||
uses: actions/checkout@v4.2.1
|
||||
- name: Setting up Node.js
|
||||
uses: actions/setup-node@v4.0.4
|
||||
with:
|
||||
@ -25,7 +25,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out files from GitHub
|
||||
uses: actions/checkout@v4.2.0
|
||||
uses: actions/checkout@v4.2.1
|
||||
- name: Setting up Node.js
|
||||
uses: actions/setup-node@v4.0.4
|
||||
with:
|
||||
|
4
Gemfile
4
Gemfile
@ -10,8 +10,8 @@ group :development do
|
||||
gem 'stringex', '2.8.6'
|
||||
# > 2.1.0 causes slowdowns https://github.com/sass/sassc-ruby/issues/189
|
||||
gem 'sassc', '2.1.0'
|
||||
gem 'rubocop', '1.66.1'
|
||||
gem 'ruby-lsp', '0.19.0'
|
||||
gem 'rubocop', '1.67.0'
|
||||
gem 'ruby-lsp', '0.20.1'
|
||||
gem 'rackup', '2.1.0'
|
||||
end
|
||||
|
||||
|
23
Gemfile.lock
23
Gemfile.lock
@ -91,10 +91,10 @@ GEM
|
||||
racc
|
||||
pathutil (0.16.2)
|
||||
forwardable-extended (~> 2.6)
|
||||
prism (1.1.0)
|
||||
prism (1.2.0)
|
||||
public_suffix (6.0.1)
|
||||
racc (1.8.1)
|
||||
rack (3.1.7)
|
||||
rack (3.1.8)
|
||||
rack-protection (4.0.0)
|
||||
base64 (>= 0.1.0)
|
||||
rack (>= 3.0.0, < 4)
|
||||
@ -113,7 +113,7 @@ GEM
|
||||
regexp_parser (2.9.2)
|
||||
rexml (3.3.8)
|
||||
rouge (4.4.0)
|
||||
rubocop (1.66.1)
|
||||
rubocop (1.67.0)
|
||||
json (~> 2.3)
|
||||
language_server-protocol (>= 3.17.0)
|
||||
parallel (~> 1.10)
|
||||
@ -125,18 +125,19 @@ GEM
|
||||
unicode-display_width (>= 2.4.0, < 3.0)
|
||||
rubocop-ast (1.32.3)
|
||||
parser (>= 3.3.1.0)
|
||||
ruby-lsp (0.19.0)
|
||||
ruby-lsp (0.20.1)
|
||||
language_server-protocol (~> 3.17.0)
|
||||
prism (>= 1.1, < 2.0)
|
||||
prism (>= 1.2, < 2.0)
|
||||
rbs (>= 3, < 4)
|
||||
sorbet-runtime (>= 0.5.10782)
|
||||
ruby-progressbar (1.13.0)
|
||||
ruby2_keywords (0.0.5)
|
||||
safe_yaml (1.0.5)
|
||||
sass (3.4.25)
|
||||
sass-embedded (1.79.4)
|
||||
google-protobuf (~> 4.27)
|
||||
rake (>= 13)
|
||||
sass-embedded (1.80.2-arm64-darwin)
|
||||
google-protobuf (~> 4.28)
|
||||
sass-embedded (1.80.2-x86_64-linux-gnu)
|
||||
google-protobuf (~> 4.28)
|
||||
sass-globbing (1.1.5)
|
||||
sass (>= 3.1)
|
||||
sassc (2.1.0)
|
||||
@ -149,7 +150,7 @@ GEM
|
||||
rack-protection (= 4.0.0)
|
||||
rack-session (>= 2.0.0, < 3)
|
||||
tilt (~> 2.0)
|
||||
sorbet-runtime (0.5.11595)
|
||||
sorbet-runtime (0.5.11608)
|
||||
stringex (2.8.6)
|
||||
terminal-table (3.0.2)
|
||||
unicode-display_width (>= 1.1.1, < 3)
|
||||
@ -175,8 +176,8 @@ DEPENDENCIES
|
||||
nokogiri (= 1.16.7)
|
||||
rackup (= 2.1.0)
|
||||
rake (= 13.2.1)
|
||||
rubocop (= 1.66.1)
|
||||
ruby-lsp (= 0.19.0)
|
||||
rubocop (= 1.67.0)
|
||||
ruby-lsp (= 0.20.1)
|
||||
sass-globbing (= 1.1.5)
|
||||
sassc (= 2.1.0)
|
||||
sinatra (= 4.0.0)
|
||||
|
@ -108,8 +108,8 @@ social:
|
||||
# Home Assistant release details
|
||||
current_major_version: 2024
|
||||
current_minor_version: 10
|
||||
current_patch_version: 1
|
||||
date_released: 2024-10-04
|
||||
current_patch_version: 3
|
||||
date_released: 2024-10-18
|
||||
|
||||
# Either # or the anchor link to latest release notes in the blog post.
|
||||
# Must be prefixed with a # and have double quotes around it.
|
||||
|
216
package-lock.json
generated
216
package-lock.json
generated
@ -20,7 +20,7 @@
|
||||
"remark-lint-prohibited-strings": "^4.0.0",
|
||||
"remark-lint-unordered-list-marker-style": "^4.0.0",
|
||||
"remark-stringify": "^11.0.0",
|
||||
"textlint": "^14.2.0",
|
||||
"textlint": "^14.2.1",
|
||||
"textlint-filter-rule-comments": "^1.2.2",
|
||||
"textlint-rule-common-misspellings": "^1.0.1",
|
||||
"textlint-rule-terminology": "^5.0.13"
|
||||
@ -416,65 +416,65 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@textlint/ast-tester": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-14.2.0.tgz",
|
||||
"integrity": "sha512-k7HAVjv5hUFNWUeb1h+3yaoSnwhjKJ55FaFVlUPsW5qFRIAkWaZ0Xpo2IEAyGaa5jgulWe8vEX6ZTmvwi6bzUA==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-14.2.1.tgz",
|
||||
"integrity": "sha512-JQhZQToHYfHy/w/AyRg+03uxG53yp6OSbq7mpRhvgpwMk/N5GAtF+vLhfMAUAStJLXpq5xfFEvDNROZsgn2x7Q==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/ast-node-types": "^14.2.0",
|
||||
"@textlint/ast-node-types": "^14.2.1",
|
||||
"debug": "^4.3.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/ast-tester/node_modules/@textlint/ast-node-types": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.0.tgz",
|
||||
"integrity": "sha512-dOnBuqvsmiNkhHHp1ZaZed1uwvDpVNZWGvZlrckWaJpzsrTTNtxtd627MkMRCdGvIT3+RkfmV9OHqh51JfexRg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.1.tgz",
|
||||
"integrity": "sha512-UuYY1ADfU6Nvo3l9JQoJ6XWt1lohSyyvbFE96FVjkJDIwLxEyF8nPeoTNa/gJTmLCzimQfY0C+4jAYrPxVjt/A==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@textlint/ast-traverse": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-14.2.0.tgz",
|
||||
"integrity": "sha512-qmB+bbLTndlgIObMxoXhdE/t1o6JUQxgw1pzLEtd7rvZO7sNH4Agui1ddlWjaIczj+K40tm8jsfi/74NJtJ9fg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-14.2.1.tgz",
|
||||
"integrity": "sha512-MmYIRE3myWPgswJlq1Iu42o/Z9aKQkeHF7SS/toySc1iDpjS4lKTYcbzRoq+RD8Tjp35RCcxBIpufrrZrT7V0Q==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/ast-node-types": "^14.2.0"
|
||||
"@textlint/ast-node-types": "^14.2.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/ast-traverse/node_modules/@textlint/ast-node-types": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.0.tgz",
|
||||
"integrity": "sha512-dOnBuqvsmiNkhHHp1ZaZed1uwvDpVNZWGvZlrckWaJpzsrTTNtxtd627MkMRCdGvIT3+RkfmV9OHqh51JfexRg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.1.tgz",
|
||||
"integrity": "sha512-UuYY1ADfU6Nvo3l9JQoJ6XWt1lohSyyvbFE96FVjkJDIwLxEyF8nPeoTNa/gJTmLCzimQfY0C+4jAYrPxVjt/A==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@textlint/config-loader": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/config-loader/-/config-loader-14.2.0.tgz",
|
||||
"integrity": "sha512-LDIr0zykTVsIWz/q+NIiYXoF0Fqdl1X+JLGIAG6E2CTKJhsGW4naKvt2d9zWhCjSM7E9ZX6XAdvo16WDJALYlg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/config-loader/-/config-loader-14.2.1.tgz",
|
||||
"integrity": "sha512-QfrALRn6ObeuTuwAl/bEtI9ScU2dTYDd+w3lB6JAQL+baAk8vclXnzbzI9L3p+YhmhGxOSNohZV09qSkhDYHZg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/kernel": "^14.2.0",
|
||||
"@textlint/module-interop": "^14.2.0",
|
||||
"@textlint/types": "^14.2.0",
|
||||
"@textlint/utils": "^14.2.0",
|
||||
"@textlint/kernel": "^14.2.1",
|
||||
"@textlint/module-interop": "^14.2.1",
|
||||
"@textlint/types": "^14.2.1",
|
||||
"@textlint/utils": "^14.2.1",
|
||||
"debug": "^4.3.4",
|
||||
"rc-config-loader": "^4.1.3",
|
||||
"try-resolve": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/feature-flag": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-14.2.0.tgz",
|
||||
"integrity": "sha512-KjO4ACoKhA10XUi4Wp3dKixfEMFQAE+WLgCDEB5k+cAKPkwaFYjN5vezA1TGe+fSHcQiBjv268F0r3hmtsPf8Q==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-14.2.1.tgz",
|
||||
"integrity": "sha512-7fXZWh3UUH0LwPu2CWJOaSnYHVQojgQ/ulXQayMXf50x3/CGY/dqaBKpB+I/PW+60/pnKgUwJm9E/eHzwhVAqQ==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@textlint/fixer-formatter": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-14.2.0.tgz",
|
||||
"integrity": "sha512-Ji4Kq0hckDj1WranfNwnN87nUE4EldMyf7z2AEQ51vDSqLeYk+WCQo6/Gc+a+ytQt5s/QPyfcpiHItr75xHF8g==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-14.2.1.tgz",
|
||||
"integrity": "sha512-AquSEaP0m0ZGlCzOHwRiAmnruFAngjLL5g/ZzE2REQ2qwSnUuxEII5SsucqTgT37LXOKBXNpU1OSPlKwtF2aJw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/module-interop": "^14.2.0",
|
||||
"@textlint/types": "^14.2.0",
|
||||
"@textlint/module-interop": "^14.2.1",
|
||||
"@textlint/types": "^14.2.1",
|
||||
"chalk": "^4.1.2",
|
||||
"debug": "^4.3.4",
|
||||
"diff": "^5.2.0",
|
||||
@ -485,39 +485,39 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/kernel": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-14.2.0.tgz",
|
||||
"integrity": "sha512-QYF2ZGnkLhd+GYGWL2wpZNjK0ec8HqwGjAsmc49E0g5NKMDvX3U/TYGwjsM8g6WCxGVGS625wr0tm6UxIAK5+Q==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-14.2.1.tgz",
|
||||
"integrity": "sha512-PkCagYKlVLQvw9CBijJJ30Hmp9rk9oJJt9danoMhdR+v91SMQ7eeWk7HG8CqGbEnL0NehoOqgZV+O5Tfr8x38A==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/ast-node-types": "^14.2.0",
|
||||
"@textlint/ast-tester": "^14.2.0",
|
||||
"@textlint/ast-traverse": "^14.2.0",
|
||||
"@textlint/feature-flag": "^14.2.0",
|
||||
"@textlint/source-code-fixer": "^14.2.0",
|
||||
"@textlint/types": "^14.2.0",
|
||||
"@textlint/utils": "^14.2.0",
|
||||
"@textlint/ast-node-types": "^14.2.1",
|
||||
"@textlint/ast-tester": "^14.2.1",
|
||||
"@textlint/ast-traverse": "^14.2.1",
|
||||
"@textlint/feature-flag": "^14.2.1",
|
||||
"@textlint/source-code-fixer": "^14.2.1",
|
||||
"@textlint/types": "^14.2.1",
|
||||
"@textlint/utils": "^14.2.1",
|
||||
"debug": "^4.3.4",
|
||||
"fast-equals": "^4.0.3",
|
||||
"structured-source": "^4.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/kernel/node_modules/@textlint/ast-node-types": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.0.tgz",
|
||||
"integrity": "sha512-dOnBuqvsmiNkhHHp1ZaZed1uwvDpVNZWGvZlrckWaJpzsrTTNtxtd627MkMRCdGvIT3+RkfmV9OHqh51JfexRg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.1.tgz",
|
||||
"integrity": "sha512-UuYY1ADfU6Nvo3l9JQoJ6XWt1lohSyyvbFE96FVjkJDIwLxEyF8nPeoTNa/gJTmLCzimQfY0C+4jAYrPxVjt/A==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@textlint/linter-formatter": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-14.2.0.tgz",
|
||||
"integrity": "sha512-9+5n3UIhbKGNCvI5s0BJexHrWqw/TZQnUQLpvbL04SnJqwSH2xlUQfEwPAybPO1Tb9coUGHYlBZObRxy9tRwig==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-14.2.1.tgz",
|
||||
"integrity": "sha512-GHgNuQQAA/YyYeYcfF0JbFZZomrC0VtfldjKqCmTmPy7c89MTZPZFgyRbTKm1G8tUmxh4RuT1rkgwvX3IgT2VQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@azu/format-text": "^1.0.2",
|
||||
"@azu/style-format": "^1.0.1",
|
||||
"@textlint/module-interop": "^14.2.0",
|
||||
"@textlint/types": "^14.2.0",
|
||||
"@textlint/module-interop": "^14.2.1",
|
||||
"@textlint/types": "^14.2.1",
|
||||
"chalk": "^4.1.2",
|
||||
"debug": "^4.3.4",
|
||||
"js-yaml": "^3.14.1",
|
||||
@ -531,12 +531,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/markdown-to-ast": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-14.2.0.tgz",
|
||||
"integrity": "sha512-vDcj8fuo1ZJinLtDwMO8yh9hxWujDFQRJ/MDd4Y+vxGDJRnB0c9ZVPOOPlQjaumlVNI7CB1fDsz+jx8z6/d8iw==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-14.2.1.tgz",
|
||||
"integrity": "sha512-IbxuCiGg2dQMg+PlLrSIvryEAngdvydF1MztRII9AjJNOMKomzYmZaNVRaANlhuFLnOwJbunNg0MV1q7oXz+iw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/ast-node-types": "^14.2.0",
|
||||
"@textlint/ast-node-types": "^14.2.1",
|
||||
"debug": "^4.3.4",
|
||||
"mdast-util-gfm-autolink-literal": "^0.1.3",
|
||||
"neotraverse": "^0.6.15",
|
||||
@ -548,9 +548,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/markdown-to-ast/node_modules/@textlint/ast-node-types": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.0.tgz",
|
||||
"integrity": "sha512-dOnBuqvsmiNkhHHp1ZaZed1uwvDpVNZWGvZlrckWaJpzsrTTNtxtd627MkMRCdGvIT3+RkfmV9OHqh51JfexRg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.1.tgz",
|
||||
"integrity": "sha512-UuYY1ADfU6Nvo3l9JQoJ6XWt1lohSyyvbFE96FVjkJDIwLxEyF8nPeoTNa/gJTmLCzimQfY0C+4jAYrPxVjt/A==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@textlint/markdown-to-ast/node_modules/bail": {
|
||||
@ -780,73 +780,73 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/module-interop": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-14.2.0.tgz",
|
||||
"integrity": "sha512-1X3DfCwF3y07eVyK41K6As0L+Ekyn5lAh98hVoUNOGDJQtjRvM3aKZ8z0o0BtbCeH7nYTyExo31lUgURWuDWnQ==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-14.2.1.tgz",
|
||||
"integrity": "sha512-xMkUYUDnP6le/s3oHyoAX6pvIESDlz7l+vUyDwQjKxnZwawdaO3K8aZIXkXDh4VNiBx9erFhsFoePm714VsPtA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@textlint/source-code-fixer": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-14.2.0.tgz",
|
||||
"integrity": "sha512-xMFtpwcs5Z1WTiFBmLN2Fe2GQg3u0kEZgF42AvFHKphbmToKYlGUMw1jaMsEXaxrTOTjqwj3SycRR7rrgKgOxg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-14.2.1.tgz",
|
||||
"integrity": "sha512-5VI+BLieZOrXVrqCkEIbvGu73gkKw52Ns8J1OPNqaCpbnmiKmKcRzBsbMxzwD4Pa7M0l4yhUzyd15/7i7hzmAg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/types": "^14.2.0",
|
||||
"@textlint/types": "^14.2.1",
|
||||
"debug": "^4.3.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/text-to-ast": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-14.2.0.tgz",
|
||||
"integrity": "sha512-i71ksLnlkb6epmeOiRv/xiHHLBWOtCx3gUBiTr8YC/9xbdhzBehFblJ6IjeikIJYPTfpzDECRmDqDNq7Cvos3Q==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-14.2.1.tgz",
|
||||
"integrity": "sha512-SHZIroDA1Gabhfj/GEatuP3x7CeD0I2xqWaJTaXkmuAgj6ckrjF9130zTgRCmOgm174FDr//H1MO6nc30ly2sA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/ast-node-types": "^14.2.0"
|
||||
"@textlint/ast-node-types": "^14.2.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/text-to-ast/node_modules/@textlint/ast-node-types": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.0.tgz",
|
||||
"integrity": "sha512-dOnBuqvsmiNkhHHp1ZaZed1uwvDpVNZWGvZlrckWaJpzsrTTNtxtd627MkMRCdGvIT3+RkfmV9OHqh51JfexRg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.1.tgz",
|
||||
"integrity": "sha512-UuYY1ADfU6Nvo3l9JQoJ6XWt1lohSyyvbFE96FVjkJDIwLxEyF8nPeoTNa/gJTmLCzimQfY0C+4jAYrPxVjt/A==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@textlint/textlint-plugin-markdown": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-14.2.0.tgz",
|
||||
"integrity": "sha512-TDd132D816R5q+/ZDfxe15Cxua6RNegkQzPv0iaZZKob6t8lhMND6lUHfbXEEGHCtyignxZUXQXZGZcjKtWL4A==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-14.2.1.tgz",
|
||||
"integrity": "sha512-14ZKJ9xsmTM9fr7S+ybisnhfNwL9CH/qcIU4/yjoP73RL1MMX4ddb/THGDBVt5O/wm4kzSUFP0CiNtDVxFfskQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/markdown-to-ast": "^14.2.0"
|
||||
"@textlint/markdown-to-ast": "^14.2.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/textlint-plugin-text": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-14.2.0.tgz",
|
||||
"integrity": "sha512-5E39BWG9T5c0XOz5Vxdffa17FDwu9Woud29bYyq3OQ+JjwMQXSz3JPQ1MTNsJbqn0R58+ZKXfaWEZ/Gsoau5UA==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-14.2.1.tgz",
|
||||
"integrity": "sha512-9rKR6zFfcO80cOhgUbWtcGTETe35osoyxdV5wuwf2xQLy4KTr9p1X9Jox6NjfLq6OSnOKAsiM/s31QlT6Mczlg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/text-to-ast": "^14.2.0"
|
||||
"@textlint/text-to-ast": "^14.2.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/types": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/types/-/types-14.2.0.tgz",
|
||||
"integrity": "sha512-lK8HCnkNg+spOHVw1HX0AvwP1BZVlJsbL4OLIHnwfvakfUxLQFXtJ6x2asAXMNMQGqwSWKQrLBCmWZWVsDtReg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/types/-/types-14.2.1.tgz",
|
||||
"integrity": "sha512-SaJsPYn7mXbInU77wbvsW277hLwmyijCS6Gld3VjBxXBYpJb9fzDliKHt1GYTYNRMtI/jQudwl13Clyt3nju5w==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/ast-node-types": "^14.2.0"
|
||||
"@textlint/ast-node-types": "^14.2.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@textlint/types/node_modules/@textlint/ast-node-types": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.0.tgz",
|
||||
"integrity": "sha512-dOnBuqvsmiNkhHHp1ZaZed1uwvDpVNZWGvZlrckWaJpzsrTTNtxtd627MkMRCdGvIT3+RkfmV9OHqh51JfexRg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.1.tgz",
|
||||
"integrity": "sha512-UuYY1ADfU6Nvo3l9JQoJ6XWt1lohSyyvbFE96FVjkJDIwLxEyF8nPeoTNa/gJTmLCzimQfY0C+4jAYrPxVjt/A==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@textlint/utils": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-14.2.0.tgz",
|
||||
"integrity": "sha512-eXRygFRC1CK+BHRqIe2RRFiC8VJMpV7NwsLdBKsFMcivgNRgL6hkhhbrMI6MbPg+jdWM+nK5Z9+QpPYL9c9/pg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-14.2.1.tgz",
|
||||
"integrity": "sha512-I8rV2jJfiVSP8EtpVSXCqISqyRPwx3GdZIIXehWn5k86cnBMt5RkPI4lvxZEbLECHsUkhQx11rC2tkOpabgUTA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@types/concat-stream": {
|
||||
@ -1418,9 +1418,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/fast-uri": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz",
|
||||
"integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==",
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.2.tgz",
|
||||
"integrity": "sha512-GR6f0hD7XXyNJa25Tb9BuIdN0tdr+0BMi6/CJPH3wJO1JjNG3n/VsSw38AwRdKZABm8lGbPfakLRkYzx2V9row==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/fault": {
|
||||
@ -6030,23 +6030,23 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/textlint": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/textlint/-/textlint-14.2.0.tgz",
|
||||
"integrity": "sha512-f3vT1mwpHuP2IWNG7AiE7n4nRKiOI/4Rxz7wQSv6KWaCgigcwi9x4JCMWKn1gpEvC/bssKW1/G0XxzHvKybCKg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/textlint/-/textlint-14.2.1.tgz",
|
||||
"integrity": "sha512-dqzQ/VKQeofwCbVgpzoE1sRUQkIU4zquNFbvtBQpUbS121w8hB51BtomCKbB42V86kDHONQYlPz4nocdaZh7ww==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@textlint/ast-node-types": "^14.2.0",
|
||||
"@textlint/ast-traverse": "^14.2.0",
|
||||
"@textlint/config-loader": "^14.2.0",
|
||||
"@textlint/feature-flag": "^14.2.0",
|
||||
"@textlint/fixer-formatter": "^14.2.0",
|
||||
"@textlint/kernel": "^14.2.0",
|
||||
"@textlint/linter-formatter": "^14.2.0",
|
||||
"@textlint/module-interop": "^14.2.0",
|
||||
"@textlint/textlint-plugin-markdown": "^14.2.0",
|
||||
"@textlint/textlint-plugin-text": "^14.2.0",
|
||||
"@textlint/types": "^14.2.0",
|
||||
"@textlint/utils": "^14.2.0",
|
||||
"@textlint/ast-node-types": "^14.2.1",
|
||||
"@textlint/ast-traverse": "^14.2.1",
|
||||
"@textlint/config-loader": "^14.2.1",
|
||||
"@textlint/feature-flag": "^14.2.1",
|
||||
"@textlint/fixer-formatter": "^14.2.1",
|
||||
"@textlint/kernel": "^14.2.1",
|
||||
"@textlint/linter-formatter": "^14.2.1",
|
||||
"@textlint/module-interop": "^14.2.1",
|
||||
"@textlint/textlint-plugin-markdown": "^14.2.1",
|
||||
"@textlint/textlint-plugin-text": "^14.2.1",
|
||||
"@textlint/types": "^14.2.1",
|
||||
"@textlint/utils": "^14.2.1",
|
||||
"debug": "^4.3.4",
|
||||
"file-entry-cache": "^5.0.1",
|
||||
"get-stdin": "^5.0.1",
|
||||
@ -6172,9 +6172,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/textlint/node_modules/@textlint/ast-node-types": {
|
||||
"version": "14.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.0.tgz",
|
||||
"integrity": "sha512-dOnBuqvsmiNkhHHp1ZaZed1uwvDpVNZWGvZlrckWaJpzsrTTNtxtd627MkMRCdGvIT3+RkfmV9OHqh51JfexRg==",
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.2.1.tgz",
|
||||
"integrity": "sha512-UuYY1ADfU6Nvo3l9JQoJ6XWt1lohSyyvbFE96FVjkJDIwLxEyF8nPeoTNa/gJTmLCzimQfY0C+4jAYrPxVjt/A==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/textlint/node_modules/brace-expansion": {
|
||||
|
@ -15,7 +15,7 @@
|
||||
"remark-lint-prohibited-strings": "^4.0.0",
|
||||
"remark-lint-unordered-list-marker-style": "^4.0.0",
|
||||
"remark-stringify": "^11.0.0",
|
||||
"textlint": "^14.2.0",
|
||||
"textlint": "^14.2.1",
|
||||
"textlint-filter-rule-comments": "^1.2.2",
|
||||
"textlint-rule-common-misspellings": "^1.0.1",
|
||||
"textlint-rule-terminology": "^5.0.13"
|
||||
|
@ -861,7 +861,6 @@ a.material-card:hover {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
h1:hover a.title-link,
|
||||
h2:hover a.title-link,
|
||||
h3:hover a.title-link,
|
||||
@ -1360,9 +1359,14 @@ a.my {
|
||||
}
|
||||
}
|
||||
|
||||
// Prevent headings from disappearing behind the site header when linked to
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
:target {
|
||||
display: block;
|
||||
position: relative;
|
||||
position: absolute;
|
||||
top: -100px;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
@ -95,7 +95,7 @@ state_filter:
|
||||
|
||||
## Conditions options
|
||||
|
||||
You can specify multiple `conditions`, in which case the entity will be displayed if it matches any condition.
|
||||
You can specify multiple `conditions`, in which case the entity will be displayed if it matches every condition.
|
||||
|
||||
### State
|
||||
|
||||
|
@ -23,7 +23,7 @@ heading: Living room
|
||||
icon: mdi:sofa
|
||||
badges:
|
||||
- type: entity
|
||||
entity_id: sensor.living_room_sensor_temperature
|
||||
entity: sensor.living_room_sensor_temperature
|
||||
color: red
|
||||
- type: entity
|
||||
entity: sensor.living_room_sensor_humidity
|
||||
|
@ -20,7 +20,7 @@ Madelena Mak:
|
||||
|
||||
Guy Sie:
|
||||
name: Guy Sie
|
||||
github: GuySie
|
||||
github: guysie
|
||||
|
||||
Gordon Cameron:
|
||||
name: Gordon Cameron
|
||||
@ -77,3 +77,11 @@ Zac West:
|
||||
Klaas Schoute:
|
||||
name: Klaas Schoute
|
||||
github: klaasnicolaas
|
||||
|
||||
Joakim Sørensen:
|
||||
name: Joakim Sørensen
|
||||
github: ludeeus
|
||||
|
||||
Andy Gill:
|
||||
name: Andy Gill
|
||||
github: ncandyg
|
@ -8,7 +8,7 @@
|
||||
{% if author %}
|
||||
{% assign person = site.data.people[author] %}
|
||||
{% if person %}
|
||||
<span class="byline author vcard"
|
||||
<span class="byline author vcard">
|
||||
<a href="https://github.com/{{ person.github }}" target="_blank"><img class="author-avatar" src="https://avatars.githubusercontent.com/{{ person.github }}?size=64" alt="{{ person.name }}"/> {{ person.name }}</a>
|
||||
</span>
|
||||
{% else %}
|
||||
|
@ -250,7 +250,7 @@ retain:
|
||||
type: boolean
|
||||
default: false
|
||||
state_topic:
|
||||
description: The MQTT topic subscribed to receive state updates. A "None" payload resets to an `unknown` state. An empty payload is ignored.
|
||||
description: "The MQTT topic subscribed to receive state updates. A \"None\" payload resets to an `unknown` state. An empty payload is ignored. Valid state payloads are: `armed_away`, `armed_custom_bypass`, `armed_home`, `armed_night`, `armed_vacation`, `arming`, `disarmed`, `disarming` `pending` and `triggered`."
|
||||
required: true
|
||||
type: string
|
||||
supported_features:
|
||||
|
@ -30,8 +30,9 @@ generate both, simply utilize the profile section of
|
||||
## Local API Option
|
||||
|
||||
This integration communicates with Ambient Weather PWS units via the Ambient Weather
|
||||
Cloud. Users desiring a local option are encouraged to explore the
|
||||
[Ecowitt](https://www.ecowitt.com) family of devices, which are able to read RF signals
|
||||
directly from the PWS and transmit them to a variety of other applications, including
|
||||
[`ecowitt2mqtt`](https://github.com/bachya/ecowitt2mqtt) (which supports
|
||||
[MQTT Discovery](/integrations/mqtt/#mqtt-discovery)), or the built-in [Ecowitt](/integrations/ecowitt/) integration.
|
||||
Cloud. Users desiring a local option can utilize
|
||||
[`ecowitt2mqtt`](https://github.com/bachya/ecowitt2mqtt#input-data-formats)
|
||||
in `ambient_weather` mode, (which supports [MQTT Discovery](/integrations/mqtt/#mqtt-discovery)).
|
||||
|
||||
Another option is to explore the [Ecowitt](https://www.ecowitt.com) family of devices,
|
||||
which support the built-in [Ecowitt](/integrations/ecowitt/) integration.
|
||||
|
@ -198,7 +198,7 @@ qos:
|
||||
type: integer
|
||||
default: 0
|
||||
state_topic:
|
||||
description: The MQTT topic subscribed to receive sensor's state.
|
||||
description: The MQTT topic subscribed to receive sensor's state. Valid states are `OFF` and `ON`. Custom `OFF` and `ON` values can be set with the `payload_off` and `payload_on` config options.
|
||||
required: true
|
||||
type: string
|
||||
unique_id:
|
||||
|
@ -1,91 +0,0 @@
|
||||
---
|
||||
title: "RFLink binary sensor"
|
||||
description: "Instructions on how to integrate RFLink binary sensors into Home Assistant."
|
||||
ha_category:
|
||||
- Binary sensor
|
||||
ha_iot_class: Local Push
|
||||
ha_release: 0.81
|
||||
ha_domain: rflink
|
||||
---
|
||||
|
||||
The `rflink` integration supports devices that use [RFLink gateway firmware](https://www.rflink.nl/download.php), for example the [Nodo RFLink Gateway](https://www.nodo-shop.nl/21-rflink-). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
|
||||
First, you have to set up your [RFLink hub](/integrations/rflink/).
|
||||
|
||||
The RFLink integration does not know the difference between a `binary_sensor`, a `switch` and a `light`. Therefore all switchable devices are automatically added as `light` by default.
|
||||
|
||||
RFLink binary_sensor/switch/light ID's are composed of: protocol, id, switch/channel. For example: `newkaku_0000c6c2_1`.
|
||||
|
||||
Once the ID of a binary sensor is known, it can be used to configure it as a binary sensor type in Home Assistant, for example, to hide it or configure a nice name.
|
||||
|
||||
Configuring a device as a binary sensor:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
binary_sensor:
|
||||
- platform: rflink
|
||||
devices:
|
||||
pt2262_00174754_0: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
devices:
|
||||
description: A list of binary sensors.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink ID's this device is known by.
|
||||
required: false
|
||||
type: list
|
||||
device_class:
|
||||
description: Sets the [class of the device](/integrations/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
off_delay:
|
||||
description: For sensors that only sends 'On' state updates, this variable sets a delay after which the sensor state will be updated back to 'Off'.
|
||||
required: false
|
||||
type: integer
|
||||
force_update:
|
||||
description: Sends update events even if the value has not changed. Useful for sensors that only sends `On`.
|
||||
required: false
|
||||
type: boolean
|
||||
default: false
|
||||
{% endconfiguration %}
|
||||
|
||||
### Sensor state
|
||||
|
||||
Initially, the state of a binary sensor is unknown. When a sensor update is received, the state is known and will be shown in the frontend.
|
||||
|
||||
### Device support
|
||||
|
||||
See [device support](/integrations/rflink/#device-support)
|
||||
|
||||
### Additional configuration examples
|
||||
|
||||
Multiple sensors with custom name and device class and set off_delay
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
binary_sensor:
|
||||
- platform: rflink
|
||||
devices:
|
||||
pt2262_00174754_0:
|
||||
name: PIR Entrance
|
||||
device_class: motion
|
||||
off_delay: 5
|
||||
pt2262_00174758_0:
|
||||
name: PIR Living Room
|
||||
device_class: motion
|
||||
off_delay: 5
|
||||
```
|
@ -1,372 +0,0 @@
|
||||
---
|
||||
title: "Xiaomi binary sensor"
|
||||
description: "Instructions on how to setup the Xiaomi binary sensors within Home Assistant."
|
||||
ha_category:
|
||||
- Binary sensor
|
||||
ha_release: "0.50"
|
||||
ha_iot_class: Local Push
|
||||
ha_domain: xiaomi_aqara
|
||||
---
|
||||
|
||||
The `xiaomi aqara` binary sensor platform allows you to get data from your [Xiaomi](https://www.mi.com/en/) binary sensors.
|
||||
|
||||
The requirement is that you have setup the [`xiaomi aqara` integration](/integrations/xiaomi_aqara/).
|
||||
|
||||
### Type of sensors supported
|
||||
|
||||
| Name | Zigbee entity | Model no. | States | Event | Event key | Event values |
|
||||
| ---- | ------------- | --------- | ------ | ----- | --------- | ------------ |
|
||||
| Motion Sensor (1st gen) | motion | RTCGQ01LM | on, off | `xiaomi_aqara.motion` | | |
|
||||
| Motion Sensor (2nd gen) | sensor_motion.aq2 | RTCGQ11LM | on, off | `xiaomi_aqara.motion` | | |
|
||||
| Xiaomi Door and Window Sensor (1st gen) | magnet | MCCGQ01LM | on, off | | | |
|
||||
| Aqara Door and Window Sensor (2nd gen) | sensor_magnet.aq2 | MCCGQ11LM | on, off | | | |
|
||||
| Smoke Detector | smoke | JTYJ-GD-01LM/BW | on, off | | | |
|
||||
| Gas Leak Detector | natgas | JTQJ-BF-01LM/BW | on, off | | | |
|
||||
| Water Leak Sensor | sensor_wleak.aq1 | SJCGQ11LM | on, off | | | |
|
||||
| Button (1st gen) | switch | WXKG01LM | on (through long_click_press), off | `xiaomi_aqara.click`| `click_type`| `long_click_press`, `hold`, `single`, `double` |
|
||||
| Button (2nd gen) | sensor_switch.aq2, remote.b1acn01 | WXKG11LM | on (through long_click_press), off | `xiaomi_aqara.click` | `click_type` | `single`, `double`, `long_click_press`, `hold` |
|
||||
| Button (2nd gen, model b) | sensor_switch.aq3 | WXKG12LM | off (always) | `xiaomi_aqara.click` | `click_type` | `single`, `double`, `long_click_press`, `shake` |
|
||||
| Aqara Wireless Switch (Single) | 86sw1 | WXKG03LM | off (always) | `xiaomi_aqara.click` | `click_type` | `single` |
|
||||
| Aqara Wireless Switch (Double) | 86sw2 | WXKG02LM | off (always) | `xiaomi_aqara.click` | `click_type` | `single`, `both` |
|
||||
| Aqara Wireless Switch (Single) (2nd gen) | remote.b186acn01 | WXKG03LM | off (always) | `xiaomi_aqara.click` | `click_type` | `single`, `double`, `long` |
|
||||
| Aqara Wireless Switch (Double) (2nd gen) | remote.b286acn01 | WXKG02LM | off (always) | `xiaomi_aqara.click` | `click_type` | `single`, `double`, `long`, `both`, `double_both`, `long_both` |
|
||||
| Cube | cube | MFKZQ01LM | off (always) | `xiaomi_aqara.cube_action` | `action_type`, `action_value` (rotate) | `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swing`, `alert`, `free_fall`, `rotate` (degrees at action_value) |
|
||||
| Vibration Sensor | vibration | DJT11LM | off (always) | `xiaomi_aqara.movement` | `movement_type` | `vibrate`, `tilt`, `free_fall` |
|
||||
|
||||
### Automation examples
|
||||
|
||||
#### Motion
|
||||
|
||||
```yaml
|
||||
- alias: "If there is motion and it's dark turn on the gateway light"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.motion_sensor_158d000xxxxxc2
|
||||
from: "off"
|
||||
to: "on"
|
||||
conditions:
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.illumination_34ce00xxxx11
|
||||
below: 300
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_34ce00xxxx11
|
||||
data:
|
||||
brightness: 5
|
||||
- action: automation.turn_on
|
||||
target:
|
||||
entity_id: automation.MOTION_OFF
|
||||
- alias: "If there no motion for 5 minutes turn off the gateway light"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.motion_sensor_158d000xxxxxc2
|
||||
from: "on"
|
||||
to: "off"
|
||||
for:
|
||||
minutes: 5
|
||||
actions:
|
||||
- action: light.turn_off
|
||||
target:
|
||||
entity_id: light.gateway_light_34ce00xxxx11
|
||||
- action: automation.turn_off
|
||||
target:
|
||||
entity_id: automation.Motion_off
|
||||
```
|
||||
|
||||
#### Door and/or Window
|
||||
|
||||
```yaml
|
||||
- alias: "If the window is open turn off the radiator"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.door_window_sensor_158d000xxxxxc2
|
||||
from: "off"
|
||||
to: "on"
|
||||
actions:
|
||||
- action: climate.set_operation_mode
|
||||
target:
|
||||
entity_id: climate.livingroom
|
||||
data:
|
||||
operation_mode: "Off"
|
||||
- alias: "If the window is closed for 5 minutes turn on the radiator again"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.door_window_sensor_158d000xxxxxc2
|
||||
from: "on"
|
||||
to: "off"
|
||||
for:
|
||||
minutes: 5
|
||||
actions:
|
||||
- action: climate.set_operation_mode
|
||||
target:
|
||||
entity_id: climate.livingroom
|
||||
data:
|
||||
operation_mode: "Smart schedule"
|
||||
- alias: "Notify if door is opened when away"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.door_window_sensor_15xxxxxxc9xx6b
|
||||
from: "off"
|
||||
to: "on"
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: "not_home"
|
||||
actions:
|
||||
- action: notify.notify_person
|
||||
data:
|
||||
message: "The door has been opened"
|
||||
```
|
||||
|
||||
#### Smoke
|
||||
|
||||
```yaml
|
||||
- alias: "Send notification on fire alarm"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.smoke_sensor_158d0001574899
|
||||
from: "off"
|
||||
to: "on"
|
||||
actions:
|
||||
- action: notify.html5
|
||||
data:
|
||||
title: "Fire alarm!"
|
||||
message: "Fire/Smoke detected!"
|
||||
- action: xiaomi_aqara.play_ringtone
|
||||
data:
|
||||
gw_mac: xxxxxxxxxxxx
|
||||
ringtone_id: 2
|
||||
ringtone_vol: 100
|
||||
```
|
||||
|
||||
#### Gas
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
- alias: "Send notification on gas alarm"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.natgas_sensor_158dxxxxxxxxxx
|
||||
from: "off"
|
||||
to: "on"
|
||||
actions:
|
||||
- action: notify.html5
|
||||
data:
|
||||
title: "Gas alarm!"
|
||||
message: "Gas with a density of {{ state_attr('binary_sensor.natgas_sensor_158dxxxxxxxxxx', 'density') }} detected."
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
#### Xiaomi Wireless Button
|
||||
|
||||
As indicated in the table on top of this page there are 3 versions of the button. For the round shaped button the available events are `single`, `double`, `hold`, `long_click_press` and `long_click_release`. Aqara branded buttons are square shaped. Model WXKG11LM only supports `single`, `double`, `long_click_press`and `hold` events. WXKG12LM supports `single`, `double`, `long_click_press` and `shake` events. For the Aqara versions the delay between two clicks to generate a double click must be larger than with the round button. Clicking too quickly generates a single click event.
|
||||
|
||||
```yaml
|
||||
- alias: "Toggle dining light on single press"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.switch_158d000xxxxxc2
|
||||
click_type: single
|
||||
actions:
|
||||
- action: switch.toggle
|
||||
target:
|
||||
entity_id: switch.wall_switch_left_158d000xxxxx01
|
||||
- alias: "Toggle couch light on double click"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.switch_158d000xxxxxc2
|
||||
click_type: double
|
||||
actions:
|
||||
- action: switch.toggle
|
||||
target:
|
||||
entity_id: switch.wall_switch_right_158d000xxxxx01
|
||||
- alias: "Let a dog bark on long press"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.switch_158d000xxxxxc2
|
||||
click_type: long_click_press
|
||||
actions:
|
||||
- action: xiaomi_aqara.play_ringtone
|
||||
data:
|
||||
gw_mac: xxxxxxxxxxxx
|
||||
ringtone_id: 8
|
||||
ringtone_vol: 8
|
||||
```
|
||||
|
||||
#### Xiaomi Cube
|
||||
|
||||
Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swing`, `alert`, `free_fall` and `rotate`. The integration stores the last action as the attribute `last_action`.
|
||||
|
||||
```yaml
|
||||
- alias: "Cube event flip90"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.cube_action
|
||||
event_data:
|
||||
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
||||
action_type: flip90
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_28xxxxxxxxxx
|
||||
data:
|
||||
color_name: "springgreen"
|
||||
- alias: "Cube event flip180"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.cube_action
|
||||
event_data:
|
||||
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
||||
action_type: flip180
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_28xxxxxxxxxx
|
||||
data:
|
||||
color_name: "darkviolet"
|
||||
- alias: "Cube event move"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.cube_action
|
||||
event_data:
|
||||
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
||||
action_type: move
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_28xxxxxxxxxx
|
||||
data:
|
||||
color_name: "gold"
|
||||
- alias: "Cube event tap_twice"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.cube_action
|
||||
event_data:
|
||||
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
||||
action_type: tap_twice
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_28xxxxxxxxxx
|
||||
data:
|
||||
color_name: "deepskyblue"
|
||||
- alias: "Cube event shake_air"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.cube_action
|
||||
event_data:
|
||||
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
||||
action_type: shake_air
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_28xxxxxxxxxx
|
||||
data:
|
||||
color_name: "blue"
|
||||
```
|
||||
|
||||
#### Aqara Wireless Switch
|
||||
|
||||
The Aqara Wireless Switch is available as single-key and double-key version. Each key behaves like the Wireless Button limited to the click event `single`. The double key version adds a third device called `binary_sensor.wall_switch_both_158xxxxxxxxx12` which reports a click event called `both` if both keys are pressed.
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
- alias: "Decrease brightness of the gateway light"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.wall_switch_left_158xxxxxxxxx12
|
||||
click_type: single
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_34xxxxxxxx13
|
||||
data:
|
||||
brightness: >-
|
||||
{% if state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') %}
|
||||
{% if state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') - 60 >= 10 %}
|
||||
{{state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') - 60}}
|
||||
{% else %}
|
||||
{{state_attr('light.gateway_light_34xxxxxxxx13', 'brightness')}}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
10
|
||||
{% endif %}
|
||||
|
||||
- alias: "Increase brightness of the gateway light"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.wall_switch_right_158xxxxxxxxx12
|
||||
click_type: single
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_34xxxxxxxx13
|
||||
data:
|
||||
brightness: >-
|
||||
{% if state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') %}
|
||||
{% if state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') + 60 <= 255 %}
|
||||
{{state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') + 60}}
|
||||
{% else %}
|
||||
{{state_attr('light.gateway_light_34xxxxxxxx13', 'brightness')}}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
10
|
||||
{% endif %}
|
||||
|
||||
- alias: "Turn off the gateway light"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.wall_switch_both_158xxxxxxxxx12
|
||||
click_type: both
|
||||
actions:
|
||||
- action: light.turn_off
|
||||
target:
|
||||
entity_id: light.gateway_light_34xxxxxxxx13
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
#### Vibration sensor
|
||||
|
||||
This automation toggles the living room lamp on vibration/tilt.
|
||||
|
||||
```yaml
|
||||
- alias: "Turn on Living Room Lamp on vibration"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.movement
|
||||
event_data:
|
||||
entity_id: binary_sensor.vibration_xxxx000000
|
||||
movement_type: vibrate
|
||||
actions:
|
||||
- action: light.toggle
|
||||
target:
|
||||
entity_id: light.living_room_lamp
|
||||
- alias: "Turn on Living Room Lamp on tilt"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.movement
|
||||
event_data:
|
||||
entity_id: binary_sensor.vibration_xxxx000000
|
||||
movement_type: tilt
|
||||
actions:
|
||||
- action: light.toggle
|
||||
target:
|
||||
entity_id: light.living_room_lamp
|
||||
```
|
@ -35,6 +35,8 @@ This integration allows you to connect the following devices:
|
||||
- Cambridge Audio 851N
|
||||
- Cambridge Audio MXN10
|
||||
- Cambridge Audio AXN10
|
||||
- Cambridge Audio EXN100
|
||||
- Cambridge Audio Edge NQ
|
||||
|
||||
Older, RS-232 serial-based amplifiers like the [CXA series](https://www.cambridgeaudio.com/usa/en/products/hi-fi/cx-series-2/cxa81)
|
||||
use a different protocol and are not currently supported.
|
||||
|
@ -29,7 +29,7 @@ Passing the key `color_extract_url` to the {% term action %} call will download
|
||||
| `entity_id` | `light.shelf_leds` | The RGB capable light we'll set the color of |
|
||||
|
||||
{% important %}
|
||||
Ensure any [external URLs](/integrations/homeassistant/#allowlist_external_urls) or [external files](/docs/integrations/homeassistant/#allowlist_external_dirs) are authorized for use. You will receive error messages if this {% term integration %} is not allowed access to these external resources.
|
||||
Ensure any [external URLs](/integrations/homeassistant/#allowlist_external_urls) or [external files](/integrations/homeassistant/#allowlist_external_dirs) are authorized for use. You will receive error messages if this {% term integration %} is not allowed access to these external resources.
|
||||
{% endimportant %}
|
||||
|
||||
### URL Action
|
||||
|
@ -290,6 +290,12 @@ command_line:
|
||||
default: 30
|
||||
{% endconfiguration %}
|
||||
|
||||
{% note %}
|
||||
|
||||
While `command` is accepting a template for `sensor` and `binary_sensor`, it's only the arguments that can be a template. This means the command name itself cannot be generated by a template, but it must be literally provided.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
## Binary sensor
|
||||
|
||||
To use your Command binary sensor in your installation, add the following to your {% term "`configuration.yaml`" %} file:
|
||||
|
@ -261,7 +261,7 @@ state_stopped:
|
||||
type: string
|
||||
default: stopped
|
||||
state_topic:
|
||||
description: The MQTT topic subscribed to receive cover state messages. State topic can only read (`open`, `opening`, `closed`, `closing` or `stopped`) state. A "None" payload resets to an `unknown` state. An empty payload is ignored.
|
||||
description: The MQTT topic subscribed to receive cover state messages. State topic can only read a (`open`, `opening`, `closed`, `closing` or `stopped`) state. A "None" payload resets to an `unknown` state. An empty payload is ignored.
|
||||
required: false
|
||||
type: string
|
||||
tilt_closed_value:
|
||||
|
@ -1,234 +0,0 @@
|
||||
---
|
||||
title: "RFLink Cover"
|
||||
description: "Instructions on how to integrate RFLink Somfy RTS and KAKU ASUN-650 covers into Home Assistant."
|
||||
ha_category:
|
||||
- Cover
|
||||
ha_iot_class: Assumed State
|
||||
ha_release: 0.55
|
||||
ha_domain: rflink
|
||||
---
|
||||
|
||||
The `rflink` integration supports devices that use [RFLink gateway firmware](https://www.rflink.nl/download.php), for example the [Nodo RFLink Gateway](https://www.nodo-shop.nl/21-rflink-). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
|
||||
First, you have to set up your [RFLink hub](/integrations/rflink/).
|
||||
|
||||
After configuring the RFLink hub, covers will be automatically discovered and added. Except the Somfy RTS devices.
|
||||
|
||||
## Setting up a Somfy RTS device
|
||||
|
||||
You have to add the Somfy RTS manually with the supplied RFlinkLoader (Windows only).
|
||||
|
||||
Press the Learn button on the original Somfy remote enter the following code within 3 seconds. Your blinds will go up and down shortly:
|
||||
|
||||
```text
|
||||
10;RTS;02FFFF;0412;3;PAIR;
|
||||
```
|
||||
|
||||
Your blinds will go up and down again. This means your RFLink is now paired with your RTS motor.
|
||||
To check this enter the following code again and see if there is a record.
|
||||
|
||||
```text
|
||||
10;RTSSHOW;
|
||||
```
|
||||
|
||||
```text
|
||||
RTS Record: 0 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 1 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 2 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 3 Address: 02FFFF RC: 0018
|
||||
RTS Record: 4 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 5 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 6 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 7 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 8 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 9 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 10 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 11 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 12 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 13 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 14 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 15 Address: FFFFFF RC: FFFF
|
||||
```
|
||||
|
||||
After configuring the RFLink Somfy RTS you have to add the cover to the {% term "`configuration.yaml`" %} file like any other RFlink device.
|
||||
|
||||
RFLink cover ID's are composed of: protocol, id, and gateway. For example: `RTS_0100F2_0`.
|
||||
|
||||
Once the ID of a cover is known, it can be used to configure the cover in Home Assistant, for example, to add it to a different group or set a nice name.
|
||||
|
||||
Configuring devices as a cover:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
cover:
|
||||
- platform: rflink
|
||||
devices:
|
||||
RTS_0100F2_0: {}
|
||||
bofumotor_455201_0f: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
device_defaults:
|
||||
description: The defaults for the devices.
|
||||
required: false
|
||||
type: map
|
||||
keys:
|
||||
fire_event:
|
||||
description: Set default `fire_event` for RFLink cover devices.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Set default `signal_repetitions` for RFLink cover devices.
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
devices:
|
||||
description: A list of covers.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink ID's this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
fire_event:
|
||||
description: Fire a `button_pressed` event if this device is turned on or off.
|
||||
required: false
|
||||
default: False
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: The number of times every RFLink command should repeat.
|
||||
required: false
|
||||
type: integer
|
||||
group:
|
||||
description: Allow light to respond to group commands (ALLON/ALLOFF).
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
group_aliases:
|
||||
description: The `aliases` which only respond to group commands.
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: The `aliases` which do not respond to group commands.
|
||||
required: false
|
||||
type: [list, string]
|
||||
type:
|
||||
description: The option to invert (`inverted`) on/off commands sent to the RFLink device or not (`standard`).
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
## Setting up a KAKU ASUN-650 device
|
||||
|
||||
In RFLink, the ON and DOWN command are used to close the cover and the OFF and UP command are used to open the cover. The KAKU (COCO) ASUN-650 works the other way around, it uses the ON command to open the cover and the OFF command to close the cover.
|
||||
|
||||
The RFLink cover device has a property named `type` that takes 2 values:
|
||||
|
||||
- `standard`: Do not invert the on/off commands sent to the RFLink device.
|
||||
- `inverted`: Invert the on/off commands sent to the RFLink device.
|
||||
|
||||
The following configuration example shows how to use the `type` property:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry that shows how to
|
||||
# use the type property.
|
||||
cover:
|
||||
- platform: rflink
|
||||
devices:
|
||||
newkaku_xxxxxxxx_x:
|
||||
name: kaku_inverted_by_type
|
||||
type: inverted
|
||||
newkaku_xxxxxxxx_y:
|
||||
name: kaku_not_inverted_by_type
|
||||
type: standard
|
||||
newkaku_xxxxxxxx_z:
|
||||
name: kaku_inverted_by_default
|
||||
nonkaku_yyyyyyyy_x:
|
||||
name: non_kaku_inverted_by_type
|
||||
type: inverted
|
||||
nonkaku_yyyyyyyy_y:
|
||||
name: non_kaku_not_inverted_by_type
|
||||
type: standard
|
||||
nonkaku_yyyyyyyy_z:
|
||||
name: non_kaku_not_inverted_by_default
|
||||
```
|
||||
|
||||
The configuration above shows that the `type` property may be omitted. When the ID starts with `newkaku`, the integration will make sure that the on and off commands are inverted. When the ID does not start with `newkaku`, the on and off commands are not inverted.
|
||||
|
||||
## Setting up a non-RTS cover
|
||||
|
||||
Configure `automatic_add` for the light domain (yes, the light domain)
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
light:
|
||||
- platform: rflink
|
||||
automatic_add: true
|
||||
```
|
||||
|
||||
When you press the remote buttons, a new light will show up in {% my entities title="the list of entities" %}.
|
||||
|
||||
Also you can enable rflink logs and look for the device_id, for example: `dooya_v4_654321_0f` or `brelmotor_3b35c7_47`.
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
logger:
|
||||
logs:
|
||||
rflink: debug
|
||||
homeassistant.components.rflink: debug
|
||||
```
|
||||
|
||||
Once the `device_id` is known, the light domain configuration can be removed and configure the device as a cover:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
cover:
|
||||
- platform: rflink
|
||||
devices:
|
||||
dooya_v4_654321_0f:
|
||||
name: "Room blinds"
|
||||
```
|
||||
|
||||
## Device support
|
||||
|
||||
See [device support](/integrations/rflink/#device-support).
|
||||
|
||||
## Additional configuration examples
|
||||
|
||||
Multiple covers with custom names and aliases
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
cover:
|
||||
- platform: rflink
|
||||
devices:
|
||||
RTS_0A8720_0:
|
||||
name: enanos
|
||||
aliases:
|
||||
- rts_31e53f_01
|
||||
- rts_32e53f_01
|
||||
RTS_30E542_0:
|
||||
name: comedor
|
||||
aliases:
|
||||
- rts_33e53f_01
|
||||
- rts_fa872e_01
|
||||
RTS_33E542_0:
|
||||
name: dormitorio
|
||||
aliases:
|
||||
- rts_30e53f_01
|
||||
- rts_32e53f_01
|
||||
RTS_32E542_0:
|
||||
name: habitaciones
|
||||
fire_event: true
|
||||
```
|
@ -1,14 +0,0 @@
|
||||
---
|
||||
title: "Xiaomi Cover"
|
||||
description: "Instructions on how to setup the Xiaomi cover within Home Assistant."
|
||||
ha_category:
|
||||
- Cover
|
||||
ha_release: "0.50"
|
||||
ha_iot_class: Local Push
|
||||
ha_domain: xiaomi_aqara
|
||||
---
|
||||
|
||||
|
||||
The `xiaomi aqara` cover platform allows you to get data from your [Xiaomi](https://www.mi.com/en/) covers.
|
||||
|
||||
The requirement is that you have setup [Xiaomi aqara](/integrations/xiaomi_aqara/).
|
@ -177,7 +177,7 @@ source_type:
|
||||
required: false
|
||||
type: string
|
||||
state_topic:
|
||||
description: The MQTT topic subscribed to receive device tracker state changes. The states defined in `state_topic` override the location states defined by the `json_attributes_topic`. This state override is turned inactive if the `state_topic` receives a message containing `payload_reset`. The `state_topic` can only be omitted if `json_attributes_topic` is used. An empty payload is ignored.
|
||||
description: The MQTT topic subscribed to receive device tracker state changes. The states defined in `state_topic` override the location states defined by the `json_attributes_topic`. This state override is turned inactive if the `state_topic` receives a message containing `payload_reset`. The `state_topic` can only be omitted if `json_attributes_topic` is used. An empty payload is ignored. Valid payloads are `not_home`, `home` or any other custom location or zone name. Payloads for `not_home`, `home` can be overridden with the `payload_not_home`and `payload_home` config options.
|
||||
required: false
|
||||
type: string
|
||||
unique_id:
|
||||
|
@ -1,47 +0,0 @@
|
||||
---
|
||||
title: "Xiaomi router"
|
||||
description: "Instructions on how to integrate Xiaomi routers into Home Assistant."
|
||||
ha_category:
|
||||
- Presence detection
|
||||
ha_release: 0.36
|
||||
ha_domain: xiaomi
|
||||
---
|
||||
|
||||
The `xiaomi` platform offers presence detection by looking at connected devices to a [Xiaomi](http://miwifi.com) router.
|
||||
|
||||
## Setup
|
||||
|
||||
To use an Xiaomi router in your installation, add the following to your {% term "`configuration.yaml`" %} file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
device_tracker:
|
||||
- platform: xiaomi
|
||||
host: YOUR_ROUTER_IP
|
||||
password: YOUR_ADMIN_PASSWORD
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
host:
|
||||
description: "The IP address of your router, e.g., `192.168.0.1`."
|
||||
required: true
|
||||
type: string
|
||||
username:
|
||||
description: The admin username.
|
||||
required: false
|
||||
default: admin
|
||||
type: string
|
||||
password:
|
||||
description: The password for the admin account.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
See the [device tracker integration page](/integrations/device_tracker/) for instructions how to configure the people to be tracked.
|
||||
|
||||
### Compatibility test
|
||||
|
||||
To ensure that your router is compatible, navigate to `http://YOUR_ROUTER_IP/api/misystem/devicelist`.
|
||||
You should see a listing of the device currently connected to your router.
|
||||
|
||||
However, some users report that even when the previous URL does not work, they have been able to integrate their Mi Router 3 in Home Assistant. E.g., some users with the Mi Router 3 and firmware version 2.10.46 Stable have integrated their routers successfully and an alternative URL to test integration with is `http://YOUR_ROUTER_IP/cgi-bin/luci/api/misystem/devicelist`. Navigating to this page should show the `{"code":401,"msg":"Invalid token"}` message.
|
@ -15,7 +15,7 @@ related:
|
||||
---
|
||||
|
||||
The `eddystone_temperature` sensor {% term integration %} reads temperature information from Bluetooth LE advertisements transmitted by [Eddystone](https://en.wikipedia.org/wiki/Eddystone_(Google)) beacons. Your beacons must be configured to transmit UID frames (for identification) and TLM frames (for temperature).
|
||||
All beacons that support the Eddystone protocol, have a temperature sensor and can transmit TLM frames are compatible with this {% term integration %}. For example [Gimbal](https://store.gimbal.com/collections/beacons/), [Estimote](https://estimote.com/) or [kontakt.io](https://kontakt.io/). For more manufacturers see [this overview](https://developers.google.com/beacons/eddystone#beacon_manufacturers) by Google.
|
||||
All beacons that support the Eddystone protocol, have a temperature sensor and can transmit TLM frames are compatible with this {% term integration %}. For example [Gimbal](https://store.gimbal.com/collections/beacons/), [Estimote](https://estimote.com/) or [kontakt.io](https://kontakt.io/).
|
||||
|
||||
## Requirements
|
||||
|
||||
|
@ -20,7 +20,6 @@ Compatible transceivers:
|
||||
|
||||
- [DIY](https://wiki.volkszaehler.org/hardware/controllers/ir-schreib-lesekopf-rs232-ausgang)
|
||||
- [Weidmann Elektronik Schreib-/Lesekopf USB](https://shop.weidmann-elektronik.de/index.php?page=product&info=24)
|
||||
- [USB IR Lesekopf EHZ Lese-Schreib-Kopf Volkszähler Hichi Smartmeter](https://www.ebay.de/itm/313884760667)
|
||||
|
||||
Tested smart meters:
|
||||
|
||||
|
@ -296,7 +296,7 @@ speed_range_min:
|
||||
type: integer
|
||||
default: 1
|
||||
state_topic:
|
||||
description: The MQTT topic subscribed to receive state updates. A "None" payload resets to an `unknown` state. An empty payload is ignored.
|
||||
description: The MQTT topic subscribed to receive state updates. A "None" payload resets to an `unknown` state. An empty payload is ignored. By default, valid state payloads are `OFF` and `ON`. The accepted payloads can be overridden with the `payload_off` and `payload_on` config options.
|
||||
required: false
|
||||
type: string
|
||||
state_value_template:
|
||||
|
@ -78,4 +78,4 @@ hass.bus.listen(EVENT_FEEDREADER, event_listener)
|
||||
|
||||
To get started developing custom integrations, please refer to the [developers](/developers) documentation
|
||||
|
||||
For a drop in packaged complete example of Feedreader, you can use the [PodCast notifier](https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/packages/hasspodcast.yaml).
|
||||
For a drop in packaged complete example of Feedreader, you can use the [PodCast notifier](https://github.com/CCOSTAN/Home-AssistantConfig/blob/22c19375ac5dcb49e0648aa16c431537407aa5e4/config/packages/hasspodcast.yaml).
|
||||
|
@ -148,7 +148,7 @@ Speech-to-text is priced based on the amount of audio successfully processed by
|
||||
|
||||
{% configuration %}
|
||||
stt_model:
|
||||
description: "One of the transcription models [here](https://cloud.google.com/speech-to-text/docs/transcription-model). Defaults to `latest_short`."
|
||||
description: "One of the transcription models [here](https://cloud.google.com/speech-to-text/docs/transcription-model). Defaults to `latest_short` because this is the recommended one. If you get: `400 Invalid recognition 'config': The requested model is currently not supported for language : <language code>` try changing this to the legacy `command_and_search`."
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
@ -58,4 +58,4 @@ The Govee BLE integration will automatically discover devices once the [Bluetoot
|
||||
- 5183 Meat Thermometer
|
||||
- 5184 Meat Thermometer
|
||||
- 5185 Meat Thermometer
|
||||
- [5198 Meat Thermometer](https://us.govee.com/products/govee-wi-fi-grilling-meat-thermometer-with-4-probes)
|
||||
- 5198 Meat Thermometer
|
||||
|
@ -2,7 +2,7 @@
|
||||
title: Habitica
|
||||
description: Instructions on enabling Habitica support for your Home Assistant
|
||||
ha_category:
|
||||
- Hub
|
||||
- To-do list
|
||||
- Sensor
|
||||
ha_release: 0.78
|
||||
ha_iot_class: Cloud Polling
|
||||
@ -18,6 +18,15 @@ ha_codeowners:
|
||||
- '@tr4nt0r'
|
||||
ha_config_flow: true
|
||||
ha_integration_type: integration
|
||||
related:
|
||||
- docs: /integrations/todo
|
||||
title: To-do list integration documentation
|
||||
- docs: /integrations/#to-do-list
|
||||
title: List of to-do list integrations
|
||||
- docs: /dashboards/todo-list/
|
||||
title: To-do list card
|
||||
- url: https://habitica.com/
|
||||
title: Habitica
|
||||
---
|
||||
|
||||
The Habitca {% term integration %} enables you to monitor your adventurer's progress and stats in Home Assistant and seamlessly integrates your to-do's and daily tasks.
|
||||
|
@ -277,7 +277,7 @@ retain:
|
||||
type: boolean
|
||||
default: true
|
||||
state_topic:
|
||||
description: The MQTT topic subscribed to receive state updates. A "None" payload resets to an `unknown` state. An empty payload is ignored.
|
||||
description: The MQTT topic subscribed to receive state updates. A "None" payload resets to an `unknown` state. An empty payload is ignored. Valid state payloads are `OFF` and `ON`. Custom `OFF` and `ON` values can be set with the `payload_off` and `payload_on` config options.
|
||||
required: false
|
||||
type: string
|
||||
state_value_template:
|
||||
|
@ -70,12 +70,12 @@ To get the Estimated distance sensor to work, in most cases, it has to be calibr
|
||||
- [Blue Charm Beacons BC-U1-USB-Powered-MultiBeacon](https://bluecharmbeacons.com/product/bluetooth-ble-ibeacon-bc-u1-multibeacon-usb-powered/)
|
||||
- [Blue Charm Beacons BC011-MultiBeacon](https://bluecharmbeacons.com/product/bluetooth-ble-multi-beacon-bc011/)
|
||||
- [Blue Charm Beacons BC021-MultiBeacon](https://bluecharmbeacons.com/product/bluetooth-ble-ibeacon-bc021-multibeacon-with-button-trigger-and-motion-sensor/)
|
||||
- [Blue Charm Beacons BC037G-GeoPattern-iBeacon](https://bluecharmbeacons.com/product/blue-charm-bc037-ibeacon/)
|
||||
- [Blue Charm Beacons BC037S-SmoothPattern-iBeacon](https://bluecharmbeacons.com/product/bluetooth-ble-ibeacon-bc037s-ibeacon/)
|
||||
- [Blue Charm Beacons BC08-MultiBeacon](https://bluecharmbeacons.com/product/blue-charm-beacons-bluetooth-ble-ibeacon-bc08-multibeacon-w-motion-sensor-and-button-trigger-ble-5-0/)
|
||||
- Blue Charm Beacons BC037G-GeoPattern-iBeacon (discontinued)
|
||||
- Blue Charm Beacons BC037S-SmoothPattern-iBeacon (discontinued)
|
||||
- [Blue SLIM ID](https://elainnovation.com/en/product/blue-slim-id-en/)
|
||||
- Blue Charm Beacons BC08-MultiBeacon (discontinued)
|
||||
- Blue Charm Beacons BC037G-GeoPattern-iBeacon (discontinued)
|
||||
- Blue Charm Beacons BC037S-SmoothPattern-iBeacon (discontinued)
|
||||
- [Blue SLIM ID](https://elainnovation.com/en/catalogue/blue-slim-id-en/)
|
||||
- [Feasycom FSC-BP103B](https://www.feasycom.com/bluetooth-ibeacon-da14531)
|
||||
- [Feasycom FSC-BP104D](https://www.feasycom.com/dialog-da14531-bluetooth-low-energy-beacon)
|
||||
- [Feasycom FSC-BP106](https://www.feasycom.com/fsc-bp106)
|
||||
|
@ -145,7 +145,7 @@ Increasing the default maximum message size (2048 bytes) could have a negative i
|
||||
|
||||
```yaml
|
||||
template:
|
||||
- triggers:
|
||||
- trigger:
|
||||
- trigger: event
|
||||
event_type: "imap_content"
|
||||
id: "custom_event"
|
||||
@ -229,7 +229,7 @@ The following example shows the usage of the IMAP email content sensor to scan t
|
||||
|
||||
```yaml
|
||||
template:
|
||||
- triggers:
|
||||
- trigger:
|
||||
- trigger: event
|
||||
event_type: "imap_content"
|
||||
id: "custom_event"
|
||||
@ -267,7 +267,7 @@ Below is the template sensor which extracts the information from the body of the
|
||||
|
||||
```yaml
|
||||
template:
|
||||
- triggers:
|
||||
- trigger:
|
||||
- trigger: event
|
||||
event_type: "imap_content"
|
||||
id: "custom_event"
|
||||
@ -316,7 +316,7 @@ The example below will only set the state to the subject of the email of templat
|
||||
|
||||
```yaml
|
||||
template:
|
||||
- triggers:
|
||||
- trigger:
|
||||
- trigger: event
|
||||
event_type: "imap_content"
|
||||
id: "custom_event"
|
||||
|
@ -363,11 +363,11 @@ schema:
|
||||
type: string
|
||||
default: default
|
||||
state_topic:
|
||||
description: The MQTT topic subscribed to receive state updates. A "None" payload resets to an `unknown` state. An empty payload is ignored.
|
||||
description: "The MQTT topic subscribed to receive state updates. A \"None\" payload resets to an `unknown` state. An empty payload is ignored. By default, valid state payloads are `OFF` and `ON`. The accepted payloads can be overridden with the `payload_off` and `payload_on` config options."
|
||||
required: false
|
||||
type: string
|
||||
state_value_template:
|
||||
description: "Defines a [template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) to extract the state value. The template should return the `payload_on` and `payload_off` values, so if your light uses `power on` to turn on, your `state_value_template` string should return `power on` when the switch is on. For example, if the message is just `on`, your `state_value_template` should be `power {{ value }}`. When your `payload_on = 27`, `payload_off = 'off'`, then this template might be `'off' if value_json.my_custom_brightness_field <= 0 else 27`."
|
||||
description: "Defines a [template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) to extract the state value. The template should return the `payload_on` and `payload_off` values, so if your light uses `power on` to turn on, your `state_value_template` string should return `power on` when the switch is on. For example, if the message is just `on`, your `state_value_template` should be `power {{ value }}`. When your `payload_on = 27` and `payload_off = 'off'`, then this template might be `'off' if value_json.my_custom_brightness_field <= 0 else 27`."
|
||||
required: false
|
||||
type: template
|
||||
unique_id:
|
||||
@ -708,7 +708,7 @@ schema:
|
||||
type: string
|
||||
default: default
|
||||
state_topic:
|
||||
description: The MQTT topic subscribed to receive state updates. A "None" payload resets to an `unknown` state. An empty payload is ignored.
|
||||
description: 'The MQTT topic subscribed to receive state updates in a JSON-format. The JSON payload may contain the elements: `"state"`: `"ON"` the light is on, `"OFF"` the light is off, `null` the state is `unknown`; `"color_mode"`: one of the `supported_color_modes`; `"color"`: A dict with the color attributes*; `"brightness"`: The brightness; `"color_temp"`: The color temperature; `"effect"`: The effect of the light.'
|
||||
required: false
|
||||
type: string
|
||||
supported_color_modes:
|
||||
@ -726,6 +726,32 @@ white_scale:
|
||||
default: 255
|
||||
{% endconfiguration %}
|
||||
|
||||
*The `color` attribute dict in the JSON state payload should contain the following keys based on the `color_mode`:
|
||||
|
||||
- `hs`:
|
||||
- `h`: The hue value
|
||||
- `s`: The saturation value
|
||||
- `xy`:
|
||||
- `x`: X color value
|
||||
- `y`: Y color value
|
||||
- `rgb`:
|
||||
- `r`: Red color value
|
||||
- `g`: Green color value
|
||||
- `b`: Blue color value
|
||||
- `rgbw`:
|
||||
- `r`: Red color value
|
||||
- `g`: Green color value
|
||||
- `b`: Blue color value
|
||||
- `w`: White value
|
||||
- `rgbww`:
|
||||
- `r`: Red color value
|
||||
- `g`: Green color value
|
||||
- `b`: Blue color value
|
||||
- `c`: Cool white value
|
||||
- `w`: Warm white value
|
||||
|
||||
More details about the different colors, color modes and range values [can be found here](https://www.home-assistant.io/integrations/light/).
|
||||
|
||||
{% important %}
|
||||
Make sure that your topics match exact. `some-topic/` and `some-topic` are different topics.
|
||||
{% endimportant %}
|
||||
@ -934,7 +960,7 @@ command_off_template:
|
||||
required: true
|
||||
type: template
|
||||
command_on_template:
|
||||
description: "The [template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) for *on* state changes. Available variables: `state`, `brightness`, `color_temp`, `red`, `green`, `blue`, `flash`, `transition` and `effect`. Values `red`, `green`, `blue`, `brightness` are provided as integers from range 0-255. Value of `color_temp` is provided as integer representing mired units."
|
||||
description: "The [template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) for *on* state changes. Available variables: `state`, `brightness`, `color_temp`, `red`, `green`, `blue`, `hue`, `sat`, `flash`, `transition` and `effect`. Values `red`, `green`, `blue`, `brightness` are provided as integers from range 0-255. Value of `hue` is provided as float from range 0-360. Value of `sat` is provided as float from range 0-100. Value of `color_temp` is provided as integer representing mired units."
|
||||
required: true
|
||||
type: template
|
||||
command_topic:
|
||||
|
@ -1,171 +0,0 @@
|
||||
---
|
||||
title: "RFLink Light"
|
||||
description: "Instructions on how to integrate RFLink lights into Home Assistant."
|
||||
ha_category:
|
||||
- Light
|
||||
ha_iot_class: Assumed State
|
||||
ha_release: 0.38
|
||||
ha_domain: rflink
|
||||
---
|
||||
|
||||
The `rflink` integration supports devices that use [RFLink gateway firmware](https://www.rflink.nl/download.php), for example the [Nodo RFLink Gateway](https://www.nodo-shop.nl/21-rflink-). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
|
||||
First, you have to set up your [RFLink hub](/integrations/rflink/).
|
||||
|
||||
After configuring the RFLink hub, lights will be automatically discovered and added.
|
||||
|
||||
RFLink binary_sensor/switch/light ID's are composed of: protocol, id, switch/channel. For example: `newkaku_0000c6c2_1`.
|
||||
|
||||
Once the ID of a light is known, it can be used to configure the light in HA, for example to add it to a different group or configure a nice name.
|
||||
|
||||
Configuring devices as a light:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
light:
|
||||
- platform: rflink
|
||||
devices:
|
||||
NewKaku_02a48800_0: {}
|
||||
newkaku_0000c6c2_1: {}
|
||||
Ansluta_ce30_0: {}
|
||||
Maclean_0d82_01: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
device_defaults:
|
||||
description: The defaults for the devices.
|
||||
required: false
|
||||
type: map
|
||||
keys:
|
||||
fire_event:
|
||||
description: Set default `fire_event` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: False
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Set default `signal_repetitions` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
automatic_add:
|
||||
description: Automatically add new/unconfigured devices to Home Assistant if detected.
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
devices:
|
||||
description: A list of lights.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
type:
|
||||
description: "Override automatically detected type of the light device, can be: switchable, dimmable, hybrid or toggle. See [Light Types](/integrations/light.rflink/#light-types) below."
|
||||
required: false
|
||||
default: switchable
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink ID's this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliases:
|
||||
description: "`aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: "`aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
fire_event:
|
||||
description: Fire a `button_pressed` event if this device is turned on or off.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Repeat every RFLink command this number of times.
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
group:
|
||||
description: Allow light to respond to group commands (ALLON/ALLOFF).
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
{% endconfiguration %}
|
||||
|
||||
### Light state
|
||||
|
||||
Initially the state of a light is unknown. When the light is turned on or off (via frontend or remote) the state is known and will be shown in the frontend.
|
||||
|
||||
Sometimes a light is controlled by multiple remotes, each remote has its own code programmed in the light. To allow tracking of the state when switched via other remotes add the corresponding remote codes as aliases:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
light:
|
||||
- platform: rflink
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
aliases:
|
||||
- newkaku_000000001_2
|
||||
- kaku_000001_a
|
||||
```
|
||||
|
||||
Any on/off command from any alias ID updates the current state of the light. However when sending a command through the frontend only the primary ID is used.
|
||||
|
||||
### Light types
|
||||
|
||||
Light devices can come in different forms. Some only switch on and off, other support dimming. Dimmable devices might not always respond nicely to repeated `on` command as they turn into a pulsating state until `on` is pressed again (for example KlikAanKlikUit). The RFLink integration support three types of lights to make things work in every situation:
|
||||
|
||||
- *Hybrid*: This type sends a `dim` followed by an an `on` command; and `off` commands. This will make dimmable devices turn on at the requested dim level and on/off devices on. One caveat is this type is not compatible with signal repetition as multiple `on` signals will cause dimmers to go into disco mode.
|
||||
- *Switchable*: Device type that sends only `on` and `off` commands. It work for both on/off and dimmable type switches. However dimmables might have issues with signal repetition (see above).
|
||||
- *Dimmable*: Sends only `dim` and `off` commands. This does not work on on/off type devices as they don't understand the `dim` command. For dimmers this does not cause issues with signal repetitions.
|
||||
- *Toggle*: Device type that sends only `on` commands to turn on or off the device. Some switches like for example Livolo light switches use the same 'on' command to switch on and switch off the lights. If the light is on and 'on' gets sent, the light will turn off and if the light is off and 'on' gets sent, the light will turn on. If the device has an unknown state, it will assume it is off by default.
|
||||
|
||||
By default new lights are assigned the `switchable` type. Protocol supporting dimming are assigned the `hybrid` type. Currently only `newkaku` protocol is detected as dimmable. Please refer to Device Support to get your dimmers supported.
|
||||
|
||||
### Hiding/ignoring lights
|
||||
|
||||
Lights are added automatically when the RFLink gateway intercepts a wireless command in the ether. To prevent cluttering the frontend use any of these methods:
|
||||
|
||||
- Disable automatically adding of unconfigured new sensors (set `automatic_add` to `false`).
|
||||
- Hide unwanted devices using [customizations](/getting-started/customizing-devices/)
|
||||
- [Ignore devices on a platform level](/integrations/rflink/#ignoring-devices)
|
||||
|
||||
### Device support
|
||||
|
||||
See [device support](/integrations/rflink/#device-support)
|
||||
|
||||
### Additional configuration examples
|
||||
|
||||
Multiple lights with `signal_repetitions` and custom names
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
light:
|
||||
- platform: rflink
|
||||
device_defaults:
|
||||
fire_event: true
|
||||
signal_repetitions: 2
|
||||
automatic_add: true
|
||||
devices:
|
||||
NewKaku_02a48800_0:
|
||||
name: Kitchen
|
||||
type: hybrid
|
||||
newkaku_0000c6c2_1:
|
||||
name: Living room
|
||||
aliases:
|
||||
- newkaku_000000001_2
|
||||
- kaku_000001_a
|
||||
Ansluta_ce30_0:
|
||||
name: Kitchen Under Counter Lights
|
||||
Maclean_0d82_01:
|
||||
name: Bedroom Lamp
|
||||
```
|
@ -1,15 +0,0 @@
|
||||
---
|
||||
title: "Xiaomi Light"
|
||||
description: "Instructions on how to setup the Xiaomi light within Home Assistant."
|
||||
ha_category:
|
||||
- Light
|
||||
ha_release: "0.50"
|
||||
ha_iot_class: Local Push
|
||||
ha_domain: xiaomi_aqara
|
||||
---
|
||||
|
||||
|
||||
The `xiaomi aqara` light platform allows you to control the internal light of the Xiaomi gateway. The integration will be loaded automatically and provides a device called `light.gateway_light_28ffffffffff`.
|
||||
|
||||
The requirement is that you have setup [Xiaomi aqara](/integrations/xiaomi_aqara/).
|
||||
|
@ -18,3 +18,20 @@ ha_iot_class: Local Polling
|
||||
The LinkPlay {% term integrations %} for Home Assistant allows you to control various media players based on the LinkPlay protocol. The integration supports auto-discovery on your local network through [Zeroconf](/integrations/zeroconf).
|
||||
|
||||
{% include integrations/config_flow.md %}
|
||||
|
||||
## Actions
|
||||
|
||||
The LinkPlay integration makes various custom actions available in addition to the [standard media player actions](/integrations/media_player/#actions).
|
||||
|
||||
### Action `linkplay.play_preset`
|
||||
|
||||
Play a preset on a LinkPlay media player.
|
||||
|
||||
{% note %}
|
||||
Companion apps, such as 4stream, allow to save music presets (for example, Spotify playlists). This action can be used to start playing these presets.
|
||||
{% endnote %}
|
||||
|
||||
| Data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | no | The speakers to target. To target all LinkPlay devices, use `all`.
|
||||
| `preset_number` | no | The number of the preset to play.
|
||||
|
@ -1,22 +0,0 @@
|
||||
---
|
||||
title: "Xiaomi Aqara Lock"
|
||||
description: "Instructions on how to setup the Xiaomi Aqara Lock within Home Assistant."
|
||||
ha_category:
|
||||
- Lock
|
||||
ha_release: 0.71
|
||||
ha_iot_class: Local Push
|
||||
ha_domain: xiaomi_aqara
|
||||
---
|
||||
|
||||
|
||||
The `xiaomi aqara` lock platform allows you to get data (`changed_by` property, `verified_wrong_times` attribute) from your [Xiaomi](https://www.mi.com/en/) Aqara locks.
|
||||
|
||||
An Aqara lock cannot be controlled by Home Assistant.
|
||||
|
||||
The property `changed_by` provides the user/key ID of the last successful unlock.
|
||||
|
||||
If someone tries to unlock the device but fails more than 3 times the `verified_wrong_times` attribute will be incremented. The counter resets on a successful unlock.
|
||||
|
||||
Use of this platform requires that you have set up the [Xiaomi Aqara](/integrations/xiaomi_aqara/) component.
|
||||
|
||||
|
@ -28,7 +28,7 @@ If you want to grant only required accesses, uncheck all checkboxes then check o
|
||||
|
||||
## Sensors
|
||||
|
||||
The integration will create sensors for the Mastodon account showing total followers, following, and posts.
|
||||
The integration will create sensors for the Mastodon account showing total followers, following, and posts. Sensors are updated once an hour.
|
||||
|
||||
## Notifications
|
||||
|
||||
|
@ -36,7 +36,7 @@ You create your API token on your Mealie installation:
|
||||
|
||||
## Available calendars
|
||||
|
||||
The integration will create a calendar for every type of meal plan:
|
||||
The integration will create a calendar for every type of meal plan, which are updated once an hour:
|
||||
|
||||
- Breakfast
|
||||
- Lunch
|
||||
@ -45,11 +45,12 @@ The integration will create a calendar for every type of meal plan:
|
||||
|
||||
## Shopping Lists
|
||||
|
||||
The integration will create a to-do list for every Mealie shopping list.
|
||||
The integration will create a to-do list for every Mealie shopping list, which are updated every 5 minutes.
|
||||
|
||||
## Sensors
|
||||
|
||||
The integration provides the following sensors for the statistics:
|
||||
The integration provides the following sensors for the statistics, which are updated every 15 minutes:
|
||||
|
||||
- number of recipes
|
||||
- categories (such as beverage, dessert, Italian, seafood)
|
||||
- tags (such as alcohol)
|
||||
|
@ -215,7 +215,7 @@ MQTT Birth and Last Will messages can be customized or disabled from the UI. To
|
||||
|
||||
## Testing your setup
|
||||
|
||||
The `mosquitto` broker package ships command line tools (often as `*-clients` package) to send and receive MQTT messages. For sending test messages to a broker running on `localhost`, to can use [`mosquitto_pub`](https://mosquitto.org/man/mosquitto_pub-1.html), check the example below:
|
||||
The `mosquitto` broker package ships command line tools (often as `*-clients` package) to send and receive MQTT messages. For sending test messages to a broker running on `localhost`, you can use [`mosquitto_pub`](https://mosquitto.org/man/mosquitto_pub-1.html), check the example below:
|
||||
|
||||
```bash
|
||||
mosquitto_pub -h 127.0.0.1 -t homeassistant/switch/1/on -m "Switch is ON"
|
||||
|
@ -15,6 +15,12 @@ ha_integration_type: integration
|
||||
|
||||
The `Microsoft Teams` platform allows you to send notifications from Home Assistant to a team channel in [Microsoft Teams](https://www.microsoft.com/microsoft-teams/group-chat-software).
|
||||
|
||||
{% note %}
|
||||
|
||||
Please note that Microsoft announced the retirement of the Office 365 connectors within Microsoft Teams. Existing connectors will [continue to work until December 2025](https://devblogs.microsoft.com/microsoft365dev/retirement-of-office-365-connectors-within-microsoft-teams/).
|
||||
|
||||
{% endnote %}
|
||||
|
||||
## Setup
|
||||
|
||||
To send a notification to teams, you need to add the Incoming Webhook app to your team channel. When the app is added, you will receive a webhook URL that needs to be added to your {% term "`configuration.yaml`" %}.
|
||||
|
@ -38,6 +38,8 @@ This integration provides the following platforms:
|
||||
|
||||
All vehicles linked to the account should then get added as devices, with sensors added as linked entity.
|
||||
|
||||
In some situations, some of the features may require a subscription such as the *Pack EV Remote Control* and/or the *Pack Smart Navigation* subscription.
|
||||
|
||||
## Actions
|
||||
|
||||
### Action `renault.ac_start`
|
||||
|
@ -22,12 +22,12 @@ related:
|
||||
|
||||
The `rflink` {% term integration %} supports devices that use [RFLink gateway firmware](https://www.rflink.nl/download.php), for example, the [Nodo RFLink Gateway](https://www.nodo-shop.nl/21-rflink-). RFLink Gateway is an Arduino Mega firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
|
||||
The 433 MHz spectrum is used by many manufacturers mostly using their own protocol/standard and includes devices like: light switches, blinds, weather stations, alarms and various other sensors.
|
||||
The 433 MHz spectrum is used by many manufacturers. Mostly using their own protocol/standard, they use this spectrum to communicate with devices such as light switches, blinds, weather stations, alarms, and various other sensors.
|
||||
|
||||
RFLink Gateway supports a number of RF frequencies, using a wide range of low-cost hardware. [Their website](https://www.rflink.nl) provides details for various RF transmitters, receivers and transceiver modules for 433MHz, 868MHz and 2.4 GHz.
|
||||
The RFLink Gateway supports a number of RF frequencies, using a wide range of low-cost hardware. [Their website](https://www.rflink.nl) provides details for various RF transmitters, receivers, and transceiver modules for 433MHz, 868MHz, and 2.4 GHz.
|
||||
|
||||
{% note %}
|
||||
Versions later than R44 add support for IKEA Ansluta, Philips Living Colors Gen1 and MySensors devices.
|
||||
Versions later than R44 add support for IKEA Ansluta, Philips Living Colors Gen1, and MySensors devices.
|
||||
{% endnote %}
|
||||
|
||||
A complete list of devices supported by RFLink can be found [here](https://www.rflink.nl/devlist.php).
|
||||
@ -62,7 +62,7 @@ wait_for_ack:
|
||||
default: true
|
||||
type: boolean
|
||||
ignore_devices:
|
||||
description: List of device id's to ignore. Supports wildcards (`*`, `?`).
|
||||
description: List of device IDs to ignore. Supports wildcards (`*`, `?`).
|
||||
required: false
|
||||
type: [list, string]
|
||||
reconnect_interval:
|
||||
@ -94,6 +94,7 @@ rflink:
|
||||
TCP mode allows you to connect to an RFLink device over a TCP/IP network. This is useful if placing the RFLink device next to the HA server is not optimal or desired (eg: bad reception).
|
||||
|
||||
The following command can be used to expose the USB/serial interface over TCP on a different host (Linux). The arguments are separated by spaces, further info on all arguments can be found for example [on the Debian manpages](https://manpages.debian.org/stretch/socat/socat.1.en.html).
|
||||
|
||||
- `/dev/ttyACM0,b57600,rawer` specifies the device location, a `b57600` 57600 baud rate, and `rawer` causes socat to ignore control sequences sent via the port (for example, it makes socat pass all information 'rawest form', rather than picking up control characters such as control-C which would close socat).
|
||||
- `TCP-LISTEN:1234,reuseaddr,range=192.168.0.0/16` listens on IPV4 on the specified port (1234, change as suits your needs), the details behind the `reuseaddr` option [are fairly complex](https://stackoverflow.com/a/3233022/1049701) but it allows faster reconnects from the client (Home Assistant) in case of connection drops. An important security option is `range=192.168.0.0/16`, which specifies that socat should only accept connections from a certain range of IP addresses - the /16 subnet mask specifies a range from 192.168.0.0 to 192.168.255.255. Change this as required for your LAN network.
|
||||
|
||||
@ -138,7 +139,7 @@ sensor:
|
||||
|
||||
[RFLink Switches](/integrations/switch.rflink/) and [RFLink Binary Sensors](/integrations/binary_sensor.rflink/) cannot be added automatically.
|
||||
|
||||
The RFLink integration does not know the difference between a binary sensor, a switch and a light. Therefore all switchable devices are automatically added as light by default. However, once the ID of a switch is known, it can be used to configure it as a switch or a binary sensor type in Home Assistant, for example, to add it to a different group or configure a nice name.
|
||||
The RFLink integration does not know the difference between a binary sensor, a switch and a light. Therefore, all switchable devices are automatically added as light by default. However, once the ID of a switch is known, it can be used to configure it as a switch or a binary sensor type in Home Assistant, for example, to add it to a different group or configure a nice name.
|
||||
|
||||
### Ignoring devices
|
||||
|
||||
@ -178,7 +179,6 @@ cover:
|
||||
|
||||
This configuration uses `0a0a0a` to control the inverted shutter (send UP to close and Down to open) and listen commands sent by `0f1f2f` remote control.
|
||||
|
||||
|
||||
### Device support
|
||||
|
||||
Even though a lot of devices are supported by RFLink, not all have been tested/implemented. If you have a device supported by RFLink but not by this integration please consider testing and adding support yourself.
|
||||
@ -191,7 +191,7 @@ If you find a device is recognized differently, with different protocols or the
|
||||
|
||||
- The`rflink` Python module is an asyncio transport/protocol which is setup to fire a callback for every (valid/supported) packet received by the RFLink gateway.
|
||||
- This integration uses this callback to distribute 'rflink packet events' over [Home Assistant's event bus](/docs/configuration/events/) which can be subscribed to by entities/platform implementations.
|
||||
- The platform implementation takes care of creating new devices (if enabled) for unseen incoming packet ID's.
|
||||
- The platform implementation takes care of creating new devices (if enabled) for unseen incoming packet IDs.
|
||||
- Device entities take care of matching to the packet ID, interpreting and performing actions based on the packet contents. Common entity logic is maintained in this main component.
|
||||
|
||||
### Debug Logging
|
||||
@ -219,3 +219,731 @@ This will give you output looking like this:
|
||||
17-03-07 20:12:05 DEBUG (MainThread) [rflink.protocol] got event: {'version': '1.1', 'firmware': 'RFLink Gateway', 'revision': '45', 'hardware': 'Nodo RadioFrequencyLink', 'id': 'rflink'}
|
||||
17-03-07 20:12:05 DEBUG (MainThread) [homeassistant.components.rflink] event of type unknown: {'version': '1.1', 'firmware': 'RFLink Gateway', 'revision': '45', 'hardware': 'Nodo RadioFrequencyLink', 'id': 'rflink'}
|
||||
```
|
||||
|
||||
## Binary sensor
|
||||
|
||||
The RFLink integration does not know the difference between a `binary_sensor`, a `switch`, and a `light`. Therefore, all switchable devices are automatically added as `light` by default.
|
||||
|
||||
RFLink binary_sensor/switch/light IDs are composed of: protocol, id, switch/channel. For example: `newkaku_0000c6c2_1`.
|
||||
|
||||
Once the ID of a binary sensor is known, it can be used to configure it as a binary sensor type in Home Assistant, for example, to hide it or configure a nice name.
|
||||
|
||||
Configuring a device as a binary sensor:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
binary_sensor:
|
||||
- platform: rflink
|
||||
devices:
|
||||
pt2262_00174754_0: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
devices:
|
||||
description: A list of binary sensors.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name of the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink IDs this device is known by.
|
||||
required: false
|
||||
type: list
|
||||
device_class:
|
||||
description: Sets the [class of the device](/integrations/binary_sensor/), changing the device state and icon that is displayed on the frontend.
|
||||
required: false
|
||||
type: string
|
||||
off_delay:
|
||||
description: For sensors that only sends 'On' state updates, this variable sets a delay after which the sensor state will be updated back to 'Off'.
|
||||
required: false
|
||||
type: integer
|
||||
force_update:
|
||||
description: Sends update events even if the value has not changed. Useful for sensors that only sends `On`.
|
||||
required: false
|
||||
type: boolean
|
||||
default: false
|
||||
{% endconfiguration %}
|
||||
|
||||
### Sensor state
|
||||
|
||||
Initially, the state of a binary sensor is unknown. When a sensor update is received, the state is known and will be shown in the frontend.
|
||||
|
||||
### Device support
|
||||
|
||||
See [device support](/integrations/rflink/#device-support)
|
||||
|
||||
### Additional configuration examples
|
||||
|
||||
Multiple sensors with custom name and device class and set off_delay
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
binary_sensor:
|
||||
- platform: rflink
|
||||
devices:
|
||||
pt2262_00174754_0:
|
||||
name: PIR Entrance
|
||||
device_class: motion
|
||||
off_delay: 5
|
||||
pt2262_00174758_0:
|
||||
name: PIR Living Room
|
||||
device_class: motion
|
||||
off_delay: 5
|
||||
```
|
||||
|
||||
## Cover
|
||||
|
||||
After configuring the RFLink hub, covers will be automatically discovered and added. Except the Somfy RTS devices.
|
||||
|
||||
### Setting up a Somfy RTS device
|
||||
|
||||
You have to add the Somfy RTS manually with the supplied RFlinkLoader (Windows only).
|
||||
|
||||
Press the Learn button on the original Somfy remote enter the following code within 3 seconds. Your blinds will go up and down shortly:
|
||||
|
||||
```text
|
||||
10;RTS;02FFFF;0412;3;PAIR;
|
||||
```
|
||||
|
||||
Your blinds will go up and down again. This means your RFLink is now paired with your RTS motor.
|
||||
To check this enter the following code again and see if there is a record.
|
||||
|
||||
```text
|
||||
10;RTSSHOW;
|
||||
```
|
||||
|
||||
```text
|
||||
RTS Record: 0 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 1 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 2 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 3 Address: 02FFFF RC: 0018
|
||||
RTS Record: 4 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 5 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 6 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 7 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 8 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 9 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 10 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 11 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 12 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 13 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 14 Address: FFFFFF RC: FFFF
|
||||
RTS Record: 15 Address: FFFFFF RC: FFFF
|
||||
```
|
||||
|
||||
After configuring the RFLink Somfy RTS you have to add the cover to the {% term "`configuration.yaml`" %} file like any other RFlink device.
|
||||
|
||||
RFLink cover IDs are composed of: protocol, id, and gateway. For example: `RTS_0100F2_0`.
|
||||
|
||||
Once the ID of a cover is known, it can be used to configure the cover in Home Assistant, for example, to add it to a different group or set a nice name.
|
||||
|
||||
Configuring devices as a cover:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
cover:
|
||||
- platform: rflink
|
||||
devices:
|
||||
RTS_0100F2_0: {}
|
||||
bofumotor_455201_0f: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
device_defaults:
|
||||
description: The defaults for the devices.
|
||||
required: false
|
||||
type: map
|
||||
keys:
|
||||
fire_event:
|
||||
description: Set default `fire_event` for RFLink cover devices.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Set default `signal_repetitions` for RFLink cover devices.
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
devices:
|
||||
description: A list of covers.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name of the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink IDs this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
fire_event:
|
||||
description: Fire a `button_pressed` event if this device is turned on or off.
|
||||
required: false
|
||||
default: False
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: The number of times every RFLink command should repeat.
|
||||
required: false
|
||||
type: integer
|
||||
group:
|
||||
description: Allow light to respond to group commands (ALLON/ALLOFF).
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
group_aliases:
|
||||
description: The `aliases` which only respond to group commands.
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: The `aliases` which do not respond to group commands.
|
||||
required: false
|
||||
type: [list, string]
|
||||
type:
|
||||
description: The option to invert (`inverted`) on/off commands sent to the RFLink device or not (`standard`).
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### Setting up a KAKU ASUN-650 device
|
||||
|
||||
In RFLink, the ON and DOWN command are used to close the cover and the OFF and UP command are used to open the cover. The KAKU (COCO) ASUN-650 works the other way around, it uses the ON command to open the cover and the OFF command to close the cover.
|
||||
|
||||
The RFLink cover device has a property named `type` that takes 2 values:
|
||||
|
||||
- `standard`: Do not invert the on/off commands sent to the RFLink device.
|
||||
- `inverted`: Invert the on/off commands sent to the RFLink device.
|
||||
|
||||
The following configuration example shows how to use the `type` property:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry that shows how to
|
||||
# use the type property.
|
||||
cover:
|
||||
- platform: rflink
|
||||
devices:
|
||||
newkaku_xxxxxxxx_x:
|
||||
name: kaku_inverted_by_type
|
||||
type: inverted
|
||||
newkaku_xxxxxxxx_y:
|
||||
name: kaku_not_inverted_by_type
|
||||
type: standard
|
||||
newkaku_xxxxxxxx_z:
|
||||
name: kaku_inverted_by_default
|
||||
nonkaku_yyyyyyyy_x:
|
||||
name: non_kaku_inverted_by_type
|
||||
type: inverted
|
||||
nonkaku_yyyyyyyy_y:
|
||||
name: non_kaku_not_inverted_by_type
|
||||
type: standard
|
||||
nonkaku_yyyyyyyy_z:
|
||||
name: non_kaku_not_inverted_by_default
|
||||
```
|
||||
|
||||
The configuration above shows that the `type` property may be omitted. When the ID starts with `newkaku`, the integration will make sure that the on and off commands are inverted. When the ID does not start with `newkaku`, the on and off commands are not inverted.
|
||||
|
||||
### Setting up a non-RTS cover
|
||||
|
||||
Configure `automatic_add` for the light domain (yes, the light domain)
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
light:
|
||||
- platform: rflink
|
||||
automatic_add: true
|
||||
```
|
||||
|
||||
When you press the remote buttons, a new light will show up in {% my entities title="the list of entities" %}.
|
||||
|
||||
Also you can enable rflink logs and look for the device_id, for example: `dooya_v4_654321_0f` or `brelmotor_3b35c7_47`.
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
logger:
|
||||
logs:
|
||||
rflink: debug
|
||||
homeassistant.components.rflink: debug
|
||||
```
|
||||
|
||||
Once the `device_id` is known, the light domain configuration can be removed and configure the device as a cover:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
cover:
|
||||
- platform: rflink
|
||||
devices:
|
||||
dooya_v4_654321_0f:
|
||||
name: "Room blinds"
|
||||
```
|
||||
|
||||
### Device support
|
||||
|
||||
See [device support](/integrations/rflink/#device-support).
|
||||
|
||||
## Additional configuration examples
|
||||
|
||||
Multiple covers with custom names and aliases
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
cover:
|
||||
- platform: rflink
|
||||
devices:
|
||||
RTS_0A8720_0:
|
||||
name: enanos
|
||||
aliases:
|
||||
- rts_31e53f_01
|
||||
- rts_32e53f_01
|
||||
RTS_30E542_0:
|
||||
name: comedor
|
||||
aliases:
|
||||
- rts_33e53f_01
|
||||
- rts_fa872e_01
|
||||
RTS_33E542_0:
|
||||
name: dormitorio
|
||||
aliases:
|
||||
- rts_30e53f_01
|
||||
- rts_32e53f_01
|
||||
RTS_32E542_0:
|
||||
name: habitaciones
|
||||
fire_event: true
|
||||
```
|
||||
|
||||
## Lights
|
||||
|
||||
After configuring the RFLink hub, lights will be automatically discovered and added.
|
||||
|
||||
RFLink binary_sensor/switch/light IDs are composed of: protocol, id, switch/channel. For example: `newkaku_0000c6c2_1`.
|
||||
|
||||
Once the ID of a light is known, it can be used to configure the light in HA, for example to add it to a different group or configure a nice name.
|
||||
|
||||
Configuring devices as a light:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
light:
|
||||
- platform: rflink
|
||||
devices:
|
||||
NewKaku_02a48800_0: {}
|
||||
newkaku_0000c6c2_1: {}
|
||||
Ansluta_ce30_0: {}
|
||||
Maclean_0d82_01: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
device_defaults:
|
||||
description: The defaults for the devices.
|
||||
required: false
|
||||
type: map
|
||||
keys:
|
||||
fire_event:
|
||||
description: Set default `fire_event` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: False
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Set default `signal_repetitions` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
automatic_add:
|
||||
description: Automatically add new/unconfigured devices to Home Assistant if detected.
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
devices:
|
||||
description: A list of lights.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name of the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
type:
|
||||
description: "Override automatically detected type of the light device, can be: switchable, dimmable, hybrid or toggle. See [Light Types](/integrations/light.rflink/#light-types) below."
|
||||
required: false
|
||||
default: switchable
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink IDs this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliases:
|
||||
description: "`aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: "`aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
fire_event:
|
||||
description: Fire a `button_pressed` event when this device is turned on or off.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Repeat every RFLink command this number of times.
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
group:
|
||||
description: Allow light to respond to group commands (ALLON/ALLOFF).
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
{% endconfiguration %}
|
||||
|
||||
### Light state
|
||||
|
||||
Initially the state of a light is unknown. When the light is turned on or off (via frontend or remote) the state is known and will be shown in the frontend.
|
||||
|
||||
Sometimes a light is controlled by multiple remotes, each remote has its own code programmed in the light. To allow tracking of the state when switched via other remotes add the corresponding remote codes as aliases:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
light:
|
||||
- platform: rflink
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
aliases:
|
||||
- newkaku_000000001_2
|
||||
- kaku_000001_a
|
||||
```
|
||||
|
||||
Any on/off command from any alias ID updates the current state of the light. However when sending a command through the frontend only the primary ID is used.
|
||||
|
||||
### Light types
|
||||
|
||||
Light devices can come in different forms. Some only switch on and off, other support dimming. Dimmable devices might not always respond nicely to repeated `on` command as they turn into a pulsating state until `on` is pressed again (for example KlikAanKlikUit). The RFLink integration support three types of lights to make things work in every situation:
|
||||
|
||||
- *Hybrid*: This type sends a `dim` followed by an `on` command; and `off` commands. This will make dimmable devices turn on at the requested dim level and on/off devices on. One caveat is this type is not compatible with signal repetition as multiple `on` signals will cause dimmers to go into disco mode.
|
||||
- *Switchable*: Device type that sends only `on` and `off` commands. It works for both on/off and dimmable type switches. However, dimmable devices might have issues with signal repetition (see above).
|
||||
- *Dimmable*: Sends only `dim` and `off` commands. This does not work on on/off type devices as they don't understand the `dim` command. For dimmers this does not cause issues with signal repetitions.
|
||||
- *Toggle*: Device type that sends only `on` commands to turn on or off the device. Some switches like for example Livolo light switches use the same 'on' command to switch on and switch off the lights. If the light is on and 'on' gets sent, the light will turn off and if the light is off and 'on' gets sent, the light will turn on. If the device has an unknown state, it will assume it is off by default.
|
||||
|
||||
By default new lights are assigned the `switchable` type. Protocol supporting dimming are assigned the `hybrid` type. Currently only `newkaku` protocol is detected as dimmable. Please refer to Device Support to get your dimmers supported.
|
||||
|
||||
### Hiding/ignoring lights
|
||||
|
||||
Lights are added automatically when the RFLink gateway intercepts a wireless command in the ether. To prevent cluttering the frontend use any of these methods:
|
||||
|
||||
- Disable automatically adding of unconfigured new sensors (set `automatic_add` to `false`).
|
||||
- Hide unwanted devices using [customizations](/getting-started/customizing-devices/)
|
||||
- [Ignore devices on a platform level](/integrations/rflink/#ignoring-devices)
|
||||
|
||||
### Device support
|
||||
|
||||
See [device support](/integrations/rflink/#device-support)
|
||||
|
||||
### Additional configuration examples
|
||||
|
||||
Multiple lights with `signal_repetitions` and custom names
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
light:
|
||||
- platform: rflink
|
||||
device_defaults:
|
||||
fire_event: true
|
||||
signal_repetitions: 2
|
||||
automatic_add: true
|
||||
devices:
|
||||
NewKaku_02a48800_0:
|
||||
name: Kitchen
|
||||
type: hybrid
|
||||
newkaku_0000c6c2_1:
|
||||
name: Living room
|
||||
aliases:
|
||||
- newkaku_000000001_2
|
||||
- kaku_000001_a
|
||||
Ansluta_ce30_0:
|
||||
name: Kitchen Under Counter Lights
|
||||
Maclean_0d82_01:
|
||||
name: Bedroom Lamp
|
||||
```
|
||||
|
||||
## Sensors
|
||||
|
||||
After configuring the RFLink hub, sensors will be automatically discovered and added.
|
||||
|
||||
RFLink sensor IDs are composed of: protocol, ID and type (optional). For example: `alectov1_0334_temp`. Some sensors emit multiple types of data. Each will be created as its own.
|
||||
|
||||
Once the ID of a sensor is known, it can be used to configure the sensor in Home Assistant, for example to add it to a different group or configure a nice name.
|
||||
|
||||
Configuring a device as a sensor:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: rflink
|
||||
devices:
|
||||
alectov1_0334_temp: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
automatic_add:
|
||||
description: Automatically add new/unconfigured devices to Home Assistant if detected.
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
devices:
|
||||
description: A list of sensors.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name of the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
sensor_type:
|
||||
description: Override automatically detected type of sensor. For list of [values](/integrations/sensor.rflink/#sensors-types) see below.
|
||||
required: true
|
||||
type: string
|
||||
unit_of_measurement:
|
||||
description: Override automatically detected unit of sensor.
|
||||
required: false
|
||||
type: string
|
||||
aliases:
|
||||
description: "Alternative RFLink IDs this device is known by."
|
||||
required: false
|
||||
type: [list, string]
|
||||
{% endconfiguration %}
|
||||
|
||||
### Sensor types
|
||||
|
||||
Sensor type values:
|
||||
|
||||
- average_windspeed
|
||||
- barometric_pressure
|
||||
- battery
|
||||
- co2_air_quality
|
||||
- command
|
||||
- current_phase_1
|
||||
- current_phase_2
|
||||
- current_phase_3
|
||||
- distance
|
||||
- doorbell_melody
|
||||
- firmware
|
||||
- hardware
|
||||
- humidity
|
||||
- humidity_status
|
||||
- kilowatt
|
||||
- light_intensity
|
||||
- meter_value
|
||||
- noise_level
|
||||
- rain_rate
|
||||
- revision
|
||||
- temperature
|
||||
- timestamp
|
||||
- total_rain
|
||||
- uv_intensity
|
||||
- version
|
||||
- voltage
|
||||
- watt
|
||||
- weather_forecast
|
||||
- windchill
|
||||
- winddirection
|
||||
- windgusts
|
||||
- windspeed
|
||||
- windtemp
|
||||
|
||||
### Hiding/ignoring sensors
|
||||
|
||||
Sensors are added automatically when the RFLink gateway intercepts a wireless command in the ether. To prevent cluttering the frontend use any of these methods:
|
||||
|
||||
- Disable automatically adding of unconfigured new sensors (set `automatic_add` to `false`).
|
||||
- [Ignore devices on a platform level](/integrations/rflink/#ignoring-devices)
|
||||
|
||||
### Device support
|
||||
|
||||
See [device support](/integrations/rflink/#device-support)
|
||||
|
||||
### Additional configuration examples
|
||||
|
||||
Multiple sensors with `automatic_add` disabled and `aliases`
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: rflink
|
||||
automatic_add: false
|
||||
devices:
|
||||
oregontemp_0d93_temp:
|
||||
sensor_type: temperature
|
||||
oregontemp_0d93_bat:
|
||||
sensor_type: battery
|
||||
tunex_c001_temp:
|
||||
sensor_type: temperature
|
||||
aliases:
|
||||
- xiron_4001_temp
|
||||
tunex_c001_hum:
|
||||
sensor_type: humidity
|
||||
aliases:
|
||||
- xiron_4001_hum
|
||||
tunex_c001_bat:
|
||||
sensor_type: battery
|
||||
aliases:
|
||||
- xiron_4001_bat
|
||||
```
|
||||
|
||||
## Switch
|
||||
|
||||
The RFLink integration does not know the difference between a `switch`, a `binary_sensor`, and a `light`. Therefore, all switchable devices are automatically added as `light` by default.
|
||||
|
||||
RFLink binary_sensor/switch/light IDs are composed of: protocol, id, switch/channel. For example: `newkaku_0000c6c2_1`.
|
||||
|
||||
Once the ID of a switch is known, it can be used to configure it as a switch type in HA and, for example, to add it to a different group or configure a nice name.
|
||||
|
||||
Configuring devices as switch :
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
- platform: rflink
|
||||
devices:
|
||||
newkaku_0000c6c2_1: {}
|
||||
conrad_00785c_0a: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
device_defaults:
|
||||
description: The defaults for the devices.
|
||||
required: false
|
||||
type: map
|
||||
keys:
|
||||
fire_event:
|
||||
description: Set default `fire_event` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: False
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Set default `signal_repetitions` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
devices:
|
||||
description: A list of switches.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name of the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink IDs this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliases:
|
||||
description: "`aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: "`aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
fire_event:
|
||||
description: Fire a `button_pressed` event if this device is turned on or off.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Set default `signal_repetitions` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
group:
|
||||
description: Allow switch to respond to group commands (ALLON/ALLOFF).
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
aliases:
|
||||
description: Alternative RFLink IDs this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliases:
|
||||
description: "`aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: "`aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
{% endconfiguration %}
|
||||
|
||||
### Switch state
|
||||
|
||||
Initially, the state of a switch is unknown. When the switch is turned on or off (via frontend or wireless remote) the state is known and will be shown in the frontend.
|
||||
|
||||
Sometimes a switch is controlled by multiple wireless remotes. Each remote has its own code programmed in the switch. To allow tracking of the state when switched via other remotes, add the corresponding remote codes as aliases:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
- platform: rflink
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
name: Ceiling fan
|
||||
aliases:
|
||||
- newkaku_000000001_2
|
||||
- kaku_000001_a
|
||||
```
|
||||
|
||||
Any on/off command from any alias ID updates the current state of the switch. However, when sending a command through the frontend only the primary ID is used.
|
||||
|
||||
### Device support
|
||||
|
||||
See [device support](/integrations/rflink/#device-support)
|
||||
|
||||
#### Additional configuration examples
|
||||
|
||||
Multiple switches with signal repetitions and custom names
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
- platform: rflink
|
||||
device_defaults:
|
||||
fire_event: true
|
||||
signal_repetitions: 2
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
name: Ceiling fan
|
||||
conrad_00785c_0a:
|
||||
name: Motion sensor kitchen
|
||||
```
|
||||
|
||||
|
||||
|
@ -41,7 +41,9 @@ There is currently support for the following device types within Home Assistant:
|
||||
- [Button](#button)
|
||||
- [Camera](#camera)
|
||||
- [Saving the videos captured by your Ring Door Bell](#saving-the-videos-captured-by-your-ring-door-bell)
|
||||
- [Event](#event)
|
||||
- [Sensor](#sensor)
|
||||
- [Siren](#siren)
|
||||
- [Switch](#switch)
|
||||
- [Light](#light)
|
||||
- [Number](#number)
|
||||
@ -159,9 +161,17 @@ Once you have enabled the [Ring integration](/integrations/ring), you can start
|
||||
|
||||
The volume sensors are being replaced with the number entity which allows setting the volume. You should migrate any automations using the volume sensors to the number entity by release 2025.4.0.
|
||||
|
||||
## Siren
|
||||
|
||||
- Adds a siren entity for every camera that supports a siren. Note the siren will only turn on for 30 seconds before automatically turning off.
|
||||
- Adds a siren entity for chimes to play the test sound.
|
||||
|
||||
## Switch
|
||||
|
||||
Once you have enabled the [Ring integration](/integrations/ring), you can start using the switch platform. This will add a switch for every camera that supports a siren. Note the siren will only turn on for 30 seconds before automatically turning off.
|
||||
Once you have enabled the [Ring integration](/integrations/ring), you can start using the switch platform.
|
||||
|
||||
- Motion detection - Switches motion detection on and off for cameras.
|
||||
- In-home chime - Switches on and off a mechanical or digital chime connected to a ring doorbell.
|
||||
|
||||
## Light
|
||||
|
||||
|
@ -166,7 +166,7 @@ object_id:
|
||||
required: false
|
||||
type: string
|
||||
options:
|
||||
description: List of allowed sensor state value. An empty list is not allowed. The sensor's `device_class` should be set to `enum`. Cannot be used together with `state_class` or `unit_of_measurement`.
|
||||
description: List of allowed sensor state value. An empty list is not allowed. The sensor's `device_class` must be set to `enum`. The `options` option cannot be used together with `state_class` or `unit_of_measurement`.
|
||||
required: false
|
||||
type: list
|
||||
payload_available:
|
||||
|
@ -1,143 +0,0 @@
|
||||
---
|
||||
title: "RFLink Sensor"
|
||||
description: "Instructions on how to integrate RFLink sensors into Home Assistant."
|
||||
ha_category:
|
||||
- Sensor
|
||||
ha_iot_class: Local Push
|
||||
ha_release: 0.38
|
||||
ha_domain: rflink
|
||||
---
|
||||
|
||||
The `rflink` integration supports devices that use [RFLink gateway firmware](https://www.rflink.nl/download.php), for example the [Nodo RFLink Gateway](https://www.nodo-shop.nl/21-rflink-). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
|
||||
## Configuration
|
||||
|
||||
First, you have to set up your [RFLink hub](/integrations/rflink/).
|
||||
|
||||
After configuring the RFLink hub, sensors will be automatically discovered and added.
|
||||
|
||||
RFLink sensor ID's are composed of: protocol, id and type (optional). For example: `alectov1_0334_temp`. Some sensors emit multiple types of data. Each will be created as its own.
|
||||
|
||||
Once the ID of a sensor is known, it can be used to configure the sensor in Home Assistant, for example to add it to a different group or configure a nice name.
|
||||
|
||||
Configuring a device as a sensor:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: rflink
|
||||
devices:
|
||||
alectov1_0334_temp: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
automatic_add:
|
||||
description: Automatically add new/unconfigured devices to Home Assistant if detected.
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
devices:
|
||||
description: A list of sensors.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
sensor_type:
|
||||
description: Override automatically detected type of sensor. For list of [values](/integrations/sensor.rflink/#sensors-types) see below.
|
||||
required: true
|
||||
type: string
|
||||
unit_of_measurement:
|
||||
description: Override automatically detected unit of sensor.
|
||||
required: false
|
||||
type: string
|
||||
aliases:
|
||||
description: "Alternative RFLink ID's this device is known by."
|
||||
required: false
|
||||
type: [list, string]
|
||||
{% endconfiguration %}
|
||||
|
||||
## Sensor types
|
||||
|
||||
Sensor type values:
|
||||
|
||||
- average_windspeed
|
||||
- barometric_pressure
|
||||
- battery
|
||||
- co2_air_quality
|
||||
- command
|
||||
- current_phase_1
|
||||
- current_phase_2
|
||||
- current_phase_3
|
||||
- distance
|
||||
- doorbell_melody
|
||||
- firmware
|
||||
- hardware
|
||||
- humidity
|
||||
- humidity_status
|
||||
- kilowatt
|
||||
- light_intensity
|
||||
- meter_value
|
||||
- noise_level
|
||||
- rain_rate
|
||||
- revision
|
||||
- temperature
|
||||
- timestamp
|
||||
- total_rain
|
||||
- uv_intensity
|
||||
- version
|
||||
- voltage
|
||||
- watt
|
||||
- weather_forecast
|
||||
- windchill
|
||||
- winddirection
|
||||
- windgusts
|
||||
- windspeed
|
||||
- windtemp
|
||||
|
||||
## Hiding/ignoring sensors
|
||||
|
||||
Sensors are added automatically when the RFLink gateway intercepts a wireless command in the ether. To prevent cluttering the frontend use any of these methods:
|
||||
|
||||
- Disable automatically adding of unconfigured new sensors (set `automatic_add` to `false`).
|
||||
- [Ignore devices on a platform level](/integrations/rflink/#ignoring-devices)
|
||||
|
||||
## Device support
|
||||
|
||||
See [device support](/integrations/rflink/#device-support)
|
||||
|
||||
## Additional configuration examples
|
||||
|
||||
Multiple sensors with `automatic_add` disabled and `aliases`
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: rflink
|
||||
automatic_add: false
|
||||
devices:
|
||||
oregontemp_0d93_temp:
|
||||
sensor_type: temperature
|
||||
oregontemp_0d93_bat:
|
||||
sensor_type: battery
|
||||
tunex_c001_temp:
|
||||
sensor_type: temperature
|
||||
aliases:
|
||||
- xiron_4001_temp
|
||||
tunex_c001_hum:
|
||||
sensor_type: humidity
|
||||
aliases:
|
||||
- xiron_4001_hum
|
||||
tunex_c001_bat:
|
||||
sensor_type: battery
|
||||
aliases:
|
||||
- xiron_4001_bat
|
||||
```
|
@ -203,14 +203,14 @@ state_off:
|
||||
description: The payload that represents the `off` state. Used when value that represents `off` state in the `state_topic` is different from value that should be sent to the `command_topic` to turn the device `off`.
|
||||
required: false
|
||||
type: string
|
||||
default: "`payload_off` if defined, else OFF"
|
||||
default: "`payload_off` if defined, else `OFF`"
|
||||
state_on:
|
||||
description: The payload that represents the `on` state. Used when value that represents `on` state in the `state_topic` is different from value that should be sent to the `command_topic` to turn the device `on`.
|
||||
required: false
|
||||
type: string
|
||||
default: "`payload_on` if defined, else ON"
|
||||
default: "`payload_on` if defined, else `ON`"
|
||||
state_topic:
|
||||
description: The MQTT topic subscribed to receive state updates. A "None" payload resets to an `unknown` state. An empty payload is ignored.
|
||||
description: The MQTT topic subscribed to receive state updates. A "None" payload resets to an `unknown` state. An empty payload is ignored.By default, valid state payloads are `OFF` and `ON`. The accepted payloads can be overridden with the `payload_off` and `payload_on` config options.
|
||||
required: false
|
||||
type: string
|
||||
unique_id:
|
||||
@ -260,7 +260,7 @@ For a check, you can use the command line tools `mosquitto_pub` shipped with `mo
|
||||
mosquitto_pub -h 127.0.0.1 -t home/bedroom/switch1/available -m "online"
|
||||
```
|
||||
|
||||
We can simulate the switch being turned on by publishing the "ON" command message:
|
||||
We can simulate the switch being turned on by publishing the `ON` command message:
|
||||
|
||||
```bash
|
||||
mosquitto_pub -h 127.0.0.1 -t home/bedroom/switch1/set -m "ON"
|
||||
|
@ -1,144 +0,0 @@
|
||||
---
|
||||
title: "RFLink Switch"
|
||||
description: "Instructions on how to integrate RFLink switches into Home Assistant."
|
||||
ha_category:
|
||||
- Switch
|
||||
ha_iot_class: Assumed State
|
||||
ha_release: 0.38
|
||||
ha_domain: rflink
|
||||
---
|
||||
|
||||
The `rflink` integration supports devices that use [RFLink gateway firmware](https://www.rflink.nl/download.php), for example, the [Nodo RFLink Gateway](https://www.nodo-shop.nl/21-rflink-). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
|
||||
First, you have to set up your [RFLink hub](/integrations/rflink/).
|
||||
|
||||
The RFLink integration does not know the difference between a `switch`, a `binary_sensor` and a `light`. Therefore all switchable devices are automatically added as `light` by default.
|
||||
|
||||
RFLink binary_sensor/switch/light ID's are composed of: protocol, id, switch/channel. For example: `newkaku_0000c6c2_1`.
|
||||
|
||||
Once the ID of a switch is known, it can be used to configure it as a switch type in HA and, for example, to add it to a different group or configure a nice name.
|
||||
|
||||
Configuring devices as switch :
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
- platform: rflink
|
||||
devices:
|
||||
newkaku_0000c6c2_1: {}
|
||||
conrad_00785c_0a: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
device_defaults:
|
||||
description: The defaults for the devices.
|
||||
required: false
|
||||
type: map
|
||||
keys:
|
||||
fire_event:
|
||||
description: Set default `fire_event` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: False
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Set default `signal_repetitions` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
devices:
|
||||
description: A list of switches.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink ID's this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliases:
|
||||
description: "`aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: "`aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
fire_event:
|
||||
description: Fire a `button_pressed` event if this device is turned on or off.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Set default `signal_repetitions` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
group:
|
||||
description: Allow switch to respond to group commands (ALLON/ALLOFF).
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
aliases:
|
||||
description: Alternative RFLink ID's this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliases:
|
||||
description: "`aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: "`aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
{% endconfiguration %}
|
||||
|
||||
## Switch state
|
||||
|
||||
Initially, the state of a switch is unknown. When the switch is turned on or off (via frontend or wireless remote) the state is known and will be shown in the frontend.
|
||||
|
||||
Sometimes a switch is controlled by multiple wireless remotes, each remote has its own code programmed in the switch. To allow tracking of the state when switched via other remotes add the corresponding remote codes as aliases:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
- platform: rflink
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
name: Ceiling fan
|
||||
aliases:
|
||||
- newkaku_000000001_2
|
||||
- kaku_000001_a
|
||||
```
|
||||
|
||||
Any on/off command from any alias ID updates the current state of the switch. However, when sending a command through the frontend only the primary ID is used.
|
||||
|
||||
## Device support
|
||||
|
||||
See [device support](/integrations/rflink/#device-support)
|
||||
|
||||
### Additional configuration examples
|
||||
|
||||
Multiple switches with signal repetitions and custom names
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
- platform: rflink
|
||||
device_defaults:
|
||||
fire_event: true
|
||||
signal_repetitions: 2
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
name: Ceiling fan
|
||||
conrad_00785c_0a:
|
||||
name: Motion sensor kitchen
|
||||
```
|
@ -1,13 +0,0 @@
|
||||
---
|
||||
title: "Xiaomi Switch"
|
||||
description: "Instructions on how to set up the Xiaomi switch within Home Assistant."
|
||||
ha_category:
|
||||
- Switch
|
||||
ha_release: "0.50"
|
||||
ha_iot_class: Local Push
|
||||
ha_domain: xiaomi_aqara
|
||||
---
|
||||
|
||||
The `xiaomi_aqara` switch platform allows you to get data from your [Xiaomi aqara](https://www.mi.com/en/) switches.
|
||||
|
||||
The requirement is that you have set up [Xiaomi aqara](/integrations/xiaomi_aqara/).
|
@ -23,7 +23,13 @@ memory usage, CPU usage, and running processes.
|
||||
|
||||
## Sensors
|
||||
|
||||
**All entities are disabled by default, you need to enable the entities that you wish to use.**
|
||||
{% note %}
|
||||
|
||||
All entities are disabled by default, you need to enable the entities that you wish to use.
|
||||
|
||||
All sensors are also marked as diagnostic and won't be automatically added to automatic dashboards.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
### Disks
|
||||
|
||||
@ -63,7 +69,11 @@ The `process` binary sensor needs to be configured by the config entry options.
|
||||
|
||||
## Disk usage
|
||||
|
||||
**Note:** The disk usage sensors do not support monitoring folder/directory sizes. Instead, it is only concerned with "disks" (more specifically mount points on Linux).
|
||||
{% note %}
|
||||
|
||||
The disk usage sensors do not support monitoring folder/directory sizes. Instead, it is only concerned with "disks" (more specifically mount points on Linux).
|
||||
|
||||
{% endnote %}
|
||||
|
||||
```bash
|
||||
$ df -H
|
||||
|
@ -137,7 +137,6 @@ These are the entities available in the Tesla Fleet integration. Not all entitie
|
||||
|Sensor|Distance to arrival|Yes|
|
||||
|Sensor|Driver temperature setting|No|
|
||||
|Sensor|Estimate battery range|No|
|
||||
|Sensor|Exterior color|No|
|
||||
|Sensor|Fast charger type|No|
|
||||
|Sensor|Ideal battery range|No|
|
||||
|Sensor|Inside temperature|Yes|
|
||||
@ -145,23 +144,13 @@ These are the entities available in the Tesla Fleet integration. Not all entitie
|
||||
|Sensor|Outside temperature|Yes|
|
||||
|Sensor|Passenger temperature setting|No|
|
||||
|Sensor|Power|No|
|
||||
|Sensor|Roof color|No|
|
||||
|Sensor|Scheduled charging mode|No|
|
||||
|Sensor|Scheduled charging start time|No|
|
||||
|Sensor|Scheduled departure time|No|
|
||||
|Sensor|Shift state|No|
|
||||
|Sensor|Speed|No|
|
||||
|Sensor|State of charge at arrival|No|
|
||||
|Sensor|Time at arrival|Yes|
|
||||
|Sensor|Time at full charge|Yes|
|
||||
|Sensor|Time to arrival|Yes|
|
||||
|Sensor|Time to full charge|Yes|
|
||||
|Sensor|Tire pressure front left|No|
|
||||
|Sensor|Tire pressure front right|No|
|
||||
|Sensor|Tire pressure last measured front left|No|
|
||||
|Sensor|Tire pressure last measured front right|No|
|
||||
|Sensor|Tire pressure last measured rear left|No|
|
||||
|Sensor|Tire pressure last measured rear right|No|
|
||||
|Sensor|Tire pressure rear left|No|
|
||||
|Sensor|Tire pressure rear right|No|
|
||||
|Sensor|Traffic delay|No|
|
||||
|
@ -51,6 +51,8 @@ All configuration options are offered from the front end. Enter what UniFi Netwo
|
||||
|
||||
The UniFi Network application allows you to create multiple users on it besides the main administrator. If all you want to use is the device tracker then it is recommended that you create a limited user that has `read-only` permissions for the UniFi Network device tracker. If you want blocking of network access, POE control, or firmware upgrades as well you would need to have 'admin' permissions.
|
||||
|
||||
If you want to create a local-only user, you need to switch to the classic UniFi interface for the option to become available.
|
||||
|
||||
### UniFi OS
|
||||
|
||||
For UniFi OS a local-only user needs to be created. A user who uses the Ubiquiti cloud will not work. You can do this in the manage users section on the UniFi OS dashboard. Make sure to give it the right permissions for the functions you want to use. Note the Dream Machine Pro and Cloud Key Gen2 plus updated to UniFi OS needs the port to be 443. For some self hosted servers the port will be 8443.
|
||||
|
@ -260,10 +260,15 @@ The {% term integrations %} provides two proxy views to proxy media content from
|
||||
|
||||
These URLs work great when trying to send notifications. Home Assistant will automatically sign the URLs and make them safe for external consumption if used in an {% term automation %} or [notify action](/integrations/notify/).
|
||||
|
||||
| View URL | Description |
|
||||
| ------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `/api/unifiprotect/thumbnail/{nvr_id}/{event_id}` | Proxies a JPEG event thumbnail from UniFi Protect. |
|
||||
| `/api/unifiprotect/video/{nvr_id}/{camera_id}/{start}/{end}` | Proxies a MP4 video clip from UniFi Protect for a specific camera. Start and end must be in [ISO 8601 format](https://www.iso.org/iso-8601-date-and-time-format.html). |
|
||||
Two URLs for proxy API endpoints:
|
||||
|
||||
`/api/unifiprotect/thumbnail/{nvr_id}/{event_id}:`
|
||||
|
||||
- Proxies a JPEG event thumbnail from UniFi Protect.
|
||||
|
||||
`/api/unifiprotect/video/{nvr_id}/{camera_id}/{start}/{end}`:
|
||||
|
||||
- Proxies a MP4 video clip from UniFi Protect for a specific camera. Start and end must be in [ISO 8601 format](https://www.iso.org/iso-8601-date-and-time-format.html).
|
||||
|
||||
`nvr_id` can either be the UniFi Protect ID of your NVR or the config entry ID for your UniFi Protect {% term integrations %}. `camera_id` can either be the UniFi Protect ID of your camera or an entity ID of any {% term entity %} provided by the UniFi Protect {% term integrations %} that can be reversed to a UniFi Protect camera (i.e., an entity ID of a detected object sensor).
|
||||
|
||||
|
@ -1,8 +1,9 @@
|
||||
---
|
||||
title: Xiaomi
|
||||
description: Instructions on how to integrate a video feed (via FFmpeg) as a camera within Home Assistant.
|
||||
description: Instructions on how to integrate a video feed (via FFmpeg) as a camera as well as a router within Home Assistant.
|
||||
ha_category:
|
||||
- Camera
|
||||
- Presence detection
|
||||
ha_release: 0.72
|
||||
ha_iot_class: Local Polling
|
||||
ha_domain: xiaomi
|
||||
@ -10,22 +11,31 @@ ha_platforms:
|
||||
- camera
|
||||
- device_tracker
|
||||
ha_integration_type: integration
|
||||
related:
|
||||
- docs: /docs/configuration/
|
||||
title: configuration.yaml file
|
||||
---
|
||||
|
||||
The `Xiaomi` camera platform allows you to utilize Xiaomi Cameras within Home Assistant.
|
||||
This section shows you how to integrate a [Xiaomi router](http://miwifi.com) or a Xiaomi camera into Home Assistant.
|
||||
|
||||
To successfully implement this platform, the Home Assistant host should be capable of multiple simultaneous reads. For every concurrent Home Assistant user, a connection will be made to the camera every 10 seconds. This should normally not be a problem.
|
||||
## Camera
|
||||
|
||||
## Preparing the device
|
||||
The **Xiaomi** camera integration allows you to utilize Xiaomi cameras within Home Assistant.
|
||||
|
||||
In order to integrate the camera with Home Assistant, it is necessary to install a custom firmware on the device. Instructions for doing so can be found for each models.
|
||||
### Prerequisites
|
||||
|
||||
- [Yi 720p](https://github.com/fritz-smh/yi-hack)
|
||||
- [Yi Home 17CN / 27US / 47US / 1080p Home / Dome / 1080p Dome](https://github.com/shadow-1/yi-hack-v3)
|
||||
- [Recent Yi 1080p Home / 1080p Dome](https://github.com/roleoroleo/yi-hack-MStar)
|
||||
- [Xiaofang 1080p Camera](https://github.com/samtap/fang-hacks)
|
||||
- To successfully implement this integration, the Home Assistant host should be capable of multiple simultaneous reads.
|
||||
- For every concurrent Home Assistant user, a connection will be made to the camera every 10 seconds. This should normally not be a problem.
|
||||
|
||||
Once installed, please ensure that you have enabled FTP.
|
||||
#### Preparing the device
|
||||
|
||||
1. In order to integrate the camera with Home Assistant, it is necessary to install a custom firmware on the device.
|
||||
- To install the firmware, follow the steps in the model-specific documentation:
|
||||
- [Yi 720p](https://github.com/fritz-smh/yi-hack)
|
||||
- [Yi Home 17CN / 27US / 47US / 1080p Home / Dome / 1080p Dome](https://github.com/shadow-1/yi-hack-v3)
|
||||
- [Recent Yi 1080p Home / 1080p Dome](https://github.com/roleoroleo/yi-hack-MStar)
|
||||
- [Xiaofang 1080p Camera](https://github.com/samtap/fang-hacks)
|
||||
2. Once installed, make sure you have enabled FTP.
|
||||
|
||||
{% warning %}
|
||||
Currently, version 0.1.4-beta2 of the custom firmware is the highest supported. Firmwares higher than this version use [Pure-FTPd](https://www.pureftpd.org/project/pure-ftpd), which has a bug that prevents FFmpeg from correctly rendering video files.
|
||||
@ -43,9 +53,9 @@ The live stream writing by the camera is not a supported format when Home Assist
|
||||
If you enabled RTSP server, you can connect to your camera via other Home Assistant camera platforms. However, this RTSP server disables the ability to use the supremely-useful Mi Home app. In order to maintain both Home Assistant compatibility _and_ the native app, this platform retrieves videos via FTP.
|
||||
{% endtip %}
|
||||
|
||||
## Configuring the platform
|
||||
### Configuration
|
||||
|
||||
To enable the platform, add the following lines to your`configuration.yaml` file:
|
||||
To enable the camera, add the following lines to your {% term "`configuration.yaml`" %} file:
|
||||
|
||||
```yaml
|
||||
camera:
|
||||
@ -93,7 +103,7 @@ ffmpeg_arguments:
|
||||
The default for `path:` will not work with all cameras. It may be needed that you add that key with the exact path for your device.
|
||||
{% endimportant %}
|
||||
|
||||
## Image quality
|
||||
### Image quality
|
||||
|
||||
Any option supported by [`ffmpeg` camera](/integrations/camera.ffmpeg/) can be utilized via the `ffmpeg_arguments` configuration parameter.
|
||||
|
||||
@ -109,7 +119,8 @@ camera:
|
||||
path: /home/camera/feed
|
||||
ffmpeg_arguments: "-vf scale=800:450"
|
||||
```
|
||||
## Hostname template
|
||||
|
||||
### Hostname template
|
||||
|
||||
The hostname/IP address can be provided either a value or from the existing {% term entity %} attributes.
|
||||
|
||||
@ -122,3 +133,44 @@ camera:
|
||||
password: 1234
|
||||
path: /tmp/sd/record
|
||||
```
|
||||
|
||||
## Router
|
||||
|
||||
The **Xiaomi** router integration offers presence detection by looking at connected devices to a [Xiaomi](http://miwifi.com) router.
|
||||
|
||||
### Configuration
|
||||
|
||||
To use an Xiaomi router in your installation, add the following to your {% term "`configuration.yaml`" %} file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
device_tracker:
|
||||
- platform: xiaomi
|
||||
host: YOUR_ROUTER_IP
|
||||
password: YOUR_ADMIN_PASSWORD
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
host:
|
||||
description: "The IP address of your router, e.g., `192.168.0.1`."
|
||||
required: true
|
||||
type: string
|
||||
username:
|
||||
description: The admin username.
|
||||
required: false
|
||||
default: admin
|
||||
type: string
|
||||
password:
|
||||
description: The password for the admin account.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
See the [device tracker integration page](/integrations/device_tracker/) for instructions how to configure the people to be tracked.
|
||||
|
||||
### Compatibility test
|
||||
|
||||
To ensure that your router is compatible, navigate to `http://YOUR_ROUTER_IP/api/misystem/devicelist`.
|
||||
You should see a listing of the device currently connected to your router.
|
||||
|
||||
However, some users report that even when the previous URL does not work, they have been able to integrate their Mi Router 3 in Home Assistant. E.g., some users with the Mi Router 3 and firmware version 2.10.46 Stable have integrated their routers successfully and an alternative URL to test integration with is `http://YOUR_ROUTER_IP/cgi-bin/luci/api/misystem/devicelist`. Navigating to this page should show the `{"code":401,"msg":"Invalid token"}` message.
|
||||
|
@ -23,7 +23,12 @@ ha_integration_type: integration
|
||||
|
||||
The **Xiaomi Gateway (Aqara)** {% term integration %} allows you to integrate [Xiaomi](https://www.mi.com/en/) Aqara-compatible devices into Home Assistant.
|
||||
|
||||
Please note, there are two versions of the hub: v1 and v2. v1 can be used with Home Assistant without any problems, however, v2 might be less straight forward when it comes to enabling the local API, and might even require you to open up your device in order to do so. Xiaomi has suggested this is in the pipeline.
|
||||
{% note %}
|
||||
There are two versions of the hub: v1 and v2.
|
||||
|
||||
- v1 can be used with Home Assistant without any problems.
|
||||
- v2 might be less straightforward when it comes to enabling the local API. It might even require you to open up your device to do so. Xiaomi has suggested this is in the pipeline. If you have a Hub 2 and are experiencing issues, check out the [troubleshooting](#troubleshooting) section.
|
||||
{% endnote %}
|
||||
|
||||
## Supported devices
|
||||
|
||||
@ -84,19 +89,532 @@ name:
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### Actions
|
||||
## Entities
|
||||
|
||||
The Xiaomi Gateway (Aqara) integration supports the following entities.
|
||||
|
||||
### Covers
|
||||
|
||||
The cover entity allows you to control connected Aquara covers. You can do the following:
|
||||
|
||||
- Open the cover.
|
||||
- Close the cover.
|
||||
- Stop the cover motion.
|
||||
- Move the cover to a specific position.
|
||||
- See the current position of the cover.
|
||||
|
||||
### Lights
|
||||
|
||||
The light entity allows you to control the internal light of the Xiaomi gateway. The entity is called `light.gateway_light_28ffffffffff`. You can do the following:
|
||||
|
||||
- Turn the light on and off.
|
||||
- Set the brightness.
|
||||
- Set the color using HS or RGB color coding.
|
||||
|
||||
The requirement is that you have setup [Xiaomi aqara](/integrations/xiaomi_aqara/).
|
||||
|
||||
### Locks
|
||||
|
||||
An Aqara lock cannot be controlled by Home Assistant. However, the lock entity allows you to view the following data:
|
||||
|
||||
- The property `changed_by` provides the user/key ID of the last successful unlock.
|
||||
|
||||
- If someone tries to unlock the device but fails more than 3 times, the `verified_wrong_times` attribute will be incremented. The counter resets on a successful unlock.
|
||||
|
||||
### Binary sensors
|
||||
|
||||
The binary sensor entities allow you to get data from your [Xiaomi](https://www.mi.com/en/) binary sensors.
|
||||
|
||||
#### Type of binary sensors supported
|
||||
|
||||
List of supported binary sensors, including the following properties (if available): name, model no., Zigbee entity, states, and, event, event, key, and event values.
|
||||
|
||||
- **Motion Sensor (1st gen)**
|
||||
- Model no.: RTCGQ01LM
|
||||
- Zigbee entity: motion
|
||||
- States: on, off
|
||||
- Event: `xiaomi_aqara.motion`
|
||||
|
||||
- **Motion Sensor (2nd gen)**
|
||||
- Model no.: RTCGQ11LM
|
||||
- Zigbee entity: sensor_motion.aq2
|
||||
- States: on, off
|
||||
- Event: `xiaomi_aqara.motion`
|
||||
|
||||
- **Xiaomi Door and Window Sensor (1st gen)**
|
||||
- Model no.: MCCGQ01LM
|
||||
- Zigbee entity: magnet
|
||||
- States: on, off
|
||||
|
||||
- **Aqara Door and Window Sensor (2nd gen)**
|
||||
- Model no.: MCCGQ11LM
|
||||
- Zigbee entity: sensor_magnet.aq2
|
||||
- States: on, off
|
||||
|
||||
- **Smoke Detector**
|
||||
- Model no.: JTYJ-GD-01LM/BW
|
||||
- Zigbee entity: smoke
|
||||
- States: on, off
|
||||
|
||||
- **Gas Leak Detector**
|
||||
- Model no.: JTQJ-BF-01LM/BW
|
||||
- Zigbee entity: natgas
|
||||
- States: on, off
|
||||
|
||||
- **Water Leak Sensor**
|
||||
- Model no.: SJCGQ11LM
|
||||
- Zigbee entity: sensor_wleak.aq1
|
||||
- States: on, off
|
||||
|
||||
- **Button (1st gen)**
|
||||
- Model no.: WXKG01LM
|
||||
- Zigbee entity: switch
|
||||
- States: on (through long_click_press), off
|
||||
- Event: `xiaomi_aqara.click`
|
||||
- Event key: `click_type`
|
||||
- Event values: `long_click_press`, `hold`, `single`, `double`
|
||||
|
||||
- **Button (2nd gen)**
|
||||
- Model no.: WXKG11LM
|
||||
- Zigbee entity: sensor_switch.aq2, remote.b1acn01
|
||||
- States: on (through long_click_press), off
|
||||
- Event: `xiaomi_aqara.click`
|
||||
- Event key: `click_type`
|
||||
- Event values: `single`, `double`, `long_click_press`, `hold`
|
||||
|
||||
- **Button (2nd gen, model b)**
|
||||
- Model no.: WXKG12LM
|
||||
- Zigbee entity: sensor_switch.aq3
|
||||
- States: off (always)
|
||||
- Event: `xiaomi_aqara.click`
|
||||
- Event key: `click_type`
|
||||
- Event values: `single`, `double`, `long_click_press`, `shake`
|
||||
|
||||
- **Aqara Wireless Switch (Single)**
|
||||
- Model no.: WXKG03LM
|
||||
- Zigbee entity: 86sw1
|
||||
- States: off (always)
|
||||
- Event: `xiaomi_aqara.click`
|
||||
- Event key: `click_type`
|
||||
- Event values: `single`
|
||||
|
||||
- **Aqara Wireless Switch (Double)**
|
||||
- Model no.: WXKG02LM
|
||||
- Zigbee entity: 86sw2
|
||||
- States: off (always)
|
||||
- Event: `xiaomi_aqara.click`
|
||||
- Event key: `click_type`
|
||||
- Event values: `single`, `both`
|
||||
|
||||
- **Aqara Wireless Switch (Single) (2nd gen)**
|
||||
- Model no.: WXKG03LM
|
||||
- Zigbee entity: remote.b186acn01
|
||||
- States: off (always)
|
||||
- Event: `xiaomi_aqara.click`
|
||||
- Event key: `click_type`
|
||||
- Event values: `single`, `double`, `long`
|
||||
|
||||
- **Aqara Wireless Switch (Double) (2nd gen)**
|
||||
- Model no.: WXKG02LM
|
||||
- Zigbee entity: remote.b286acn01
|
||||
- States: off (always)
|
||||
- Event: `xiaomi_aqara.click`
|
||||
- Event key: `click_type`
|
||||
- Event values: `single`, `double`, `long`, `both`, `double_both`, `long_both`
|
||||
|
||||
- **Cube**
|
||||
- Model no.: MFKZQ01LM
|
||||
- Zigbee entity: cube
|
||||
- States: off (always)
|
||||
- Event: `xiaomi_aqara.cube_action`
|
||||
- Event key: `action_type`, `action_value` (rotate)
|
||||
- Event values: `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swing`, `alert`, `free_fall`, `rotate` (degrees at action_value)
|
||||
|
||||
- **Vibration Sensor**
|
||||
- Model no.: DJT11LM
|
||||
- Zigbee entity: vibration
|
||||
- States: off (always)
|
||||
- Event: `xiaomi_aqara.movement`
|
||||
- Event key: `movement_type`
|
||||
- Event values: `vibrate`, `tilt`, `free_fall`
|
||||
|
||||
#### Automation examples for binary sensors
|
||||
|
||||
##### Motion
|
||||
|
||||
```yaml
|
||||
- alias: "If there is motion and it's dark turn on the gateway light"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.motion_sensor_158d000xxxxxc2
|
||||
from: "off"
|
||||
to: "on"
|
||||
conditions:
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.illumination_34ce00xxxx11
|
||||
below: 300
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_34ce00xxxx11
|
||||
data:
|
||||
brightness: 5
|
||||
- action: automation.turn_on
|
||||
target:
|
||||
entity_id: automation.MOTION_OFF
|
||||
- alias: "If there no motion for 5 minutes turn off the gateway light"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.motion_sensor_158d000xxxxxc2
|
||||
from: "on"
|
||||
to: "off"
|
||||
for:
|
||||
minutes: 5
|
||||
actions:
|
||||
- action: light.turn_off
|
||||
target:
|
||||
entity_id: light.gateway_light_34ce00xxxx11
|
||||
- action: automation.turn_off
|
||||
target:
|
||||
entity_id: automation.Motion_off
|
||||
```
|
||||
|
||||
##### Door and/or indow binary sensors
|
||||
|
||||
```yaml
|
||||
- alias: "If the window is open turn off the radiator"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.door_window_sensor_158d000xxxxxc2
|
||||
from: "off"
|
||||
to: "on"
|
||||
actions:
|
||||
- action: climate.set_operation_mode
|
||||
target:
|
||||
entity_id: climate.livingroom
|
||||
data:
|
||||
operation_mode: "Off"
|
||||
- alias: "If the window is closed for 5 minutes turn on the radiator again"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.door_window_sensor_158d000xxxxxc2
|
||||
from: "on"
|
||||
to: "off"
|
||||
for:
|
||||
minutes: 5
|
||||
actions:
|
||||
- action: climate.set_operation_mode
|
||||
target:
|
||||
entity_id: climate.livingroom
|
||||
data:
|
||||
operation_mode: "Smart schedule"
|
||||
- alias: "Notify if door is opened when away"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.door_window_sensor_15xxxxxxc9xx6b
|
||||
from: "off"
|
||||
to: "on"
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: "not_home"
|
||||
actions:
|
||||
- action: notify.notify_person
|
||||
data:
|
||||
message: "The door has been opened"
|
||||
```
|
||||
|
||||
#### Smoke
|
||||
|
||||
```yaml
|
||||
- alias: "Send notification on fire alarm"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.smoke_sensor_158d0001574899
|
||||
from: "off"
|
||||
to: "on"
|
||||
actions:
|
||||
- action: notify.html5
|
||||
data:
|
||||
title: "Fire alarm!"
|
||||
message: "Fire/Smoke detected!"
|
||||
- action: xiaomi_aqara.play_ringtone
|
||||
data:
|
||||
gw_mac: xxxxxxxxxxxx
|
||||
ringtone_id: 2
|
||||
ringtone_vol: 100
|
||||
```
|
||||
|
||||
#### Gas
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
- alias: "Send notification on gas alarm"
|
||||
triggers:
|
||||
- trigger: state
|
||||
entity_id: binary_sensor.natgas_sensor_158dxxxxxxxxxx
|
||||
from: "off"
|
||||
to: "on"
|
||||
actions:
|
||||
- action: notify.html5
|
||||
data:
|
||||
title: "Gas alarm!"
|
||||
message: "Gas with a density of {{ state_attr('binary_sensor.natgas_sensor_158dxxxxxxxxxx', 'density') }} detected."
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
#### Xiaomi Wireless Button
|
||||
|
||||
There are 3 versions of the Xiaomi Wireless button:
|
||||
|
||||
- For the round shaped button, the available events are `single`, `double`, `hold`, `long_click_press` and `long_click_release`.
|
||||
- Aqara branded buttons are square shaped. Model WXKG11LM only supports `single`, `double`, `long_click_press`and `hold` events. WXKG12LM supports `single`, `double`, `long_click_press` and `shake` events.
|
||||
|
||||
For the Aqara versions, the delay between two clicks to generate a double-click must be larger than with the round button. Clicking too quickly generates a single-click event.
|
||||
|
||||
```yaml
|
||||
- alias: "Toggle dining light on single press"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.switch_158d000xxxxxc2
|
||||
click_type: single
|
||||
actions:
|
||||
- action: switch.toggle
|
||||
target:
|
||||
entity_id: switch.wall_switch_left_158d000xxxxx01
|
||||
- alias: "Toggle couch light on double click"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.switch_158d000xxxxxc2
|
||||
click_type: double
|
||||
actions:
|
||||
- action: switch.toggle
|
||||
target:
|
||||
entity_id: switch.wall_switch_right_158d000xxxxx01
|
||||
- alias: "Let a dog bark on long press"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.switch_158d000xxxxxc2
|
||||
click_type: long_click_press
|
||||
actions:
|
||||
- action: xiaomi_aqara.play_ringtone
|
||||
data:
|
||||
gw_mac: xxxxxxxxxxxx
|
||||
ringtone_id: 8
|
||||
ringtone_vol: 8
|
||||
```
|
||||
|
||||
##### Xiaomi Cube
|
||||
|
||||
Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swing`, `alert`, `free_fall` and `rotate`. The integration stores the last action as the attribute `last_action`.
|
||||
|
||||
```yaml
|
||||
- alias: "Cube event flip90"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.cube_action
|
||||
event_data:
|
||||
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
||||
action_type: flip90
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_28xxxxxxxxxx
|
||||
data:
|
||||
color_name: "springgreen"
|
||||
- alias: "Cube event flip180"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.cube_action
|
||||
event_data:
|
||||
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
||||
action_type: flip180
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_28xxxxxxxxxx
|
||||
data:
|
||||
color_name: "darkviolet"
|
||||
- alias: "Cube event move"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.cube_action
|
||||
event_data:
|
||||
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
||||
action_type: move
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_28xxxxxxxxxx
|
||||
data:
|
||||
color_name: "gold"
|
||||
- alias: "Cube event tap_twice"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.cube_action
|
||||
event_data:
|
||||
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
||||
action_type: tap_twice
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_28xxxxxxxxxx
|
||||
data:
|
||||
color_name: "deepskyblue"
|
||||
- alias: "Cube event shake_air"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.cube_action
|
||||
event_data:
|
||||
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
||||
action_type: shake_air
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_28xxxxxxxxxx
|
||||
data:
|
||||
color_name: "blue"
|
||||
```
|
||||
|
||||
##### Aqara Wireless Switch
|
||||
|
||||
The Aqara Wireless Switch is available as single-key and double-key version. Each key behaves like the Wireless Button limited to the click event `single`. The double key version adds a third device called `binary_sensor.wall_switch_both_158xxxxxxxxx12` which reports a click event called `both` if both keys are pressed.
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
- alias: "Decrease brightness of the gateway light"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.wall_switch_left_158xxxxxxxxx12
|
||||
click_type: single
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_34xxxxxxxx13
|
||||
data:
|
||||
brightness: >-
|
||||
{% if state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') %}
|
||||
{% if state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') - 60 >= 10 %}
|
||||
{{state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') - 60}}
|
||||
{% else %}
|
||||
{{state_attr('light.gateway_light_34xxxxxxxx13', 'brightness')}}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
10
|
||||
{% endif %}
|
||||
|
||||
- alias: "Increase brightness of the gateway light"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.wall_switch_right_158xxxxxxxxx12
|
||||
click_type: single
|
||||
actions:
|
||||
- action: light.turn_on
|
||||
target:
|
||||
entity_id: light.gateway_light_34xxxxxxxx13
|
||||
data:
|
||||
brightness: >-
|
||||
{% if state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') %}
|
||||
{% if state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') + 60 <= 255 %}
|
||||
{{state_attr('light.gateway_light_34xxxxxxxx13', 'brightness') + 60}}
|
||||
{% else %}
|
||||
{{state_attr('light.gateway_light_34xxxxxxxx13', 'brightness')}}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
10
|
||||
{% endif %}
|
||||
|
||||
- alias: "Turn off the gateway light"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.click
|
||||
event_data:
|
||||
entity_id: binary_sensor.wall_switch_both_158xxxxxxxxx12
|
||||
click_type: both
|
||||
actions:
|
||||
- action: light.turn_off
|
||||
target:
|
||||
entity_id: light.gateway_light_34xxxxxxxx13
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
#### Vibration sensor
|
||||
|
||||
This automation toggles the living room lamp on vibration/tilt.
|
||||
|
||||
```yaml
|
||||
- alias: "Turn on Living Room Lamp on vibration"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.movement
|
||||
event_data:
|
||||
entity_id: binary_sensor.vibration_xxxx000000
|
||||
movement_type: vibrate
|
||||
actions:
|
||||
- action: light.toggle
|
||||
target:
|
||||
entity_id: light.living_room_lamp
|
||||
- alias: "Turn on Living Room Lamp on tilt"
|
||||
triggers:
|
||||
- trigger: event
|
||||
event_type: xiaomi_aqara.movement
|
||||
event_data:
|
||||
entity_id: binary_sensor.vibration_xxxx000000
|
||||
movement_type: tilt
|
||||
actions:
|
||||
- action: light.toggle
|
||||
target:
|
||||
entity_id: light.living_room_lamp
|
||||
```
|
||||
|
||||
### Sensors
|
||||
|
||||
The sensor entity allows you to read data from your [Xiaomi](https://www.mi.com/en/) sensors.
|
||||
|
||||
The following sensor types are supported:
|
||||
|
||||
- Battery level (in percentage)
|
||||
- Bed activity / vibration (in micrometers)
|
||||
- Coordination
|
||||
- Humidity (in percentage)
|
||||
- Illumination (in lux)
|
||||
- Power consumed (in kWh)
|
||||
- Power load (in Watt)
|
||||
- Pressure (in hPa)
|
||||
- Temperature (depends on UI settings, Celsius or Fahrenheit)
|
||||
- Tilt angle
|
||||
|
||||
## Switches
|
||||
|
||||
The switch entity allows you to get data from your [Xiaomi aqara](https://www.mi.com/en/) switches and to switch between states.
|
||||
|
||||
## Actions
|
||||
|
||||
The gateway provides the following actions:
|
||||
|
||||
#### Action `xiaomi_aqara.play_ringtone`
|
||||
### Action `xiaomi_aqara.play_ringtone`
|
||||
|
||||
Play a specific ringtone. The version of the gateway firmware must be `1.4.1_145` at least. Take a look at the examples below.
|
||||
|
||||
| Data attribute | Optional | Description |
|
||||
|---------------------------|----------|-------------------------------------------------------|
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
| `ringtone_id` | no | One of the allowed ringtone ids |
|
||||
| `ringtone_vol` | yes | The volume in percent |
|
||||
| Data attribute | Optional | Description |
|
||||
| -------------- | -------- | --------------------------------------- |
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
| `ringtone_id` | no | One of the allowed ringtone ids |
|
||||
| `ringtone_vol` | yes | The volume in percent |
|
||||
|
||||
Allowed values of the `ringtone_id` are:
|
||||
|
||||
@ -128,30 +646,30 @@ Allowed values of the `ringtone_id` are:
|
||||
- 29 - Thinker
|
||||
- Custom ringtones (uploaded by the Mi Home app) starting from 10001
|
||||
|
||||
#### Action `xiaomi_aqara.stop_ringtone`
|
||||
### Action `xiaomi_aqara.stop_ringtone`
|
||||
|
||||
Stops a playing ringtone immediately.
|
||||
|
||||
| Data attribute | Optional | Description |
|
||||
|---------------------------|----------|-------------------------------------------------------|
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
| Data attribute | Optional | Description |
|
||||
| -------------- | -------- | --------------------------------------- |
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
|
||||
#### Action `xiaomi_aqara.add_device`
|
||||
### Action `xiaomi_aqara.add_device`
|
||||
|
||||
Enables the join permission of the Xiaomi Aqara Gateway for 30 seconds. A new device can be added afterwards by pressing the pairing button once.
|
||||
|
||||
| Data attribute | Optional | Description |
|
||||
|---------------------------|----------|-------------------------------------------------------|
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
| Data attribute | Optional | Description |
|
||||
| -------------- | -------- | --------------------------------------- |
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
|
||||
#### Action `xiaomi_aqara.remove_device`
|
||||
### Action `xiaomi_aqara.remove_device`
|
||||
|
||||
Removes a specific device. The removal is required if a device shall be paired with another gateway.
|
||||
|
||||
| Data attribute | Optional | Description |
|
||||
|---------------------------|----------|-------------------------------------------------------|
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
| `device_id` | no | Hardware address of the device to remove |
|
||||
| Data attribute | Optional | Description |
|
||||
| -------------- | -------- | ---------------------------------------- |
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
| `device_id` | no | Hardware address of the device to remove |
|
||||
|
||||
## Examples
|
||||
|
||||
|
@ -82,17 +82,44 @@ The most common problems are:
|
||||
|
||||
The `xiaomi_miio` gateway {% term integration %} allows you to control the gateway and its connected subdevices.
|
||||
|
||||
### Supported Xiaomi gateway models:
|
||||
### Supported Xiaomi gateway models
|
||||
|
||||
| Gateway name | Zigbee id | model | supported |
|
||||
| ------------------ | ------------------- | ------------------------ | ------------------------------ |
|
||||
| Chinese version | lumi.gateway.v3 | DGNWG02LM | yes |
|
||||
| European version | lumi.gateway.mieu01 | ZHWG11LM-763 / DGNWQ05LM | yes (cloud credentials needed) |
|
||||
| Aqara hub | lumi.gateway.aqhm01 | ZHWG11LM | yes |
|
||||
| Mijia Zigbee 3.0 | lumi.gateway.mgl03 | ZNDMWG03LM | yes |
|
||||
| Aqara AC Companion | lumi.acpartner.v1 | KTBL01LM | untested |
|
||||
| Mi AC Companion | lumi.acpartner.v2 | KTBL02LM | untested |
|
||||
| Aqara AC Companion | lumi.acpartner.v3 | KTBL11LM | yes |
|
||||
The following list shows the Gateway name, the model number, the Zigbee ID, and whether the model is supported or not in Home Assistant.
|
||||
|
||||
- **Chinese version**
|
||||
- Model: DGNWG02LM
|
||||
- Zigbee ID: lumi.gateway.v3
|
||||
- Supported: Yes
|
||||
|
||||
- **European version**
|
||||
- Model: ZHWG11LM-763 / DGNWQ05LM
|
||||
- Zigbee ID: lumi.gateway.mieu01
|
||||
- Supported: Yes (cloud credentials needed)
|
||||
|
||||
- **Aqara hub**
|
||||
- Model: ZHWG11LM
|
||||
- Zigbee ID: lumi.gateway.aqhm01
|
||||
- Supported: Yes
|
||||
|
||||
- **Mijia Zigbee 3.0**
|
||||
- Model: ZNDMWG03LM
|
||||
- Zigbee ID: lumi.gateway.mgl03
|
||||
- Supported: Yes
|
||||
|
||||
- **Aqara AC Companion**
|
||||
- Model: KTBL01LM
|
||||
- Zigbee ID: lumi.acpartner.v1
|
||||
- Supported: Untested
|
||||
|
||||
- **Mi AC Companion**
|
||||
- Model: KTBL02LM
|
||||
- Zigbee ID: lumi.acpartner.v2
|
||||
- Supported: Untested
|
||||
|
||||
- **Aqara AC Companion**
|
||||
- Model: KTBL11LM
|
||||
- Zigbee ID: lumi.acpartner.v3
|
||||
- Supported: Yes
|
||||
|
||||
Some gateways (lumi.gateway.mieu01) do not support getting the connected subdevices locally. For those gateways, cloud credentials can be specified during the config flow and the "Use cloud to get connected subdevices" can be enabled in the options flow (after setting up the {% term integration %}, click Configuration in the sidebar, then click Integrations and then click Options on the already set up Xiaomi Miio Gateway {% term integration %}). The connected subdevices will then be retrieved from the Xiaomi Miio cloud (internet), control and status updates of those subdevices will then further take place over local network connection. A re-authentication flow may be triggered when no cloud credentials are provided yet and are needed for that particular gateway model.
|
||||
|
||||
@ -111,65 +138,107 @@ Not yet implemented features (but possible):
|
||||
|
||||
These subdevices are fully implemented in HomeAssistant:
|
||||
|
||||
| Subdevice name | Zigbee id | model | features |
|
||||
| -------------------------------- | --------------------- | ---------- | ------------------------------------------------ |
|
||||
| Weather sensor | lumi.sensor_ht | WSDCGQ01LM | readout `temperature` and `humidity` |
|
||||
| Weather sensor | lumi.weather.v1 | WSDCGQ11LM | readout `temperature`, `humidity` and `pressure` |
|
||||
| Wall switch single | lumi.ctrl_ln1 | QBKG11LM | load_power, status, turn_on, turn_off, toggle |
|
||||
| Wall switch single | lumi.ctrl_ln1.aq1 | QBKG11LM | load_power, status, turn_on, turn_off, toggle |
|
||||
| Wall switch no neutral | lumi.ctrl_neutral1.v1 | QBKG04LM | status, turn_on, turn_off, toggle |
|
||||
| Wall switch double | lumi.ctrl_ln2 | QBKG12LM | load_power, status, turn_on, turn_off, toggle |
|
||||
| Wall switch double | lumi.ctrl_ln2.aq1 | QBKG12LM | load_power, status, turn_on, turn_off, toggle |
|
||||
| Wall switch double no neutral | lumi.ctrl_neutral2 | QBKG03LM | status, turn_on, turn_off, toggle |
|
||||
| D1 wall switch triple | lumi.switch.n3acn3 | QBKG26LM | load_power, status, turn_on, turn_off, toggle |
|
||||
| D1 wall switch triple no neutral | lumi.switch.l3acn3 | QBKG25LM | load_power, status, turn_on, turn_off, toggle |
|
||||
| Wall outlet | lumi.ctrl_86plug.v1 | QBCZ11LM | status, turn_on, turn_off, toggle |
|
||||
| Wall outlet | lumi.ctrl_86plug.aq1 | QBCZ11LM | load_power, status, turn_on, turn_off, toggle |
|
||||
| Plug | lumi.plug | ZNCZ02LM | load_power, status, turn_on, turn_off, toggle |
|
||||
| Relay | lumi.relay.c2acn01 | LLKZMK11LM | load_power, status, turn_on, turn_off, toggle |
|
||||
| Smart bulb E27 | lumi.light.aqcn02 | ZNLDP12LM | on/off, brightness, color temperature |
|
||||
| IKEA smart bulb E27 white | ikea.light.led1545g12 | LED1545G12 | on/off, brightness, color temperature |
|
||||
| IKEA smart bulb E27 white | ikea.light.led1546g12 | LED1546G12 | on/off, brightness, color temperature |
|
||||
| IKEA smart bulb E12 white | ikea.light.led1536g5 | LED1536G5 | on/off, brightness, color temperature |
|
||||
| IKEA smart bulb GU10 white | ikea.light.led1537r6 | LED1537R6 | on/off, brightness, color temperature |
|
||||
| IKEA smart bulb E27 white | ikea.light.led1623g12 | LED1623G12 | on/off, brightness, color temperature |
|
||||
| IKEA smart bulb GU10 white | ikea.light.led1650r5 | LED1650R5 | on/off, brightness, color temperature |
|
||||
| IKEA smart bulb E12 white | ikea.light.led1649c5 | LED1649C5 | on/off, brightness, color temperature |
|
||||
- **Weather sensor (WSDCGQ01LM)**
|
||||
- Zigbee ID: `lumi.sensor_ht`
|
||||
- Features: readout `temperature` and `humidity`
|
||||
- **Weather sensor (WSDCGQ11LM)**
|
||||
- Zigbee ID: `lumi.weather.v1`
|
||||
- Features: readout `temperature`, `humidity` and `pressure`
|
||||
- **Wall switch single (QBKG11LM)**
|
||||
- Zigbee ID: `lumi.ctrl_ln1`
|
||||
- Features: load_power, status, turn_on, turn_off, toggle
|
||||
- **Wall switch single (QBKG11LM)**
|
||||
- Zigbee ID: `lumi.ctrl_ln1.aq1`
|
||||
- Features: load_power, status, turn_on, turn_off, toggle
|
||||
- **Wall switch no neutral (QBKG04LM)**
|
||||
- Zigbee ID: `lumi.ctrl_neutral1.v1`
|
||||
- Features: status, turn_on, turn_off, toggle
|
||||
- **Wall switch double (QBKG12LM)**
|
||||
- Zigbee ID: `lumi.ctrl_ln2`
|
||||
- Features: load_power, status, turn_on, turn_off, toggle
|
||||
- **Wall switch double (QBKG12LM)**
|
||||
- Zigbee ID: `lumi.ctrl_ln2.aq1`
|
||||
- Features: load_power, status, turn_on, turn_off, toggle
|
||||
- **Wall switch double no neutral (QBKG03LM)**
|
||||
- Zigbee ID: `lumi.ctrl_neutral2`
|
||||
- Features: status, turn_on, turn_off, toggle
|
||||
- **D1 wall switch triple (QBKG26LM)**
|
||||
- Zigbee ID: `lumi.switch.n3acn3`
|
||||
- Features: load_power, status, turn_on, turn_off, toggle
|
||||
- **D1 wall switch triple no neutral (QBKG25LM)**
|
||||
- Zigbee ID: `lumi.switch.l3acn3`
|
||||
- Features: load_power, status, turn_on, turn_off, toggle
|
||||
- **Wall outlet (QBCZ11LM)**
|
||||
- Zigbee ID: `lumi.ctrl_86plug.v1`
|
||||
- Features: status, turn_on, turn_off, toggle
|
||||
- **Wall outlet (QBCZ11LM)**
|
||||
- Zigbee ID: `lumi.ctrl_86plug.aq1`
|
||||
- Features: load_power, status, turn_on, turn_off, toggle
|
||||
- **Plug (ZNCZ02LM)**
|
||||
- Zigbee ID: `lumi.plug`
|
||||
- Features: load_power, status, turn_on, turn_off, toggle
|
||||
- **Relay (LLKZMK11LM)**
|
||||
- Zigbee ID: `lumi.relay.c2acn01`
|
||||
- Features: load_power, status, turn_on, turn_off, toggle
|
||||
- **Smart bulb E27 (ZNLDP12LM)**
|
||||
- Zigbee ID: `lumi.light.aqcn02`
|
||||
- Features: on/off, brightness, color temperature
|
||||
- **IKEA smart bulb E27 white (LED1545G12)**
|
||||
- Zigbee ID: `ikea.light.led1545g12`
|
||||
- Features: on/off, brightness, color temperature
|
||||
- **IKEA smart bulb E27 white (LED1546G12)**
|
||||
- Zigbee ID: `ikea.light.led1546g12`
|
||||
- Features: on/off, brightness, color temperature
|
||||
- **IKEA smart bulb E12 white (LED1536G5)**
|
||||
- Zigbee ID: `ikea.light.led1536g5`
|
||||
- Features: on/off, brightness, color temperature
|
||||
- **IKEA smart bulb GU10 white (LED1537R6)**
|
||||
- Zigbee ID: `ikea.light.led1537r6`
|
||||
- Features: on/off, brightness, color temperature
|
||||
- **IKEA smart bulb E27 white (LED1623G12)**
|
||||
- Zigbee ID: `ikea.light.led1623g12`
|
||||
- Features: on/off, brightness, color temperature
|
||||
- **IKEA smart bulb GU10 white (LED1650R5)**
|
||||
- Zigbee ID: `ikea.light.led1650r5`
|
||||
- Features: on/off, brightness, color temperature
|
||||
- **IKEA smart bulb E12 white (LED1649C5)**
|
||||
- Zigbee ID: `ikea.light.led1649c5`
|
||||
- Features: on/off, brightness, color temperature
|
||||
|
||||
### Recognized subdevices (not yet implemented)
|
||||
|
||||
These subdevices are recognized by the python-miio code but are still being worked on (not yet implemented).
|
||||
|
||||
| Subdevice name | Zigbee id | model |
|
||||
| ------------------------------ | ----------------------- | --------------- |
|
||||
| Button | lumi.sensor_switch | WXKG01LM |
|
||||
| Button | lumi.sensor_switch.aq2 | WXKG11LM 2015 |
|
||||
| Button | lumi.sensor_switch.aq3 | WXKG12LM |
|
||||
| Button | lumi.remote.b1acn01 | WXKG11LM 2018 |
|
||||
| Cube | lumi.sensor_cube.v1 | MFKZQ01LM |
|
||||
| Cube | lumi.sensor_cube.aqgl01 | MFKZQ01LM |
|
||||
| Motion sensor | lumi.sensor_motion | RTCGQ01LM |
|
||||
| Motion sensor | lumi.sensor_motion.aq2 | RTCGQ11LM |
|
||||
| Door sensor | lumi.sensor_magnet | MCCGQ01LM |
|
||||
| Door sensor | lumi.sensor_magnet.aq2 | MCCGQ11LM |
|
||||
| Vibration sensor | lumi.vibration.aq1 | DJT11LM |
|
||||
| Honeywell smoke detector | lumi.sensor_smoke | JTYJ-GD-01LM/BW |
|
||||
| Honeywell natural gas detector | lumi.sensor_natgas | JTQJ-BF-01LM/BW |
|
||||
| Water leak sensor | lumi.sensor_wleak.aq1 | SJCGQ11LM |
|
||||
| Remote switch single | lumi.sensor_86sw1.v1 | WXKG03LM 2016 |
|
||||
| Remote switch single | lumi.remote.b186acn01 | WXKG03LM 2018 |
|
||||
| D1 remote switch single | lumi.remote.b186acn02 | WXKG06LM |
|
||||
| Remote switch double | lumi.sensor_86sw2.v1 | WXKG02LM 2016 |
|
||||
| Remote switch double | lumi.remote.b286acn01 | WXKG02LM 2018 |
|
||||
| D1 remote switch double | lumi.remote.b286acn02 | WXKG07LM |
|
||||
| Curtain | lumi.curtain | ZNCLDJ11LM |
|
||||
| Curtain | lumi.curtain.aq2 | ZNGZDJ11LM |
|
||||
| Curtain B1 | lumi.curtain.hagl04 | ZNCLDJ12LM |
|
||||
| Door lock S1 | lumi.lock.aq1 | ZNMS11LM |
|
||||
| Door lock S2 | lumi.lock.acn02 | ZNMS12LM |
|
||||
| Door lock S2 pro | lumi.lock.acn03 | ZNMS13LM |
|
||||
| Vima cylinder lock | lumi.lock.v1 | A6121 |
|
||||
| Thermostat S2 | lumi.airrtc.tcpecn02 | KTWKQ03ES |
|
||||
The list shows the device name, the model number, and the Zigbee ID.
|
||||
|
||||
- **Button** (WXKG01LM): `lumi.sensor_switch`
|
||||
- **Button** (WXKG11LM 2015): `lumi.sensor_switch.aq2`
|
||||
- **Button** (WXKG12LM): `lumi.sensor_switch.aq3`
|
||||
- **Button** (WXKG11LM 2018): `lumi.remote.b1acn01`
|
||||
- **Cube** (MFKZQ01LM): `lumi.sensor_cube.v1`
|
||||
- **Cube** (MFKZQ01LM): `lumi.sensor_cube.aqgl01`
|
||||
- **Motion sensor** (RTCGQ01LM): `lumi.sensor_motion`
|
||||
- **Motion sensor** (RTCGQ11LM): `lumi.sensor_motion.aq2`
|
||||
- **Door sensor** (MCCGQ01LM): `lumi.sensor_magnet`
|
||||
- **Door sensor** (MCCGQ11LM): `lumi.sensor_magnet.aq2`
|
||||
- **Vibration sensor** (DJT11LM): `lumi.vibration.aq1`
|
||||
- **Honeywell smoke detector** (JTYJ-GD-01LM/BW): `lumi.sensor_smoke`
|
||||
- **Honeywell natural gas detector** (JTQJ-BF-01LM/BW): `lumi.sensor_natgas`
|
||||
- **Water leak sensor** (SJCGQ11LM): `lumi.sensor_wleak.aq1`
|
||||
- **Remote switch single** (WXKG03LM 2016): `lumi.sensor_86sw1.v1`
|
||||
- **Remote switch single** (WXKG03LM 2018): `lumi.remote.b186acn01`
|
||||
- **D1 remote switch single** (WXKG06LM): `lumi.remote.b186acn02`
|
||||
- **Remote switch double** (WXKG02LM 2016): `lumi.sensor_86sw2.v1`
|
||||
- **Remote switch double** (WXKG02LM 2018): `lumi.remote.b286acn01`
|
||||
- **D1 remote switch double** (WXKG07LM): `lumi.remote.b286acn02`
|
||||
- **Curtain** (ZNCLDJ11LM): `lumi.curtain`
|
||||
- **Curtain** (ZNGZDJ11LM): `lumi.curtain.aq2`
|
||||
- **Curtain B1** (ZNCLDJ12LM): `lumi.curtain.hagl04`
|
||||
- **Door lock S1** (ZNMS11LM): `lumi.lock.aq1`
|
||||
- **Door lock S2** (ZNMS12LM): `lumi.lock.acn02`
|
||||
- **Door lock S2 pro** (ZNMS13LM): `lumi.lock.acn03`
|
||||
- **Vima cylinder lock** (A6121): `lumi.lock.v1`
|
||||
- **Thermostat S2** (KTWKQ03ES): `lumi.airrtc.tcpecn02`
|
||||
|
||||
## Xiaomi device tracker (Xiaomi Mi WiFi Repeater 2)
|
||||
|
||||
@ -203,57 +272,53 @@ The Air Purifiers, Air Humidifiers and Standing Fans use multiple platforms to a
|
||||
|
||||
Supported devices:
|
||||
|
||||
| Name | Model | Model no. |
|
||||
| ---------------------- | ----------------------- | ------------ |
|
||||
| Air Purifier | zhimi.airpurifier.v1 | |
|
||||
| Air Purifier 2 | zhimi.airpurifier.v2 | FJY4006CN |
|
||||
| Air Purifier V3 | zhimi.airpurifier.v3 | |
|
||||
| Air Purifier V5 | zhimi.airpurifier.v5 | |
|
||||
| Air Purifier Pro | zhimi.airpurifier.v6 | |
|
||||
| Air Purifier Pro V7 | zhimi.airpurifier.v7 | |
|
||||
| Air Purifier 2 (mini) | zhimi.airpurifier.m1 | |
|
||||
| Air Purifier (mini) | zhimi.airpurifier.m2 | |
|
||||
| Air Purifier MA1 | zhimi.airpurifier.ma1 | |
|
||||
| Air Purifier MA2 | zhimi.airpurifier.ma2 | |
|
||||
| Air Purifier 2S | zhimi.airpurifier.mc1 | |
|
||||
| Air Purifier Super | zhimi.airpurifier.sa1 | |
|
||||
| Air Purifier Super 2 | zhimi.airpurifier.sa2 | |
|
||||
| Air Purifier 3 (2019) | zhimi.airpurifier.ma4 | AC-M6-SC |
|
||||
| Air Purifier 3H (2019) | zhimi.airpurifier.mb3 | |
|
||||
| Air Purifier Pro H | zhimi.airpurifier.va1 | |
|
||||
| Air Purifier Pro H EU | zhimi.airpurifier.vb2 | |
|
||||
| Air Purifier 3C | zhimi.airpurifier.mb4 | |
|
||||
| Air Purifier 3C | zhimi.airp.mb4a | |
|
||||
| Air Purifier ZA1 | zhimi.airpurifier.za1 | |
|
||||
| Air Purifier 4 | zhimi.airp.mb5 | AC-M16-SC |
|
||||
| Air Purifier 4 PRO | zhimi.airp.vb4 | AC-M15-SC |
|
||||
| Air Fresh A1 | dmaker.airfresh.a1 | MJXFJ-150-A1 |
|
||||
| Air Fresh VA2 | zhimi.airfresh.va2 | |
|
||||
| Air Fresh VA4 | zhimi.airfresh.va4 | |
|
||||
| Air Fresh T2017 | dmaker.airfresh.t2017 | MJXFJ-300-G1 |
|
||||
| Air Humidifier | zhimi.humidifier.v1 | |
|
||||
| Air Humidifier CA1 | zhimi.humidifier.ca1 | |
|
||||
| Air Humidifier CA4 | zhimi.humidifier.ca4 | |
|
||||
| Air Humidifier CB1 | zhimi.humidifier.cb1 | |
|
||||
| Air Humidifier JSQ | deerma.humidifier.jsq | |
|
||||
| Air Humidifier JSQ1 | deerma.humidifier.jsq1 | |
|
||||
| Air Humidifier MJJSQ | deerma.humidifier.mjjsq | |
|
||||
| Standing Fan 1X | dmaker.fan.p5 | |
|
||||
| Inverter Pedestal Fan | zhimi.fan.za1 | |
|
||||
| Standing Fan 2 | zhimi.fan.za3 | |
|
||||
| Standing Fan 2S | zhimi.fan.za4 | |
|
||||
| Standing Fan | zhimi.fan.sa1 | |
|
||||
| DC Pedestal Fan | zhimi.fan.v2 | |
|
||||
| DC Pedestal Fan | zhimi.fan.v3 | |
|
||||
| Standing Fan 1C | dmaker.fan.1c | |
|
||||
| Tower Fan | dmaker.fan.p9 | |
|
||||
| Standing Fan 2 | dmaker.fan.p10 | |
|
||||
| Standing Fan Pro | dmaker.fan.p11 | |
|
||||
| Standing Fan 3 | zhimi.fan.za5 | |
|
||||
The list includes device name, model number (if available), and model.
|
||||
|
||||
### Features
|
||||
|
||||
### Air Purifier 2 (zhimi.airpurifier.v2)
|
||||
- **Air Purifier**: `zhimi.airpurifier.v1`
|
||||
- **Air Purifier 2** (FJY4006CN): `zhimi.airpurifier.v2`
|
||||
- **Air Purifier V3**: `zhimi.airpurifier.v3`
|
||||
- **Air Purifier V5**: `zhimi.airpurifier.v5`
|
||||
- **Air Purifier Pro**: `zhimi.airpurifier.v6`
|
||||
- **Air Purifier Pro V7**: `zhimi.airpurifier.v7`
|
||||
- **Air Purifier 2 (mini)**: `zhimi.airpurifier.m1`
|
||||
- **Air Purifier (mini)**: `zhimi.airpurifier.m2`
|
||||
- **Air Purifier MA1**: `zhimi.airpurifier.ma1`
|
||||
- **Air Purifier MA2**: `zhimi.airpurifier.ma2`
|
||||
- **Air Purifier 2S**: `zhimi.airpurifier.mc1`
|
||||
- **Air Purifier Super**: `zhimi.airpurifier.sa1`
|
||||
- **Air Purifier Super 2**: `zhimi.airpurifier.sa2`
|
||||
- **Air Purifier 3 (2019) (AC-M6-SC)**: `zhimi.airpurifier.ma4`
|
||||
- **Air Purifier 3H (2019)**: `zhimi.airpurifier.mb3`
|
||||
- **Air Purifier Pro H**: `zhimi.airpurifier.va1`
|
||||
- **Air Purifier Pro H EU**: `zhimi.airpurifier.vb2`
|
||||
- **Air Purifier 3C**: `zhimi.airpurifier.mb4`
|
||||
- **Air Purifier 3C**: `zhimi.airp.mb4a`
|
||||
- **Air Purifier ZA1**: `zhimi.airpurifier.za1`
|
||||
- **Air Purifier 4 (AC-M16-SC)**: `zhimi.airp.mb5`
|
||||
- **Air Purifier 4 PRO (AC-M15-SC)**: `zhimi.airp.vb4`
|
||||
- **Air Fresh A1 (MJXFJ-150-A1)**: `dmaker.airfresh.a1`
|
||||
- **Air Fresh VA2**: `zhimi.airfresh.va2`
|
||||
- **Air Fresh VA4**: `zhimi.airfresh.va4`
|
||||
- **Air Fresh T2017 (MJXFJ-300-G1)**: `dmaker.airfresh.t2017`
|
||||
- **Air Humidifier**: `zhimi.humidifier.v1`
|
||||
- **Air Humidifier CA1**: `zhimi.humidifier.ca1`
|
||||
- **Air Humidifier CA4**: `zhimi.humidifier.ca4`
|
||||
- **Air Humidifier CB1**: `zhimi.humidifier.cb1`
|
||||
- **Air Humidifier JSQ**: `deerma.humidifier.jsq`
|
||||
- **Air Humidifier JSQ1**: `deerma.humidifier.jsq1`
|
||||
- **Air Humidifier MJJSQ**: `deerma.humidifier.mjjsq`
|
||||
- **Standing Fan 1X**: `dmaker.fan.p5`
|
||||
- **Inverter Pedestal Fan**: `zhimi.fan.za1`
|
||||
- **Standing Fan 2**: `zhimi.fan.za3`
|
||||
- **Standing Fan 2S**: `zhimi.fan.za4`
|
||||
- **Standing Fan**: `zhimi.fan.sa1`
|
||||
- **DC Pedestal Fan**: `zhimi.fan.v2`
|
||||
- **DC Pedestal Fan**: `zhimi.fan.v3`
|
||||
- **Standing Fan 1C**: `dmaker.fan.1c`
|
||||
- **Tower Fan**: `dmaker.fan.p9`
|
||||
- **Standing Fan 2**: `dmaker.fan.p10`
|
||||
- **Standing Fan Pro**: `dmaker.fan.p11`
|
||||
- **Standing Fan 3**: `zhimi.fan.za5`
|
||||
|
||||
- Power (on, off)
|
||||
- Operation modes (Auto, Silent, Favorite, Idle)
|
||||
@ -275,16 +340,14 @@ Supported devices:
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------------------- | ------------------------------------------------------------- | ------------------ |
|
||||
| Filter Lifetime Remaining | The remaining life of the filter | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Motor Speed | The current motor speed measured in rpm | True |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
| Purify Volume | The volume of purified air in qubic meter | False |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
- **Filter Lifetime Remaining**: The remaining life of the filter. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Motor Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
- **Purify Volume**: The volume of purified air in cubic meter. Disabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -315,19 +378,16 @@ Supported devices:
|
||||
| Volume | Set the volume |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| --------------------- | ------------------------------------------------------------- | ------------------ |
|
||||
| Filter Life Remaining | The remaining lifetime of the filter | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Illuminance | The current illuminance measured | True |
|
||||
| Motor Speed | The current motor speed measured in rpm | True |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
| Purify Volume | The volume of purified air in qubic meter | False |
|
||||
| Second Motor Speed | The current second motor speed measured in rpm | True |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
- **Filter Life Remaining**: The remaining lifetime of the filter. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Illuminance**: The current illuminance measured. Enabled by default.
|
||||
- **Motor Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
- **Purify Volume**: The volume of purified air in cubic meter. Disabled by default.
|
||||
- **Second Motor Speed**: The current second motor speed measured in rpm. Enabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -353,18 +413,15 @@ Supported devices:
|
||||
| Volume | Set the volume |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------------------- | ------------------------------------------------------------- | ------------------ |
|
||||
| Filter Lifetime Remaining | The remaining lifetime of the filter | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Illuminance | The current illuminance measured | True |
|
||||
| Motor Speed | The current motor speed measured in rpm | True |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
| Second Motor Speed | The current second motor speed measured in rpm | True |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
- **Filter Lifetime Remaining**: The remaining lifetime of the filter. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Illuminance**: The current illuminance measured. Enabled by default.
|
||||
- **Motor Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
- **Second Motor Speed**: The current second motor speed measured in rpm. Enabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -396,17 +453,14 @@ Supported devices:
|
||||
| Favorite Level | Set the favorite level |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------------------- | --------------------------------------------------------------- | ------------------ |
|
||||
| Filter Lifetime Remaining | The remaining lifetime of the filter | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Motor Speed | The current motor speed measured in rpm | True |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Illuminance | The current illuminance meassured on top of the device 0-200lux | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
- **Filter Lifetime Remaining**: The remaining lifetime of the filter. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Motor Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Illuminance**: The current illuminance measured on top of the device (0-200 lux). Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -432,16 +486,13 @@ Supported devices:
|
||||
| Favorite Level | Set the favorite level |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------------------- | ------------------------------------------------------------- | ------------------ |
|
||||
| Filter Lifetime Remaining | The remaining lifetime of the filter | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Motor Speed | The current motor speed measured in rpm | True |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
- **Filter Lifetime Remaining**: The remaining lifetime of the filter. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Motor Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -452,7 +503,7 @@ Supported devices:
|
||||
| Learn Mode | Turn on/off the learn mode |
|
||||
| LED | Turn on/off the LED |
|
||||
|
||||
### Air Purifier 3/3H (2019) (zhimi.airpurifier.ma4/zhimi.airpurifier.mb3)
|
||||
### Air Purifier 3/3H (2019) (zhimi.airpurifier.ma4, zhimi.airpurifier.mb3)
|
||||
|
||||
This model uses newer MiOT communication protocol.
|
||||
|
||||
@ -474,17 +525,14 @@ This model uses newer MiOT communication protocol.
|
||||
| LED Brightness | Controls the brightness of the LEDs (bright, dim, off) |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------------------- | ------------------------------------------------------------- | ------------------ |
|
||||
| Filter Lifetime Remaining | The remaining lifetime of the filter | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Motor Speed | The current motor speed measured in rpm | True |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
| Purify Volume | The volume of purified air in qubic meter | False |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
- **Filter Lifetime Remaining**: The remaining lifetime of the filter. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Motor Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
- **Purify Volume**: The volume of purified air in cubic meter. Disabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -493,7 +541,7 @@ This model uses newer MiOT communication protocol.
|
||||
| Buzzer | Turn on/off the buzzer |
|
||||
| Child Lock | Turn on/off the child lock |
|
||||
|
||||
### Air Purifier Pro H/Pro H EU (zhimi.airpurifier.va1/zhimi.airpurifier.vb2)
|
||||
### Air Purifier Pro H, Pro H EU (zhimi.airpurifier.va1, zhimi.airpurifier.vb2)
|
||||
|
||||
- Power (on, off)
|
||||
- Operation modes (Auto, Silent, Favorite, Fan)
|
||||
@ -513,17 +561,14 @@ This model uses newer MiOT communication protocol.
|
||||
| LED Brightness | Controls the brightness of the LEDs (bright, dim, off) |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------------------- | ------------------------------------------------------------- | ------------------ |
|
||||
| Filter Lifetime Remaining | The remaining lifetime of the filter | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Motor Speed | The current motor speed measured in rpm | True |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
| Purify Volume | The volume of purified air in qubic meter | False |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
- **Filter Lifetime Remaining**: The remaining lifetime of the filter. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Motor Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
- **Purify Volume**: The volume of purified air in cubic meter. Disabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -532,7 +577,7 @@ This model uses newer MiOT communication protocol.
|
||||
| Buzzer | Turn on/off the buzzer |
|
||||
| Child Lock | Turn on/off the child lock |
|
||||
|
||||
### Air Purifier 3C (zhimi.airpurifier.mb4/zhimi.airp.mb4a)
|
||||
### Air Purifier 3C (zhimi.airpurifier.mb4, zhimi.airp.mb4a)
|
||||
|
||||
- Power (on, off)
|
||||
- Operation modes (Auto, Silent, Favorite)
|
||||
@ -544,13 +589,10 @@ This model uses newer MiOT communication protocol.
|
||||
| LED Brightness | Set the LED brightness |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------------------- | ------------------------------------------- | ------------------ |
|
||||
| Filter Lifetime Remaining | The remaining lifetime of the filter | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Motor Speed | The current motor speed measured in rpm | True |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
- **Filter Lifetime Remaining**: The remaining lifetime of the filter. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Motor Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -570,16 +612,13 @@ This model uses newer MiOT communication protocol.
|
||||
| Favorite Level | Set the favorite level |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------------------- | -------------------------------------------------------------- | ------------------ |
|
||||
| Filter Lifetime Remaining | The remaining lifetime of the filter | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Motor Speed | The current motor speed measured in rpm | True |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| TVOC | The current concentration of Total Organic Volatile Components | True |
|
||||
- **Filter Lifetime Remaining**: The remaining lifetime of the filter. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Motor Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **TVOC**: The current concentration of Total Organic Volatile Components. Enabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -604,18 +643,16 @@ This model uses newer MiOT communication protocol.
|
||||
- `extra_features`
|
||||
- `use_time`
|
||||
- `button_pressed`
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------------------- | ------------------------------------------------------------- | ------------------ |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
| Illuminance | The current illuminance measured | True |
|
||||
| Filter Lifetime Remaining | The remaining lifetime of the filter | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Motor Speed | The current motor speed measured in rpm | True |
|
||||
| Second Motor Speed | The current second motor speed measured in rpm | True |
|
||||
| Purify Volume | The volume of purified air in qubic meter | False |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
- Sensor entities
|
||||
- **Filter Lifetime Remaining**: The remaining lifetime of the filter. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Illuminance**: The current illuminance measured. Enabled by default.
|
||||
- **Motor Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
- **Purify Volume**: The volume of purified air in cubic meter. Disabled by default.
|
||||
- **Second Motor Speed**: The current second motor speed measured in rpm. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -625,7 +662,7 @@ This model uses newer MiOT communication protocol.
|
||||
| Child Lock | Turn on/off the child lock |
|
||||
| LED | Turn on/off the LED |
|
||||
|
||||
### Air Purifier 4/4 PRO (zhimi.airp.mb5/zhimi.airp.vb4)
|
||||
### Air Purifier 4/4 PRO (zhimi.airp.mb5, zhimi.airp.vb4)
|
||||
|
||||
These models use newer MiOT communication protocol.
|
||||
|
||||
@ -646,18 +683,15 @@ These models use newer MiOT communication protocol.
|
||||
| LED Brightness | Controls the brightness of the Display (bright, dim, off) |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------------------- | ------------------------------------------------------ | ------------------ |
|
||||
| Filter Lifetime Remaining | The remaining lifetime of the filter in % | True |
|
||||
| Filter Time Left | The remaining lifetime of the filter in days | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Motor Speed | The current motor speed measured in rpm | True |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
| PM10 | The current particulate matter 10 measured(4 PRO only) | True |
|
||||
| Purify Volume | The volume of purified air in qubic meter | False |
|
||||
| Temperature | The current temperature measured | True |
|
||||
- **Filter Lifetime Remaining**: The remaining lifetime of the filter in %. Enabled by default.
|
||||
- **Filter Time Left**: The remaining lifetime of the filter in days. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Motor Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
- **PM10**: The current particulate matter 10 measured (4 PRO only). Enabled by default.
|
||||
- **Purify Volume**: The volume of purified air in cubic meter. Disabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -711,17 +745,14 @@ These models use newer MiOT communication protocol.
|
||||
- Attributes (fan platform)
|
||||
- `use_time`
|
||||
- `extra_features`
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------------------- | ------------------------------------------------------------- | ------------------ |
|
||||
| Carbon Dioxide | The current carbon dioxide measured in ppm | True |
|
||||
| Filter Lifetime Remaining | The remaining lifetime of the filter | True |
|
||||
| Filter Use | Filter usage time in hours | True |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| PM2.5 | The current particulate matter 2.5 measured | True |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
- Sensor entities|
|
||||
- **Carbon Dioxide**: The current carbon dioxide measured in ppm. Enabled by default.
|
||||
- **Filter Lifetime Remaining**: The remaining lifetime of the filter. Enabled by default.
|
||||
- **Filter Use**: Filter usage time in hours. Enabled by default.
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **PM2.5**: The current particulate matter 2.5 measured. Enabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
|
||||
- Select entities
|
||||
|
||||
@ -776,38 +807,26 @@ These models use newer MiOT communication protocol.
|
||||
- Power (on, off)
|
||||
- Operation modes (Auto, Sleep, Favorite)
|
||||
- Binary sensor entities
|
||||
|
||||
| Binary sensor | Description |
|
||||
| --------------------- | -------------------------------------- |
|
||||
| Auxiliary Heat Status | Indicates if the heater is actually on |
|
||||
- **Auxiliary Heat Status**: Indicates if the heater is actually on
|
||||
|
||||
- Button entities
|
||||
|
||||
| Button | Description |
|
||||
| ------------------ | ---------------------------------------------------- |
|
||||
| Reset Dust Filter | Resets filter lifetime and usage of the dust filter |
|
||||
| Reset Upper Filter | Resets filter lifetime and usage of the upper filter |
|
||||
- **Reset Dust Filter**: Resets filter lifetime and usage of the dust filter
|
||||
- **Reset Upper Filter**: Resets filter lifetime and usage of the upper filter
|
||||
|
||||
- Select entities
|
||||
|
||||
| Select | Description |
|
||||
| -------------------- | -------------------------------------------------------------- |
|
||||
| Auxiliary Heat Level | Controls the level of the heater (Low, Medium, High) |
|
||||
| Display Orientation | Controls the orientation of the display (Forward, Left, Right) |
|
||||
- **Auxiliary Heat Level**: Controls the level of the heater (Low, Medium, High)
|
||||
- **Display Orientation**: Controls the orientation of the display (Forward, Left, Right)
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description |
|
||||
| ------------------------------------ | -------------------------------------------------- |
|
||||
| Carbon Dioxide | The current carbon dioxide in ppm |
|
||||
| Dust filter lifetime remaining | The remaining lifetime of the dust filter |
|
||||
| Dust filter lifetime remaining days | The remaining lifetime of the dust filter in days |
|
||||
| Upper filter lifetime remaining | The remaining lifetime of the upper filter |
|
||||
| Upper filter lifetime remaining days | The remaining lifetime of the upper filter in days |
|
||||
| PM2.5 | The current particulate matter 2.5 |
|
||||
| Temperature | The current outside temperature |
|
||||
| Control Speed | The current motor speed in rpm |
|
||||
| Favorite Speed | The favorite motor speed in rpm |
|
||||
- **Carbon Dioxide**: The current carbon dioxide in ppm
|
||||
- **Dust filter lifetime remaining**: The remaining lifetime of the dust filter
|
||||
- **Dust filter lifetime remaining days**: The remaining lifetime of the dust filter in days
|
||||
- **Upper filter lifetime remaining**: The remaining lifetime of the upper filter
|
||||
- **Upper filter lifetime remaining days**: The remaining lifetime of the upper filter in days
|
||||
- **PM2.5**: The current particulate matter 2.5
|
||||
- **Temperature**: The current outside temperature
|
||||
- **Control Speed**: The current motor speed in rpm
|
||||
- **Favorite Speed**: The favorite motor speed in rpm
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -846,13 +865,10 @@ These models use newer MiOT communication protocol.
|
||||
| LED Brightness | Controls the brightness of the LEDs (bright, dim, off) |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ----------- | ------------------------------------------------------------- | ------------------ |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
| Water Level | The current water level percentage measured | True |
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
- **Water Level**: The current water level percentage measured. Enabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -889,13 +905,10 @@ These models use newer MiOT communication protocol.
|
||||
| LED Brightness | Controls the brightness of the LEDs (bright, dim, off) |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ----------- | ------------------------------------------------------------- | ------------------ |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
| Water Level | The current water level percentage measured | True |
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
- **Water Level**: The current water level percentage measured. Enabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -939,14 +952,11 @@ These models use newer MiOT communication protocol.
|
||||
| LED Brightness | Controls the brightness of the LEDs (bright, dim, off) |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ------------ | ------------------------------------------------------------- | ------------------ |
|
||||
| Actual Speed | The current motor speed measured in rpm | True |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
| Water Level | The current water level percentage measured | True |
|
||||
- **Actual Speed**: The current motor speed measured in rpm. Enabled by default.
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
- **Water Level**: The current water level percentage measured. Enabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -989,13 +999,10 @@ Clean mode and Motor speed can only be set when the device is turned on.
|
||||
| LED Brightness | Controls the brightness of the LEDs (bright, dim, off) |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ----------- | ------------------------------------------------------------- | ------------------ |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
| Water Level | The current water level percentage measured | True |
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
- **Water Level**: The current water level percentage measured. Enabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -1005,7 +1012,7 @@ Clean mode and Motor speed can only be set when the device is turned on.
|
||||
| Child Lock | Turn on/off the child lock |
|
||||
| Dry Mode | Turn on/off the dry mode |
|
||||
|
||||
### Air Humidifier JSQ/JSQ1/MJJSQ (deerma.humidifier.jsq/deerma.humidifier.jsq1/deerma.humidifier.mjjsq)
|
||||
### Air Humidifier JSQ/JSQ1/MJJSQ (deerma.humidifier.jsq, deerma.humidifier.jsq1, deerma.humidifier.mjjsq)
|
||||
|
||||
- On, Off
|
||||
- Operation modes (low, medium, high, humidity)
|
||||
@ -1027,13 +1034,10 @@ Clean mode and Motor speed can only be set when the device is turned on.
|
||||
| Water Tank | Indicates whether the water tank is connected or not |
|
||||
| Water Tank Empty | Indicates whether the water tank is empty or not |
|
||||
|
||||
- Sensor entities
|
||||
|
||||
| Sensor | Description | Enabled by default |
|
||||
| ----------- | ------------------------------------------------------------- | ------------------ |
|
||||
| Humidity | The current humidity measured | True |
|
||||
| Temperature | The current temperature measured | True |
|
||||
| Use Time | The accumulative number of seconds the device has been in use | False |
|
||||
- Sensor entities|
|
||||
- **Humidity**: The current humidity measured. Enabled by default.
|
||||
- **Temperature**: The current temperature measured. Enabled by default.
|
||||
- **Use Time**: The accumulative number of seconds the device has been in use. Disabled by default.
|
||||
|
||||
- Switch entities
|
||||
|
||||
@ -1139,7 +1143,7 @@ Clean mode and Motor speed can only be set when the device is turned on.
|
||||
| Child Lock | Turn on/off the Child Lock |
|
||||
| LED | Turn on/off the LED |
|
||||
|
||||
### Tower Fan/Standing Fan 2/Standing Fan Pro (dmaker.fan.p9/dmaker.fan.p10/dmaker.fan.p11)
|
||||
### Tower Fan/Standing Fan 2/Standing Fan Pro (dmaker.fan.p9, dmaker.fan.p10, dmaker.fan.p11)
|
||||
|
||||
- Power (on, off)
|
||||
- Operation modes (Normal, Nature)
|
||||
@ -1486,11 +1490,17 @@ In addition to all of the actions provided by the `vacuum` {% term integration %
|
||||
|
||||
Start the cleaning operation in the areas selected for the number of repeats indicated.
|
||||
|
||||
| Data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `entity_id` | no | Only act on a specific robot |
|
||||
| `zone` | no | List of zones. Each zone is an array of four integer values. These values represent two sets of x- and y-axis coordinates that describe the beginning and ending points of a square or rectangle cleaning zone. For example, `[[23510,25311,25110,26361]]` creates a box that starts in one corner at the 23510, 25311 (x- and y-axis) coordinates and then is expanded diagonally to the 25110, 26361 coordinates to create a rectangular cleaning zone. |
|
||||
| `repeats` | no | Number of cleaning repeats for each zone between 1 and 3. |
|
||||
- **Data attribute**: `entity_id`
|
||||
- **Description**: Only act on a specific robot.
|
||||
- **Optional**: No.
|
||||
|
||||
- **Data attribute**: `zone`
|
||||
- **Description**: List of zones. Each zone is an array of four integer values. These values represent two sets of x- and y-axis coordinates that describe the beginning and ending points of a square or rectangle cleaning zone. For example, `[[23510,25311,25110,26361]]` creates a box that starts in one corner at the 23510, 25311 (x- and y-axis) coordinates and then is expanded diagonally to the 25110, 26361 coordinates to create a rectangular cleaning zone.
|
||||
- **Optional**: No.
|
||||
|
||||
- **Data attribute**: `repeats`
|
||||
- **Description**: Number of cleaning repeats for each zone between 1 and 3.
|
||||
- **Optional**: No.
|
||||
|
||||
Example of `xiaomi_miio.vacuum_clean_zone` use:
|
||||
|
||||
@ -1565,10 +1575,12 @@ automation:
|
||||
|
||||
Clean the specified segment/room. A room is identified by a number. Instructions on how to find the valid room numbers and determine what rooms they map to, read the section [Retrieving room numbers](#retrieving-room-numbers).
|
||||
|
||||
| Data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------------------------------------------------- |
|
||||
| `entity_id` | no | Only act on a specific robot |
|
||||
| `segments` | no | List of segment numbers or one single segment number. |
|
||||
- **Data attribute**: `entity_id`
|
||||
- **Description**: Only act on a specific robot.
|
||||
- **Optional**: No.
|
||||
- **Data attribute**: `segments`
|
||||
- **Description**: List of segment numbers or one single segment number.
|
||||
- **Optional**: No.
|
||||
|
||||
Example of `xiaomi_miio.vacuum_clean_segment` use:
|
||||
|
||||
@ -1624,11 +1636,15 @@ automation:
|
||||
|
||||
Go the specified coordinates.
|
||||
|
||||
| Data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------------------------------------------------------------------- |
|
||||
| `entity_id` | no | Only act on a specific robot |
|
||||
| `x_coord` | no | X-coordinate, integer value. The dock is located at x-coordinate 25500. |
|
||||
| `y_coord` | no | Y-coordinate, integer value. The dock is located at y-coordinate 25500. |
|
||||
- **Data attribute**: `entity_id`
|
||||
- **Description**: Only act on a specific robot.
|
||||
- **Optional**: No.
|
||||
- **Data attribute**: `x_coord`
|
||||
- **Description**: X-coordinate, integer value. The dock is located at x-coordinate 25500.
|
||||
- **Optional**: No.
|
||||
- **Data attribute**: `y_coord`
|
||||
- **Description**: Y-coordinate, integer value. The dock is located at y-coordinate 25500.
|
||||
- **Optional**: No.
|
||||
|
||||
Note: If your vacuum is in motion and does not respond to the `xiaomi_miio.vacuum_goto` command, call the `vacuum.pause` or `vacuum.stop` action first.
|
||||
|
||||
@ -1648,27 +1664,23 @@ Exit the remote control mode of the robot.
|
||||
| ---------------------- | -------- | ---------------------------- |
|
||||
| `entity_id` | no | Only act on a specific robot |
|
||||
|
||||
### Action `xiaomi_miio.vacuum_remote_control_move`
|
||||
### Action `xiaomi_miio.vacuuNm_remote_control_move`
|
||||
|
||||
Remote control the robot. Please ensure you first set it in remote control mode with `remote_control_start`.
|
||||
|
||||
| Data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | --------------------------------------------------------- |
|
||||
| `entity_id` | no | Only act on a specific robot |
|
||||
| `velocity` | no | Speed: between -0.29 and 0.29 |
|
||||
| `rotation` | no | Rotation: between -179 degrees and 179 degrees |
|
||||
| `duration` | no | The number of milliseconds that the robot should move for |
|
||||
- `entity_id`: Only act on a specific robot. Not optional.
|
||||
- `velocity`: Speed: between -0.29 and 0.29. Not optional.
|
||||
- `rotation`: Rotation: between -179 degrees and 179 degrees. Not optional.
|
||||
- `duration`: The number of milliseconds that the robot should move for. Not optional.
|
||||
|
||||
### Action `xiaomi_miio.vacuum_remote_control_move_step`
|
||||
|
||||
Enter remote control mode, make one move, stop, and exit remote control mode.
|
||||
|
||||
| Data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | --------------------------------------------------------- |
|
||||
| `entity_id` | no | Only act on a specific robot |
|
||||
| `velocity` | no | Speed: between -0.29 and 0.29 |
|
||||
| `rotation` | no | Rotation: between -179 degrees and 179 degrees |
|
||||
| `duration` | no | The number of milliseconds that the robot should move for |
|
||||
- **entity_id**: Only act on a specific robot. Not optional.
|
||||
- **velocity**: Speed: between -0.29 and 0.29. Not optional.
|
||||
- **rotation**: Rotation: between -179 degrees and 179 degrees. Not optional.
|
||||
- **duration**: The number of milliseconds that the robot should move for. Not optional.
|
||||
|
||||
### Buttons
|
||||
|
||||
|
@ -841,11 +841,13 @@ Additional devices may be discoverable, however only devices that have been conf
|
||||
|
||||
Zwavejs2Mqtt was renamed Z-Wave JS UI in September 2022. They are synonymous with no difference between their capabilities.
|
||||
|
||||
### Can I switch between the official Z-Wave JS add-on and the Z-Wave JS UI add-on?
|
||||
### Can I switch between Z-Wave JS and Z-Wave JS UI?
|
||||
|
||||
You can, but you cannot run them both at the same time. Only one of them can be active at the same time.
|
||||
You can switch between the official Z-Wave JS add-on and the Z-Wave JS UI add-on. However, but you cannot run them both at the same time. Only one of them can be active at the same time.
|
||||
|
||||
### How do I switch between the official Z-Wave JS add-on and the Z-Wave JS UI add-on?
|
||||
### How to switch between Z-Wave JS and Z-Wave JS UI?
|
||||
|
||||
To switch between the official Z-Wave JS add-on and the Z-Wave JS UI add-on, follow these steps:
|
||||
|
||||
Switching does not require renaming your devices.
|
||||
|
||||
@ -863,13 +865,14 @@ Switching does not require renaming your devices.
|
||||
|
||||
7. Enable the Z-Wave integration.
|
||||
|
||||
### What's the benefit of using Z-Wave JS UI add-on over the official add-on?
|
||||
### What's the benefit of using Z-Wave JS UI add-on?
|
||||
|
||||
You might wonder what the benefit is of using the Z-Wave JS UI add-on instead of the official add-on.
|
||||
The official add-on provides the Z-Wave Server in its bare minimum variant, just enough to serve the Home Assistant integration.
|
||||
|
||||
The Z-Wave JS UI project includes the Z-Wave JS Server for convenience but also provides a Z-Wave control panel and the ability to serve your Z-Wave network to MQTT. This allows you to use the control panel, and if you so choose, to also use MQTT at the same time. For example, some users may use MQTT to interact with Z-Wave from other devices, while the Home Assistant integration still works (as long as you keep the WS Server enabled in Z-Wave JS UI).
|
||||
|
||||
### Z-Wave JS UI seems to provide discovery of Home Assistant devices on its own too, now I'm confused
|
||||
### Z-Wave JS UI provides discovery of HA devices on its own too, now I'm confused
|
||||
|
||||
Correct, the Z-Wave JS UI project existed before Home Assistant had plans to move to the Z-Wave JS Driver. You should use the integration for device discovery and _not_ the MQTT discovery provided by Z-Wave JS UI.
|
||||
|
||||
@ -919,7 +922,7 @@ Entities will be created only after the node is ready (the interview is complete
|
||||
|
||||
If you are certain that your device should have entities and you do not see them (even after a restart of Home Assistant Core), create an issue about your problem on the GitHub issue tracker.
|
||||
|
||||
### My device does not automatically update its status in HA if I control it manually
|
||||
### My device doesn't automatically update its status in HA if I control it manually
|
||||
|
||||
Your device might not send automatic status updates to the controller. While the best advice would be to update to recent Z-Wave Plus devices, there is a workaround with active polling (request the status).
|
||||
|
||||
|
@ -11,9 +11,9 @@ og_image: /images/blog/2024-10-zbt1-issue/art.jpg
|
||||
---
|
||||
<img src='/images/blog/2024-10-zbt1-issue/art.jpg' alt="Home Assistant Connect ZBT-1 issue and replacement">
|
||||
|
||||
We've found an issue in Home Assistant Connect ZBT-1 that has affected a small number of customers, which appears to be the result of a faulty part incorporated in the most recent batch of ZBT-1 devices. We want to make sure everyone can get a replacement ZBT-1 and ensure they are covered far into the future.
|
||||
We've found an issue in Home Assistant Connect ZBT-1 that has affected a small number of customers, which appears to be the result of a faulty part incorporated in the first production run of ZBT-1 devices. We want to make sure everyone can get a replacement ZBT-1 and ensure they are covered far into the future.
|
||||
|
||||
Though Home Assistant SkyConnect is identical to the ZBT-1 under the hood, it is not affected. The design is not what's at fault, but instead, a defective voltage regulator that was used in this specific batch that is causing the issue. When a ZBT-1 is inserted into certain USB-A ports, the voltage regulator can fail, fully bricking the device. We used high-quality manufacturing and quality control in this and previous batches. We are undertaking an investigation to find out how this could happen and most importantly, to avoid a repeat of anything remotely similar in the future.
|
||||
Though Home Assistant SkyConnect is identical to the ZBT-1 under the hood, it is not affected. The design is not what's at fault, but instead, a defective voltage regulator that was used in this specific production run that is causing the issue. When a ZBT-1 is inserted into certain USB-A ports, the voltage regulator can fail, fully bricking the device. We used high-quality manufacturing and quality control in this and previous production runs. We are undertaking an investigation to find out how this could happen and most importantly, to avoid a repeat of anything remotely similar in the future.
|
||||
|
||||
We're sorry for any inconvenience this may cause you. Below are details on our investigation, how devices are affected, and the replacement program.
|
||||
- [Background](#background)
|
||||
@ -33,7 +33,10 @@ When we opened them, we found a dead voltage regulator. The mark in the outer ca
|
||||
|
||||
We replaced the voltage regulator on the devices we tested, and the devices sprang back to life. We found our culprit, but why was it failing? As mentioned, the SkyConnect internal design and the manufacturing were effectively identical to the ZBT-1, and we received no reports of any such failures in the literally tens of thousands of them in the wild. In manufacturing runs there is always a little variance, and in this run, something went wrong with the voltage regulator that was sourced - again, we're looking into this.
|
||||
|
||||
It took us a couple of weeks to replicate the problem with our own units. We went down some wrong paths, but eventually found it was triggered only by certain devices, specifically certain desktop PCs (internally, we have only found one desktop that causes this failure). We have not observed the failure occur when the device has only been connected to a Home Assistant Green, Raspberry Pi, or even a Mac. If you have plugged your ZBT-1 into a different device, specifically a desktop PC, and it is not recognized by that system, inspect it for this deformation pictured above. Obviously, we want you to be able to use the device with any hardware, and even if only a small number of devices from this batch have reported issues, it is still unacceptable to us.
|
||||
<img src='/images/blog/2024-10-zbt1-issue/skyconnect-zbt1.png' style='border: 0;box-shadow: none;' alt="SkyConnect (left) and ZBT-1 (right)">
|
||||
<p style="text-align: center; font-size: 0.9rem;">SkyConnect (left) and ZBT-1 (right) branded devices, SkyConnect are unaffected by this issue.</p>
|
||||
|
||||
It took us a couple of weeks to replicate the problem with our own units. We went down some wrong paths, but eventually found it was triggered only by certain devices, specifically certain desktop PCs (internally, we have only found one desktop that causes this failure). We have not observed the failure occur when the device has only been connected to a Home Assistant Green, Raspberry Pi, or even a Mac. If you have plugged your ZBT-1 into a different device, specifically a desktop PC, and it is not recognized by that system, inspect it for this deformation pictured above. Obviously, we want you to be able to use the device with any hardware, and even if only a small number of devices from this production run have reported issues, it is still unacceptable to us.
|
||||
|
||||
## Pausing sales
|
||||
|
||||
@ -47,6 +50,10 @@ If you have purchased Home Assistant Connect ZBT-1, we are working on a replacem
|
||||
|
||||
It is a core value of ours to do things as sustainably as possible, and that's why we've provided such a long coverage period. We want to give owners with working ZBT-1s, who do not expect to use the device in a different system for the foreseeable future, the ability to keep it operating with peace of mind.
|
||||
|
||||
{% note %}
|
||||
All ZBT-1 branded devices produced, as of October 2024, are believed to have this fault. You can tell if your device is a ZBT-1 by checking the white label on the back for “ZBT-1”. There is no need to test if your device is affected by this fault.
|
||||
{% endnote %}
|
||||
|
||||
If it's working, keep it plugged into the device it's working with, and don't worry about a replacement until you need it. If you need or want a replacement, please contact the seller where you purchased your device, and they will arrange the return process and replacement. Replacement devices are expected by early November, and we will be prioritizing people with non-functioning devices.
|
||||
|
||||
## Conclusion
|
||||
|
@ -54,6 +54,8 @@ Enjoy the release!
|
||||
- [YAML-editor improvements](#yaml-editor-improvements)
|
||||
- [Patch releases](#patch-releases)
|
||||
- [2024.10.1 - October 4](#2024101---october-4)
|
||||
- [2024.10.2 - October 11](#2024102---october-11)
|
||||
- [2024.10.3 - October 18](#2024103---october-18)
|
||||
- [Need help? Join the community!](#need-help-join-the-community)
|
||||
- [Backward-incompatible changes](#backward-incompatible-changes)
|
||||
- [All changes](#all-changes)
|
||||
@ -495,6 +497,247 @@ every Friday.
|
||||
[@robinostlund]: https://github.com/robinostlund
|
||||
[@tl-sl]: https://github.com/tl-sl
|
||||
|
||||
### 2024.10.2 - October 11
|
||||
|
||||
- Fix Island status in Teslemetry ([@Bre77] - [#127504])
|
||||
- Bump pyblu to 1.0.3 ([@LouisChrist] - [#127571])
|
||||
- Bump aiostreammagic to 2.5.0 ([@noahhusby] - [#127595])
|
||||
- Bump opower to 0.8.2 ([@tronikos] - [#127598])
|
||||
- Fix wake up in Tesla Fleet ([@Bre77] - [#127615])
|
||||
- Update Radarr config flow to standardize ports ([@Khabi] - [#127620])
|
||||
- Bump fyta_cli to 0.6.7 ([@dontinelli] - [#127650])
|
||||
- Revert "Fix enum lookup (#125220)" ([@cdce8p] - [#127680])
|
||||
- Fix problems with automatic management of Schlage locks ([@dknowles2] - [#127689])
|
||||
- Fix typo in HDMI CEC ([@joostlek] - [#127714])
|
||||
- Fix Withings log message ([@joostlek] - [#127716])
|
||||
- Bump NYT Games to 0.4.3 ([@joostlek] - [#127717])
|
||||
- Bump airgradient to 0.9.1 ([@joostlek] - [#127718])
|
||||
- Add translation string for Withings wrong account ([@joostlek] - [#127719])
|
||||
- Increase connection timeout in CalDAV ([@mib1185] - [#127727])
|
||||
- Migrate SMA unique id to str ([@rklomp] - [#127732])
|
||||
- Remove stale references in squeezebox services.yaml ([@rajlaud] - [#127739])
|
||||
- Fix Aurora integration casts longitude and latitude to integer ([@johangus65] - [#127740])
|
||||
- Bump python-linkplay to 0.0.15 ([@silamon] - [#127748])
|
||||
- Fix custom account config flow setup ([@rjmarques] - [#127750])
|
||||
- Bump solarlog_cli to 0.3.1 ([@dontinelli] - [#127753])
|
||||
- Update DoorBirdPy to 3.0.3 ([@frenck] - [#126949])
|
||||
- Bump DoorBirdPy to 3.0.4 ([@bdraco] - [#127760])
|
||||
- Bump pychromecast to 14.0.3 ([@emontnemery] - [#127778])
|
||||
- Fix aurora alert sensor always Off ([@johangus65] - [#127780])
|
||||
- Update aioairzone-cloud to v0.6.6 ([@Noltari] - [#127789])
|
||||
- Bump pysmlight to v0.1.3 ([@tl-sl] - [#127804])
|
||||
- Fix incorrect string in amberlectric ([@epenet] - [#127807])
|
||||
- Add missing and fix incorrect translation string in alarmdecoder ([@epenet] - [#127814])
|
||||
- Fix incorrect translation string in analytics_insights ([@epenet] - [#127815])
|
||||
- Add missing and fix incorrect translation string in aurora ([@epenet] - [#127818])
|
||||
- Fix incorrect translation string in azure event hub ([@epenet] - [#127820])
|
||||
- Correct cleanup of sensor statistics repairs ([@emontnemery] - [#127826])
|
||||
- Add missing translation string in blebox ([@epenet] - [#127827])
|
||||
- Fix incorrect translation string in bryant_evolution ([@epenet] - [#127830])
|
||||
- Add missing and fix incorrect translation string in duotecno ([@epenet] - [#127834])
|
||||
- Reverse unintended change of unique_id for solarlog ([@dontinelli] - [#127845])
|
||||
- Bump `pytouchlinesl` to 0.1.8 ([@jnsgruk] - [#127859])
|
||||
- Fix wrong DPTypes returned by Tuya's cloud ([@azerty9971] - [#127860])
|
||||
- Add missing translation string in AVM Fritz!Smarthome ([@mib1185] - [#127864])
|
||||
- Fix merge_response template not mutate original object ([@gjohansson-ST] - [#127865])
|
||||
- Don't error with missing information in systemmonitor diagnostics ([@gjohansson-ST] - [#127868])
|
||||
- Bump holidays library to 0.58 ([@gjohansson-ST] - [#127876])
|
||||
- Bump pyeconet to 0.1.23 ([@dcmeglio] - [#127896])
|
||||
- Add missing translation string in otbr ([@epenet] - [#127909])
|
||||
- Add missing translation string in yamaha_musiccast ([@epenet] - [#127912])
|
||||
- Add support of due date calculation for grey dailies in Habitica integration ([@tr4nt0r] - [#127923])
|
||||
- Bump `imgw_pib` library to version 1.0.6 ([@bieniu] - [#127925])
|
||||
- Bump python-kasa to 0.7.5 ([@sdb9696] - [#127934])
|
||||
- Fix discovery of WMS WebControl pro by using IP address ([@mback2k] - [#127939])
|
||||
- Update pywmspro to 0.2.1 to fix handling of unknown products ([@mback2k] - [#127942])
|
||||
- Fix europe authentication in Fujitsu FGLair ([@crevetor] - [#127947])
|
||||
- Bump motionblindsble to 0.1.2 ([@LennP] - [#127954])
|
||||
- Fix zwave_js config validation for values ([@raman325] - [#127972])
|
||||
- Fix firmware version parsing in venstar ([@epenet] - [#127974])
|
||||
- Bump pyduotecno to 2024.10.0 ([@Cereal2nd] - [#127979])
|
||||
- Increase tplink climate precision ([@rytilahti] - [#127996])
|
||||
- Add missing translation string in solarlog ([@dontinelli] - [#128015])
|
||||
- Fix missing reauth name translation placeholder in ring integration ([@sdb9696] - [#128048])
|
||||
- Add missing translation string for re-auth flows ([@mib1185] - [#128055])
|
||||
- Update xknxproject to 3.8.1 ([@farmio] - [#128057])
|
||||
- Fix casing on Powerview Gen3 zeroconf discovery ([@kingy444] - [#128076])
|
||||
- Fix ring realtime events ([@sdb9696] - [#128083])
|
||||
- Increase Hydrawise polling interval to 60 seconds ([@dknowles2] - [#128090])
|
||||
- Update frontend to 20241002.3 ([@bramkragten] - [#128106])
|
||||
- Bump aioautomower to 2024.10.0 ([@Thomas55555] - [#128137])
|
||||
- Fix license script for ftfy ([@cdce8p] - [#128138])
|
||||
- Fix regression in Opower that was introduced in 2024.10.0 ([@tronikos] - [#128141])
|
||||
- Bump opower to 0.8.3 ([@tronikos] - [#128144])
|
||||
- Remove some redundant code in Opower's coordinator from the fix in #128141 ([@tronikos] - [#128150])
|
||||
- Fix preset handling issue in ViCare ([@CFenner] - [#128167])
|
||||
- Fix model in Husqvarna Automower ([@Thomas55555] - [#128168])
|
||||
|
||||
[#126782]: https://github.com/home-assistant/core/pull/126782
|
||||
[#126949]: https://github.com/home-assistant/core/pull/126949
|
||||
[#127504]: https://github.com/home-assistant/core/pull/127504
|
||||
[#127566]: https://github.com/home-assistant/core/pull/127566
|
||||
[#127571]: https://github.com/home-assistant/core/pull/127571
|
||||
[#127595]: https://github.com/home-assistant/core/pull/127595
|
||||
[#127598]: https://github.com/home-assistant/core/pull/127598
|
||||
[#127615]: https://github.com/home-assistant/core/pull/127615
|
||||
[#127620]: https://github.com/home-assistant/core/pull/127620
|
||||
[#127650]: https://github.com/home-assistant/core/pull/127650
|
||||
[#127680]: https://github.com/home-assistant/core/pull/127680
|
||||
[#127689]: https://github.com/home-assistant/core/pull/127689
|
||||
[#127714]: https://github.com/home-assistant/core/pull/127714
|
||||
[#127716]: https://github.com/home-assistant/core/pull/127716
|
||||
[#127717]: https://github.com/home-assistant/core/pull/127717
|
||||
[#127718]: https://github.com/home-assistant/core/pull/127718
|
||||
[#127719]: https://github.com/home-assistant/core/pull/127719
|
||||
[#127727]: https://github.com/home-assistant/core/pull/127727
|
||||
[#127732]: https://github.com/home-assistant/core/pull/127732
|
||||
[#127739]: https://github.com/home-assistant/core/pull/127739
|
||||
[#127740]: https://github.com/home-assistant/core/pull/127740
|
||||
[#127748]: https://github.com/home-assistant/core/pull/127748
|
||||
[#127750]: https://github.com/home-assistant/core/pull/127750
|
||||
[#127753]: https://github.com/home-assistant/core/pull/127753
|
||||
[#127760]: https://github.com/home-assistant/core/pull/127760
|
||||
[#127778]: https://github.com/home-assistant/core/pull/127778
|
||||
[#127780]: https://github.com/home-assistant/core/pull/127780
|
||||
[#127789]: https://github.com/home-assistant/core/pull/127789
|
||||
[#127804]: https://github.com/home-assistant/core/pull/127804
|
||||
[#127807]: https://github.com/home-assistant/core/pull/127807
|
||||
[#127814]: https://github.com/home-assistant/core/pull/127814
|
||||
[#127815]: https://github.com/home-assistant/core/pull/127815
|
||||
[#127818]: https://github.com/home-assistant/core/pull/127818
|
||||
[#127820]: https://github.com/home-assistant/core/pull/127820
|
||||
[#127826]: https://github.com/home-assistant/core/pull/127826
|
||||
[#127827]: https://github.com/home-assistant/core/pull/127827
|
||||
[#127830]: https://github.com/home-assistant/core/pull/127830
|
||||
[#127834]: https://github.com/home-assistant/core/pull/127834
|
||||
[#127845]: https://github.com/home-assistant/core/pull/127845
|
||||
[#127859]: https://github.com/home-assistant/core/pull/127859
|
||||
[#127860]: https://github.com/home-assistant/core/pull/127860
|
||||
[#127864]: https://github.com/home-assistant/core/pull/127864
|
||||
[#127865]: https://github.com/home-assistant/core/pull/127865
|
||||
[#127868]: https://github.com/home-assistant/core/pull/127868
|
||||
[#127876]: https://github.com/home-assistant/core/pull/127876
|
||||
[#127896]: https://github.com/home-assistant/core/pull/127896
|
||||
[#127909]: https://github.com/home-assistant/core/pull/127909
|
||||
[#127912]: https://github.com/home-assistant/core/pull/127912
|
||||
[#127923]: https://github.com/home-assistant/core/pull/127923
|
||||
[#127925]: https://github.com/home-assistant/core/pull/127925
|
||||
[#127934]: https://github.com/home-assistant/core/pull/127934
|
||||
[#127939]: https://github.com/home-assistant/core/pull/127939
|
||||
[#127942]: https://github.com/home-assistant/core/pull/127942
|
||||
[#127947]: https://github.com/home-assistant/core/pull/127947
|
||||
[#127954]: https://github.com/home-assistant/core/pull/127954
|
||||
[#127972]: https://github.com/home-assistant/core/pull/127972
|
||||
[#127974]: https://github.com/home-assistant/core/pull/127974
|
||||
[#127979]: https://github.com/home-assistant/core/pull/127979
|
||||
[#127996]: https://github.com/home-assistant/core/pull/127996
|
||||
[#128015]: https://github.com/home-assistant/core/pull/128015
|
||||
[#128048]: https://github.com/home-assistant/core/pull/128048
|
||||
[#128055]: https://github.com/home-assistant/core/pull/128055
|
||||
[#128057]: https://github.com/home-assistant/core/pull/128057
|
||||
[#128076]: https://github.com/home-assistant/core/pull/128076
|
||||
[#128083]: https://github.com/home-assistant/core/pull/128083
|
||||
[#128090]: https://github.com/home-assistant/core/pull/128090
|
||||
[#128106]: https://github.com/home-assistant/core/pull/128106
|
||||
[#128137]: https://github.com/home-assistant/core/pull/128137
|
||||
[#128138]: https://github.com/home-assistant/core/pull/128138
|
||||
[#128141]: https://github.com/home-assistant/core/pull/128141
|
||||
[#128144]: https://github.com/home-assistant/core/pull/128144
|
||||
[#128150]: https://github.com/home-assistant/core/pull/128150
|
||||
[#128167]: https://github.com/home-assistant/core/pull/128167
|
||||
[#128168]: https://github.com/home-assistant/core/pull/128168
|
||||
[@Bre77]: https://github.com/Bre77
|
||||
[@CFenner]: https://github.com/CFenner
|
||||
[@Cereal2nd]: https://github.com/Cereal2nd
|
||||
[@Khabi]: https://github.com/Khabi
|
||||
[@LennP]: https://github.com/LennP
|
||||
[@LouisChrist]: https://github.com/LouisChrist
|
||||
[@Noltari]: https://github.com/Noltari
|
||||
[@Thomas55555]: https://github.com/Thomas55555
|
||||
[@azerty9971]: https://github.com/azerty9971
|
||||
[@bdraco]: https://github.com/bdraco
|
||||
[@bieniu]: https://github.com/bieniu
|
||||
[@bramkragten]: https://github.com/bramkragten
|
||||
[@cdce8p]: https://github.com/cdce8p
|
||||
[@crevetor]: https://github.com/crevetor
|
||||
[@dcmeglio]: https://github.com/dcmeglio
|
||||
[@dknowles2]: https://github.com/dknowles2
|
||||
[@dontinelli]: https://github.com/dontinelli
|
||||
[@emontnemery]: https://github.com/emontnemery
|
||||
[@epenet]: https://github.com/epenet
|
||||
[@farmio]: https://github.com/farmio
|
||||
[@frenck]: https://github.com/frenck
|
||||
[@gjohansson-ST]: https://github.com/gjohansson-ST
|
||||
[@jnsgruk]: https://github.com/jnsgruk
|
||||
[@johangus65]: https://github.com/johangus65
|
||||
[@joostlek]: https://github.com/joostlek
|
||||
[@kingy444]: https://github.com/kingy444
|
||||
[@mback2k]: https://github.com/mback2k
|
||||
[@mib1185]: https://github.com/mib1185
|
||||
[@noahhusby]: https://github.com/noahhusby
|
||||
[@rajlaud]: https://github.com/rajlaud
|
||||
[@raman325]: https://github.com/raman325
|
||||
[@rjmarques]: https://github.com/rjmarques
|
||||
[@rklomp]: https://github.com/rklomp
|
||||
[@rytilahti]: https://github.com/rytilahti
|
||||
[@sdb9696]: https://github.com/sdb9696
|
||||
[@silamon]: https://github.com/silamon
|
||||
[@tl-sl]: https://github.com/tl-sl
|
||||
[@tr4nt0r]: https://github.com/tr4nt0r
|
||||
[@tronikos]: https://github.com/tronikos
|
||||
|
||||
### 2024.10.3 - October 18
|
||||
|
||||
- Update home-assistant-bluetooth to 1.13.0 ([@cdce8p] - [#127691])
|
||||
- Fix printer uptime fluctuations in IPP ([@mib1185] - [#127725])
|
||||
- Improve discovery of WMS WebControl pro by updating IP address ([@mback2k] - [#128007])
|
||||
- Use the same ZHA database path during startup and when loading device triggers ([@puddly] - [#128130])
|
||||
- Fix playing media via roku ([@ctalkington] - [#128133])
|
||||
- Bump yt-dlp to 2024.10.07 ([@joostlek] - [#128182])
|
||||
- Fix daikin entities not refreshing quickly ([@adampetrovic] - [#128230])
|
||||
- Keep the provided name when creating a tag ([@silamon] - [#128240])
|
||||
- Update aioairzone to v0.9.4 ([@Noltari] - [#127792])
|
||||
- Update aioairzone to v0.9.5 ([@Noltari] - [#128265])
|
||||
- Bump gcal_sync to 6.1.6 ([@allenporter] - [#128270])
|
||||
- Bump solarlog_cli to 0.3.2 ([@dontinelli] - [#128293])
|
||||
- Bump pyblu to 1.0.4 ([@LouisChrist] - [#128482])
|
||||
- Increase Z-Wave fallback thermostat range to 0-50 C ([@MindFreeze] - [#128543])
|
||||
- Bump pyotgw to 2.2.2 ([@mvn23] - [#128594])
|
||||
|
||||
[#126782]: https://github.com/home-assistant/core/pull/126782
|
||||
[#127566]: https://github.com/home-assistant/core/pull/127566
|
||||
[#127691]: https://github.com/home-assistant/core/pull/127691
|
||||
[#127725]: https://github.com/home-assistant/core/pull/127725
|
||||
[#127792]: https://github.com/home-assistant/core/pull/127792
|
||||
[#128007]: https://github.com/home-assistant/core/pull/128007
|
||||
[#128130]: https://github.com/home-assistant/core/pull/128130
|
||||
[#128133]: https://github.com/home-assistant/core/pull/128133
|
||||
[#128176]: https://github.com/home-assistant/core/pull/128176
|
||||
[#128182]: https://github.com/home-assistant/core/pull/128182
|
||||
[#128230]: https://github.com/home-assistant/core/pull/128230
|
||||
[#128240]: https://github.com/home-assistant/core/pull/128240
|
||||
[#128265]: https://github.com/home-assistant/core/pull/128265
|
||||
[#128270]: https://github.com/home-assistant/core/pull/128270
|
||||
[#128293]: https://github.com/home-assistant/core/pull/128293
|
||||
[#128482]: https://github.com/home-assistant/core/pull/128482
|
||||
[#128543]: https://github.com/home-assistant/core/pull/128543
|
||||
[#128594]: https://github.com/home-assistant/core/pull/128594
|
||||
[@LouisChrist]: https://github.com/LouisChrist
|
||||
[@MindFreeze]: https://github.com/MindFreeze
|
||||
[@Noltari]: https://github.com/Noltari
|
||||
[@adampetrovic]: https://github.com/adampetrovic
|
||||
[@allenporter]: https://github.com/allenporter
|
||||
[@cdce8p]: https://github.com/cdce8p
|
||||
[@ctalkington]: https://github.com/ctalkington
|
||||
[@dontinelli]: https://github.com/dontinelli
|
||||
[@frenck]: https://github.com/frenck
|
||||
[@joostlek]: https://github.com/joostlek
|
||||
[@mback2k]: https://github.com/mback2k
|
||||
[@mib1185]: https://github.com/mib1185
|
||||
[@mvn23]: https://github.com/mvn23
|
||||
[@puddly]: https://github.com/puddly
|
||||
[@silamon]: https://github.com/silamon
|
||||
|
||||
## Need help? Join the community!
|
||||
|
||||
Home Assistant has a great community of users who are all more than willing
|
||||
|
@ -159,7 +159,9 @@ layout: null
|
||||
/integrations/binary_sensor.knx /integrations/knx#binary-sensor
|
||||
/integrations/binary_sensor.modbus /integrations/modbus/#configuring-binary-sensor-entities
|
||||
/integrations/binary_sensor.mysensors /integrations/mysensors#binary-sensor
|
||||
/integrations/binary_sensor.rflink /integrations/rflink/#binary-sensor
|
||||
/integrations/binary_sensor.template /integrations/template/#binary_sensor
|
||||
/integrations/binary_sensor.xiaomi_aqara/ /integrations/xiaomi_aqara/#binary-sensor
|
||||
/integrations/climate.knx /integrations/knx#climate
|
||||
/integrations/climate.modbus/ /integrations/modbus/#configuring-climate-entities
|
||||
/integrations/climate.mysensors /integrations/mysensors#climate
|
||||
@ -167,13 +169,19 @@ layout: null
|
||||
/integrations/cover.group /integrations/group
|
||||
/integrations/cover.knx /integrations/knx#cover
|
||||
/integrations/cover.mysensors /integrations/mysensors#cover
|
||||
/integrations/cover.rflink /integrations/rflink/#cover
|
||||
/integrations/cover.xiaomi_aqara/ /integrations/xiaomi_aqara/#covers
|
||||
/integrations/device_tracker.mysensors /integrations/mysensors#device-tracker
|
||||
/integrations/device_tracker.xiaomi/ /integrations/xiaomi/#router
|
||||
/integrations/fan.group /integrations/group
|
||||
/integrations/fan.xiaomi_miio /integrations/xiaomi_miio/#xiaomi-air-purifier-air-humidifier-and-standing-fan
|
||||
/integrations/light.group /integrations/group
|
||||
/integrations/light.knx /integrations/knx#light
|
||||
/integrations/light.mysensors /integrations/mysensors#light
|
||||
/integrations/light.rflink /integrations/rflink#light
|
||||
/integrations/light.xiaomi_miio /integrations/xiaomi_miio/#xiaomi-philips-light
|
||||
/integrations/light.xiaomi_aqara/ /integrations/xiaomi_aqara/#lights
|
||||
/integrations/lock.xiaomi_aqara/ /integrations/xiaomi_aqara/#locks
|
||||
/integrations/media_player.group /integrations/group
|
||||
/integrations/notify.command_line /integrations/command_line#Notify
|
||||
/integrations/notify.group /integrations/group#notify-groups
|
||||
@ -185,12 +193,16 @@ layout: null
|
||||
/integrations/sensor.knx /integrations/knx#sensor
|
||||
/integrations/sensor.modbus /integrations/modbus/#configuring-sensor-entities
|
||||
/integrations/sensor.mysensors /integrations/mysensors#sensor
|
||||
/integrations/sensor.rflink /integrations/rflink/#sensor
|
||||
/integrations/sensor.websocket_api /integrations/websocket_api/#track-current-connections
|
||||
/integrations/sensor.xiaomi_miio /integrations/xiaomi_miio
|
||||
/integrations/sensor.xiaomi_aqara/ /integrations/xiaomi_aqara/#sensors
|
||||
/integrations/switch.command_line /integrations/command_line#Switch
|
||||
/integrations/switch.knx /integrations/knx#switch
|
||||
/integrations/switch.modbus /integrations/modbus/#configuring-switch-entities
|
||||
/integrations/switch.mysensors /integrations/mysensors#switch
|
||||
/integrations/switch.rflink /integrations/rflink/#switch
|
||||
/integrations/switch.xiaomi_aqara/ /integrations/xiaomi_aqara/#switches
|
||||
/integrations/switch.pca /integrations/elv/
|
||||
/integrations/switch.xiaomi_miio /integrations/xiaomi_miio/#xiaomi-smart-wifi-socket-and-smart-power-strip
|
||||
/integrations/vacuum.xiaomi_miio /integrations/xiaomi_miio/#xiaomi-mi-robot-vacuum
|
||||
|
@ -1187,6 +1187,247 @@ For a summary in a more readable format:
|
||||
[@robinostlund]: https://github.com/robinostlund
|
||||
[@tl-sl]: https://github.com/tl-sl
|
||||
|
||||
## Release 2024.10.2 - October 11
|
||||
|
||||
- Fix Island status in Teslemetry ([@Bre77] - [#127504])
|
||||
- Bump pyblu to 1.0.3 ([@LouisChrist] - [#127571])
|
||||
- Bump aiostreammagic to 2.5.0 ([@noahhusby] - [#127595])
|
||||
- Bump opower to 0.8.2 ([@tronikos] - [#127598])
|
||||
- Fix wake up in Tesla Fleet ([@Bre77] - [#127615])
|
||||
- Update Radarr config flow to standardize ports ([@Khabi] - [#127620])
|
||||
- Bump fyta_cli to 0.6.7 ([@dontinelli] - [#127650])
|
||||
- Revert "Fix enum lookup (#125220)" ([@cdce8p] - [#127680])
|
||||
- Fix problems with automatic management of Schlage locks ([@dknowles2] - [#127689])
|
||||
- Fix typo in HDMI CEC ([@joostlek] - [#127714])
|
||||
- Fix Withings log message ([@joostlek] - [#127716])
|
||||
- Bump NYT Games to 0.4.3 ([@joostlek] - [#127717])
|
||||
- Bump airgradient to 0.9.1 ([@joostlek] - [#127718])
|
||||
- Add translation string for Withings wrong account ([@joostlek] - [#127719])
|
||||
- Increase connection timeout in CalDAV ([@mib1185] - [#127727])
|
||||
- Migrate SMA unique id to str ([@rklomp] - [#127732])
|
||||
- Remove stale references in squeezebox services.yaml ([@rajlaud] - [#127739])
|
||||
- Fix Aurora integration casts longitude and latitude to integer ([@johangus65] - [#127740])
|
||||
- Bump python-linkplay to 0.0.15 ([@silamon] - [#127748])
|
||||
- Fix custom account config flow setup ([@rjmarques] - [#127750])
|
||||
- Bump solarlog_cli to 0.3.1 ([@dontinelli] - [#127753])
|
||||
- Update DoorBirdPy to 3.0.3 ([@frenck] - [#126949])
|
||||
- Bump DoorBirdPy to 3.0.4 ([@bdraco] - [#127760])
|
||||
- Bump pychromecast to 14.0.3 ([@emontnemery] - [#127778])
|
||||
- Fix aurora alert sensor always Off ([@johangus65] - [#127780])
|
||||
- Update aioairzone-cloud to v0.6.6 ([@Noltari] - [#127789])
|
||||
- Bump pysmlight to v0.1.3 ([@tl-sl] - [#127804])
|
||||
- Fix incorrect string in amberlectric ([@epenet] - [#127807])
|
||||
- Add missing and fix incorrect translation string in alarmdecoder ([@epenet] - [#127814])
|
||||
- Fix incorrect translation string in analytics_insights ([@epenet] - [#127815])
|
||||
- Add missing and fix incorrect translation string in aurora ([@epenet] - [#127818])
|
||||
- Fix incorrect translation string in azure event hub ([@epenet] - [#127820])
|
||||
- Correct cleanup of sensor statistics repairs ([@emontnemery] - [#127826])
|
||||
- Add missing translation string in blebox ([@epenet] - [#127827])
|
||||
- Fix incorrect translation string in bryant_evolution ([@epenet] - [#127830])
|
||||
- Add missing and fix incorrect translation string in duotecno ([@epenet] - [#127834])
|
||||
- Reverse unintended change of unique_id for solarlog ([@dontinelli] - [#127845])
|
||||
- Bump `pytouchlinesl` to 0.1.8 ([@jnsgruk] - [#127859])
|
||||
- Fix wrong DPTypes returned by Tuya's cloud ([@azerty9971] - [#127860])
|
||||
- Add missing translation string in AVM Fritz!Smarthome ([@mib1185] - [#127864])
|
||||
- Fix merge_response template not mutate original object ([@gjohansson-ST] - [#127865])
|
||||
- Don't error with missing information in systemmonitor diagnostics ([@gjohansson-ST] - [#127868])
|
||||
- Bump holidays library to 0.58 ([@gjohansson-ST] - [#127876])
|
||||
- Bump pyeconet to 0.1.23 ([@dcmeglio] - [#127896])
|
||||
- Add missing translation string in otbr ([@epenet] - [#127909])
|
||||
- Add missing translation string in yamaha_musiccast ([@epenet] - [#127912])
|
||||
- Add support of due date calculation for grey dailies in Habitica integration ([@tr4nt0r] - [#127923])
|
||||
- Bump `imgw_pib` library to version 1.0.6 ([@bieniu] - [#127925])
|
||||
- Bump python-kasa to 0.7.5 ([@sdb9696] - [#127934])
|
||||
- Fix discovery of WMS WebControl pro by using IP address ([@mback2k] - [#127939])
|
||||
- Update pywmspro to 0.2.1 to fix handling of unknown products ([@mback2k] - [#127942])
|
||||
- Fix europe authentication in Fujitsu FGLair ([@crevetor] - [#127947])
|
||||
- Bump motionblindsble to 0.1.2 ([@LennP] - [#127954])
|
||||
- Fix zwave_js config validation for values ([@raman325] - [#127972])
|
||||
- Fix firmware version parsing in venstar ([@epenet] - [#127974])
|
||||
- Bump pyduotecno to 2024.10.0 ([@Cereal2nd] - [#127979])
|
||||
- Increase tplink climate precision ([@rytilahti] - [#127996])
|
||||
- Add missing translation string in solarlog ([@dontinelli] - [#128015])
|
||||
- Fix missing reauth name translation placeholder in ring integration ([@sdb9696] - [#128048])
|
||||
- Add missing translation string for re-auth flows ([@mib1185] - [#128055])
|
||||
- Update xknxproject to 3.8.1 ([@farmio] - [#128057])
|
||||
- Fix casing on Powerview Gen3 zeroconf discovery ([@kingy444] - [#128076])
|
||||
- Fix ring realtime events ([@sdb9696] - [#128083])
|
||||
- Increase Hydrawise polling interval to 60 seconds ([@dknowles2] - [#128090])
|
||||
- Update frontend to 20241002.3 ([@bramkragten] - [#128106])
|
||||
- Bump aioautomower to 2024.10.0 ([@Thomas55555] - [#128137])
|
||||
- Fix license script for ftfy ([@cdce8p] - [#128138])
|
||||
- Fix regression in Opower that was introduced in 2024.10.0 ([@tronikos] - [#128141])
|
||||
- Bump opower to 0.8.3 ([@tronikos] - [#128144])
|
||||
- Remove some redundant code in Opower's coordinator from the fix in #128141 ([@tronikos] - [#128150])
|
||||
- Fix preset handling issue in ViCare ([@CFenner] - [#128167])
|
||||
- Fix model in Husqvarna Automower ([@Thomas55555] - [#128168])
|
||||
|
||||
[#126782]: https://github.com/home-assistant/core/pull/126782
|
||||
[#126949]: https://github.com/home-assistant/core/pull/126949
|
||||
[#127504]: https://github.com/home-assistant/core/pull/127504
|
||||
[#127566]: https://github.com/home-assistant/core/pull/127566
|
||||
[#127571]: https://github.com/home-assistant/core/pull/127571
|
||||
[#127595]: https://github.com/home-assistant/core/pull/127595
|
||||
[#127598]: https://github.com/home-assistant/core/pull/127598
|
||||
[#127615]: https://github.com/home-assistant/core/pull/127615
|
||||
[#127620]: https://github.com/home-assistant/core/pull/127620
|
||||
[#127650]: https://github.com/home-assistant/core/pull/127650
|
||||
[#127680]: https://github.com/home-assistant/core/pull/127680
|
||||
[#127689]: https://github.com/home-assistant/core/pull/127689
|
||||
[#127714]: https://github.com/home-assistant/core/pull/127714
|
||||
[#127716]: https://github.com/home-assistant/core/pull/127716
|
||||
[#127717]: https://github.com/home-assistant/core/pull/127717
|
||||
[#127718]: https://github.com/home-assistant/core/pull/127718
|
||||
[#127719]: https://github.com/home-assistant/core/pull/127719
|
||||
[#127727]: https://github.com/home-assistant/core/pull/127727
|
||||
[#127732]: https://github.com/home-assistant/core/pull/127732
|
||||
[#127739]: https://github.com/home-assistant/core/pull/127739
|
||||
[#127740]: https://github.com/home-assistant/core/pull/127740
|
||||
[#127748]: https://github.com/home-assistant/core/pull/127748
|
||||
[#127750]: https://github.com/home-assistant/core/pull/127750
|
||||
[#127753]: https://github.com/home-assistant/core/pull/127753
|
||||
[#127760]: https://github.com/home-assistant/core/pull/127760
|
||||
[#127778]: https://github.com/home-assistant/core/pull/127778
|
||||
[#127780]: https://github.com/home-assistant/core/pull/127780
|
||||
[#127789]: https://github.com/home-assistant/core/pull/127789
|
||||
[#127804]: https://github.com/home-assistant/core/pull/127804
|
||||
[#127807]: https://github.com/home-assistant/core/pull/127807
|
||||
[#127814]: https://github.com/home-assistant/core/pull/127814
|
||||
[#127815]: https://github.com/home-assistant/core/pull/127815
|
||||
[#127818]: https://github.com/home-assistant/core/pull/127818
|
||||
[#127820]: https://github.com/home-assistant/core/pull/127820
|
||||
[#127826]: https://github.com/home-assistant/core/pull/127826
|
||||
[#127827]: https://github.com/home-assistant/core/pull/127827
|
||||
[#127830]: https://github.com/home-assistant/core/pull/127830
|
||||
[#127834]: https://github.com/home-assistant/core/pull/127834
|
||||
[#127845]: https://github.com/home-assistant/core/pull/127845
|
||||
[#127859]: https://github.com/home-assistant/core/pull/127859
|
||||
[#127860]: https://github.com/home-assistant/core/pull/127860
|
||||
[#127864]: https://github.com/home-assistant/core/pull/127864
|
||||
[#127865]: https://github.com/home-assistant/core/pull/127865
|
||||
[#127868]: https://github.com/home-assistant/core/pull/127868
|
||||
[#127876]: https://github.com/home-assistant/core/pull/127876
|
||||
[#127896]: https://github.com/home-assistant/core/pull/127896
|
||||
[#127909]: https://github.com/home-assistant/core/pull/127909
|
||||
[#127912]: https://github.com/home-assistant/core/pull/127912
|
||||
[#127923]: https://github.com/home-assistant/core/pull/127923
|
||||
[#127925]: https://github.com/home-assistant/core/pull/127925
|
||||
[#127934]: https://github.com/home-assistant/core/pull/127934
|
||||
[#127939]: https://github.com/home-assistant/core/pull/127939
|
||||
[#127942]: https://github.com/home-assistant/core/pull/127942
|
||||
[#127947]: https://github.com/home-assistant/core/pull/127947
|
||||
[#127954]: https://github.com/home-assistant/core/pull/127954
|
||||
[#127972]: https://github.com/home-assistant/core/pull/127972
|
||||
[#127974]: https://github.com/home-assistant/core/pull/127974
|
||||
[#127979]: https://github.com/home-assistant/core/pull/127979
|
||||
[#127996]: https://github.com/home-assistant/core/pull/127996
|
||||
[#128015]: https://github.com/home-assistant/core/pull/128015
|
||||
[#128048]: https://github.com/home-assistant/core/pull/128048
|
||||
[#128055]: https://github.com/home-assistant/core/pull/128055
|
||||
[#128057]: https://github.com/home-assistant/core/pull/128057
|
||||
[#128076]: https://github.com/home-assistant/core/pull/128076
|
||||
[#128083]: https://github.com/home-assistant/core/pull/128083
|
||||
[#128090]: https://github.com/home-assistant/core/pull/128090
|
||||
[#128106]: https://github.com/home-assistant/core/pull/128106
|
||||
[#128137]: https://github.com/home-assistant/core/pull/128137
|
||||
[#128138]: https://github.com/home-assistant/core/pull/128138
|
||||
[#128141]: https://github.com/home-assistant/core/pull/128141
|
||||
[#128144]: https://github.com/home-assistant/core/pull/128144
|
||||
[#128150]: https://github.com/home-assistant/core/pull/128150
|
||||
[#128167]: https://github.com/home-assistant/core/pull/128167
|
||||
[#128168]: https://github.com/home-assistant/core/pull/128168
|
||||
[@Bre77]: https://github.com/Bre77
|
||||
[@CFenner]: https://github.com/CFenner
|
||||
[@Cereal2nd]: https://github.com/Cereal2nd
|
||||
[@Khabi]: https://github.com/Khabi
|
||||
[@LennP]: https://github.com/LennP
|
||||
[@LouisChrist]: https://github.com/LouisChrist
|
||||
[@Noltari]: https://github.com/Noltari
|
||||
[@Thomas55555]: https://github.com/Thomas55555
|
||||
[@azerty9971]: https://github.com/azerty9971
|
||||
[@bdraco]: https://github.com/bdraco
|
||||
[@bieniu]: https://github.com/bieniu
|
||||
[@bramkragten]: https://github.com/bramkragten
|
||||
[@cdce8p]: https://github.com/cdce8p
|
||||
[@crevetor]: https://github.com/crevetor
|
||||
[@dcmeglio]: https://github.com/dcmeglio
|
||||
[@dknowles2]: https://github.com/dknowles2
|
||||
[@dontinelli]: https://github.com/dontinelli
|
||||
[@emontnemery]: https://github.com/emontnemery
|
||||
[@epenet]: https://github.com/epenet
|
||||
[@farmio]: https://github.com/farmio
|
||||
[@frenck]: https://github.com/frenck
|
||||
[@gjohansson-ST]: https://github.com/gjohansson-ST
|
||||
[@jnsgruk]: https://github.com/jnsgruk
|
||||
[@johangus65]: https://github.com/johangus65
|
||||
[@joostlek]: https://github.com/joostlek
|
||||
[@kingy444]: https://github.com/kingy444
|
||||
[@mback2k]: https://github.com/mback2k
|
||||
[@mib1185]: https://github.com/mib1185
|
||||
[@noahhusby]: https://github.com/noahhusby
|
||||
[@rajlaud]: https://github.com/rajlaud
|
||||
[@raman325]: https://github.com/raman325
|
||||
[@rjmarques]: https://github.com/rjmarques
|
||||
[@rklomp]: https://github.com/rklomp
|
||||
[@rytilahti]: https://github.com/rytilahti
|
||||
[@sdb9696]: https://github.com/sdb9696
|
||||
[@silamon]: https://github.com/silamon
|
||||
[@tl-sl]: https://github.com/tl-sl
|
||||
[@tr4nt0r]: https://github.com/tr4nt0r
|
||||
[@tronikos]: https://github.com/tronikos
|
||||
|
||||
## Release 2024.10.3 - October 18
|
||||
|
||||
- Update home-assistant-bluetooth to 1.13.0 ([@cdce8p] - [#127691])
|
||||
- Fix printer uptime fluctuations in IPP ([@mib1185] - [#127725])
|
||||
- Improve discovery of WMS WebControl pro by updating IP address ([@mback2k] - [#128007])
|
||||
- Use the same ZHA database path during startup and when loading device triggers ([@puddly] - [#128130])
|
||||
- Fix playing media via roku ([@ctalkington] - [#128133])
|
||||
- Bump yt-dlp to 2024.10.07 ([@joostlek] - [#128182])
|
||||
- Fix daikin entities not refreshing quickly ([@adampetrovic] - [#128230])
|
||||
- Keep the provided name when creating a tag ([@silamon] - [#128240])
|
||||
- Update aioairzone to v0.9.4 ([@Noltari] - [#127792])
|
||||
- Update aioairzone to v0.9.5 ([@Noltari] - [#128265])
|
||||
- Bump gcal_sync to 6.1.6 ([@allenporter] - [#128270])
|
||||
- Bump solarlog_cli to 0.3.2 ([@dontinelli] - [#128293])
|
||||
- Bump pyblu to 1.0.4 ([@LouisChrist] - [#128482])
|
||||
- Increase Z-Wave fallback thermostat range to 0-50 C ([@MindFreeze] - [#128543])
|
||||
- Bump pyotgw to 2.2.2 ([@mvn23] - [#128594])
|
||||
|
||||
[#126782]: https://github.com/home-assistant/core/pull/126782
|
||||
[#127566]: https://github.com/home-assistant/core/pull/127566
|
||||
[#127691]: https://github.com/home-assistant/core/pull/127691
|
||||
[#127725]: https://github.com/home-assistant/core/pull/127725
|
||||
[#127792]: https://github.com/home-assistant/core/pull/127792
|
||||
[#128007]: https://github.com/home-assistant/core/pull/128007
|
||||
[#128130]: https://github.com/home-assistant/core/pull/128130
|
||||
[#128133]: https://github.com/home-assistant/core/pull/128133
|
||||
[#128176]: https://github.com/home-assistant/core/pull/128176
|
||||
[#128182]: https://github.com/home-assistant/core/pull/128182
|
||||
[#128230]: https://github.com/home-assistant/core/pull/128230
|
||||
[#128240]: https://github.com/home-assistant/core/pull/128240
|
||||
[#128265]: https://github.com/home-assistant/core/pull/128265
|
||||
[#128270]: https://github.com/home-assistant/core/pull/128270
|
||||
[#128293]: https://github.com/home-assistant/core/pull/128293
|
||||
[#128482]: https://github.com/home-assistant/core/pull/128482
|
||||
[#128543]: https://github.com/home-assistant/core/pull/128543
|
||||
[#128594]: https://github.com/home-assistant/core/pull/128594
|
||||
[@LouisChrist]: https://github.com/LouisChrist
|
||||
[@MindFreeze]: https://github.com/MindFreeze
|
||||
[@Noltari]: https://github.com/Noltari
|
||||
[@adampetrovic]: https://github.com/adampetrovic
|
||||
[@allenporter]: https://github.com/allenporter
|
||||
[@cdce8p]: https://github.com/cdce8p
|
||||
[@ctalkington]: https://github.com/ctalkington
|
||||
[@dontinelli]: https://github.com/dontinelli
|
||||
[@frenck]: https://github.com/frenck
|
||||
[@joostlek]: https://github.com/joostlek
|
||||
[@mback2k]: https://github.com/mback2k
|
||||
[@mib1185]: https://github.com/mib1185
|
||||
[@mvn23]: https://github.com/mvn23
|
||||
[@puddly]: https://github.com/puddly
|
||||
[@silamon]: https://github.com/silamon
|
||||
|
||||
[#102371]: https://github.com/home-assistant/core/pull/102371
|
||||
[#106570]: https://github.com/home-assistant/core/pull/106570
|
||||
[#112806]: https://github.com/home-assistant/core/pull/112806
|
||||
|
BIN
source/images/blog/2024-10-zbt1-issue/skyconnect-zbt1.png
Normal file
BIN
source/images/blog/2024-10-zbt1-issue/skyconnect-zbt1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 290 KiB |
@ -41,43 +41,6 @@ Before you can use this device with Home Assistant, you need to install a bit of
|
||||
|
||||
{% tabbed_block %}
|
||||
|
||||
- title: Using the ESP32-S3-BOX
|
||||
content: |
|
||||
|
||||
1. Make sure this page is opened in a Chromium-based browser on a **desktop**. The software installation does not work with a tablet or phone.
|
||||
|
||||
- If your browser does not support web serial, you will see a warning message indicating this instead of a button.
|
||||
|
||||
<script type="module" src="https://unpkg.com/esp-web-tools@10/dist/web/install-button.js?module"></script>
|
||||
<esp-web-install-button manifest="https://firmware.esphome.io/wake-word-voice-assistant/esp32-s3-box/manifest.json"></esp-web-install-button>
|
||||
|
||||
- **For advanced users**: The configuration files are available on GitHub:
|
||||
- [ESP32-S3-BOX config on GitHub](https://github.com/esphome/wake-word-voice-assistants/blob/main/esp32-s3-box/esp32-s3-box.yaml)
|
||||
|
||||
2. To connect the ESP32-S3-BOX to your computer, follow these steps:
|
||||
- In the pop-up window, view the available ports.
|
||||
- Plug the USB-C cable into the ESP32-S3-BOX and connect it to your computer.
|
||||
3. Select **Install Voice Assistant**, then **Install**.
|
||||
- Once the installation is complete, select **Next**.
|
||||
- Add the ESP32-S3-BOX to your Wi-Fi:
|
||||
- When prompted, select your network from the list and enter the credentials to your 2.4 GHz Wi-Fi network.
|
||||
- Select **Connect**.
|
||||
- The ESP32-S3-BOX now joined your network. Select **Add to Home Assistant**.
|
||||
4. This opens the **My** link to Home Assistant.
|
||||
- If you have not used My Home Assistant before, you will need to configure it. If your Home Assistant URL is not accessible on `http://homeassistant.local:8123`, replace it with the URL to your Home Assistant instance.
|
||||
- Open the link.
|
||||

|
||||
5. Select **OK**.
|
||||

|
||||
6. To add the newly discovered device, select the ESP32-S3-BOX from the list.
|
||||
- Add your ESP32-S3-BOX to a room and select **Finish**.
|
||||
7. You should now see the **ESPHome** integration.
|
||||

|
||||
8. Select the **ESPHome** integration. Under **Devices**, you should see the **ESP32-S3-BOX** listed.
|
||||

|
||||
|
||||
- Your ESP32-S3-BOX is connected to Home Assistant over Wi-Fi. You can now move it to any place in your home with a USB power supply.
|
||||
|
||||
- title: Using the ESP32-S3-BOX-3(B)
|
||||
content: |
|
||||
|
||||
@ -124,6 +87,43 @@ Before you can use this device with Home Assistant, you need to install a bit of
|
||||
|
||||
- Your ESP32-S3-BOX is connected to Home Assistant over Wi-Fi. You can now move it to any place in your home with a USB power supply.
|
||||
|
||||
- title: Using the ESP32-S3-BOX
|
||||
content: |
|
||||
|
||||
1. Make sure this page is opened in a Chromium-based browser on a **desktop**. The software installation does not work with a tablet or phone.
|
||||
|
||||
- If your browser does not support web serial, you will see a warning message indicating this instead of a button.
|
||||
|
||||
<script type="module" src="https://unpkg.com/esp-web-tools@10/dist/web/install-button.js?module"></script>
|
||||
<esp-web-install-button manifest="https://firmware.esphome.io/wake-word-voice-assistant/esp32-s3-box/manifest.json"></esp-web-install-button>
|
||||
|
||||
- **For advanced users**: The configuration files are available on GitHub:
|
||||
- [ESP32-S3-BOX config on GitHub](https://github.com/esphome/wake-word-voice-assistants/blob/main/esp32-s3-box/esp32-s3-box.yaml)
|
||||
|
||||
2. To connect the ESP32-S3-BOX to your computer, follow these steps:
|
||||
- In the pop-up window, view the available ports.
|
||||
- Plug the USB-C cable into the ESP32-S3-BOX and connect it to your computer.
|
||||
3. Select **Install Voice Assistant**, then **Install**.
|
||||
- Once the installation is complete, select **Next**.
|
||||
- Add the ESP32-S3-BOX to your Wi-Fi:
|
||||
- When prompted, select your network from the list and enter the credentials to your 2.4 GHz Wi-Fi network.
|
||||
- Select **Connect**.
|
||||
- The ESP32-S3-BOX now joined your network. Select **Add to Home Assistant**.
|
||||
4. This opens the **My** link to Home Assistant.
|
||||
- If you have not used My Home Assistant before, you will need to configure it. If your Home Assistant URL is not accessible on `http://homeassistant.local:8123`, replace it with the URL to your Home Assistant instance.
|
||||
- Open the link.
|
||||

|
||||
5. Select **OK**.
|
||||

|
||||
6. To add the newly discovered device, select the ESP32-S3-BOX from the list.
|
||||
- Add your ESP32-S3-BOX to a room and select **Finish**.
|
||||
7. You should now see the **ESPHome** integration.
|
||||

|
||||
8. Select the **ESPHome** integration. Under **Devices**, you should see the **ESP32-S3-BOX** listed.
|
||||

|
||||
|
||||
- Your ESP32-S3-BOX is connected to Home Assistant over Wi-Fi. You can now move it to any place in your home with a USB power supply.
|
||||
|
||||
- title: Using the ESP32-S3-BOX-Lite
|
||||
content: |
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user