Version 1.7.0 ============= .. seo:: :description: Changelog for esphomelib version 1.7.0. :author: Otto Winter :author_twitter: @OttoWinter_ Wow, what a week! As you may know, I wrote a blog post on the `Home Assistant web site `__ and since then, the amount of esphomelib users has grown sixfold according to the number of GitHub clones! Version 1.7.0 of esphomelib brings with it (again) a lot of awesome features. One I'm particularly excited about is the new ESP32 BLE Beacon, with it I can finally track reliably whether my devices are home or not without wasting too much battery. But also the new remote receivers and remote transmitters have allowed me to add about ~15 433MHz lights into Home Assistant. In the next couple of weeks I unfortunately won't be able to "innovate" as quickly as in the previous weeks, as I will be travelling a lot (and enjoying my vacation 😎), so don't expect too many awesome features 😸 .. imgtable:: ESP32 BLE Beacon, components/esp32_ble_beacon, bluetooth.svg Status LED, components/status_led, led-on.svg WiFi Signal Strength, components/sensor/wifi_signal, network-wifi.svg Duty Cycle Sensor, components/sensor/duty_cycle, percent.svg Pulse Counter for ESP8266, components/sensor/pulse_counter, pulse.svg Remote Transmitter, components/remote_transmitter, remote.svg Remote Receiver, components/remote_receiver, remote.svg New Components ************** - New :doc:`WiFi signal strength sensor ` by `@brandond `__. So now you can monitor how strong the WiFi signal is for your node đŸ“ļ - You can now create a BLE iBeacon with your ESP32s using the new :doc:`BLE Beacon component `. - esphomelib has finally gained support for a :doc:`status LED `. Now you can quickly identify if everything is OK with your ESP with a quick look at this LED. Happy |blinking|! .. |blinking| raw:: html blinking - The :doc:`pulse counter sensor ` has been back-ported to the ESP8266, so now you can observe the number of pulses and frequency on any pin đŸ”ĸ - A new :doc:`duty cycle sensor ` has been added, allowing you to measure how much of the time a specific pin is HIGH or LOW. Can for example be used to detect if a status LED on an external device is blinking or permanently on. - The new :doc:`remote receiver ` and :doc:`remote transmitter ` components now allows you to use any 433MHz receivers and senders with ESPHome. Currently, you will need to use the ``raw`` data as described in this guide, but in the future more protocols will be supported out of the box. New Features ************ - While all :ref:`automations ` were previously already performed on the ESP itself, they only triggered when an active WiFi and MQTT connection existed. Large parts of the WiFi and MQTT clients has now been rewritten to allow for automations to be executed asynchronously, while the device is still connecting to WiFi. - The Hass.io add-on now has a new ``password`` option with which you can secure your installation. See :doc:`/guides/getting_started_hassio`. 🔒 - Binary Sensors now have filters too. They can now be used to debounce any binary sensor and do some more complicated actions using lambdas. See :ref:`binary_sensor-filters`. ⛹ī¸â€ - All components can now be flagged ``internal``. Doing so will prevent them from being represented in the front-end (like MQTT). Useful for :ref:`on-device automations `. See 😎 - The :doc:`/components/deep_sleep` now has a ``wakeup_pin_mode`` option for the ESP32. This option can be used to tell esphomelib what to do if the wakeup pin is already in the wakeup level when attempting to enter deep sleep. 🛌 - There are two new triggers available now: :ref:`esphomeyaml.on_boot ` and :ref:`esphomeyaml.on_shutdown ` with which you can do some advanced cleanup/setup on boot and shutdown of the node. - All Hass.io add-on builds have now been more or less completely automated using a private Gitlab server. You can find all the new docker files `here `__. - Added a new ``build_path`` option in the ``esphomeyaml`` section with which you can customize where esphomeyaml stores the platformio project files. See :doc:`/components/esphome`. Breaking Changes **************** - Fixed the :doc:`SHT3x-D ` component and removed the ``accuracy`` parameter. The accuracy now defaults to ``HIGH``. - The ``inverted`` option of binary sensors has been moved into the ``filters:`` section. So instead of .. code-block:: yaml binary_sensor: - platform: ... # ... inverted: True you would now write: .. code-block:: yaml binary_sensor: - platform: ... # ... filters: - invert: - The ``esp32_ble`` component and platform have been renamed to :doc:`esp32_ble_tracker ` in order to make the naming clearer with the new :doc:`esp32_ble_beacon ` component. - The ``receive_timeout`` option has been removed from the :doc:`i2c component ` as it turns out it didn't actually do anything. - The ``ir_transmitter`` component has been renamed to :doc:`remote_transmitter ` as it now works with all kinds of protocols, not just infrared-based ones. - The ``pull_mode`` option of the :doc:`Pulse Counter ` has been removed, please use the :ref:`Pin Schema ` now instead. Additionally, the ``internal_filter`` option now only accepts :ref:`time ` units. Other Contributions ------------------- (Not in any order and probably missed some, still figuring this changelog stuff out...) - Make sure logs after upload works when using explicit OTA. (`esphomeyaml/#42`_) by `@aequitas`_ - Fix deprecation of board_flash_mode parameter (`esphomeyaml/#41`_) by `@aequitas`_ - Support specifying hostname/ip as --upload-port (`esphomeyaml/#36`_) by `@aequitas`_ - DHT11 sensor doesn't work with ESPHome (`esphomelib/#88`_) by `@ayavilevich`_ - tsl2561: wrong i2c function for channel 1 (`esphomelib/#81`_) by `@schumar`_ - No need to wait after Wire.requestFrom(). (`esphomelib/#80`_) by `@Koepel`_ - I2CComponent::write_byte_16 writes 0 words (`esphomelib/#78`_) by `@schumar`_ - Minor update to the feature section (`esphomelib/#71`_) by `@fabaff`_ - Fix pin number (`esphomelib/#70`_) by `@fabaff`_ - Fix #55 - Action._next not initialized to nullptr (`esphomelib/#57`_) by `@brandond`_ - Add workaround for out of space esp8266 ota update. (`esphomedocs/#12`_) by `@aequitas`_ - Add cookbook for dual relay cover (`esphomedocs/#10`_) by `@r-jordan`_ - Correct output pin declaration in S20 device guide example. (`esphomedocs/#9`_) by `@r-jordan`_ - Remove BMP280 (doesn't work) (`esphomedocs/#8`_) by `@fabaff`_ - Passing inverted to output should be valid, but does not work, use â€Ļ (`esphomedocs/#7`_) by `@aequitas`_ - Make the example configuration entry copy&paste-friendly (`esphomedocs/#6`_) by `@fabaff`_ - Minor formatting tweaks. (`esphomedocs/#4`_) by `@Landrash`_ - Details about Sonoff basic (`esphomedocs/#3`_) by `@fabaff`_ - Add missing module (`esphomedocs/#2`_) by `@fabaff`_ - Fix unit name (`esphomedocs/#1`_) by `@fabaff`_ .. _esphomeyaml/#36: https://github.com/OttoWinter/esphomeyaml/pull/36 .. _esphomeyaml/#42: https://github.com/OttoWinter/esphomeyaml/pull/42 .. _esphomeyaml/#41: https://github.com/OttoWinter/esphomeyaml/pull/41 .. _esphomelib/#88: https://github.com/OttoWinter/esphomeyaml/pull/88 .. _esphomelib/#81: https://github.com/OttoWinter/esphomeyaml/pull/81 .. _esphomelib/#80: https://github.com/OttoWinter/esphomeyaml/pull/80 .. _esphomelib/#78: https://github.com/OttoWinter/esphomeyaml/pull/78 .. _esphomelib/#71: https://github.com/OttoWinter/esphomeyaml/pull/71 .. _esphomelib/#70: https://github.com/OttoWinter/esphomeyaml/pull/70 .. _esphomelib/#57: https://github.com/OttoWinter/esphomeyaml/pull/57 .. _esphomedocs/#12: https://github.com/OttoWinter/esphomeyaml/pull/12 .. _esphomedocs/#10: https://github.com/OttoWinter/esphomeyaml/pull/10 .. _esphomedocs/#9: https://github.com/OttoWinter/esphomeyaml/pull/9 .. _esphomedocs/#8: https://github.com/OttoWinter/esphomeyaml/pull/8 .. _esphomedocs/#7: https://github.com/OttoWinter/esphomeyaml/pull/7 .. _esphomedocs/#6: https://github.com/OttoWinter/esphomeyaml/pull/6 .. _esphomedocs/#4: https://github.com/OttoWinter/esphomeyaml/pull/4 .. _esphomedocs/#3: https://github.com/OttoWinter/esphomeyaml/pull/3 .. _esphomedocs/#2: https://github.com/OttoWinter/esphomeyaml/pull/2 .. _esphomedocs/#1: https://github.com/OttoWinter/esphomeyaml/pull/1 .. _@aequitas: https://github.com/aequitas .. _@ayavilevich: https://github.com/ayavilevich .. _@schumar: https://github.com/schumar .. _@Koepel: https://github.com/Koepel .. _@fabaff: https://github.com/fabaff .. _@brandond: https://github.com/brandond .. _@r-jordan: https://github.com/r-jordan .. _@Landrash: https://github.com/Landrash And last but not least, check out this awesome video by `The Hook Up `__ for using esphomeyaml to create a simple wireless doorbell: .. raw:: html