diff --git a/Doxygen b/Doxygen index a040e2b49..b57e22baa 100644 --- a/Doxygen +++ b/Doxygen @@ -38,7 +38,7 @@ PROJECT_NAME = "ESPHome" # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = 2022.6.3 +PROJECT_NUMBER = 2022.8.0b1 # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a diff --git a/Makefile b/Makefile index e77437e6f..6ac329968 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ ESPHOME_PATH = ../esphome -ESPHOME_REF = 2022.6.3 +ESPHOME_REF = 2022.8.0b1 .PHONY: html html-strict cleanhtml deploy help live-html Makefile netlify netlify-api api netlify-dependencies svg2png copy-svg2png minify diff --git a/_static/changelog-2022.8.0.png b/_static/changelog-2022.8.0.png new file mode 100644 index 000000000..5c45baeeb Binary files /dev/null and b/_static/changelog-2022.8.0.png differ diff --git a/_static/version b/_static/version index 0fb73964d..4715f73e3 100644 --- a/_static/version +++ b/_static/version @@ -1 +1 @@ -2022.6.3 \ No newline at end of file +2022.8.0b1 \ No newline at end of file diff --git a/changelog/2022.8.0.rst b/changelog/2022.8.0.rst new file mode 100644 index 000000000..3fd816f7a --- /dev/null +++ b/changelog/2022.8.0.rst @@ -0,0 +1,137 @@ +ESPHome 2022.8.0 - 17th August 2022 +=================================== + +.. seo:: + :description: Changelog for ESPHome 2022.8.0. + :image: /_static/changelog-2022.8.0.png + :author: Jesse Hills + :author_twitter: @jesserockz + +.. imgtable:: + :columns: 3 + + DAC7678, components/output/dac7678, dac7678.svg + Sprinkler, components/sprinkler, sprinkler-variant.svg + Feedback Cover, components/cover/feedback, feedback_cover.svg + SMT100, components/sensor/smt100, smt100.jpg, Moisture & Temperature + Whynter IR Climate, components/climate/climate_ir, air-conditioner-ir.svg + + +Full list of changes +-------------------- + +New Components +^^^^^^^^^^^^^^ + +- DAC7678 support :esphomepr:`3441` by :ghuser:`NickB1` (new-integration) +- Add support for SMT100 Soil Moisture Sensor :esphomepr:`3654` by :ghuser:`piechade` (new-integration) +- Adding support for Whynter ARC-14S/SH Air Conditioners :esphomepr:`3641` by :ghuser:`aeonsablaze` (new-integration) +- Sprinkler controller component :esphomepr:`2249` by :ghuser:`kbx81` (new-integration) +- Create feedback cover component :esphomepr:`3253` by :ghuser:`ianchi` (new-integration) + +Breaking Changes +^^^^^^^^^^^^^^^^ + +- Remove min_save_interval from intergration and total_daily_energy :esphomepr:`3498` by :ghuser:`jesserockz` (breaking-change) +- Rework NaN handling in sensor filters :esphomepr:`3610` by :ghuser:`DAVe3283` (breaking-change) +- Extend ST7789V component to support additional displays :esphomepr:`3651` by :ghuser:`kbx81` (breaking-change) +- Refactor BedJet climate into Hub component :esphomepr:`3522` by :ghuser:`jhansche` (breaking-change) + +All changes +^^^^^^^^^^^ + +- Refactor vl53l0x to remove code from header. :esphomepr:`3536` by :ghuser:`RoboMagus` +- Fix modbus user-defined function handling :esphomepr:`3527` by :ghuser:`gazoodle` +- Language schema 202204 :esphomepr:`3492` by :ghuser:`glmnet` +- Fix / Reverse order shutdown :esphomepr:`3585` by :ghuser:`RoboMagus` +- RestoringGlobalsComponent: Store value on shutdown :esphomepr:`3586` by :ghuser:`RoboMagus` +- Map LOLIN C3 mini board pins :esphomepr:`3587` by :ghuser:`mateusdemboski` +- Bump platformio to 6.0.2 :esphomepr:`3566` by :ghuser:`jesserockz` +- Bump pylint from 2.13.9 to 2.14.3 :esphomepr:`3589` by :ghuser:`dependabot[bot]` +- DAC7678 support :esphomepr:`3441` by :ghuser:`NickB1` (new-integration) +- Correcting ESP32 flash save/load key calculation algorithm :esphomepr:`3416` by :ghuser:`cinadr` +- Bump aioesphomeapi from 10.8.2 to 10.10.0 :esphomepr:`3590` by :ghuser:`dependabot[bot]` +- Do two substitutions passes to allow substitutions inside substitutions :esphomepr:`3583` by :ghuser:`jesserockz` +- Update actions :esphomepr:`3592` by :ghuser:`wrt54g` +- Add github-actions to dependabot :esphomepr:`3595` by :ghuser:`jesserockz` +- Fix some typos found by codespell :esphomepr:`3598` by :ghuser:`misery` +- #3358 Correct temperature validity detection issue in some conditions of pu… :esphomepr:`3545` by :ghuser:`Benoit3` +- Remove min_save_interval from intergration and total_daily_energy :esphomepr:`3498` by :ghuser:`jesserockz` (breaking-change) +- Bump zeroconf from 0.38.4 to 0.38.7 :esphomepr:`3562` by :ghuser:`dependabot[bot]` +- fix EDict to dict mapping in helpers.py :esphomepr:`3599` by :ghuser:`jpeletier` +- Fix slow_pwm output glitch :esphomepr:`3601` by :ghuser:`marshn` +- Bump pyupgrade from 2.32.1 to 2.34.0 :esphomepr:`3591` by :ghuser:`dependabot[bot]` +- Bump black from 22.3.0 to 22.6.0 :esphomepr:`3613` by :ghuser:`dependabot[bot]` +- Bump colorama from 0.4.4 to 0.4.5 :esphomepr:`3614` by :ghuser:`dependabot[bot]` +- Bump pylint from 2.14.3 to 2.14.4 :esphomepr:`3617` by :ghuser:`dependabot[bot]` +- Bump pytest-mock from 3.7.0 to 3.8.1 :esphomepr:`3616` by :ghuser:`dependabot[bot]` +- Update dfplayer condition function name :esphomepr:`3619` by :ghuser:`dab0g` +- Added more sensor device classes :esphomepr:`3624` by :ghuser:`lal12` +- Improvement pipsolar crc :esphomepr:`3316` by :ghuser:`andreashergert1984` +- Fix configuration constants in core. :esphomepr:`3652` by :ghuser:`RoboMagus` +- FIX: NVS preferences being written even if unchanged :esphomepr:`3647` by :ghuser:`jpeletier` +- Add 'set_total_pulses' action to 'pulse_counter' sensor. :esphomepr:`3640` by :ghuser:`RoboMagus` +- add option to publish initial state of binary sensors :esphomepr:`3636` by :ghuser:`ssieb` +- update packages: nginx-light-1.18.0-6.1+deb11u2 nano-5.4-2+deb11u1 :esphomepr:`3631` by :ghuser:`peterg79` +- Add support for SMT100 Soil Moisture Sensor :esphomepr:`3654` by :ghuser:`piechade` (new-integration) +- Rework NaN handling in sensor filters :esphomepr:`3610` by :ghuser:`DAVe3283` (breaking-change) +- Remove deprecated adc init call. :esphomepr:`3667` by :ghuser:`ssieb` +- List webserver service on MDNS if enabled. :esphomepr:`3662` by :ghuser:`RoboMagus` +- Show changes from python linting :esphomepr:`3677` by :ghuser:`jesserockz` +- dalybms: support changing the address :esphomepr:`3676` by :ghuser:`ssieb` +- Upgrade rweather/Crypto from 0.2.0 to 0.4.0 :esphomepr:`3593` by :ghuser:`sybrenstuvel` +- Allow GPIO20 for ESP32 :esphomepr:`3680` by :ghuser:`ashald` +- Remove old unused code in mcp23xxx_base :esphomepr:`3685` by :ghuser:`jesserockz` +- Adding option to report signal strength on pvvx_mithermometer :esphomepr:`3688` by :ghuser:`doolbneerg` +- Pass optional args to 'new_Pvariable' when creating new entities :esphomepr:`3690` by :ghuser:`RoboMagus` +- fix sx1509 use of pullup and pulldown :esphomepr:`3689` by :ghuser:`ssieb` +- Add a soft reset in setup() for bme280. :esphomepr:`3615` by :ghuser:`dbaarda` +- Add get_ap() method to WiFi :esphomepr:`3684` by :ghuser:`anatoly-savchenkov` +- Extend ST7789V component to support additional displays :esphomepr:`3651` by :ghuser:`kbx81` (breaking-change) +- Fix panic abort when BLEClient reconnects :esphomepr:`3594` by :ghuser:`dentra` +- Introduces ble_client.ble_write Action :esphomepr:`3398` by :ghuser:`rbaron` +- Add helpers to switch python for schema and codegen :esphomepr:`3693` by :ghuser:`jesserockz` +- Refactor BedJet climate into Hub component :esphomepr:`3522` by :ghuser:`jhansche` (breaking-change) +- Added support for setting the current animation frame :esphomepr:`3681` by :ghuser:`davestubbs` +- Adding support for Whynter ARC-14S/SH Air Conditioners :esphomepr:`3641` by :ghuser:`aeonsablaze` (new-integration) +- Sprinkler controller component :esphomepr:`2249` by :ghuser:`kbx81` (new-integration) +- add gradient color :esphomepr:`3687` by :ghuser:`nielsnl68` +- [Nextion] Add on_page trigger :esphomepr:`3673` by :ghuser:`anatoly-savchenkov` +- Bump pyupgrade from 2.34.0 to 2.37.3 :esphomepr:`3670` by :ghuser:`dependabot[bot]` +- Bump aioesphomeapi from 10.10.0 to 10.11.0 :esphomepr:`3669` by :ghuser:`dependabot[bot]` +- Create feedback cover component :esphomepr:`3253` by :ghuser:`ianchi` (new-integration) +- Bump pytest-asyncio from 0.18.3 to 0.19.0 :esphomepr:`3695` by :ghuser:`dependabot[bot]` +- Bump zeroconf from 0.38.7 to 0.39.0 :esphomepr:`3694` by :ghuser:`dependabot[bot]` +- Bump pytest-mock from 3.8.1 to 3.8.2 :esphomepr:`3622` by :ghuser:`dependabot[bot]` +- Bump flake8 from 4.0.1 to 5.0.4 :esphomepr:`3703` by :ghuser:`dependabot[bot]` +- Bump pylint from 2.14.4 to 2.14.5 :esphomepr:`3697` by :ghuser:`dependabot[bot]` +- Add priority to on_shutdown trigger :esphomepr:`3644` by :ghuser:`RoboMagus` + +Past Changelogs +--------------- + +- :doc:`2022.6.0` +- :doc:`2022.5.0` +- :doc:`2022.4.0` +- :doc:`2022.3.0` +- :doc:`2022.2.0` +- :doc:`2022.1.0` +- :doc:`2021.12.0` +- :doc:`2021.11.0` +- :doc:`2021.10.0` +- :doc:`2021.9.0` +- :doc:`2021.8.0` +- :doc:`v1.20.0` +- :doc:`v1.19.0` +- :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` diff --git a/changelog/index.rst b/changelog/index.rst index b395ce5f6..ff1d3bebd 100644 --- a/changelog/index.rst +++ b/changelog/index.rst @@ -2,7 +2,7 @@ Changelog ========= .. redirect:: - :url: /changelog/2022.6.0.html + :url: /changelog/2022.8.0.html .. toctree:: :glob: diff --git a/components/binary_sensor/index.rst b/components/binary_sensor/index.rst index 97161a2a1..8dd0a8870 100644 --- a/components/binary_sensor/index.rst +++ b/components/binary_sensor/index.rst @@ -60,6 +60,8 @@ Advanced options: - **disabled_by_default** (*Optional*, boolean): If true, then this entity should not be added to any client's frontend, (usually Home Assistant) without the user manually enabling it (via the Home Assistant UI). Requires Home Assistant 2021.9 or newer. Defaults to ``false``. +- **publish_initial_state** (*Optional*, boolean): If true, then the sensor will publish its initial state at boot or when + HA first connects, depending on the platform. This means that any applicable triggers will be run. Defaults to ``false``. - **entity_category** (*Optional*, string): The category of the entity. See https://developers.home-assistant.io/docs/core/entity/#generic-properties for a list of available options. Requires Home Assistant 2021.11 or newer. diff --git a/components/ble_client.rst b/components/ble_client.rst index a846ed24e..00e4b385e 100644 --- a/components/ble_client.rst +++ b/components/ble_client.rst @@ -91,6 +91,34 @@ This automation is triggered when the client disconnects from a BLE device. - lambda: |- ESP_LOGD("ble_client_lambda", "Disconnected from BLE device"); +.. _ble_client-ble_write_action: + +``ble_client.ble_write`` Action +------------------------------- + +This action triggers a write to a specified BLE characteristic. The write is attempted in +a best-effort fashion and will only succeed if the `ble_client`'s connection has been +established and the peripheral exposes the expected BLE service and characteristic. + +Example usage: + +.. code-block:: yaml + + ble_client: + - mac_address: 11:22:33:44:55:66 + id: my_ble_client + + switch: + - platform: template + name: "My Switch" + turn_on_action: + - ble_client.ble_write: + id: my_ble_client + service_uuid: F61E3BE9-2826-A81B-970A-4D4DECFABBAE + characteristic_uuid: 6490FAFE-0734-732C-8705-91B653A081FC + # List of bytes to write. + value: [0x01, 0xab, 0xff] + BLE Overview ------------ This section gives a brief overview of the Bluetooth LE architecture diff --git a/components/climate/bedjet.rst b/components/climate/bedjet.rst index 78b15134a..e7e38abcc 100644 --- a/components/climate/bedjet.rst +++ b/components/climate/bedjet.rst @@ -5,8 +5,8 @@ BedJet :description: Instructions for setting up a BedJet climate device. :image: bedjet.png -The ``bedjet`` climate platform creates a climate device which can be used to control -a BedJet V3 Climate Comfort Sleep System. +The ``bedjet`` component allows you to communicate with a BedJet V3 Climate Comfort +Sleep System. This component supports the following functionality: @@ -16,36 +16,40 @@ This component supports the following functionality: - Start one of the saved memory presets, including "Biorhythm" programs - Show the current status of the BedJet -This platform uses the BLE peripheral on an ESP32, so you also need to enable +This component uses the BLE peripheral on an ESP32, so you also need to enable this component. Please see the :doc:`/components/ble_client` docs for how to discover the MAC address of your BedJet device, or you can find the list of paired MAC addresses in the "DEVICE LIST" section of the BedJet mobile application. +Component/Hub +------------- + +This component is a global hub that maintains the connection to the BedJet device +and delegates status updates to individual platform components. + .. code-block:: yaml - ble_client: - - mac_address: 11:22:33:aa:bb:cc - id: ble_bedjet + esp32_ble_tracker: - climate: - - platform: bedjet - id: my_bedjet_fan - name: "My BedJet Fan" - ble_client_id: ble_bedjet + ble_client: + - mac_address: C4:4F:33:00:00:01 + id: bedjet_ble_id1 + + bedjet: + - id: bedjet_1 + ble_client_id: bedjet_ble_id1 Configuration variables: ------------------------- +************************ - **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. -- **name** (**Required**, string): The name of the climate device. - **ble_client_id** (**Required**, :ref:`config-id`): The ID of the BLE Client. - **time_id** (*Optional*, :ref:`config-id`): The ID of a :ref:`Time Component