https://github.com/jwillikers/esphome-config
My ESPHome configuration for my various ESPHome devices
https://github.com/jwillikers/esphome-config
arduino esp-idf esp32 esp32c3 esp32s2 esp8266 esphome home-assistant risc-v smart-bulb smart-plug xtensa
Last synced: 7 months ago
JSON representation
My ESPHome configuration for my various ESPHome devices
- Host: GitHub
- URL: https://github.com/jwillikers/esphome-config
- Owner: jwillikers
- License: other
- Created: 2022-01-11T14:17:13.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2025-01-29T14:34:43.000Z (over 1 year ago)
- Last Synced: 2025-02-06T01:11:48.813Z (over 1 year ago)
- Topics: arduino, esp-idf, esp32, esp32c3, esp32s2, esp8266, esphome, home-assistant, risc-v, smart-bulb, smart-plug, xtensa
- Homepage:
- Size: 94.7 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.adoc
- License: LICENSE.adoc
- Code of conduct: CODE_OF_CONDUCT.adoc
Awesome Lists containing this project
README
= ESPHome Config
Jordan Williams
:experimental:
:icons: font
ifdef::env-github[]
:tip-caption: :bulb:
:note-caption: :information_source:
:important-caption: :heavy_exclamation_mark:
:caution-caption: :fire:
:warning-caption: :warning:
endif::[]
:Asciidoctor_: https://asciidoctor.org/[Asciidoctor]
:ESPHome: https://esphome.io[ESPHome]
:Git: https://git-scm.com/[Git]
image:https://github.com/jwillikers/esphome-config/actions/workflows/build.yaml/badge.svg[Build,link=https://github.com/jwillikers/esphome-config/actions/workflows/build.yaml]
image:https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white[pre-commit, link=https://github.com/pre-commit/pre-commit]
My {ESPHome} configuration for all my ESPHome devices.
== Usage
. Clone the repository.
+
[,sh]
----
git clone git@github.com:jwillikers/esphome-config.git
----
. Change to the repository's directory.
+
[,sh]
----
cd esphome-config
----
. Copy the `secrets.yaml.template` template to `secrets.yaml` in the ESPHome configuration directory.
+
[,sh]
----
cp esphome/secrets.yaml.template esphome/secrets.yaml
----
. Ensure that only the owner can read and write the sensitive `secrets.yaml` file.
+
[,sh]
----
chmod 0600 esphome/secrets.yaml
----
. Add your WiFi SSID and password to the `secrets.yaml` file.
In addition to these, each device should have it's own password for OTA updates and the fallback WiFi hotspot.
Each device also requires a pre-shared encryption key for communicating securely with the Home Assistant API.
See the https://esphome.io/components/api.html#configuration-variables[Native API - for each device Configuration Variables] section of the ESPHome documentation for details.
Home Assistant will prompt you for the device's key once the device has been updated.
The OTA and WiFi hotspot passwords can be generated with this command.
[,sh]
----
tr --complement --delete '[:alnum:]' < /dev/urandom | fold --width=32 | head --lines=1
----
The API encryption keys must be 32-bit base64 encoded strings, which can be generated with this OpenSSL command.
[,sh]
----
openssl rand -base64 32
----
If you don't have or want to install OpenSSL, the following command will also work.
[,sh]
----
tr --complement --delete '[:alnum:]' < /dev/urandom | fold --width=32 | head --bytes=32 | base64
----
== Contributing
Contributions in the form of issues, feedback, and even pull requests are welcome.
Make sure to adhere to the project's link:CODE_OF_CONDUCT.adoc[Code of Conduct].
== Open Source Software
This project is built on the hard work of countless open source contributors.
Several of these projects are enumerated below.
* {Asciidoctor_}
* {ESPHome}
* {Git}
== Code of Conduct
Refer to the project's link:CODE_OF_CONDUCT.adoc[Code of Conduct] for details.
== License
This repository is licensed under the https://www.gnu.org/licenses/gpl-3.0.html[GPLv3], a copy of which is provided in the link:LICENSE.adoc[license file].
© 2022-2025 Jordan Williams
== Authors
mailto:{email}[{author}]