esphome/esphomeyaml
Brandon Davidson 1b8d242505 Enable use of alternate hardware UARTs for logging (#427)
* Enable use of alternate hardware UARTs for logging

Enable use of Serial1 on ESP8266 and Serial1/Serial2 on ESP32 for logging.
This is frequently done on ESP8266 to allow use of Serial for UART TX+RX,
while maintaining logging output on Serial1 which is TX-only via GPIO2.

* ESPHOMELIB_UART -> UART_SELECTION_UART; HW_UART -> HARDWARE_UART

* Add test3 to travis; remove test4

* Set DEBUG_ESP_PORT based on logger UART setting
2019-02-13 11:20:22 +01:00
..
api Add local mDNS responder for .local (#386) 2019-02-10 16:57:34 +01:00
components Enable use of alternate hardware UARTs for logging (#427) 2019-02-13 11:20:22 +01:00
dashboard Revert "Upgrade espressif32 package to 1.6.0 (#355)" (#422) 2019-02-11 16:50:10 +01:00
__init__.py Initial Commit 🎉 2018-04-07 01:23:03 +02:00
__main__.py call platformio and esptool using subprocess if $ESPHOME_USE_SUBPROCESS is set (#359) 2019-01-19 17:54:41 +01:00
automation.py Add template publish actions and switch triggers (#391) 2019-02-10 23:35:07 +01:00
config_validation.py Add use_address (#417) 2019-02-10 23:55:13 +01:00
config.json Revert "Enable aarch64" 2019-01-22 21:34:45 +01:00
config.py Add ESP32 Ethernet Support (#301) 2019-01-05 20:47:33 +01:00
const.py Enable use of alternate hardware UARTs for logging (#427) 2019-02-13 11:20:22 +01:00
core_config.py Revert "Upgrade espressif32 package to 1.6.0 (#355)" (#422) 2019-02-11 16:50:10 +01:00
core.py Add use_address (#417) 2019-02-10 23:55:13 +01:00
cpp_generator.py Store Raw Remote Codes in PROGMEM (#392) 2019-02-10 16:41:12 +01:00
cpp_helpers.py Make compatible with python 3 (#281) 2019-01-02 14:11:11 +01:00
cpp_types.py Supply return_type for more lambdas 2019-01-03 20:39:54 +01:00
espota2.py Better error messages for OTA (#418) 2019-02-10 16:43:44 +01:00
espota.py Make compatible with python 3 (#281) 2019-01-02 14:11:11 +01:00
helpers.py Add local mDNS responder for .local (#386) 2019-02-10 16:57:34 +01:00
icon.png Add Logo and Icon to HassIO add-on (#241) 2018-11-23 13:51:39 +01:00
logo.png Add Logo and Icon to HassIO add-on (#241) 2018-11-23 13:51:39 +01:00
mqtt.py [Huge] Util Refactor, Dashboard Improvements, Hass.io Auth API, Better Validation Errors, Conditions, Custom Platforms, Substitutions (#234) 2018-12-05 21:22:06 +01:00
pins.py Revert "Upgrade espressif32 package to 1.6.0 (#355)" (#422) 2019-02-11 16:50:10 +01:00
platformio_api.py call platformio and esptool using subprocess if $ESPHOME_USE_SUBPROCESS is set (#359) 2019-01-19 17:54:41 +01:00
py_compat.py Add local mDNS responder for .local (#386) 2019-02-10 16:57:34 +01:00
README.md Bump HassIO version to v1.10.0 2019-01-09 20:30:35 +01:00
storage_json.py Add ESP32 Ethernet Support (#301) 2019-01-05 20:47:33 +01:00
util.py call platformio and esptool using subprocess if $ESPHOME_USE_SUBPROCESS is set (#359) 2019-01-19 17:54:41 +01:00
wizard.py Make compatible with python 3 (#281) 2019-01-02 14:11:11 +01:00
writer.py Revert "Upgrade espressif32 package to 1.6.0 (#355)" (#422) 2019-02-11 16:50:10 +01:00
yaml_util.py Make compatible with python 3 (#281) 2019-01-02 14:11:11 +01:00
zeroconf.py Add local mDNS responder for .local (#386) 2019-02-10 16:57:34 +01:00

Esphomeyaml Hass.io Add-On

esphomeyaml logo

GitHub stars GitHub Release Discord

About

This add-on allows you to manage and program your ESP8266 and ESP32 based microcontrollers directly through Hass.io with no programming experience required. All you need to do is write YAML configuration files; the rest (over-the-air updates, compiling) is all handled by esphomeyaml.

View the esphomeyaml documentation here

Example

With esphomeyaml, you can go from a few lines of YAML straight to a custom-made firmware. For example, to include a DHT22. temperature and humidity sensor, you just need to include 8 lines of YAML in your configuration file:

Then just click UPLOAD and the sensor will magically appear in Home Assistant:

Installation

To install this Hass.io add-on you need to add the esphomeyaml add-on repository first:

  1. Add the epshomeyaml add-ons repository to your Hass.io instance. You can do this by navigating to the "Add-on Store" tab in the Hass.io panel and then entering https://github.com/OttoWinter/esphomeyaml in the "Add new repository by URL" field.
  2. Now scroll down and select the "esphomeyaml" add-on.
  3. Press install to download the add-on and unpack it on your machine. This can take some time.
  4. Optional: If you're using SSL certificates and want to encrypt your communication to this add-on, please enter true into the ssl field and set the fullchain and certfile options accordingly.
  5. Start the add-on, check the logs of the add-on to see if everything went well.
  6. Click "OPEN WEB UI" to open the esphomeyaml dashboard. You will be asked for your Home Assistant credentials - esphomeyaml uses Hass.io's authentication system to log you in.

NOTE: Installation on RPis running in 64-bit mode is currently not possible. Please use the 32-bit variant of HassOS instead.

You can view the esphomeyaml docs here: https://esphomelib.com/esphomeyaml/index.html

Configuration

Note: Remember to restart the add-on when the configuration is changed.

Example add-on configuration:

{
  "ssl": false,
  "certfile": "fullchain.pem",
  "keyfile": "privkey.pem",
  "port": 6052
}

Option: port

The port to start the dashboard server on. Default is 6052.

Option: ssl

Enables/Disables encrypted SSL (HTTPS) connections to the web server of this add-on. Set it to true to encrypt communications, false otherwise. Please note that if you set this to true you must also generate the key and certificate files for encryption. For example using Let's Encrypt or Self-signed certificates.

Option: certfile

The certificate file to use for SSL. If this file doesn't exist, the add-on start will fail.

Note: The file MUST be stored in /ssl/, which is the default for Hass.io

Option: keyfile

The private key file to use for SSL. If this file doesn't exist, the add-on start will fail.

Note: The file MUST be stored in /ssl/, which is the default for Hass.io

Option: leave_front_door_open

Adding this option to the add-on configuration allows you to disable authentication by setting it to true.

Option: esphomeyaml_version

Manually override which esphomeyaml version to use in the addon. For example to install the latest development version, use "esphomeyaml_version": "dev", or for version 1.10.0: "esphomeyaml_version": "v1.10.0"".

Please note that this does not always work and is only meant for testing, usually the esphomeyaml add-on and dashboard version must match to guarantee a working system.