Changelog - Version 1.12.0

It’s release day! šŸŽ‰ Today I’m happy to release ESPHome 1.12.0. What’s new? A lot of awesome stuff got added! Let me walk you through it:

Before 1.12, it was only possible to transfer data from ESPHome to Home Assistant (with the homeassistant.service call). With 1.12 you get User-defined services, just define a service in your ESPHome file and call it like any other service from HA. All the rest (like variables, data validation, etc) are handled automatically!

ESP32 Camera Support: This is huge. When integrating cameras into your smart home you’d always have to weigh between security and price; cheap cameras often are very insecure (and sometimes even exposed on the web). And even the pricier ones would sometimes phone back to the manufacturer and upload your data. With ESPHome, everything’s 100% local and communicates directly with Home Assistant. It took a bit longer than I initially anticipated to iron out most stability issues, but with 1.12.0 it’s finally here :)

And thanks very much to @puuu for the SDS011 Particulate Matter integration and @mvturnho for the newly added MPR121 Capacitive Touch sensor support!

And as always, this release contains tons of small adjustments (like automatically providing suggestions for validation errors) and bug fixes to make your life easier.

Breaking Changes Copy link to header

  • The timeout_meter and timeout_time options of the ultrasonic sensor have been merged into timeout. (Ultrasonic Distance Sensor)
  • Ultrasonic Sensor no longer works with GPIO16 as echo pin on ESP8266s because the implementation switched to an asynchronous interrupt mode.

Other notable changes: Copy link to header

  • Added calibrate_linear sensor filter for easier calibration of sensors (sensor-filter-calibrate_linear)
  • Added for parameter to binary_sensor.is_on condition.
  • Added streamer_mode, status_use_ping and relative_url options to the Hass.io addon (see addon description).
  • Improved validation. For small typos for config variables similar keys are automatically suggested.
  • Added esp8266_restore_from_flash to esphome section which enables restoring state from flash instead of RTC memory - this allows recovering relay state even after a power cycle.
  • Added ability
  • !secret values are now hidden for config validation.
  • Rotary Encoders have a new min_value and max_value option. (Rotary Encoder Sensor)
  • Fixed OTA not working for ESP32 when BLE enabled.
  • Added a “delete” button in the dashboard interface to delete configuration files.
  • Reworked GPIO interrupts, this will fix a bunch of issues with components that use interrupts (rotary encoder, software uart, remote receiver, …)
  • Allowed the use of newest Arduino Core version for ESP8266: 2.5.0 (not default yet, please try it out on non-critical devices and report if there are no wifi issues)

Release 1.12.1 - March 20 Copy link to header

  • core: Fix homeassistant mqtt discovery for light components :corepr:553 by @puuu
  • esphome: Fix filter_out: nan filer esphome#486
  • docs: Sonoff S20 yaml fix esphome-docs#200 by @BananaPukeh
  • core: Fix WiFi Info Text Sensor :corepr:554
  • core: Fix addressable lights starting white at boot :corepr:556
  • esphome: Fix IPAddress in validate secret esphome#488

Release 1.12.2 - March 31 Copy link to header

  • esphome: Better symlink support under Windows esphome#487 by @glmnet
  • core: Fix WiFi Info sensor for ESP32 :corepr:561
  • core: Revert ultrasonic sensor to non-interrupt mode :corepr:562
  • core: Fix web_server for text_sensors :corepr:567
  • core: Fix ESP8266 cannot OTA after failed OTA attempt :corepr:564
  • core: ESP8266 SDK Core 2.3.0 compat :corepr:563
  • esphome: ESP8266 SDK 2.3.0 compat esphome#490
  • docs: Expand USB flashing, clarify how to report a bug. esphome-docs#204 by @balloob
  • core: Fix dallas on GPIO0 :corepr:568
  • docs: Fix api homeassistant.service docs esphome-docs#209 by @davericher
  • esphome: Upgrade ESPAsyncTCP to 1.2.0 esphome#497
  • core: Upgrade espasynctcp :corepr:576
  • esphome: Fix dashboard wizard unicode esphome#494
  • esphome: Fix text sensor MQTT settings esphome#495
  • core: Split up WiFi ESP32 and ESP8266 implementation :corepr:572
  • core: Fix MCP23017 to work on OUTPUT mode. :corepr:571 by @puerari
  • core: Disable wifi interface on shutdown :corepr:566
  • core: Fix light flashes :corepr:578
  • core: Rewrite PN532 to fix some lowvbat issues :corepr:575
  • core: cse7766 fix :corepr:558 by @brianrjones69
  • esphome: Upgrade docker base image to 1.4.3 esphome#499
  • core: Fix neopixelbus logging causes section type conflict :corepr:579

All changes Copy link to header

  • core: Fix feed_wdt :corepr:520
  • core: Speed up waveshare Epaper :corepr:518
  • esphome: Improve dashboard setup wizard esphome#450
  • core: Add MPR121 support for esphome-core :corepr:517 by @mvturnho
  • esphome: Add MPR121 Capacitive Touch Sensor esphome#449 by @mvturnho
  • core: Add restore state from flash option :corepr:530
  • esphome: Add restore state from flash option esphome#459
  • docs: Add restore state from flash option esphome-docs#181
  • esphome: Automatically hide secrets in validation esphome#455
  • core: Add nextion commands :corepr:523
  • core: Add logic in Output for minimum power setting :corepr:516 by @mtl010957
  • esphome: Add handling for min power output setting esphome#448 by @mtl010957
  • docs: Update output documentation for min_power configuration esphome-docs#167 by @mtl010957
  • esphome: Recommend similar keys for spelling errors esphome#458
  • core: Convert Automation engine to variadic templates :corepr:519
  • core: Add linear calibration filter :corepr:524
  • esphome: Convert automation engine to use variadic templates esphome#452
  • docs: Add linear calibration filter esphome-docs#180
  • core: Add native API User-Defined services :corepr:522
  • esphome: Add native API User-Defined services esphome#453
  • esphome: Add linear calibration sensor filter esphome#454
  • docs: Component reshuffle esphome-docs#183 by @FrengerH
  • docs: Add MPR121 support esphome-docs#176 by @mvturnho
  • esphome: Fix os.symlink on Windows esphome#460
  • esphome: Enable i2c scanning by default esphome#462
  • core: Add rotary encoder min/max value :corepr:534
  • esphome: Add rotary encoder min/max value esphome#463
  • esphome: Fix gain setting for ADS1115 esphome#468 by @Melkor82
  • core: Use clang-format and clang-tidy in CI :corepr:540
  • core: Add GPIO interrupt abstraction :corepr:535
  • core: Add MCP23017 :corepr:537
  • core: Add WiFi/MQTT/API connected condition :corepr:536
  • core: Fix debug statement in ESP32 Hall Sensor :corepr:533 by @emwap
  • core: Remove light mqtt_json warning :corepr:532
  • esphome: Add WiFi/MQTT/API connected condition esphome#465
  • esphome: Rewrite interrupt components esphome#464
  • esphome: Add relative_url, streamer_mode, status_use_ping dashboard options esphome#461
  • esphome: Add MCP23017 esphome#466
  • esphome: Allow Arduino Core 2.5.0 for ESP8266 esphome#469
  • core: Add copy output platform :corepr:542
  • core: Add ‘for’ to binary sensor conditions :corepr:541
  • esphome: Upgrade ESP32 core to 1.0.1 esphome#470
  • core: Add WiFi Info Text Sensor :corepr:543
  • esphome: Add for to binary sensor conditions esphome#471
  • esphome: Add connected condition esphome#474
  • esphome: Add copy output platform esphome#472
  • esphome: Add Wifi info text sensor esphome#473
  • docs: Add text-based sensor example to OLED cookbook entry esphome-docs#190 by @tubalainen
  • docs: H801 Cookbook Edit Language about holding GPIOs during flashing esphome-docs#189 by @2016for
  • docs: Adding manual for Sonoff T1 UK 3 Gang V1.1 esphome-docs#182 by @nnmalex
  • core: Add SDS011 :corepr:538 by @puuu
  • esphome: Support SDS011 component. esphome#467 by @puuu
  • docs: Document SDS011 component esphome-docs#185 by @puuu
  • docs: Add Teckin SP20 (US) example to ‘Generic Sonoff’ page esphome-docs#191 by @mjoshd
  • esphome: Add color to login error for better visibility esphome#478 by @TheZoker
  • core: Fixed: Waveshare 4.2in display timing problem due to high speed SPI u… :corepr:546 by @dirkj
  • docs: Update information on flashing OTA to old ip esphome-docs#193 by @tubalainen
  • docs: NeopixelBus Light: Fix GPIO2 not GPIO3 for uart1 method esphome-docs#194 by @Bierchermuesli
  • docs: Cookbook Guide for Mirabella Genio Smart Bulbs esphome-docs#184 by @cryptelli
  • docs: Improve bme280_environment cookbook for stable climates esphome-docs#149 by @hajdbo
  • core: SDS011: change type of update_interval_min to uint8_t :corepr:545 by @puuu
  • core: Add ESP32 camera support :corepr:544
  • docs: Cookbook Guide for Brilliant / Mirabella Genio Smart Plugs esphome-docs#195 by @cryptelli
  • esphome: Add ESP32 Camera esphome#475
  • docs: Add native API User-Defined services esphome-docs#171 (cherry-picked)
  • docs: BME280 environment micrograms -> grams esphome-docs#198 by @hajdbo
  • esphome: Changes for 1.12 esphome#482 (cherry-picked)
  • core: Fixes for 1.12 :corepr:551 (cherry-picked)
  • core: More changes for 1.12 :corepr:552
  • esphome: More changes for 1.12 esphome#483
  • esphome: Update Hassio base image to 1.4.1 esphome#484

Past Changelogs Copy link to header

CURRENT