Changelog - Version 1.19.0 - 16th June 2021 =========================================== .. seo:: :description: Changelog for ESPHome version 1.19.0. :image: /_static/changelog-1.19.0.png :author: ESPHome :author_twitter: @esphome_ .. imgtable:: :columns: 3 Improv, components/esp32_improv, improv.svg, dark-invert SM2135, components/output/sm2135, sm2135.svg XPT2046, components/binary_sensor/xpt2046, xpt2046.jpg SDM Meter, components/sensor/sdm_meter, sdm220m.jpg CS5460A, components/sensor/cs5460a, cs5460a.png Wow. Ok, so this release may not look big, but there are a number of new features that are not new components. Improv ------ :doc:`Improv Wi-Fi ` is a new standard that stands for **Improved Provisioning of Wi-Fi Credentials**. What it does is allow you to provision Wi-Fi credentials to the device by using Bluetooth LE. Check out the website for more details at `improv-wifi.com `__. Home Assistant Sensor Attributes -------------------------------- For a long time now one of the top requested features was to be able to read attributes from Home Assistant entities into a local sensor in ESPHome. For example the brightness of a light, or the current temperature of a climate device. :ghuser:`frenck` decided to take a stab and as long as you are running at least ESPHome 1.19.0 and Home Assistant 2021.6 then you can do this. Thanks Frenck! .. code-block:: yaml # Example configuration entry sensor: - platform: homeassistant id: current_temperature entity_id: climate.living_room attribute: current_temperature For the Creators ---------------- There have been a few additions to the ESPHome codebase that make it easier for creators to make projects in ESPHome and distribute them pre-installed and ready to use. See the :doc:`new page here `. The Web Experience ------------------ We have been working hard on some new tooling to make it easier for everyone to install ESPHome and other DIY firmwares onto their ESP-based devices. To do this we have created the `ESP Web Tools `__. Big shoutout to :ghuser:`balloob` on most of that work! Because of these new tools, the ESPHome dashboard has gotten a slight makeover when you choose to install to a device. You are now given the option to install directly via WebSerial to the ESP from the browser. No more plugging into the server/VM running ESPHome and restarting container etc. It just works. (Provided you are using Chrome or Edge). Command Line Interface ---------------------- Thanks to :ghuser:`oxan` for making some change to the ESPHome CLI. Instead of ``esphome config.yaml run`` we now have ``esphome run config.yaml``. The old format is still accepted and will be removed in a future release, but there is a **breaking change** with this release which is the arguments ``--upload-port`` and ``--serial-port`` have been combined and changed to ``--device``. Release 1.19.1 - June 18 ------------------------ - Update dashboard to 20210617.0 :esphomepr:`1930` by :ghuser:`balloob` - Fix: midea_ac: fixed query status frame :esphomepr:`1922` by :ghuser:`dudanov` - Improve config final validation :esphomepr:`1917` by :ghuser:`OttoWinter` - Replace CLIMATE_MODE_AUTO with CLIMATE_MODE_HEAT_COOL in most cases :esphomepr:`1933` by :ghuser:`jesserockz` Release 1.19.2 - June 21 ------------------------ - Don't send Tuya commands while currently receiving a message :esphomepr:`1886` by :ghuser:`nuttytree` - Fix midea_ac query frame :esphomepr:`1940` by :ghuser:`dudanov` - Allow wifi setup to proceed when there is no sta or ap :esphomepr:`1931` by :ghuser:`jesserockz` - Fix bad climate control enum :esphomepr:`1942` by :ghuser:`jesserockz` Release 1.19.3 - June 23 ------------------------ - Bump esphome-dashboard to 20210622.0 :esphomepr:`1955` by :ghuser:`jesserockz` Release 1.19.4 - June 24 ------------------------ - Rework climate traits :esphomepr:`1941` by :ghuser:`OttoWinter` - API raise minor version for climate changes :esphomepr:`1947` by :ghuser:`OttoWinter` - Disallow power_save_mode NONE if used together with BLE :esphomepr:`1950` by :ghuser:`OttoWinter` - Add climate preset NONE again :esphomepr:`1951` by :ghuser:`OttoWinter` - Compat argv parsing improvements :esphomepr:`1952` by :ghuser:`OttoWinter` - Bump dashboard to 20210623.0 :esphomepr:`1958` by :ghuser:`jesserockz` Full list of changes -------------------- New Components ^^^^^^^^^^^^^^ - Add sm2135 component :esphomepr:`1736` by :ghuser:`BoukeHaarsma23` (cherry-picked) (new-integration) - Add support for the XPT2046 touchscreen controller :esphomepr:`1542` by :ghuser:`numo68` (new-integration) - Add support for SDMXXX energy meters :esphomepr:`1260` by :ghuser:`polyfaces` (new-integration) - Add CS5460A power-meter component :esphomepr:`1474` by :ghuser:`balrog-kun` (new-integration) - Added support for Xiaomi CGDK2 :esphomepr:`1451` by :ghuser:`zaluthar` (new-integration) - Improv - BLE WiFi provisioning :esphomepr:`1807` by :ghuser:`jesserockz` (new-integration) (notable-change) Breaking Changes ^^^^^^^^^^^^^^^^ - Drop 128x160 ESP-32 camera resolution :esphomepr:`1813` by :ghuser:`oxan` (breaking-change) - teleinfo: use text_sensor and sensor. :esphomepr:`1403` by :ghuser:`0hax` (breaking-change) - CLI user experience improvements :esphomepr:`1805` by :ghuser:`oxan` (breaking-change) (notable-change) Notable Changes ^^^^^^^^^^^^^^^ - Add attribute support to Home Assistant sensors :esphomepr:`1770` by :ghuser:`frenck` (notable-change) - CLI user experience improvements :esphomepr:`1805` by :ghuser:`oxan` (breaking-change) (notable-change) - Improv - BLE WiFi provisioning :esphomepr:`1807` by :ghuser:`jesserockz` (new-integration) (notable-change) Beta Fixes ^^^^^^^^^^ - Upgrade the version of AsyncTCP-esphome to v1.2.2 :esphomepr:`1762` by :ghuser:`glmnet` (cherry-picked) - Fix build issues for idf 4.2 (Support ESP32-S2) :esphomepr:`1433` by :ghuser:`misery` (cherry-picked) - Use core constants for sample duration on bh1750 :esphomepr:`1764` by :ghuser:`yuvalabou` (breaking-change) (cherry-picked) - Add sm2135 component :esphomepr:`1736` by :ghuser:`BoukeHaarsma23` (cherry-picked) (new-integration) - Allow RC522 components to have multiple configurations :esphomepr:`1782` by :ghuser:`jesserockz` (cherry-picked) - Simplify LightCall validation :esphomepr:`1874` by :ghuser:`oxan` (cherry-picked) - Simplify LightCall validation :esphomepr:`1874` by :ghuser:`oxan` (cherry-picked) - BLE loop use :esphomepr:`1882` by :ghuser:`jesserockz` (cherry-picked) - BLE loop use :esphomepr:`1882` by :ghuser:`jesserockz` (cherry-picked) - Add support for waveshare_epaper 1.54v2 :esphomepr:`1843` by :ghuser:`geoffdavis` (cherry-picked) - Add support for waveshare_epaper 1.54v2 :esphomepr:`1843` by :ghuser:`geoffdavis` (cherry-picked) - Ensure wifi is in at least station mode before starting improv :esphomepr:`1899` by :ghuser:`jesserockz` (cherry-picked) - Ensure wifi is in at least station mode before starting improv :esphomepr:`1899` by :ghuser:`jesserockz` (cherry-picked) - Move esp32_ble_server to its own component :esphomepr:`1898` by :ghuser:`jesserockz` (breaking-change) (cherry-picked) (new-integration) - Move esp32_ble_server to its own component :esphomepr:`1898` by :ghuser:`jesserockz` (breaking-change) (cherry-picked) (new-integration) - Add new wizard + allow installing firmware over webserial :esphomepr:`1887` by :ghuser:`balloob` (cherry-picked) - Add new wizard + allow installing firmware over webserial :esphomepr:`1887` by :ghuser:`balloob` (cherry-picked) - Allow no networks or AP to be set. :esphomepr:`1908` by :ghuser:`jesserockz` (cherry-picked) - Allow no networks or AP to be set. :esphomepr:`1908` by :ghuser:`jesserockz` (cherry-picked) - Validate that either networks, ap, or improv is set up :esphomepr:`1910` by :ghuser:`jesserockz` (cherry-picked) - Validate that either networks, ap, or improv is set up :esphomepr:`1910` by :ghuser:`jesserockz` (cherry-picked) - Bump frontend to 20210614.0 :esphomepr:`1912` by :ghuser:`balloob` (cherry-picked) - Bump frontend to 20210614.0 :esphomepr:`1912` by :ghuser:`balloob` (cherry-picked) - fixes compatibility with esphome cfg vscode :esphomepr:`1911` by :ghuser:`glmnet` (cherry-picked) - fixes compatibility with esphome cfg vscode :esphomepr:`1911` by :ghuser:`glmnet` (cherry-picked) - Bump dashboard to 20210615.0 :esphomepr:`1918` by :ghuser:`balloob` (cherry-picked) - Shorten the ble name to prevent crash with long device names :esphomepr:`1920` by :ghuser:`jesserockz` (cherry-picked) - Fix update-all from dashboard :esphomepr:`1924` by :ghuser:`frenck` All changes ^^^^^^^^^^^ - Bump black from 20.8b1 to 21.5b0 :esphomepr:`1745` by :ghuser:`dependabot[bot]` - Bump pylint from 2.7.2 to 2.8.2 :esphomepr:`1729` by :ghuser:`dependabot[bot]` - Fix error when using %% in printf format. :esphomepr:`1713` by :ghuser:`mmakaay` - Update const.py :esphomepr:`1748` by :ghuser:`cciprian5` - Allow duration for deep_sleep.enter to be templatable :esphomepr:`1765` by :ghuser:`jesserockz` - Bump black from 21.5b0 to 21.5b1 :esphomepr:`1768` by :ghuser:`dependabot[bot]` - Bump flake8 from 3.9.0 to 3.9.2 :esphomepr:`1763` by :ghuser:`dependabot[bot]` - Bump pytest from 6.2.3 to 6.2.4 :esphomepr:`1769` by :ghuser:`dependabot[bot]` - Adding delay to aht10.cpp (issue #1635) :esphomepr:`1498` by :ghuser:`krunkel` - Mitsubishi Heat Pump - Fixed default transmit_state to be generic instead of for a specific type of heat pump :esphomepr:`1414` by :ghuser:`RubyBailey` - Add function to set SDS011 sensor in sleeping mode :esphomepr:`1416` by :ghuser:`onde2rock` - Autorepeat filter for the binary sensors :esphomepr:`1681` by :ghuser:`numo68` - Add action to set total pulses on pulse_meter :esphomepr:`1757` by :ghuser:`jesserockz` - Add more json schema generation features :esphomepr:`1690` by :ghuser:`glmnet` - Generate protobuf code closer to formatted files :esphomepr:`1790` by :ghuser:`jesserockz` - Add attribute support to Home Assistant sensors :esphomepr:`1770` by :ghuser:`frenck` (notable-change) - Bump Arduino SDK for ESP32 to 1.0.6 :esphomepr:`1789` by :ghuser:`agners` - Added bottom segment to digit 9 :esphomepr:`1787` by :ghuser:`testbughub` - Add support for the XPT2046 touchscreen controller :esphomepr:`1542` by :ghuser:`numo68` (new-integration) - Revert "Added bottom segment to digit 9" :esphomepr:`1791` by :ghuser:`jesserockz` - Introduce new async-def coroutine syntax :esphomepr:`1657` by :ghuser:`OttoWinter` - Add on_tag_removed trigger to pn532 :esphomepr:`1436` by :ghuser:`romerod` - Do not use Serial2 for ESP32C3, too :esphomepr:`1798` by :ghuser:`misery` - Use latest version of upstream NeoPixelBus library :esphomepr:`1701` by :ghuser:`agners` - Added fan triggers on_turn_on and on_turn_off :esphomepr:`1726` by :ghuser:`dataway` - tm1637 - support 6 character displays :esphomepr:`1803` by :ghuser:`dataway` - Convert core components to async-def coroutine syntax :esphomepr:`1658` by :ghuser:`OttoWinter` - Lights & GPIO Switch inverted restore mode :esphomepr:`1810` by :ghuser:`frenck` - allow default option for typed_schema :esphomepr:`1700` by :ghuser:`wifwucite` - Refactor font creation to save stack space :esphomepr:`1707` by :ghuser:`numo68` - BME680 BSEC: Allow sample rate overrides for T/P/H sensors :esphomepr:`1710` by :ghuser:`trvrnrth` - Add the on_page_change display trigger :esphomepr:`1687` by :ghuser:`numo68` - Allow segments in a light partition to be reversed :esphomepr:`1484` by :ghuser:`jimbauwens` - Document considerations when changing recommended framework version :esphomepr:`1822` by :ghuser:`OttoWinter` - Convert components to async-def syntax :esphomepr:`1821` by :ghuser:`OttoWinter` - Bump protobuf from 3.15.8 to 3.17.0 :esphomepr:`1776` by :ghuser:`dependabot[bot]` - Convert components to async-def syntax :esphomepr:`1823` by :ghuser:`OttoWinter` - Update sensor device classes from HA :esphomepr:`1825` by :ghuser:`OttoWinter` - Update platformio.ini settings and fix test apps :esphomepr:`1815` by :ghuser:`oxan` - lambda condition should return :esphomepr:`1833` by :ghuser:`glmnet` - fix dallas pin validation :esphomepr:`1692` by :ghuser:`glmnet` - Fix typo in wizard :esphomepr:`1836` by :ghuser:`ThomDietrich` - add validate to components :esphomepr:`1631` by :ghuser:`glmnet` - Added bottom segment to digit 9 :esphomepr:`1847` by :ghuser:`testbughub` - Add support for SDMXXX energy meters :esphomepr:`1260` by :ghuser:`polyfaces` (new-integration) - Add CS5460A power-meter component :esphomepr:`1474` by :ghuser:`balrog-kun` (new-integration) - Drop 128x160 ESP-32 camera resolution :esphomepr:`1813` by :ghuser:`oxan` (breaking-change) - Rf Bridge: add bucket sniffing and beep functionality :esphomepr:`1819` by :ghuser:`ianchi` - Use built-in validation for altitude :esphomepr:`1831` by :ghuser:`agners` - Don't check uart settings for modbus :esphomepr:`1850` by :ghuser:`jesserockz` - I2c raw cmds with multiplexer :esphomepr:`1817` by :ghuser:`mmakaay` - Update fingerprint count after enroll :esphomepr:`1811` by :ghuser:`rwagnervm` - teleinfo: use text_sensor and sensor. :esphomepr:`1403` by :ghuser:`0hax` (breaking-change) - Copy missing BLE client characteristic read data :esphomepr:`1818` by :ghuser:`buxtronix` - Added support for Xiaomi CGDK2 :esphomepr:`1451` by :ghuser:`zaluthar` (new-integration) - Fix ble client esp_gatt_if comparison :esphomepr:`1852` by :ghuser:`jesserockz` - Add optional lambda to BLESensor for raw data parsing :esphomepr:`1851` by :ghuser:`torfbolt` - Support Tuya light color temperature control :esphomepr:`1412` by :ghuser:`rmounce` - Tuya improvements :esphomepr:`1491` by :ghuser:`trvrnrth` - Use size_t for length parameter :esphomepr:`1799` by :ghuser:`misery` - Added vol +/- control to dfplayer :esphomepr:`1856` by :ghuser:`foxsam21` - Support raw datapoints for tuya components :esphomepr:`1669` by :ghuser:`kroimon` - Add support for Sensor state class :esphomepr:`1835` by :ghuser:`frenck` - make crc16 function accessible :esphomepr:`1857` by :ghuser:`ssieb` - Add preset, custom_preset and custom_fan_mode support to climate :esphomepr:`1471` by :ghuser:`Lumpusz` - Avoid unnecessary waits to stabilize the VOC algorithm :esphomepr:`1834` by :ghuser:`agners` - Fix SCD30 configuration on ESP32 :esphomepr:`1830` by :ghuser:`agners` - Bump Docker base version to 3.1.0 :esphomepr:`1864` by :ghuser:`agners` - CLI user experience improvements :esphomepr:`1805` by :ghuser:`oxan` (breaking-change) (notable-change) - Improv - BLE WiFi provisioning :esphomepr:`1807` by :ghuser:`jesserockz` (new-integration) (notable-change) - Implement versioning for esphome/esphome-lint docker images :esphomepr:`1877` by :ghuser:`OttoWinter` - Bump base image to 3.4.0 :esphomepr:`1879` by :ghuser:`OttoWinter` - Use Clang 11 :esphomepr:`1846` by :ghuser:`agners` - Remove explain changes section from PR template :esphomepr:`1876` by :ghuser:`OttoWinter` - Fixes for BLE/improv :esphomepr:`1878` by :ghuser:`jesserockz` - Fix Clang 11 finds :esphomepr:`1880` by :ghuser:`agners` - Allow setting creator project name and version into code :esphomepr:`1872` by :ghuser:`jesserockz` - Add platform and board to mdns response when API is used :esphomepr:`1871` by :ghuser:`jesserockz` - Update total_pulses at every detected pulse :esphomepr:`1875` by :ghuser:`rklomp` - Simplify LightCall validation :esphomepr:`1874` by :ghuser:`oxan` (cherry-picked) - BLE loop use :esphomepr:`1882` by :ghuser:`jesserockz` (cherry-picked) - Add support for waveshare_epaper 1.54v2 :esphomepr:`1843` by :ghuser:`geoffdavis` (cherry-picked) - Update ambiguous command :esphomepr:`1889` by :ghuser:`jesserockz` - Configure clang-format for consistent pointer alignment :esphomepr:`1890` by :ghuser:`OttoWinter` - Activate some clang-tidy checks :esphomepr:`1884` by :ghuser:`OttoWinter` - Avoid non-const globals and enable clang-tidy check :esphomepr:`1892` by :ghuser:`agners` - Convert st7735.cpp to use Unix line separators :esphomepr:`1894` by :ghuser:`oxan` - Ensure wifi is in at least station mode before starting improv :esphomepr:`1899` by :ghuser:`jesserockz` (cherry-picked) - Move esp32_ble_server to its own component :esphomepr:`1898` by :ghuser:`jesserockz` (breaking-change) (cherry-picked) (new-integration) - Add new wizard + allow installing firmware over webserial :esphomepr:`1887` by :ghuser:`balloob` (cherry-picked) - Split files in light component :esphomepr:`1893` by :ghuser:`oxan` - Fix CI by avoiding non-const global :esphomepr:`1907` by :ghuser:`oxan` - Adds support cpp to vscode :esphomepr:`1828` by :ghuser:`dentra` - Allow no networks or AP to be set. :esphomepr:`1908` by :ghuser:`jesserockz` (cherry-picked) - Validate that either networks, ap, or improv is set up :esphomepr:`1910` by :ghuser:`jesserockz` (cherry-picked) - Support ESP8266 Arduino 3.0.0 :esphomepr:`1897` by :ghuser:`agners` - Bump frontend to 20210614.0 :esphomepr:`1912` by :ghuser:`balloob` (cherry-picked) - Run script/setup in devcontainer instead of pip install :esphomepr:`1913` by :ghuser:`OttoWinter` - fixes compatibility with esphome cfg vscode :esphomepr:`1911` by :ghuser:`glmnet` (cherry-picked) - Bump dashboard to 20210615.0 :esphomepr:`1918` by :ghuser:`balloob` (cherry-picked) - Shorten the ble name to prevent crash with long device names :esphomepr:`1920` by :ghuser:`jesserockz` (cherry-picked) - Fix update-all from dashboard :esphomepr:`1924` by :ghuser:`frenck` Past Changelogs --------------- - :doc:`v1.18.0` - :doc:`v1.17.0` - :doc:`v1.16.0` - :doc:`v1.15.0` - :doc:`v1.14.0` - :doc:`v1.13.0` - :doc:`v1.12.0` - :doc:`v1.11.0` - :doc:`v1.10.0` - :doc:`v1.9.0` - :doc:`v1.8.0` - :doc:`v1.7.0`