.. seo:: :description: Changelog for ESPHome 2021.9.0. :image: /_static/changelog-2021.9.0.png :author: ESPHome :author_twitter: @esphome_
.. imgtable:: :columns: 3 AirThings BLE, components/sensor/airthings_ble, airthings_logo.png H-bridge Fan, components/fan/hbridge, fan.svg ST7920, components/display/st7920, st7920.jpg
It was brought to our attention by :ghuser:`andir` that the :doc:`/components/web_server` had a vulnerability in that
the OTA form could be POST'd to without the basic auth credentials set in the web_server
configuration.
If you use the web_server
and rely on the credentials for security, then you need to upgrade to 2021.9.2 or
disable the web_server
completely. The Security Advisory on GitHub
has been given CVE-2021-41104
.
You get the most out of your ESPHome devices when you combine it with Home Assistant, which offers a seamless and local integration to control and manage all your ESPHome devices. Today Home Assistant launched a crowdfunding campaign for the Home Assistant Yellow, the easiest way to get started with Home Assistant and a privacy focused smart home.
:ghuser:`OttoWinter` has been hard at work adding a layer of encryption to the API which utilises the
noise
protocol. This releases adds the capabilities to ESPHome devices, but Home Assistant (or other clients)
will need to upgrade their client libraries (e.g. aioesphomeapi
) before they can connect and communicate to
devices with encryption. This is scheduled to be available in Home Assistant 2021.10.
:ref:`Packages<config-git_packages>` have been extended to allow loading (multiple) YAML file(s) from a git repo. Take a look at the examples to see how to use them.
platform: midea_ac
has been changed to platform: midea
in this release and has
quite a few upgrades. Check the docs for the new features. :doc:`/components/climate/midea`
:doc:`SDM Meters</components/sensor/sdm_meter>` have been fixed to use kWh instead of Wh as the energy unit of measurement.
The template selects, numbers and switches now have more validations on them preventing weird usage.
If you do not set a lambda
then you are required to make them either optimistic: true
, or
utilise the set_action
(select/number) / turn_on_trigger
(switch).
- Fix MQTT discovery for sensor state_class :esphomepr:`2331` by :ghuser:`paulmonigatti`
- Light transition fixes :esphomepr:`2320` by :ghuser:`oxan`
- Cease using deprecated Cover methods in automations :esphomepr:`2326` by :ghuser:`oxan`
- Apply color brightness to addressable light effects :esphomepr:`2321` by :ghuser:`oxan`
- Add readv and writev for more efficient API packets :esphomepr:`2342` by :ghuser:`OttoWinter`
- Clean-up sensor integration :esphomepr:`2275` by :ghuser:`oxan`
- Bump aioesphomeapi to 9.1.1 :esphomepr:`2350` by :ghuser:`OttoWinter`
- Midea fix :esphomepr:`2395` by :ghuser:`dudanov`
- Move web_server auth to web_server_base be965a6 by :ghuser:`OttoWinter`
- Fix lint issues in web_server_base :esphomepr:`2409` by :ghuser:`jesserockz`
- Re-enable TCP nodelay for ESP32 :esphomepr:`2390` by :ghuser:`OttoWinter`
- Bump aioesphomeapi from 9.1.1 to 9.1.2 :esphomepr:`2426` by :ghuser:`dependabot[bot]`
- Fix socket abstraction for ESP-IDF v4 :esphomepr:`2434` by :ghuser:`agners`
- Bump aioesphomeapi from 9.1.2 to 9.1.4 :esphomepr:`2443` by :ghuser:`dependabot[bot]`
- Add log line to show if API encryption is being used :esphomepr:`2450` by :ghuser:`jesserockz`
- API encryption switch to libsodium backend :esphomepr:`2456` by :ghuser:`OttoWinter`
- Add H-Bridge fan component :esphomepr:`2212` by :ghuser:`WeekendWarrior1` (new-feature)
- Allow using a git source for a package :esphomepr:`2193` by :ghuser:`jesserockz` (new-feature)
- Add st7920 display, :esphomepr:`1440` by :ghuser:`marsjan155` (new-integration)
- Support for the AirThings Wave Plus :esphomepr:`1656` by :ghuser:`jeromelaban` (new-integration)
- Fix SDM energy units to be KILO... :esphomepr:`2206` by :ghuser:`jesserockz` (breaking-change)
- Reject template select/number/switches that don't handle user input :esphomepr:`2230` by :ghuser:`oxan` (breaking-change)
- Remove last_reset_type and convert all those sensors to TOTAL_INCREASING :esphomepr:`2233` by :ghuser:`jesserockz` (breaking-change)
- Midea support v2 :esphomepr:`2188` by :ghuser:`dudanov` (breaking-change)
- Fix a few ESP32-C3 compiler issues :esphomepr:`2265` by :ghuser:`jesserockz`
- sm300d2: Accept (undocumented) 0x80 checksum offset. :esphomepr:`2263` by :ghuser:`poptix`
- Disable automatic usage of SNTP servers from DHCP :esphomepr:`2273` by :ghuser:`oxan`
- Only try compat parsing after regular parsing fails :esphomepr:`2269` by :ghuser:`oxan`
- Suppress excessive warnings about deprecated Fan interfaces :esphomepr:`2270` by :ghuser:`oxan`
- t6615: tolerate sensor dropping commands :esphomepr:`2255` by :ghuser:`jasstrong`
- Fix API socket issues :esphomepr:`2288` by :ghuser:`OttoWinter`
- Bump platformio to 5.2.0 :esphomepr:`2291` by :ghuser:`OttoWinter`
- API Noise logging :esphomepr:`2298` by :ghuser:`OttoWinter`
- Fix api noise explicit reject :esphomepr:`2297` by :ghuser:`OttoWinter`
- Allow simple hostname for sntp servers :esphomepr:`2300` by :ghuser:`jesserockz`
- Fix binary strobe :esphomepr:`2301` by :ghuser:`jesserockz`
- Fix unit of measurement fields for DSMR power consumed/delivered fields :esphomepr:`2304` by :ghuser:`jsuanet`
- Simple time.sleep in place of threading wait due to upgraded zeroconf :esphomepr:`2307` by :ghuser:`jesserockz`
- Fix aioesphomeapi API logger with explicit API port config :esphomepr:`2310` by :ghuser:`mmakaay`
- Start a wifi scan after saving station details :esphomepr:`2315` by :ghuser:`jesserockz`
- Minor code cleanup in light components :esphomepr:`2162` by :ghuser:`mmakaay`
- Add device class update to binary sensor :esphomepr:`2170` by :ghuser:`frenck`
- Total daily energy methods :esphomepr:`2163` by :ghuser:`nuttytree`
- Set SDM voltage state class to measurement :esphomepr:`2181` by :ghuser:`jesserockz`
- Add macros header with more usable Arduino version defines :esphomepr:`2145` by :ghuser:`oxan`
- Clean-up constant definitions :esphomepr:`2148` by :ghuser:`oxan`
- Remove double scheduling from addressable lights :esphomepr:`1963` by :ghuser:`oxan`
- Reduce static RAM usage :esphomepr:`2140` by :ghuser:`oxan`
- Fix template select log message mentioning number :esphomepr:`2194` by :ghuser:`jesserockz`
- Add deprecated attribute to some deprecated types/methods :esphomepr:`2185` by :ghuser:`oxan`
- Store source package in Component for debugging :esphomepr:`2070` by :ghuser:`OttoWinter`
- ST7789V: Make backlight_pin optional :esphomepr:`2180` by :ghuser:`speijnik`
- Fix SDM energy units to be KILO... :esphomepr:`2206` by :ghuser:`jesserockz` (breaking-change)
- Optionally set direction on fan.turn_on action :esphomepr:`2171` by :ghuser:`WeekendWarrior1`
- Add st7920 display, :esphomepr:`1440` by :ghuser:`marsjan155` (new-integration)
- Fix css/js file loading for webserver when esphome not executed form config directory :esphomepr:`2207` by :ghuser:`jesserockz`
- cs_pin made optional for ili9341 :esphomepr:`2219` by :ghuser:`a13ssandr0`
- Fix Packages when using MQTT :esphomepr:`2210` by :ghuser:`paulmonigatti`
- Update known boards :esphomepr:`2190` by :ghuser:`oxan`
- Bump dashboard to 20210826.0 :esphomepr:`2211` by :ghuser:`jesserockz`
- Remove footer validation for fujitsu_general :esphomepr:`2196` by :ghuser:`marciogranzotto`
- Glmnet schema 202105 :esphomepr:`2220` by :ghuser:`glmnet`
- Add H-Bridge fan component :esphomepr:`2212` by :ghuser:`WeekendWarrior1` (new-feature)
- Bump black from 21.7b0 to 21.8b0 :esphomepr:`2222` by :ghuser:`dependabot[bot]`
- Bump pytest from 6.2.4 to 6.2.5 :esphomepr:`2223` by :ghuser:`dependabot[bot]`
- Support for the AirThings Wave Plus :esphomepr:`1656` by :ghuser:`jeromelaban` (new-integration)
- Fix some lint errors in pylint 2.10.2 :esphomepr:`2226` by :ghuser:`jesserockz`
- Add transitions to light flash :esphomepr:`2201` by :ghuser:`alexyao2015`
- iBeacon support for ble_presence :esphomepr:`1627` by :ghuser:`ignisf`
- Cleanup flash transitions :esphomepr:`2227` by :ghuser:`alexyao2015`
- Add is_on and is_off conditions for the fan component :esphomepr:`2225` by :ghuser:`nuttytree`
- Bump pylint from 2.9.6 to 2.10.2 :esphomepr:`2197` by :ghuser:`dependabot[bot]`
- mqtt_sensor: properly send state_class via MQTT :esphomepr:`2228` by :ghuser:`ayufan`
- Change uptime's state_class to total_increasing (esphome/issues#2337) :esphomepr:`2205` by :ghuser:`DAVe3283`
- Expose WHITE/CWWW/RGBCT color modes over MQTT :esphomepr:`2231` by :ghuser:`oxan`
- Reject template select/number/switches that don't handle user input :esphomepr:`2230` by :ghuser:`oxan` (breaking-change)
- Fix UARTComponent hardware vs software UART0 conflict :esphomepr:`2229` by :ghuser:`ferbar`
- Move to use zeroconf library instead of inline copy :esphomepr:`2192` by :ghuser:`jesserockz`
- Allow using a git source for a package :esphomepr:`2193` by :ghuser:`jesserockz` (new-feature)
- Remove last_reset_type and convert all those sensors to TOTAL_INCREASING :esphomepr:`2233` by :ghuser:`jesserockz` (breaking-change)
- Dont dump legacy fields :esphomepr:`2241` by :ghuser:`jesserockz`
- Fix encoding bug :esphomepr:`2242` by :ghuser:`jesserockz`
- Light: include ON_OFF capability to BRIGHTNESS ColorMode :esphomepr:`2204` by :ghuser:`jesserockz`
- LOG_UPDATE_INTERVAL: correctly report "never" :esphomepr:`2240` by :ghuser:`Habbie`
- Fix runtime exception due to dict typing :esphomepr:`2243` by :ghuser:`alexyao2015`
- template: select: fix initial_value cannot be used with lambda :esphomepr:`2244` by :ghuser:`ayufan`
- Add device classes new in HA 2021.9 :esphomepr:`2248` by :ghuser:`oxan`
- Logger prevent recursive logging :esphomepr:`2251` by :ghuser:`OttoWinter`
- Add new trigger to fan component on_speed_set :esphomepr:`2246` by :ghuser:`dgtal1`
- Fix fan speed restore issue on boot :esphomepr:`1867` by :ghuser:`wifwucite`
- Template sensors always publish on update interval :esphomepr:`2224` by :ghuser:`nuttytree`
- Socket component :esphomepr:`2250` by :ghuser:`OttoWinter`
- Allow .yml files in dashboard :esphomepr:`2257` by :ghuser:`jesserockz`
- Bump dashboard to 20210908.0 and fix card names for yml :esphomepr:`2258` by :ghuser:`jesserockz`
- Fix socket not setting callbacks early enough :esphomepr:`2260` by :ghuser:`OttoWinter`
- Convert API to use sockets :esphomepr:`2253` by :ghuser:`OttoWinter`
- Midea support v2 :esphomepr:`2188` by :ghuser:`dudanov` (breaking-change)
- ccs811: publish firmware version; log bootloader and HW version; fix a bug :esphomepr:`2006` by :ghuser:`Habbie`
- API encryption :esphomepr:`2254` by :ghuser:`OttoWinter`
- Revert "Dont dump legacy fields" :esphomepr:`2259` by :ghuser:`jesserockz`
- pm1006: add support for sending a measurement request :esphomepr:`2214` by :ghuser:`Habbie`
- SGP40 sensor start-up fix :esphomepr:`2178` by :ghuser:`kbx81`
- PMSA003i Update state_class and async :esphomepr:`2216` by :ghuser:`sjtrny`
- Fix a few ESP32-C3 compiler issues :esphomepr:`2265` by :ghuser:`jesserockz`
- sm300d2: Accept (undocumented) 0x80 checksum offset. :esphomepr:`2263` by :ghuser:`poptix`
- Disable automatic usage of SNTP servers from DHCP :esphomepr:`2273` by :ghuser:`oxan`
- Only try compat parsing after regular parsing fails :esphomepr:`2269` by :ghuser:`oxan`
- Suppress excessive warnings about deprecated Fan interfaces :esphomepr:`2270` by :ghuser:`oxan`
- t6615: tolerate sensor dropping commands :esphomepr:`2255` by :ghuser:`jasstrong`
- Fix API socket issues :esphomepr:`2288` by :ghuser:`OttoWinter`
- Bump platformio to 5.2.0 :esphomepr:`2291` by :ghuser:`OttoWinter`
- API Noise logging :esphomepr:`2298` by :ghuser:`OttoWinter`
- Fix api noise explicit reject :esphomepr:`2297` by :ghuser:`OttoWinter`
- Allow simple hostname for sntp servers :esphomepr:`2300` by :ghuser:`jesserockz`
- Fix binary strobe :esphomepr:`2301` by :ghuser:`jesserockz`
- Fix unit of measurement fields for DSMR power consumed/delivered fields :esphomepr:`2304` by :ghuser:`jsuanet`
- Simple time.sleep in place of threading wait due to upgraded zeroconf :esphomepr:`2307` by :ghuser:`jesserockz`
- Fix aioesphomeapi API logger with explicit API port config :esphomepr:`2310` by :ghuser:`mmakaay`
- Start a wifi scan after saving station details :esphomepr:`2315` by :ghuser:`jesserockz`