Changelog - Version 1.9.0

Beta Releases Text Sensors MQTT Subscribe
Beta Releases Text Sensors MQTT Subscribe
Stepper CSE7766 PMSX003
Stepper CSE7766 PMSX003
esphomeflasher Total Daily Energy MY9231/MY9291 LED driver
esphomeflasher Total Daily Energy MY9231/MY9291 LED driver

It’s time for another release of esphomelib: 1.9.0. This release is quite different from the last one, it doesn’t focus that much on new integrations with a “modest” amount of 7 new integrations. No, most of the development has been focused on improving the core architecture and making the esphomelib ecosystem easier to use. Because that’s my main goal of this project: Providing a great user-experience so that you can focus on building awesome things with DIY hardware!

The features I’m particularly excited about are:

  • esphomeflasher - Experiencing problems flashing esphomelib firmwares using esphomeyaml? No problem, esphomeflasher is a tool designed to make that super easy. Just let esphomeyaml generate the binary and flash from your PC.
  • Over-the-Air Updates have been completely re-written to make them a lot more stable.
  • A lot of work has been put in to provide more context in YAML validation errors. Sometimes, esphomeyaml will even try to give you suggestions for how to fix a validation error!
  • A new release cycle: esphomeyaml now also has a beta release channel kind of like Home Assistant. This helps to iron out the most important bugs before each stable release
  • And of course, lots of stability improvements and bug fixes :)

Thank you very much to everybody who contributed to this release with new code or by reporting bugs!

New Components

New Features

Breaking Changes

  • As part of the rewrite of Over-The-Air updates, the old OTA protocol is incompatible with the new one - But fear not, esphomeyaml still supports the legacy OTA update process. On your first OTA upload with 1.9.0, you will see esphomeyaml try with the new OTA method and fail. After that, esphomeyaml will fall back to the old OTA process and upload correctly (core#204).

  • esphomelib’s naming convention has been made more consistent. If you’re not using any lambdas, everything will still work. However, if you’re using the C++ API, there are a couple of breaking changes:

    For sensors and binary sensors, id(my_sensor).value has been deprecated and id(my_sensor).state should be used instead. Additionally, the syntax for toggling lights and switches through C++ has been changed. Please see the docs#62 changeset for more information (core#231, docs#62, esphome#197)

Release 1.9.1 - November 19

  • lib: Fix RDM6300 not reporting cards core#278
  • lib: Fix SNTP with less than 3 servers core#279
  • lib: Fix update interval log missing time unit core#280
  • lib: Fix CSE7766 spamming logs core#281
  • lib: Fix outdated links core#282
  • yaml: Fix SNTP servers option esphome#237

Release 1.9.2 - November 25

  • lib: Fix crashing when logger not being used core#285
  • lib: Fix template cover spamming logs core#287
  • lib: Improve ESP32 BLE tracker stability core#289
  • lib: Fix sensor filters using C++ undefined behavior core#293

Release 1.9.3 - December 1

All changes

  • docs: Clarify ESP32 BLE Tracker comment docs#42
  • yaml: Add a link to Home Assistant in README esphome#152 by @jonnyair
  • lib: Add a link to Home Assistant in README.md core#184 by @jonnyair
  • docs: Fix time docs 12-hour clock strftime format docs#43
  • lib: Fix ESP32 BLE Presence detection always on core#185
  • lib: Fix LCD display include core#186
  • lib: Fix template switch spamming output core#187
  • lib: Fix using HTU21D for SI7021 core#188
  • lib: Fix components sending invalid state on startup if integration not ready yet core#195
  • lib: Log esphomelib version and compilation time on boot core#189 (new-feature)
  • yaml: Log esphomelib version and compilation time on boot esphome#159 (new-feature)
  • yaml: Fix raw remote receiver esphome#158
  • lib: Add Code of Conduct (Contributor Covenant) core#196
  • lib: Create CONTRIBUTING.md core#197
  • lib: Create issue templates core#198
  • lib: Create pull request template core#199
  • yaml: Create Pull Request Template esphome#172
  • yaml: Create CONTRIBUTING.md esphome#169
  • yaml: Add Code of Conduct (Contributor Covenant) esphome#168
  • yaml: Create issue templates esphome#171
  • docs: Add Code of Conduct (Contributor Covenant) docs#44
  • docs: Create Pull Request Template docs#45
  • yaml: Fix readme broken link esphome#174
  • lib: Fix pulse counter counting inverted on ESP8266 core#200
  • yaml: Add use_build_flags removal notice esphome#173
  • docs: Highlight update_interval gotchas docs#46
  • docs: Add Disqus and cleanup docs#47 (new-feature)
  • lib: Fix PN532 not logging discovered tags core#202
  • yaml: Add Samsung IR protocol esphome#176 by @escoand (new-feature)
  • docs: add samsung ir protocol docs#48 by @escoand (new-feature)
  • lib: Bump FastLED to 3.2.0 core#203
  • yaml: Fix Wifi power_save_mode option esphome#178
  • lib: Fix application sort order core#211
  • docs: Improve pulse counter docs docs#49
  • lib: Fix ESP32 BLE Controller Init core#213
  • lib: Fix Web Server Creating Infinite Print Loop core#214
  • lib: Add TOGGLE payload to more components core#212 (new-feature)
  • lib: ESP8266 Pulse Counter Improve Timing core#205
  • lib: Add MQTT Subscribe Sensor core#193 (new-feature)
  • docs: Add MQTT Subscribe sensor docs#50 (new-feature)
  • yaml: Add MQTT Subscribe sensor esphome#175 (new-feature)
  • yaml: MQTT different log level esphome#167 (new-feature)
  • docs: Add option to have different log level over MQTT docs#51 (new-feature)
  • yaml: Add clean build files command and auto-clean on version change esphome#181 (new-feature)
  • lib: Add power on value to switch core#207 (new-feature)
  • lib: Rework OTA to be more stable core#204 (breaking-change) (new-feature)
  • yaml: Rework OTA to be more stable esphome#177 (new-feature)
  • lib: Fix WiFi not working when GPIO 0 connected core#215
  • lib: Fix MiFlora illuminance reading core#220
  • lib: Remove invalid file headers core#219
  • yaml: Fix config dump time output esphome#184
  • lib: GPIO Switch Rewrite core#217
  • docs: Add power on value to GPIO Switch docs#55 (new-feature)
  • yaml: Decentralize Automation Generator Code esphome#182
  • lib: Add PN532 On Tag Trigger core#226 (new-feature)
  • lib: Add text sensors core#194 (new-feature)
  • docs: Add Text sensors docs#52 (new-feature)
  • lib: Fix PCF8574 assert. core#223 by @lobradov
  • lib: Unify Xiaomi MiJia&MiFlora Implementations core#225
  • docs: Unify xiaomi implementations docs#56
  • yaml: Unify Xiaomi implementations esphome#188
  • lib: Add CSE7766 for Sonoff Pow R2 core#227 (new-feature)
  • docs: Add CSE7766 for Sonoff Pow R2 docs#59 (new-feature)
  • docs: Add PN532 On Tag Trigger docs#57 (new-feature)
  • yaml: Add CSE776 for Sonoff Pow R2 esphome#190 (new-feature)
  • yaml: Add Text Sensors esphome#166 (new-feature)
  • yaml: Add PN532 On Tag Trigger esphome#189 (new-feature)
  • lib: Add MQTT publish JSON action and subscribe JSON trigger core#230 (new-feature)
  • yaml: Add MQTT publish JSON action and subscribe JSON trigger esphome#193 (new-feature)
  • docs: Add MQTT publish JSON action and subscribe JSON trigger docs#60 (new-feature)
  • lib: Add PMSX003 Particulate Matter Sensor core#229 (new-feature)
  • docs: Add PMSX003 Particulate Matter Sensor docs#58 (new-feature)
  • lib: Add update component action and scripts core#232 (new-feature)
  • docs: Add update component action and scripts docs#61 (new-feature)
  • lib: Implement HASS device registry for MQTT components core#233 (new-feature)
  • lib: Add FastLED color correction option core#234 (new-feature)
  • docs: Add FastLED color correction option docs#64 (new-feature)
  • yaml: Add update component action and scripts esphome#196 (new-feature)
  • yaml: Add PMSX003 Particulate Matter Sensor esphome#192 (new-feature)
  • yaml: Add FastLED color correction option esphome#200 (new-feature)
  • yaml: Fix triggers being interpreted as a sequence of automations esphome#199
  • yaml: Fix value range trigger :expressionless: esphome#201
  • lib: Make naming convention consistent core#231 (breaking-change)
  • docs: Make naming convention consistent docs#62 (breaking-change)
  • docs: Fix some typos docs#65
  • yaml: Improve API naming convention consistency esphome#197 (breaking-change)
  • yaml: Fix some typos esphome#202
  • docs: Add logger.log action docs#63 (new-feature)
  • yaml: Add logger.log action esphome#198 (new-feature)
  • docs: Fix template sensor docs docs#66
  • docs: Fix text sensor outdated API docs docs#70
  • docs: Add Stepper Support docs#68 (new-feature)
  • lib: Add stepper motor support core#239 (new-feature)
  • lib: Add send_first_at option to sliding window sensor filter core#240 (new-feature)
  • docs: Add send_first_at option to sliding window sensor filter docs#69 (new-feature)
  • lib: Fix display line drawing algorithm core#241
  • lib: Fix availability calculation core#242
  • yaml: Add Stepper Motor Support esphome#206 (new-feature)
  • yaml: Add send_first_at option to sliding window sensor filter esphome#207 (new-feature)
  • docs: Switch example to Dehumidifier, minor grammar/puncuation docs#67 by @rorpage
  • docs: Tiny typo fix. docs#73 by @corbanmailloux
  • yaml: Auto-Decode stacktraces esphome#214 (new-feature)
  • docs: Fix a broken link to setting up a BLE tracker. docs#72 by @corbanmailloux
  • yaml: Add generate home assistant config command esphome#208 (new-feature)
  • yaml: Update Gitlab Build Script esphome#215
  • lib: Fix status binary sensor always reporting false internally core#257
  • yaml: Fix HLW8012 Voltage Divider option not being added to source esphome#224
  • lib: Fix HLW8012 Initial Value Reporting core#254
  • lib: Clean up Time API core#253
  • yaml: Better typing to components esphome#225
  • lib: Support uploading OTA updates over web server core#255 (new-feature)
  • lib: Save and Restore states from RTC memory core#258 (new-feature)
  • docs: Revert add power_on_value to gpio switch docs#78
  • lib: Improve default log levels and log sources core#264
  • lib: OTA Read back server acknowledgement core#263
  • lib: Add Multi Click Trigger to binary sensor core#262 (new-feature)
  • docs: Add binary sensor on multi click trigger docs#77 (new-feature)
  • lib: ESP32 BLE Release Bluetooth Classic Memory core#261
  • yaml: Add restore state option to template switch esphome#222
  • docs: Advertise esphomeflasher docs#76 (new-feature)
  • docs: Replace table generator with custom RST directive docs#75
  • yaml: Clean up time API esphome#221
  • yaml: Revert Add power on value to GPIO switch esphome#223
  • yaml: Add binary sensor multi click trigger esphome#226 (new-feature)
  • lib: Add Total Daily Energy Sensor core#256 (new-feature)
  • yaml: Add total daily energy sensor esphome#220 (new-feature)
  • docs: Add total daily energy sensor docs#79
  • lib: Introduce new setup phase: “dump config” to allow fully-offline operation core#267
  • yaml: Let esphomeyaml know about class inheritance esphome#229
  • docs: ESP32 deep sleep wake up multiple pins docs#81
  • yaml: Deep Sleep Wake Up From Multiple Pins esphome#230
  • lib: Deep Sleep Multi Wakeup core#268
  • lib: MY9231/MY9291 LED driver support core#266 by @puuu (new-feature)
  • yaml: Add MY9231 support esphome#227 by @puuu (new-feature)
  • docs: MY9231/MY9291 LED driver documentation docs#80 by @puuu (new-feature)
  • docs: SEO Optimization docs#82

Past Changelogs