├── .github ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── new-device.md │ └── other-resources.md ├── PULL_REQUEST_TEMPLATE.md └── workflows │ └── awesomebot.yml ├── .gitignore ├── CODE_OF_CONDUCT.md ├── Contributing.md ├── LICENSE └── README.md /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: unixorn # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] 4 | patreon: unixorn # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: unixorn 7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: ['https://www.redbubble.com/people/unixorn/shop','https://www.paypal.com/donate/?hosted_button_id=CKRNZLQEJ4NHL'] 13 | # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 14 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/new-device.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: New Device 3 | about: Add a new device to the list 4 | title: "[NEW DEVICE]" 5 | labels: New Device 6 | assignees: '' 7 | 8 | --- 9 | 10 | # What device, tool or utility do you want to add. 11 | 12 | A clear and concise description of what the device is. Please include a link to a vendor for it (without referral codes). 13 | 14 | It is ok to add more than one device to the issue. 15 | 16 | ## Have you personally used the new entry with Home Assistant? 17 | 18 | 19 | ## How hard was it to integrate with Home Assistant? 20 | 21 | - Did you have to install an integration? 22 | - Does it work without access to the internet? 23 | - Does it require a cloud service to run? Can it be configured without a cloud connection? 24 | 25 | ## Additional context 26 | 27 | Add any other context or screenshots about item here. 28 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/other-resources.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Other resources 3 | about: Other resources like videos, blog posts, or software that work with Home Assistant 4 | title: "[RESOURCE]" 5 | labels: documentation 6 | assignees: '' 7 | 8 | --- 9 | 10 | Please include a link to the resource you'd like added, along with a brief (1 paragraph is fine) description. 11 | 12 | This is for things like links to services you can run that will interact with your Home Assistant like zigbee2mqtt, links to tutorials or articles, basically any useful information that isn't hardware. -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | # Description 5 | 6 | 14 | 15 | This way all the switches will sort together, sensors together, etc. 16 | 17 | 28 | # Type of changes 29 | 30 | 31 | 32 | - [ ] A link to an external resource like a blog post, video or tutorial 33 | - [ ] Add/remove/update a device entry 34 | - [ ] Text cleanups/typo fixes 35 | 36 | # Copyright Assignment 37 | 38 | - [ ] This document is covered by the [Apache License](https://github.com/unixorn/works-with-home-assistant/blob/master/LICENSE), and I agree to contribute this PR under the terms of the license. 39 | 40 | # Checklist: 41 | 42 | 45 | 46 | - [ ] **I have personally used the device(s), tools or utilities being added.** 47 | - [ ] **If this device, tool or utility requires an internet server to operate or be configured, it is noted in the entry.** Warn people that it could brick if the company shuts down like Insteon did. 48 | - [ ] I have read the [Contributing](https://github.com/unixorn/works-with-home-assistant/blob/master/Contributing.md) document. 49 | - [ ] I have signed off my commits. You can use `git commit --amend --no-edit --signoff` to amend an existing commit, and you can find more details about signing off your commits on the DCO GitHub action page [here](https://probot.github.io/apps/dco/) 50 | - [ ] All new and existing tests passed. 51 | - [ ] I have confirmed that the link(s) in my PR are valid. 52 | - [ ] Any links to any online vendors do _not_ include referral codes or embedded tracking codes. 53 | - [ ] Entries are single lines and are in the appropriate (Hub, Zigbee, Z-Wave, Tools or WIFI) section, and are added in alphabetical order in their section. 54 | -------------------------------------------------------------------------------- /.github/workflows/awesomebot.yml: -------------------------------------------------------------------------------- 1 | name: Check links in README.md 2 | 3 | on: 4 | push: 5 | branches: [ '*' ] 6 | pull_request: 7 | branches: [ '*' ] 8 | 9 | jobs: 10 | build: 11 | 12 | runs-on: ubuntu-latest 13 | 14 | steps: 15 | - uses: actions/checkout@v1 16 | - uses: docker://dkhamsing/awesome_bot:latest 17 | with: 18 | args: /github/workspace/README.md --request-delay 1 --allow 500,501,502,503,504,509,521 --allow-dupe --allow-redirect --allow-ssl --allow-timeout --white-list https://ipfs.io,slideshare,https://img.shields.io,https://codeclimate.com/github/unixorn/works-with-home-assistant,https://www.concourse.ci,https://smile.amazon.com,https://www.metageek.com -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | *$py.class 5 | 6 | # C extensions 7 | *.so 8 | 9 | # Distribution / packaging 10 | .Python 11 | build/ 12 | develop-eggs/ 13 | dist/ 14 | downloads/ 15 | eggs/ 16 | .eggs/ 17 | lib/ 18 | lib64/ 19 | parts/ 20 | sdist/ 21 | var/ 22 | wheels/ 23 | pip-wheel-metadata/ 24 | share/python-wheels/ 25 | *.egg-info/ 26 | .installed.cfg 27 | *.egg 28 | MANIFEST 29 | 30 | # PyInstaller 31 | # Usually these files are written by a python script from a template 32 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 33 | *.manifest 34 | *.spec 35 | 36 | # Installer logs 37 | pip-log.txt 38 | pip-delete-this-directory.txt 39 | 40 | # Unit test / coverage reports 41 | htmlcov/ 42 | .tox/ 43 | .nox/ 44 | .coverage 45 | .coverage.* 46 | .cache 47 | nosetests.xml 48 | coverage.xml 49 | *.cover 50 | *.py,cover 51 | .hypothesis/ 52 | .pytest_cache/ 53 | 54 | # Translations 55 | *.mo 56 | *.pot 57 | 58 | # Django stuff: 59 | *.log 60 | local_settings.py 61 | db.sqlite3 62 | db.sqlite3-journal 63 | 64 | # Flask stuff: 65 | instance/ 66 | .webassets-cache 67 | 68 | # Scrapy stuff: 69 | .scrapy 70 | 71 | # Sphinx documentation 72 | docs/_build/ 73 | 74 | # PyBuilder 75 | target/ 76 | 77 | # Jupyter Notebook 78 | .ipynb_checkpoints 79 | 80 | # IPython 81 | profile_default/ 82 | ipython_config.py 83 | 84 | # pyenv 85 | .python-version 86 | 87 | # pipenv 88 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 89 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 90 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 91 | # install all needed dependencies. 92 | #Pipfile.lock 93 | 94 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow 95 | __pypackages__/ 96 | 97 | # Celery stuff 98 | celerybeat-schedule 99 | celerybeat.pid 100 | 101 | # SageMath parsed files 102 | *.sage.py 103 | 104 | # Environments 105 | .env 106 | .venv 107 | env/ 108 | venv/ 109 | ENV/ 110 | env.bak/ 111 | venv.bak/ 112 | 113 | # Spyder project settings 114 | .spyderproject 115 | .spyproject 116 | 117 | # Rope project settings 118 | .ropeproject 119 | 120 | # mkdocs documentation 121 | /site 122 | 123 | # mypy 124 | .mypy_cache/ 125 | .dmypy.json 126 | dmypy.json 127 | 128 | # Pyre type checker 129 | .pyre/ 130 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Contributor Covenant Code of Conduct 2 | 3 | ## TL;DR 4 | 5 | Don't be an asshole. I'm fine with losing contributions from smart assholes. 6 | 7 | ## Our Pledge 8 | 9 | In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. 10 | 11 | ## Our Standards 12 | 13 | Examples of behavior that contributes to creating a positive environment include: 14 | 15 | * Using welcoming and inclusive language 16 | * Being respectful of differing viewpoints and experiences 17 | * Gracefully accepting constructive criticism 18 | * Focusing on what is best for the community 19 | * Showing empathy towards other community members 20 | 21 | Examples of unacceptable behavior by participants include: 22 | 23 | * The use of sexualized language or imagery and unwelcome sexual attention or advances 24 | * Trolling, insulting/derogatory comments, and personal or political attacks 25 | * Public or private harassment 26 | * Publishing others' private information, such as a physical or electronic address, without explicit permission 27 | * Other conduct which could reasonably be considered inappropriate in a professional setting 28 | 29 | ## Our Responsibilities 30 | 31 | Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. 32 | 33 | Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. 34 | 35 | ## Scope 36 | 37 | This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. 38 | 39 | ## Enforcement 40 | 41 | Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at jpb@unixorn.net. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately. 42 | 43 | Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. 44 | 45 | ## Attribution 46 | 47 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version] 48 | 49 | [homepage]: http://contributor-covenant.org 50 | [version]: http://contributor-covenant.org/version/1/4/ 51 | -------------------------------------------------------------------------------- /Contributing.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | 3 | First and foremost, thanks for the help. I appreciate all contributions, and the list wouldn't be nearly as complete without them. You may add to the list by submitting a pull request or creating an issue with a link. 4 | 5 | You can add entries for things that _don't_ work - just be clear why they didn't work in the notes. We want to warn fellow users off before they waste money buying something they'll end up wanting to e-waste. 6 | 7 | ## Entry Guidelines 8 | 9 | ### General 10 | 11 | - Entries should be clear, concise, and non-promotional. 12 | - Please only make entries for devices you have _personally_ used. You can't say something works well if you haven't worked with it yourself. 13 | - Please include a link to purchase each addition to the list, but don't include referral codes in the links. 14 | - Amazon links should be in the form https://amazon.com/gp/product/XYZZY/ 15 | - If the item needs to be reflashed with Tasmota, ESPHome or something else before it is usable with Home Assistant, make sure to put that in the **Notes** column. 16 | - If the device you're adding won't work in a local-only mode, please say so in the **Notes** column of your entry. 17 | - If it requires a remote service, definitely note that - A lot of people prefer to not buy anything that will brick if the vendor goes out of business or decides to cancel the product line. 18 | - If it tries to phone home - note that too. 19 | - For consistency in entries, please capitalize `Tasmota` and `ESPHome`. 20 | - For consistency, please spell `Z-Wave` with a dash instead of `ZWave` and always spell `Zigbee` and `Z-Wave` with a capital `Z`. 21 | - The list is split into sections for Hubs, Wifi devices, Tools and Utilities, Z-Wave devices and Zigbee devices. Please keep the sections sorted alphabetically. 22 | - Descriptions should follow the link, on the same line, as a markdown table row with capitalization consistent with the other entries in the document. If you're unsure how to format markdown rows, ~steal~ copy another line and then edit the individual columns in your copy, or add a comment to your PR, I'm happy to help. 23 | - Paragraphs in the **Description** and **Notes** columns should be single lines with no internal line breaks. Let GitHub's markdown formatter handle adding any required line breaks rather than embedding breaks inside paragraphs within entries, this makes the list look good with any browser window width. 24 | - Your PR should pass the GitHub automatic check actions. If the checks show an error that you didn't make (a previous entry has gone `404`, for example) while you don't _have_ to fix those errors, I'll certainly appreciate the help if you do, or if you create an issue documenting the problem so I can fix it later. 25 | 26 | ## To remove an entry: 27 | 28 | Open an issue to discuss why the entry should be removed, or create a PR. 29 | 30 | Entries that have gone `404` do not require an issue to remove - just make a PR and note that the link is dead. 31 | 32 | Discontinued products should get a note added that they're discontinued, but we should keep the entry since existing devices still work. 33 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "[]" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright [yyyy] [name of copyright owner] 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # works-with-home-assistant 2 | 3 | [![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Funixorn%2Fworks-with-home-assistant%2Fbadge%3Fref%3Dmain&style=flat)](https://actions-badge.atrox.dev/unixorn/works-with-home-assistant/goto?ref=main) 4 | [![GitHub last commit (branch)](https://img.shields.io/github/last-commit/unixorn/works-with-home-assistant/main.svg)](https://github.com/unixorn/works-with-home-assistant) 5 | 6 | 7 | 8 | ## Table of Contents 9 | 10 | - [Introduction](#introduction) 11 | - [Things to think about before choosing between WiFi, Zigbee and Z-Wave](#things-to-think-about-before-choosing-between-wifi-zigbee-and-z-wave) 12 | - [A note on dimmers](#a-note-on-dimmers) 13 | - [Please list stuff that _doesn't_ work, too](#please-list-stuff-that-_doesnt_-work-too) 14 | - [Ethernet devices](#ethernet-devices) 15 | - [Hubs](#hubs) 16 | - [Wifi devices](#wifi-devices) 17 | - [Zigbee](#zigbee) 18 | - [Z-Wave](#z-wave) 19 | - [Tools & Utilities](#tools--utilities) 20 | - [Non-working / Poorly-working devices](#non-working--poorly-working-devices) 21 | - [Useful links](#useful-links) 22 | - [Hardware Vendors with Open Firmwares](#hardware-vendors-with-open-firmwares) 23 | - [How-tos & Tutorials](#how-tos--tutorials) 24 | - [Thanks](#thanks) 25 | 26 | 27 | 28 | ## Introduction 29 | 30 | This is a list of devices and software that work with [Home Assistant](https://www.home-assistant.io/) (HA) with minimal aggravation. 31 | 32 | - If you have to reflash a device to use it with HA, please add that to the **Notes** column. 33 | - If you need to add a plugin to Home Assistant before it can be used, add that to **Notes** too. 34 | - If it requires the devices connect to an internet server, even just for initial configuration, **please add that to the Notes for the device**. I want it easy to see which devices won't brick if the vendor goes out of business and also aren't vulnerable to some jackass hacking the company's servers. 35 | - If the device can be reflashed to make it independent of internet servers, please add that to that entry's notes column, preferably with a link to the instructions. 36 | - Please also add entries for tools, tutorials and utilities. Things like zigbee2mqtt, Node Red, and other software you can run that interact with or supplement Home Assistant's functionality definitely belong in this list. 37 | 38 | Finally, if this list is useful to you, please star it to help it appear early in search results for other people. 39 | 40 | ### Things to think about before choosing between WiFi, Zigbee and Z-Wave 41 | 42 | Read [Zigbee and WIFI Cooexistence](https://www.metageek.com/training/resources/zigbee-wifi-coexistence.html) on Metageek for more details, but the TL;DR is that Zigbee channels can overlap 2.4 GHz WIFI channels, and potentially cause odd and intermittent network issues for both. 43 | 44 | Z-Wave works on 908 MHz in the US and 868 MHz in Europe, so it doesn't have interference issues with WIFI or Bluetooth, but the devices tend to be more expensive. 45 | 46 | On the other hand, Zigbee devices tend to cost less, and appear less vulnerable to supply chain issues since there are more vendors for the necessary chips. 47 | 48 | Most WIFI IOT gear seems to only work with 2.4 GHz, so you may want to upgrade your WIFI base station and router before adding too many devices, and also so you can have a separate walled off WIFI network for the IOT devices. 49 | 50 | ### A note on dimmers 51 | 52 | Lutron holds a patent for sending status back to hubs on their RadioRA2 system. Not all Z-Wave or Zigbee dimmers license this patent, so some act weird. Leviton is known to license this patent, and their dimmers work well. 53 | 54 | ### Please list stuff that _doesn't_ work, too 55 | 56 | I encourage you to add entries for things that don't work, don't work well, or were just hard to integrate with HA. Try to be very clear in the notes field what issues you encountered so people can be warned off and not waste money on devices which won't work with HA or that don't support HA for all their features. 57 | 58 | ## Ethernet devices 59 | 60 | | Name | Description | Notes | 61 | | ------ | ------------------------------------------------ | --------------- | 62 | | [ControlByWeb automation devices](https://www.controlbyweb.com) | Full line of ethernet connected components for data acquisition + relay control | These are industrial-quality complete pieces of hardware, no assembly required. | 63 | 64 | ## Hubs 65 | 66 | | Name | Description | Notes | 67 | | ------ | ------------------------------------------------ | --------------- | 68 | | [Conbee II](https://amazon.com/gp/product/B07PZ7ZHG5) | USB Zigbee gateway | Works well with [zigbee2mqtt](https://www.zigbee2mqtt.io/) | 69 | | [GoControl CECOMINOD016164 HUSBZB-1 USB Hub](https://amazon.com/gp/product/B01GJ826F8) | USB device with both Z-Wave and Zigbee radios. || 70 | 71 | ## Wifi devices 72 | 73 | If items here need reflashing to work with Home Assistant, please state that in the **Notes** column. 74 | 75 | | Type | Brand | Name | Notes | 76 | | -------------- | ----------- | ---------------- | ------------------------------------- | 77 | | Doorbell (with camera) | Amcrest | [Amcrest 410 Video Doorbell](https://amazon.com/dp/B091KMT9GB) | Nice little doorbell. It supports RTSP so you can scrape its video feed into your own DVR. Not directly supported, but if your HA instance is connected to MQTT, you can use [amcrest2mqtt](https://github.com/dchesterton/amcrest2mqtt) to scrape events from it and present them to HA - it uses the discoverability protocol so that you don't even have to create the entities, they just show up automagically in HA. I had to use their IOS app to initially configure the doorbell, but after that I was able to watch video with my homelab's [Shinobi](https://shinobi.video/) server. There's a [patch](https://github.com/dchesterton/amcrest2mqtt/pull/91) to get Human Detection working correctly with the 410. | 78 | | Garage door opener / sensor | OpenGarage | [OpenGarage.io garage door opener/sensor](https://opengarage.io) | Combination garage door opener and sensor | This is very nice piece of hardware. | 79 | | Smart Plug | Sonoff | [Sonoff S31](https://amazon.com/gp/product/B07YDC6D4D) | 15A WIFI smart plug that includes energy monitoring. You can fit two of these in a standard US outlet. The native firmware requires you to use an app to configure it (after creating a cloud account) and was a huge pain in the ass on IOS - I never managed to get my iPhone to detect the plug. Fortunately it can easily be reflashed with [Tasmota](https://tasmota.github.io) or [ESPHome](https://esphome.io), which both work with HA and don't require a cloud account or phone app to set up. | 80 | 81 | ## Zigbee 82 | 83 | | Type | Brand | Name | Notes | 84 | | -------------- | ----------- | ---------------- | ------------------------------------- | 85 | | Dimmer Switch | Tuya | [Rotary Dimmer (Model TS004F)](https://www.aliexpress.us/item/3256802832125833.html) | Rotary dimmer button, recognized by ZHA. "Works" but kinda annoying because dimming up/down is a frustrating experience | 86 | | Energy Monitor | Frient | [Frient Electricity Meter Interface](https://amazon.co.uk/gp/product/B08WXT6HHJ/) | HA records energy usage over time. Recognised by zigbee2mqtt, connects to led on electricity meter. | 87 | | Heat Alarm | Frient | [Frient Intelligent Heat Alarm](https://amazon.co.uk/gp/product/B08WXT12BN/) | Recognised by zigbee2mqtt, also measures Temperature | 88 | | Remote Control (Button) | Konke | [Smart Button (Model 3AFE280100510001)](https://www.aliexpress.us/item/2255801129361942.html) | Smart button, recognized by ZHA | 89 | | Remote Control (Button) | Third Reality | [Smart Button (Model 3RSB22BZ)](https://amazon.com/dp/B0BJDVKRZL) | Button, works with zigbee2mqtt. Exposes `single` click, `release` and `hold` states to HA for use as triggers. Came with a couple of strips of magnetic tape to make it easier to mount somewhere without getting lost. | 90 | | Remote Control | Ikea | [TRADFRI remote control](https://manuals.plus/ikea/004-431-30-tr%C3%A5dfri-remote-control-manual#axzz7kd0rP732) | Five button remote control. Discontinued. Ikea product number 004.431.30. Recognized by ZHA. Does not report battery percentage. | 91 | | Sensor (Air quality) | Frient | [Frient Air Quality Sensor](https://amazon.co.uk/gp/product/B08WXT6166/) | Measures VOC, Humidity and Temperature, recognised by zigbee2mqtt | 92 | | Sensor (Door/Window) | Sonoff | [SONOFF SNZB-04 ZigBee Wireless Door Window Sensor](https://amazon.co.uk/gp/product/B08BCHCZP2/) | Door/Window sensor, recognised by zigbee2mqtt | 93 | | Sensor (Door/Window) | Tuya | [Earkong Door/Window sensor (Model TS0203)](https://www.aliexpress.us/item/3256802953712505.html) | Door/Window Sensor recognized by ZHA. | 94 | | Sensor (Motion) | Samsung | [SmartThings Motion Sensor](https://amazon.com/gp/product/B01IE35PCC) | Detects temperature and motion. | 95 | | Sensor (Motion) | Sonoff | [SONOFF SNZB-03 ZigBee Motion Sensor](https://amazon.co.uk/gp/product/B08XB3YPRS/) | Detects motion, recognised by zigbee2mqtt | 96 | | Sensor (Motion) | Third Reality | [Third Reality Motion Sensor (Model 3RMS16BZ)](https://amazon.com/dp/B08RRRWK6B) | Recognized by zigbee2mqtt. | 97 | | Sensor (Temperature) | Sonoff | [SONOFF SNZB-02 ZigBee Temperature Humidity Sensor](https://amazon.co.uk/gp/product/B08BFW697F/) | Measures Temperature & Humidity, recognised by zigbee2mqtt | 98 | | Sensor (Water) | Samsung | [SmartThings Water Sensor](https://amazon.com/gp/product/B07F951JDP) | A cheap small water sensor. Reports wet/dry status for the zone. | 99 | | Smart Bulb (UK) | Raveza | [Zigbee Smart Bulb B22 Bayonet](https://amazon.co.uk/gp/product/B09QSPW7DD/) | RGB Bulb, B22 Bayonet, 4.5W UK | 100 | | Smart Bulb (UK) | Xuelili | [Zigbee Smart Bulb E27](https://amazon.co.uk/gp/product/B09NSH7JR4/) | RGB Bulb with E27 screw, 10W 220V UK | 101 | | Smart Bulb | Innr | [Smart Bulb (Model AE 260)](https://amazon.com/gp/product/B07SC4CJ7H/) | Warm bulb, recognized by ZHA. Nice "warm" color. | 102 | | Smart Bulb | eWeLight | [Model ZB-CL01 Smart Bulb](https://amazon.com/gp/product/B08QC9P49G/) | RGB bulb, recognized by ZHA. "Warm" color isn't really warm enough IMO. Multi-color stuff is fine. | 103 | | Smart Plug (UK) | Woolley | [Woolley Zigbee Smart Plug](https://amazon.co.uk/gp/product/B09W2FVLSH/) | 10A/2200W UK AC socket, recognised by zigbee2mqtt | 104 | | Smart Plug | Securifi | [Peanut Smart Plug](https://amazon.com/gp/product/B00TC9NC82) | A small cheap smart plug with controllable power switch. Reliable cheap smart plug. Claims to also monitor the energy consumption of the plugged-in device, but monitoring doesn't work. These are just big enough that you can't put two of them on the same standard double US outlet. | 105 | | Smart Plug | Sonoff | [S31 Lite zb](https://sonoff.tech/product/smart-plugs/s31-lite-zb/) | Smart Outlet/Plug, recognized by ZHA. Does not report energy usage. The LEDs are way too bright and cannot be adjusted AFAIK. | 106 | | Smart Power Strip (UK) | Xenon | [Xenon Smart Power Strip](https://amazon.co.uk/gp/product/B09B3PZK5P) | 4 individually controllable AC sockets + 2 USB sockets that are controlled together. | 107 | | Smart Switch (In wall) | GE | [45856GE Smart Switch In-Wall Lighting Control](https://amazon.com/gp/product/B019HTH2A0/) | Requires a neutral wire. | 108 | | Smoke Alarm | Frient | [Frient Intelligent Smoke Alarm](https://amazon.co.uk/gp/product/B08WXV3G8P/r) | Recognised by zigbee2mqtt, also measures Temperature | 109 | 110 | ## Z-Wave 111 | 112 | | Type | Brand | Name | Notes | 113 | | -------------- | ----------- | ---------------- | ------------------------------------- | 114 | | DIY Tool | Fibaro | [Smart Implant FGBS-222](https://www.amazon.com/dp/B07NDRCTJK/) | Plugin Universal DIY Tool. Allows for connecting 6 DS18B20 sensors or 1 DHT sensor and 2 2-wire analog sensors, 2 3-wire analog sensor, 2 binary sensors. **NOTE: The internal Temp Sensor is too close to other components to be accurately used without compensating**. Also requires a not included power supply. | 115 | | Dry Contact Relay | Zooz | [Z-Wave Plus S2 MultiRelay ZEN16](https://amazon.com/gp/product/B0846DZJD8/) | Three dry contact relays in one unit. Useful for controlling things like gas fireplaces, or motors. One relay supports 20A, the other two support up to 15A. Installs into HA very easily, and looks like three independent devices. Can be programmed to do things like turn off a relay after X number of minutes / hours as a safety. | 116 | | Range Extender | Aeotec | [Aeotec Range Extender 6, Z-Wave Plus repeater](https://amazon.com/gp/product/B01M6CKJXC) | Range extender for Z-Wave. While it works reliably, it's probably more useful to just buy a Z-Wave smart plug than to get a dedicated range extender. | 117 | | Remote Control (Wall Switch) | Zooz | [ZEN34 Scene Controller](https://amazon.com/dp/B08TMWLY74) | This is a neat little remote - it comes with a magnetic mounting plate so you can stick the base in a junction box and have it look like a regular decora switch, or pull it off and use it as a remote control. Support-wise, Zooz includes instructions for integrating this device to Home Assistant on their website. | 118 | | Sensor (Door/Window) | Aotec | [Aeotec Door/Window Sensor 6](https://amazon.com/gp/product/B01E0OMQR6/) | Lower profile door/window open/close sensor. This is an Aeon Labs ZW112 sold by Aeotec. No longer available, but the smaller depth works really nicely for a clean look, if you can find it. Works well, with a multi-color LED on the back, which you can see flash in the dark when the door opens/closes. Supports some configuration. Battery is built-in and charges via USB. Test magnet location before installing. Home Assistant requires that the reporting type is changed from `Basic Set` to `Binary Report` in the device configuration. | 119 | | Sensor (Door/Window) | Ecolink | [Door & Window Sensor](https://amazon.com/dp/B01N5HB4U5/) | Window and Door Sensor. Uses a magnet to sense if the door or window is open or closed. Pairs with Home Assistant very easily, no trickery needed. Comes with white and brown covers in the box. | 120 | | Sensor (Motion) | GE / Jasco | [GE Enbrighten Z-Wave Plus Smart Motion Sensor](https://amazon.com/dp/B01KQDIU52) | Motion Sensor, battery or USB powered. Made by Jasco (model 34193). Portable motion sensor which can be mounted by screw or tape as well. Can be battery powered (will wait 4 minutes after motion detected to report again), or USB powered (will report immediately without waiting). It's buggy as a battery powered device (thinks it sees motion when it doesn't, and doesn't stop reporting motion sometimes), but works perfectly as a USB powered device. | 121 | | Sensor (Motion, light, temperature and humidity) | Zooz | [Plus 4-in-1 Sensor ZSE40 V2.0](https://amazon.com/gp/product/B01AKSO80O/) | Quirky little device. It measures light on a scale of 0-100%, and not lux. Motion reports without timeout since last report. It requires a [templated `binary_sensor`](https://www.home-assistant.io/docs/z-wave/entities/#burglar-entity) to make the burglar sensor work as a motion sensor in Home Assistant. [Opsnlops](https://github.com/opsnlops) has an [example configuration](https://github.com/opsnlops/ha-config/blob/main/binary_sensors.yaml). | 122 | | Sensor (Water) | Dome | [Dome Leak Sensor](https://amazon.com/gp/product/B01LXR0B8Q/) | Water leak sensor. Reports via Z-Wave when water is detected and also has an audible alarm. Includes a four foot sensor probe so you can use it in a sump or other awkward location. | 123 | | Smart Plug (Outdoor rated) | GE | [Enbrighten Z-Wave Plus Smart Plug](https://amazon.com/gp/product/B06W9NWFM3) | Outdoor rated, also works as a range extender. | 124 | | Smart Plug | Aeotec | [Aeotec Smart Outlet](https://amazon.com/gp/product/B07PJNL5DB/) | 15 Amp. Monitors electricity usage as well as controlling a device. | 125 | | Smart Plug | GE / Jasco | [Enbrighten Z-Wave Plus Smart Plug w/2 USB Ports & 2 Outlets](https://amazon.com/gp/product/B0736311QF/) | Plug-in 2 Outlets covering 1 plug. Made by Jasco. Only covers one plug, and provides two separately controlled plugs along with USB ports. The whole device can be controlled, or each individual power plug can be controlled, and it also has a button for local control. | 126 | | Smart Plug | Minoston | [Minoston Z-Wave Mini Smart Plug](https://www.amazon.com/gp/product/B08LN2NPZ3/) | Indoor only. 15 Amp. plug but only rated at 10 Amp. Does not report power usage. 127 | | Smart Switch (Dimmer & Remote) | Leviton | [DD00R-DLZ 120VAC 60 Hz Decora Digital/Decora Smart Matching Dimmer Remote](https://amazon.com/gp/product/B01AFU1KOY) | Remote in-wall switch for the [DZ6HD-1BZ Dimmer](https://amazon.com/gp/product/B01N4F487U). | 128 | | Smart Switch (Dimmer) | Inovelli | [Inovelli Red Series Dimmer](https://amazon.com/gp/product/B07S1BMMGH) | Wall Switch Dimmer. 3 Way compatible. No Neutral required, but recommended. Depending on your Z-wave integration, may need special setup (https://support.inovelli.com/portal/en/kb/inovelli/switches) Energy Monitoring, Scene Control, RGB Notifications| 129 | | Smart Switch (Dimmer) | Leviton | [DZ6HD-1BZ Dimmer](https://amazon.com/gp/product/B01N4F487U) | Dimmer - 600 Watt incandescent or 300W LED or CFL. Requires a neutral wire. Periodically (roughly every three to six months) I've run into issues where it locks up with the lights stuck on, but if you trigger the airgap functionality (pull the dimmer lever gently till it clicks and the light on the switch goes out, wait five seconds and push it back into place) it reboots and starts working again. | 130 | | Smart Switch (Dimmer) | Minoston | [Outdoor Dimmer Plug](https://amazon.com/gp/product/B09B22WVJ9/) | Dimmer - 400 Watt incandescent or 150W LED or CFL. Z-Wave Plus, Functions as repeater. Has button on unit for on/off/adjust brightness and setup. | 131 | | Smart Switch (Fan + Light) | Inovelli | [Inovelli Red Series Fan + Light Switch](https://inovelli.com/products/red-series-fan-light-switch-z-wave/) | Wall Switch. Allows control of a light and a fan from one switch. This device is in two parts. One goes in the wall as a normal switch, and one goes into the fan itself. The wall unit talks to the in-fan unit over RF. The fan has low, medium, and high settings. It also has a programming "Breezy" setting where it randomly jumps between fan speeds to simulate wind. Read the install directions closely before adding it to Home Assistant. You might need to update your open-wave device config with the latest version of the XML files, which Inovelli supplies themselves. | 132 | | Smart Switch with Motion Sensor | GE / Jasco | [GE Enbrighten Z-Wave Plus Smart Motion Light Switch](https://amazon.com/gp/product/B07226MG2T/) | Decora light switch with built-in motion sensor. Made by Jasco (model 26931). Works very well as a motion sensing light switch. Motion and light switch are reported, but it's built-in light sensing is not. Configurable through the switch or Z-Wave to stay on when turned on, turn off automatically when motion isn't detected, or to turn on when motion is detected and turn off with a timer. This one seems more configurable than other motion switches. Motion is detected at least 25' away. | 133 | | Smart Switch | GE / Jasco | [Decora Smart Switch](https://amazon.com/gp/product/B01M1AHC3R/) | Wall Switch. 3 Way compatible. Requires an add-on remote switch to work with 3 way. Supports up to four add-on switches. | 134 | | Smart Switch | GE / Jasco | [Standard Smart Switch](https://amazon.com/gp/product/B07X6JW72G/) | Wall Switch. 3 Way compatible. Requires an add-on remote switch to work with 3 way. Supports up to four add-on switches. | 135 | | Smart Switch | GE | [GE Enbrighten Plug in Z-Wave Smart Switch](https://amazon.com/gp/product/B004AMB3CI/) | Plug-in Single Outlet with button. | 136 | | Smart Switch | Inovelli | [Inovelli Red Series On/Off Switch](https://inovelli.com/products/red-series-on-off-switch) | Wall Switch. 3 Way compatible. Requires a neutral. Monitors energy usage, and has a cool LED you can use for notifications. The local relay can be disabled (power is always supplied to the device), making this a great switch to use with smart bulbs. (The buttons can be used a scene controllers in this configuration.) | 137 | | Smoke Detector/Carbon Monoxide Alart | First Alert | [First Alert Z-Wave Smoke Detector & Carbon Monoxide Alarm (2nd Generation)](https://amazon.com/gp/product/B08FFB233Y/) | Smoke and Carbon Monoxide Alarm. There's two versions of this, look for the second generation. It has Z-Wave+. The older version is Z-Wave only. Installs in Home Assistant out of the box. Responds very fast to alerts. Runs on two AA batteries. | 138 | | Thermostat | Honeywell | [T6 Pro Series Thermostat](https://amazon.com/gp/product/B07HFL7R44/) | Mid-range thermostat that works with or without Z-Wave. Without Z-Wave, you're given full control of the schedule. Lots of options are available through the touch screen as well. When it's connected to a Z-Wave network you can configure it to still allow some scheduling on the thermostat, or to allow full control via Z-Wave. Provides temperature and humidity, and allows a large amount of configuration through Z-Wave as well. | 139 | 140 | 141 | ## Tools & Utilities 142 | 143 | | Name | Description | 144 | | ------ | ------------------------------------------------------------------------------------------------ | 145 | | [Amcrest2MQTT](https://github.com/dchesterton/amcrest2mqtt) | Exposes events generated by an Amcrest device to MQTT so that it will be recognized by Home Assistant's MQTT integration. | 146 | | [Home Assistant Postgresql Backup](https://github.com/unixorn/hass-postgresql-backup)| A simple tool for backing up your Home Assistant database if you're using Postgresql. | 147 | | [Inovelli Notification Calculator](https://nathanfiscus.github.io/inovelli-notification-calc/)| Helps you experiment with LDE effects on Inovelli switches. | 148 | | [Zigbee2mqtt](https://www.zigbee2mqtt.io/) | Acts as a gateway between Zigbee devices and a MQTT server. Supports a bunch of different adapters and devices. | 149 | | [Zwave-js-ui](https://github.com/zwave-js/zwave-js-ui) (was zwavejs2mqtt) | Full featured Z-Wave Control Panel and MQTT Gateway. | 150 | 151 | ## Non-working / Poorly-working devices 152 | 153 | This section is for things that you've tried and did not get to work with HA, or do work but just not well. Please be specific about what problems you had. 154 | 155 | | Name | Description | Notes | 156 | | ------ | ------------------------------------------------ | --------------- | 157 | | [Amysen RGBW Bulbs](https://amazon.com/gp/product/B07S2487N8/) | Fairly cheap RGBW LED bulbs | These WIFI smart bulbs work with Home Assistant with very little issue, however of the 10 or so I purchased over the span of about 3 months, only 3 remain in service. All the failed ones developed a driver whine (screech, really) within a short handful of months time. | 158 | | [Aqara Vibration Sensor](https://amazon.com/gp/product/B07PJT939B) | Mini glass break detector | This was a pita to add to my HA.

Once your HA is scanning for new devices, press and hold the button on the sensor for ~5 seconds until the lights flash, then you have to press it again (but don't hold it, press and release) every second or two until HA finds it.

Even when I did manage to add it, it kept falling off of the Zigbee mesh, even though other devices within 10 feet of it maintain stable connections. At least it was cheap. | 159 | | [Aqara Water Leak Sensor](https://amazon.com/gp/product/B07D39MSZS) | Water leak detector | Minuses -

The manual was unclear on how to put it in pairing mode - press the water droplet icon firmly until the hidden light flashes three times, then let go.

After two months of usage I don't recommend it - it drops out of my Zigbee mesh a lot, even though it's five feet from a Smartthings motion detector that has no problems.

Pluses -

These ship ready to go - no messing with the battery, just press the button and you can add it to your Zigbee mesh. | 160 | 161 | ## Useful links 162 | 163 | ### Hardware Vendors with Open Firmwares 164 | 165 | Devices from these vendors work without you having to take them apart and reflash them, and because they're open source, you don't have to worry about them turning off a cloud server somewhere and bricking your devices. 166 | 167 | - [Athom Tech](https://www.athom.tech/tasmota) - Sells devices preflashed with [Tasmota](https://tasmota.github.io/docs/) or [ESPHome](https://esphome.io/). 168 | - [CloudFree.shop](https://cloudfree.shop/) - Sells devices that are pre-flashed with [Tasmota](https://tasmota.github.io/docs/). 169 | 170 | ### How-tos & Tutorials 171 | 172 | - [Using PagerDuty with Home Assistant](https://unixorn.github.io/post/use-pagerduty-with-home-assistant/) - Easily set up Home Assistant so you can send alerts with [PagerDuty](https://www.pagerduty.com/). 173 | 174 | ## Thanks 175 | 176 | Many thanks to all the contributors. The list wouldn't be nearly as complete without all your help. 177 | 178 | 179 | 180 | 181 | 182 | Made with [contributors-img](https://contributors-img.web.app). 183 | --------------------------------------------------------------------------------