mirror of
https://github.com/esphome/esphome-docs.git
synced 2025-01-22 21:41:39 +01:00
Updates and changelog
This commit is contained in:
parent
aa8bf64f91
commit
81b578a931
@ -13,20 +13,25 @@ Changelog - Version 1.11.0
|
||||
Home Assistant Binary Sensor, components/binary_sensor/homeassistant, home-assistant.svg
|
||||
Light Partition, components/light/partition, color_lens.svg
|
||||
|
||||
Release 1.11.0 is here, and it has been a busy few weeks :)
|
||||
|
||||
First of all, thank you all for the amazing support on discord, twitter, twitch, etc.
|
||||
Seeing how much people can accomplish with this tool is really inspiring!
|
||||
|
||||
TODO, intro; camera support deferred :(, but hopefully ready soon; faster release schedule
|
||||
|
||||
ESPHome Rename Completed
|
||||
------------------------
|
||||
|
||||
Back in 1.10.0, I decided to rename the project from esphomelib to ESPHome. This release
|
||||
Back in 1.10.0, it was decided to rename the project from esphomelib to ESPHome. This release
|
||||
has seen **massive** refactors to allow this rename. Literally thousands of files had
|
||||
to be changed, often with lots of manual action required. Now a rename might not seem
|
||||
too exciting for the user, but consider this: Lots of ancient code got revised and cleaned up,
|
||||
too exciting for you the user, but consider this: Lots of ancient code got revised and cleaned up,
|
||||
the ESPHome source got moved to a `dedicated Github Organization <https://github.com/esphome>`__
|
||||
and many other organizational changes were made which will enable faster feature development.
|
||||
|
||||
As an example, ESPHome's documentation now gets built and served by `Netlify <https://www.netlify.com/>`__,
|
||||
so all documentation contributions will now get a preview of the changes on a deploy website.
|
||||
so all documentation contributions will now get a preview of the changes on a preview website.
|
||||
|
||||
Installation Methods Changed
|
||||
----------------------------
|
||||
@ -34,26 +39,74 @@ Installation Methods Changed
|
||||
Because of this rename, ESPHome's installation methods have also changed (breaking change!).
|
||||
|
||||
- **Hass.io**: The Hass.io addon repository has moved to `https://github.com/esphome/hassio <https://github.com/esphome/hassio>`__,
|
||||
please remove the old addon repository and add the new repository. During beta period, install beta version of addon.
|
||||
please remove the old addon repository and add the new repository.
|
||||
|
||||
- **pip-based installs**: The new installation command is ``pip2 install esphome`` and
|
||||
the ``esphomeyaml`` command now is called ``esphome``. Or ``pip2 install --pre esphome`` during beta period.
|
||||
the ``esphomeyaml`` command now is called ``esphome``.
|
||||
|
||||
- **docker-based installs**: The docker image has moved to ``esphome/esphome``. So now you need
|
||||
to use ``docker run --rm -it esphome/esphome livingroom.yaml run``. Or ``docker run --rm -it esphome/esphome:beta ...`` during beta period
|
||||
to use ``docker run --rm -it esphome/esphome livingroom.yaml run``. The dashboard view
|
||||
now uses mDNS to show online/offline status of ESPs, so you need to add ``--net=host`` for
|
||||
that to work.
|
||||
|
||||
All old installation methods will no longer receive updates (and potentially be removed
|
||||
in the future).
|
||||
|
||||
Local mDNS Responder
|
||||
--------------------
|
||||
|
||||
Up until now, many users had to set static IPs for all ESP nodes in order to be able to connect to
|
||||
them. That was not a good user experience and this project is committed to providing the best
|
||||
possible user experience. So now ESPHome bundles its own mDNS responder so static IPs are no
|
||||
longer necessary (ref: :esphomepr:`386`)! 🎉
|
||||
|
||||
|
||||
Faster Release Cycle
|
||||
--------------------
|
||||
|
||||
One of the big things that needs to be changed with this project is the release cycle.
|
||||
For one thing there's all contributions by you the users that potentially have to wait
|
||||
before users can use it. But it also makes releasing small tweaks or fixes much more difficult.
|
||||
|
||||
I know I've said this before, but I want to move ESPHome to a quicker and more regular release
|
||||
interval. As a start, I've set my personal due date for the next release to be in two weeks.
|
||||
Going forward, I want to have a regular release interval of 3 weeks (remind me of this if I forget :)
|
||||
|
||||
Also, you might have seen me post a picture of an ESP32 camera integration for ESPHome. Don't worry,
|
||||
I've made that a top priority for the next release, but I've hit some road blocks that would have
|
||||
prevented it from working in a stable way for this release (and I needed to finally get this darn
|
||||
release out).
|
||||
|
||||
Breaking Changes
|
||||
----------------
|
||||
|
||||
TODO: Copy breaking changes from PR descriptions
|
||||
- Template Switches no longer restore their state by default :corepr:`503`
|
||||
- Removed heartbeat filter from binary sensors :corepr:`454`
|
||||
- ``optimistic`` mode for template platforms has been split off into ``optimistic`` and
|
||||
``assumed_state`` options :corepr:`455`
|
||||
- ``run_cycles`` has been removed from deep_sleep :esphome:`353`
|
||||
|
||||
Other notable changes:
|
||||
----------------------
|
||||
|
||||
TODO
|
||||
- Added GPIO Switch interlocking :corepr:`482`
|
||||
- Added light partition platform which allows you to split an addressable light into partitions
|
||||
and combine them :corepr:`501`
|
||||
- Added ``wait_until`` action :corepr:`508`
|
||||
- Added template publish actions, which allow you to manually push a state to a template
|
||||
platform :corepr:`453`
|
||||
- Added support for SI7021 sensors (found in Sonoff TH modules) :esphomepr:`375`
|
||||
- MQTT is no longer compiled into firmwares that do no use it, should save a bit of space
|
||||
:corepr:`430`, :corepr:`409`
|
||||
- Added ``use_address`` option to ``wifi:`` which overrides the address ESPHome connects to :corepr:`484`
|
||||
- Added display pages, which allow you to have a display that periodically switches between
|
||||
different pages of content :corepr:`507`
|
||||
- Added two new IR codecs: IR5 and JVC :corepr:`502`, :corepr:`493`
|
||||
- Added option to use alternative hardware UART interfaces for logging :corepr:`483`
|
||||
- All log strings are stored in flash now, so that saves a few kb of IRAM on ESP8266s :corepr:`432`
|
||||
- Fixed ESP8266s with CSE7766 rebooting often
|
||||
- Fixed using MQTT and native API at the same time
|
||||
- Personal information is now automatically redacted from dashboard logs :corepr:`488`
|
||||
|
||||
Beta Fixes
|
||||
----------
|
||||
|
@ -348,6 +348,75 @@ And then later in code:
|
||||
// Draw the image my_image at position [x=0,y=0]
|
||||
it.image(0, 0, id(my_image));
|
||||
|
||||
.. _display-pages:
|
||||
|
||||
Display Pages
|
||||
-------------
|
||||
|
||||
Certain display types also allow you to show "pages". With pages you can create drawing lambdas
|
||||
that you can switch between. For example with pages you can set up 3 screens, each with
|
||||
different content, and switch between them on a timer.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
display:
|
||||
- platform: ...
|
||||
# ...
|
||||
id: my_display
|
||||
pages:
|
||||
- id: page1
|
||||
lambda: |-
|
||||
it.print(0, 10, id(my_font), "This is page 1!");
|
||||
- id: page2
|
||||
lambda: |-
|
||||
it.print(0, 10, id(my_font), "This is page 2!");
|
||||
|
||||
You can then switch between these with three different actions:
|
||||
|
||||
**show_next** / **show_prev**: Shows the next or previous page, wraps around at the end.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
on_...:
|
||||
- display.page.show_next: my_display
|
||||
- display.page.show_prev: my_display
|
||||
|
||||
# For example cycle through pages on a timer
|
||||
interval:
|
||||
- interval: 5s
|
||||
then:
|
||||
- display.page.show_next: my_display
|
||||
- component.update: my_display
|
||||
|
||||
**display.page.show**: Show a specific page
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
on_...:
|
||||
- display.page.show: page1
|
||||
|
||||
# Templated
|
||||
- display.page.show: !lambda |-
|
||||
if (id(my_binary_sensor).state) {
|
||||
return id(page1);
|
||||
} else {
|
||||
return id(page2);
|
||||
}
|
||||
|
||||
.. note::
|
||||
|
||||
To trigger a redraw right after the page show use a :ref:`component.update <component-update_action>`
|
||||
action:
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
# For example cycle through pages on a timer
|
||||
interval:
|
||||
- interval: 5s
|
||||
then:
|
||||
- display.page.show_next: my_display
|
||||
- component.update: my_display
|
||||
|
||||
See Also
|
||||
--------
|
||||
|
||||
|
@ -5,11 +5,6 @@ Nextion TFT LCD Display
|
||||
:description: Instructions for setting up Nextion TFT LCD displays
|
||||
:image: nextion.jpg
|
||||
|
||||
.. warning::
|
||||
|
||||
This integration is experimental as I don't have the hardware to test it (yet).
|
||||
If you can verify it works (or if it doesn't), notify me on `discord <https://discord.gg/KhAMKrd>`__.
|
||||
|
||||
The ``nextion`` display platform allows you to use Nextion LCD displays (`datasheet <https://nextion.itead.cc/resources/datasheets/>`__,
|
||||
`iTead <https://www.itead.cc/display/nextion.html>`__)
|
||||
with ESPHome.
|
||||
|
@ -59,6 +59,7 @@ Configuration variables:
|
||||
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the display.
|
||||
See :ref:`display-engine` for more information.
|
||||
- **update_interval** (*Optional*, :ref:`config-time`): The interval to re-draw the screen. Defaults to ``5s``.
|
||||
- **pages** (*Optional*, list): Show pages instead of a single lambda. See :ref:`display-pages`.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
|
||||
|
||||
See Also
|
||||
|
@ -62,6 +62,7 @@ Configuration variables:
|
||||
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the display.
|
||||
See :ref:`display-engine` for more information.
|
||||
- **update_interval** (*Optional*, :ref:`config-time`): The interval to re-draw the screen. Defaults to ``5s``.
|
||||
- **pages** (*Optional*, list): Show pages instead of a single lambda. See :ref:`display-pages`.
|
||||
- **spi_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the :ref:`SPI Component <spi>` if you want
|
||||
to use multiple SPI buses.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
|
||||
|
@ -90,6 +90,7 @@ Configuration variables:
|
||||
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the display.
|
||||
See :ref:`display-engine` for more information.
|
||||
- **update_interval** (*Optional*, :ref:`config-time`): The interval to re-draw the screen. Defaults to ``10s``.
|
||||
- **pages** (*Optional*, list): Show pages instead of a single lambda. See :ref:`display-pages`.
|
||||
- **spi_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the :ref:`SPI Component <spi>` if you want
|
||||
to use multiple SPI buses.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
|
||||
|
@ -6,11 +6,6 @@ Ethernet Component
|
||||
:image: ethernet.png
|
||||
:keywords: Ethernet, ESP32
|
||||
|
||||
.. warning::
|
||||
|
||||
This integration is experimental as I don't have the hardware to test it (yet).
|
||||
If you can verify it works (or if it doesn't), notify me on `discord <https://discord.gg/KhAMKrd>`__.
|
||||
|
||||
This core ESPHome component sets up ethernet connections for ESP32s.
|
||||
Ethernet for ESP8266 is not supported.
|
||||
|
||||
|
@ -5,11 +5,6 @@ PMSX003 Particulate Matter Sensor
|
||||
:description: Instructions for setting up PMSX003 Particulate matter sensors
|
||||
:image: pmsx003.png
|
||||
|
||||
.. warning::
|
||||
|
||||
This integration is experimental as I don't have the hardware to test it (yet).
|
||||
If you can verify it works (or if it doesn't), notify me on `discord <https://discord.gg/KhAMKrd>`__.
|
||||
|
||||
The ``pmsx003`` sensor platform allows you to use your PMS5003, PMS7003, ... particulate matter
|
||||
(`datasheet <http://www.aqmd.gov/docs/default-source/aq-spec/resources-page/plantower-pms5003-manual_v2-3.pdf>`__)
|
||||
sensors with ESPHome.
|
||||
|
@ -200,6 +200,58 @@ Some steps that can help with the issue:
|
||||
- The issue seems to be happen with cheap boards more frequently. Especially the "cheap" NodeMCU
|
||||
boards from eBay sometimes have quite bad antennas.
|
||||
|
||||
Docker Reference
|
||||
----------------
|
||||
|
||||
Install versions:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
# Stable Release
|
||||
docker pull esphome/esphome
|
||||
# Beta
|
||||
docker pull esphome/esphome:beta
|
||||
# Dev version
|
||||
docker pull esphome/esphome:dev
|
||||
|
||||
Command reference:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
# Start a new file wizard for file livingroom.yaml
|
||||
docker run --rm -v "${PWD}":/config -it esphome/esphome livingroom.yaml wizard
|
||||
|
||||
# Compile and upload livingroom.yaml
|
||||
docker run --rm -v "${PWD}":/config -it esphome/esphome livingroom.yaml run
|
||||
|
||||
# View logs
|
||||
docker run --rm -v "${PWD}":/config -it esphome/esphome livingroom.yaml logs
|
||||
|
||||
# Map /dev/ttyUSB0 into container
|
||||
docker run --rm -v "${PWD}":/config --device=/dev/ttyUSB0 -it esphome/esphome ...
|
||||
|
||||
# Start dashboard on port 6052
|
||||
docker run --rm -v "${PWD}":/config --net=host -it esphome/esphome
|
||||
|
||||
And a docker compose file looks like this:
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
esphome:
|
||||
image: esphome/esphome
|
||||
volumes:
|
||||
- ./:/config:rw
|
||||
network_mode: host
|
||||
restart: always
|
||||
|
||||
.. note::
|
||||
|
||||
ESPHome uses mDNS to show online/offline state in the dashboard view. So for that feature
|
||||
to work you need to enable host networking mode
|
||||
|
||||
Donations
|
||||
---------
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user