diff --git a/changelog/2023.2.0.rst b/changelog/2023.2.0.rst index fe3afa773..1d8bbc6be 100644 --- a/changelog/2023.2.0.rst +++ b/changelog/2023.2.0.rst @@ -73,6 +73,13 @@ Release 2023.2.3 - February 20 - Fix MQTT discovery for climate after preset implementation :esphomepr:`4451` by :ghuser:`jmichiel` - Update distribution manifest :esphomepr:`4459` by :ghuser:`jesserockz` +Release 2023.2.4 - February 23 +------------------------------ + +- BL0939 state_class set for energy sensors :esphomepr:`4463` by :ghuser:`konsulten` +- fix wiegand tag parity :esphomepr:`4476` by :ghuser:`ssieb` +- Fix multiple remote_receivers with triggers :esphomepr:`4477` by :ghuser:`jesserockz` + Full list of changes -------------------- diff --git a/components/climate/anova.rst b/components/climate/anova.rst index a05daf1c9..0cfa3eac7 100644 --- a/components/climate/anova.rst +++ b/components/climate/anova.rst @@ -26,7 +26,7 @@ You cannot use the Anova app over BLE whilst this component is connected, you should disconnect it first. To setup a (dis-)connect switch, see :doc:`/components/switch/ble_client`. You need to specify unit_of_measurement as 'c' or 'f'. This ensures the stick's display -uses the unit you intend. All values within ESPHome are converted to Celcius so you may +uses the unit you intend. All values within ESPHome are converted to Celsius so you may need to do conversion again within the frontend if you use Fahrenheit. .. warning:: diff --git a/components/climate/index.rst b/components/climate/index.rst index b5d6e408a..3b57936e3 100644 --- a/components/climate/index.rst +++ b/components/climate/index.rst @@ -20,7 +20,7 @@ and can be put in different modes like ``HEAT``, ``COOL``, ``HEAT_COOL`` or ``OF Base Climate Configuration -------------------------- -All climate platforms in ESPHome inherit from the climate configuration schema. +All climate platforms in ESPHome inherit from the climate configuration schema. In ESPHome, ``°C`` is assumed for all temperature values. Some platforms allow conversion or setting in ``°F``, this is specified separately. .. code-block:: yaml diff --git a/components/esphome.rst b/components/esphome.rst index c5a25ac38..bbd4781d2 100644 --- a/components/esphome.rst +++ b/components/esphome.rst @@ -29,6 +29,9 @@ Configuration variables: characters, digits and hyphens, and can be at most 24 characters long by default, or 31 characters long if ``name_add_mac_suffix`` is ``false``. See :ref:`esphome-changing_node_name`. +- **friendly_name** (*Optional*, string): This is the name sent to the frontend. It is used + by Home Assistant as the integration name, device name, and is automatically prefixed to entities + where necessary. Advanced options: @@ -318,10 +321,16 @@ The same procedure can be done for changing the static IP of a device. Adding the MAC address as a suffix to the device name ----------------------------------------------------- -Using ``name_add_mac_suffix`` allows the user to compile a single binary file to flash -many of the same device and they will all have unique names/hostnames. -Note that you will still need to create an individual YAML config file if you want to -OTA update the devices in the future. +Using ``name_add_mac_suffix`` allows :doc:`creators ` to +provision multiple devices at the factory with a single firmware and still +have unique identification for customer installs. + +.. note:: + + End users will need to create an individual YAML config file if they want to OTA update the + devices in the future. Creators can facilitate this process by providing ``dashboard_import`` URL + for end users. This allows them to easily update their devices as new features are made available + upstream. .. _esphome-creators_project: diff --git a/components/gps.rst b/components/gps.rst index b674cf1ff..a391a2c46 100644 --- a/components/gps.rst +++ b/components/gps.rst @@ -58,31 +58,31 @@ Configuration variables: - **longitude** (*Optional*): Include the Longitude as a sensor - - **name** (**Required**, string): The name to give the latitude sensor + - **name** (**Required**, string): The name to give the longitude sensor - **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas. - All other options from :ref:`Sensor `. - **speed** (*Optional*): Include the measured speed as a sensor - - **name** (**Required**, string): The name to give the latitude sensor + - **name** (**Required**, string): The name to give the speed sensor - **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas. - All other options from :ref:`Sensor `. - **course** (*Optional*): Include the measured course as a sensor - - **name** (**Required**, string): The name to give the latitude sensor + - **name** (**Required**, string): The name to give the course sensor - **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas. - All other options from :ref:`Sensor `. - **altitude** (*Optional*): Include the measured altitude as a sensor - - **name** (**Required**, string): The name to give the latitude sensor + - **name** (**Required**, string): The name to give the altitude sensor - **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas. - All other options from :ref:`Sensor `. - **satellites** (*Optional*): Include the number of tracking satellites being used as a sensor - - **name** (**Required**, string): The name to give the latitude sensor + - **name** (**Required**, string): The name to give the tracking satellites sensor - **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas. - All other options from :ref:`Sensor `. diff --git a/components/mqtt.rst b/components/mqtt.rst index 6ca647a19..3a415e461 100644 --- a/components/mqtt.rst +++ b/components/mqtt.rst @@ -149,7 +149,6 @@ discovery in your Home Assistant configuration with the following: # Example Home Assistant configuration.yaml entry mqtt: broker: ... - discovery: true And that should already be it 🎉 All devices defined through ESPHome should show up automatically in the entities section of Home Assistant. @@ -308,7 +307,6 @@ Also make sure to change the ``port`` of the mqtt broker. Most brokers use port mqtt: broker: test.mymqtt.local port: 8883 - discovery: true discovery_prefix: ${mqtt_prefix}/homeassistant log_topic: ${mqtt_prefix}/logs # Evaluate carefully skip_cert_cn_check @@ -353,7 +351,6 @@ MQTT can have some overrides for specific options. name: "Component Name" # Optional variables: retain: true - discovery: true availability: topic: livingroom/status payload_available: online diff --git a/components/select/modbus_controller.rst b/components/select/modbus_controller.rst index bbdaa79f0..4cc9244a6 100644 --- a/components/select/modbus_controller.rst +++ b/components/select/modbus_controller.rst @@ -40,7 +40,7 @@ Configuration variables: - ``U_DWORD_R`` (unsigned 32 bit integer from 2 registers low word first) - ``S_DWORD_R`` (signed 32 bit integer from 2 registers low word first) - ``U_QWORD`` (unsigned 64 bit integer from 4 registers = 64bit) - - ``S_QWORD`` (unsigned 64 bit integer from 4 registers = 64bit) + - ``S_QWORD`` (signed 64 bit integer from 4 registers = 64bit) - ``U_QWORD_R`` (unsigned 64 bit integer from 4 registers low word first) - ``U_QWORD_R`` (signed 64 bit integer from 4 registers low word first) diff --git a/components/sensor/adc.rst b/components/sensor/adc.rst index a8c03e99c..0b1267b9f 100644 --- a/components/sensor/adc.rst +++ b/components/sensor/adc.rst @@ -63,7 +63,7 @@ ESP32 Attenuation On the ESP32 the voltage measured with the ADC caps out at ~1.1V by default as the sensing range (attenuation of the ADC) is set to ``0db`` by default. Measuring higher voltages requires setting ``attenuation`` to one of the following values: ``0db``, ``2.5db``, ``6db``, ``11db``. -There's more information `at the manufacturer's website `__. +There's more information `at the manufacturer's website `__. To simplify this, we provide the setting ``attenuation: auto`` for an automatic/seamless transition among scales. `Our implementation `__ combines all available ranges to allow the best resolution without having to compromise on a specific attenuation. diff --git a/components/sensor/bme680_bsec.rst b/components/sensor/bme680_bsec.rst index 5acf6304f..9024e8298 100644 --- a/components/sensor/bme680_bsec.rst +++ b/components/sensor/bme680_bsec.rst @@ -2,7 +2,7 @@ BME680 Temperature+Pressure+Humidity+Gas Sensor via BSEC ======================================================== .. seo:: - :description: Instructions for setting up BME680 temperature, humidity, pressure and gas sensors via BSEC. + :description: Instructions for setting up BME680 temperature, humidity, pressure, and gas sensors via BSEC. :image: bme680.jpg :keywords: BME680 @@ -12,12 +12,13 @@ Component/Hub The ``bme680_bsec`` sensor platform allows you to use your BME680 (`datasheet `__, `Adafruit`_) temperature, pressure and humidity and gas sensors with ESPHome via the Bosch Sensortec Environmental Cluster (BSEC) -software library. The use of Bosch's proprietary algorithms provides additional Indoor Air Quality (IAQ), CO2 equivalent and Breath -Volatile Organic Compounds (VOC) equivalent measurements. +software library. The use of Bosch's proprietary algorithms provide an Index for Air Quality (IAQ) measurement derived from the +gas resistance sensor's response to specific Volatile Organic Compounds (VOC). The BSEC software also provides estimated values +for CO₂ and Breath Volatile Organic Compounds (b-VOC) using a correlation between VOC and CO₂ in a human's exhaled breath. .. note:: - The Bosch BSEC library is only available for use after accepting its software license agreement. By enabling this component, + The BSEC library is only available for use after accepting its software license agreement. By enabling this component, you are explicitly agreeing to the terms of the `BSEC license agreement`_. You must not distribute any compiled firmware binaries that include this component. @@ -101,9 +102,9 @@ Configuration variables: Can be ``mobile`` for mobile applications (e.g. carry-on devices). - **sample_rate** (*Optional*, string): Sample rate. Default is ``lp`` for low power consumption, sampling every 3 seconds. - Can be ``ulp`` for ultra low power, sampling every 5 minutes. - This controls the sampling rate for gas-dependant sensors and will govern the interval at which the sensor heater is operated. - By default this rate will also be used for temperature, pressure and humidity sensors but these can be overridden on a per-sensor level if required. + Can be ``ulp`` for ultra-low power, sampling every 5 minutes. + This controls the sampling rate for gas-dependent sensors and will govern the interval at which the sensor heater is operated. + By default, this rate will also be used for temperature, pressure, and humidity sensors but these can be overridden on a per-sensor level if required. - **state_save_interval** (*Optional*, :ref:`config-time`): The minimum interval at which to save calibrated BSEC algorithm state to flash so that calibration doesn't have to start from zero on device restart. Defaults to ``6h``. @@ -121,21 +122,21 @@ Configuration variables: - **name** (**Required**, string): The name for the temperature sensor. - **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas. - - **sample_rate** (*Optional*, string): Optional sample rate override for this sensor. Can be ``lp`` for low power consumption, sampling every 3 seconds or ``ulp`` for ultra low power, sampling every 5 minutes. + - **sample_rate** (*Optional*, string): Optional sample rate override for this sensor. Can be ``lp`` for low power consumption, sampling every 3 seconds or ``ulp`` for ultra-low power, sampling every 5 minutes. - All other options from :ref:`Sensor `. - **pressure** (*Optional*): The information for the pressure sensor. - **name** (**Required**, string): The name for the pressure sensor. - **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas. - - **sample_rate** (*Optional*, string): Optional sample rate override for this sensor. Can be ``lp`` for low power consumption, sampling every 3 seconds or ``ulp`` for ultra low power, sampling every 5 minutes. + - **sample_rate** (*Optional*, string): Optional sample rate override for this sensor. Can be ``lp`` for low power consumption, sampling every 3 seconds or ``ulp`` for ultra-low power, sampling every 5 minutes. - All other options from :ref:`Sensor `. - **humidity** (*Optional*): The information for the humidity sensor. - **name** (**Required**, string): The name for the humidity sensor. - **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas. - - **sample_rate** (*Optional*, string): Optional sample rate override for this sensor. Can be ``lp`` for low power consumption, sampling every 3 seconds or ``ulp`` for ultra low power, sampling every 5 minutes. + - **sample_rate** (*Optional*, string): Optional sample rate override for this sensor. Can be ``lp`` for low power consumption, sampling every 3 seconds or ``ulp`` for ultra-low power, sampling every 5 minutes. - All other options from :ref:`Sensor `. - **gas_resistance** (*Optional*): The information for the gas sensor. @@ -156,9 +157,9 @@ Configuration variables: - **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas. - All other options from :ref:`Sensor `. -- **co2_equivalent** (*Optional*): The information for the CO2 equivalent sensor. +- **co2_equivalent** (*Optional*): The information for the CO₂ equivalent sensor. - - **name** (**Required**, string): The name for the CO2 equivalent sensor. + - **name** (**Required**, string): The name for the CO₂ equivalent sensor. - **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas. - All other options from :ref:`Sensor `. @@ -194,7 +195,7 @@ Advanced configuration The following configuration shows all the available sensors and optional settings for the component. It also includes an example of filtering to guard against outliers, limit the number of updates sent to home assistant and reduce storage requirements in other systems such as influxdb used to store historical data. -For each sensor all other options from :ref:`Sensor ` and :ref:`TextSensor ` are also available for filtering, automation and so on. +For each sensor, all other options from :ref:`Sensor ` and :ref:`TextSensor ` are also available for filtering, automation and so on. .. code-block:: yaml @@ -217,7 +218,7 @@ For each sensor all other options from :ref:`Sensor ` and :ref:`T # Temperature offset # ------------------ # Useful if device is in enclosure and reads too high - # For example if it reads 5C too high, set this to 5 + # For example, if it reads 5C too high, set this to 5 # This also corrects the relative humidity readings # Default: 0 temperature_offset: 0 @@ -226,7 +227,7 @@ For each sensor all other options from :ref:`Sensor ` and :ref:`T # -------------------- # Available options: # - static (for fixed position devices) - # - mobile (for on person or other moveable devices) + # - mobile (for on a person or other moveable devices) # Default: static iaq_mode: static @@ -234,7 +235,7 @@ For each sensor all other options from :ref:`Sensor ` and :ref:`T # ----------- # Available options: # - lp (low power - samples every 3 seconds) - # - ulp (ultra low power - samples every 5 minutes) + # - ulp (ultra-low power - samples every 5 minutes) # Default: lp sample_rate: ulp @@ -298,6 +299,7 @@ For each sensor all other options from :ref:`Sensor ` and :ref:`T name: "BME680 IAQ Accuracy" +<<<<<<< HEAD Multiple sensors ---------------------- @@ -371,17 +373,65 @@ The following configuration shows how to set up multiple BME680 devices. They ca Indoor Air Quality (IAQ) Measurement ------------------------------------ +======= +Index for Air Quality (IAQ) Measurement +--------------------------------------- + +The measurements are expressed with an index scale ranging from 0 to 500. The index itself is deduced +from tests using ethanol gas, as well as important VOC in the exhaled breath of healthy humans. +The VOC values themselves are derived from several publications on breath analysis studies. The BSEC +software library defines the levels as follows: + ++-----------+---------------------+ +| IAQ Index | Air Quality | ++===========+=====================+ +| 0 - 50 | Excellent | ++-----------+---------------------+ +| 51 - 100 | Good | ++-----------+---------------------+ +| 101 - 150 | Lightly polluted | ++-----------+---------------------+ +| 151 - 200 | Moderately polluted | ++-----------+---------------------+ +| 201 - 250 | Heavily polluted | ++-----------+---------------------+ +| 251 - 350 | Severely polluted | ++-----------+---------------------+ +| > 351 | Extremely polluted | ++-----------+---------------------+ + +The selected b-VOC gasses are as follows: + ++--------------------+----------------+ +| Compound | Molar fraction | ++====================+================+ +| `Ethane`_ | 5 ppm | ++--------------------+----------------+ +| `Isoprene`_ | 10 ppm | ++--------------------+----------------+ +| `Ethanol`_ | 10 ppm | ++--------------------+----------------+ +| `Acetone`_ | 50 ppm | ++--------------------+----------------+ +| `Carbon Monoxide`_ | 15 ppm | ++--------------------+----------------+ + +.. _Ethane: https://en.wikipedia.org/wiki/Ethane +.. _Isoprene: https://en.wikipedia.org/wiki/Isoprene +.. _Ethanol: https://en.wikipedia.org/wiki/Ethanol +.. _Acetone: https://en.wikipedia.org/wiki/Acetone +.. _Carbon Monoxide: https://en.wikipedia.org/wiki/Carbon_monoxide +>>>>>>> current -Indoor Air Quality measurements are expressed in the IAQ index scale with 25IAQ corresponding to typical good air and 250IAQ -indicating typical polluted air after calibration. .. _bsec-calibration: IAQ Accuracy and Calibration ---------------------------- -The BSEC algorithm automatically gathers data in order to calibrate the IAQ measurements. The IAQ Accuracy sensor will give one -of the following values: +The BSEC software automatically calibrates automatically in the background to provide consistent IAQ performance. The +calibration process considers the recent measurement history so that a value of 50 corresponds to a “typical good” +level and a value of 200 to a “typical polluted” level. The IAQ Accuracy sensor will give one of the following values: - ``Stabilizing``: The device has just started, and the sensor is stabilizing (this typically lasts 5 minutes) - ``Uncertain``: The background history of BSEC is uncertain. This typically means the gas sensor data was too @@ -399,6 +449,7 @@ See Also - :doc:`absolute_humidity` - :doc:`bme680` - :apiref:`bme680_bsec/bme680_bsec.h` +- `BME680 Datasheet `__ - `BME680 VOC classification `__ - `BSEC Arduino Library `__ by `Bosch Sensortec `__ - `Bosch Sensortec Community `__ diff --git a/components/sensor/ee895.rst b/components/sensor/ee895.rst index f5b4f1b8a..d56db1579 100644 --- a/components/sensor/ee895.rst +++ b/components/sensor/ee895.rst @@ -7,7 +7,7 @@ EE895 CO₂, Temperature and Pressure Sensor The ``ee895`` sensor platform allows you to use your EE895 CO₂ (`datasheet `__, -`E+E TEE501 `__) sensor with ESPHome. +`E+E EE895 `__) sensor with ESPHome. The :ref:`I²C Bus ` is required to be set up in your configuration for this sensor to work. We recommend the use of pull up resistors. .. figure:: images/EE895.png diff --git a/components/sensor/index.rst b/components/sensor/index.rst index edbcf8e10..42dd1b993 100644 --- a/components/sensor/index.rst +++ b/components/sensor/index.rst @@ -349,7 +349,7 @@ Configuration variables: when pushing out a value. Defaults to ``5``. - **send_every** (*Optional*, int): How often a sensor value should be pushed out. For - example, in above configuration the min is calculated after every 4th + example, in above configuration the max is calculated after every 4th received sensor value, over the last 7 received values. Defaults to ``5``. - **send_first_at** (*Optional*, int): By default, the very first raw value on boot is immediately diff --git a/components/sensor/mhz19.rst b/components/sensor/mhz19.rst index 2d4a3e7e8..58ab84a26 100644 --- a/components/sensor/mhz19.rst +++ b/components/sensor/mhz19.rst @@ -8,7 +8,7 @@ MH-Z19 CO_2 and Temperature Sensor The ``mhz19`` sensor platform allows you to use MH-Z19 CO_2 and temperature sensors (`refspace`_) with ESPHome. -The CO_2 measurement also works with the MH-Z16 sensor. +The CO_2 measurement also works with the MH-Z16 and MH-Z14 sensors. .. figure:: images/mhz19-full.jpg :align: center diff --git a/components/sensor/mics_4514.rst b/components/sensor/mics_4514.rst index b337c59ef..05056f65d 100644 --- a/components/sensor/mics_4514.rst +++ b/components/sensor/mics_4514.rst @@ -35,7 +35,6 @@ This component exposes the different gas concentration sensors from the `MiCS-45 Configuration variables: ------------------------ -- **pin** (**Required**, :ref:`config-pin`): The pin where the DHT bus is connected. - **nitrogen_dioxide** (*Optional*): All options from :ref:`Sensor ` - **carbon_monoxide** (*Optional*): All options from :ref:`Sensor ` - **hydrogen** (*Optional*): All options from :ref:`Sensor ` diff --git a/components/sensor/pulse_counter.rst b/components/sensor/pulse_counter.rst index a9ae0a16a..a4e505fb5 100644 --- a/components/sensor/pulse_counter.rst +++ b/components/sensor/pulse_counter.rst @@ -93,7 +93,7 @@ measure the total consumed energy in kWh. sensor: - platform: pulse_counter pin: 12 - unit_of_measurement: 'kW' + unit_of_measurement: 'Wh' name: 'Power Meter House' filters: - multiply: 0.06 # (60s/1000 pulses per kWh) diff --git a/components/sensor/resistance.rst b/components/sensor/resistance.rst index 21d42c2c4..cc6ce039e 100644 --- a/components/sensor/resistance.rst +++ b/components/sensor/resistance.rst @@ -44,6 +44,19 @@ is close to GND (DOWNSTREAM) or it is closer to VCC (UPSTREAM). id: source_sensor pin: A0 +Note: +------------------------ +Some boards like NodeMCUv2 needs to multiply ADC reading by 3.3 to provide accurate result because they have built-in voltage divider on ADC pin (https://arduino.stackexchange.com/a/71952) + +.. code-block:: yaml + + # Example source sensor: + - platform: adc + id: source_sensor + pin: A0 + filters: + - multiply: 3.3 + Configuration variables: ------------------------ diff --git a/components/sensor/scd4x.rst b/components/sensor/scd4x.rst index ff37dc4d3..ff52756a7 100644 --- a/components/sensor/scd4x.rst +++ b/components/sensor/scd4x.rst @@ -105,15 +105,19 @@ As of April 2022 the average fresh air Co² concentration is 419 ppm. value: 419 # outside average April 2022 id: my_scd41 -value can be a template +value can also be a template, for example to define a Home Assistant calibration service: .. code-block:: yaml - on_...: - then: - - scd4x._perform_forced_calibration_action: - value: !lambda "{ return 419 };" - id: my_scd41 + api: + services: + - service: calibrate_co2_value + variables: + co2_ppm: int + then: + - scd4x.perform_forced_calibration: + value: !lambda 'return co2_ppm;' + id: my_scd41 .. _factory_reset_action: @@ -129,39 +133,53 @@ This :ref:`action ` triggers a factory reset of the sensor. Calib then: - scd4x.factory_reset: my_scd41 -Automation ------------------ +Pressure compensation +--------------------- -Ambient pressure compensation compensation can be changed from :ref:`lambdas ` +A static ambient pressure value can be set with `ambient_pressure_compensation` or `altitude_compensation`. It can also be changed dynamically with :ref:`lambdas ` using `set_ambient_pressure_compensation()`, or by pointing `ambient_pressure_compensation_source` to a local pressure sensor. +Example with a local sensor +*************************** -``set_ambient_pressure_compensation( set_ambient_pressure_compensation(x / 1000.0);" + - platform: scd4x + measurement_mode: low_power_periodic + ambient_pressure_compensation_source: bme_pressure + temperature_offset: 0 + co2: + name: "CO2 level" + +Example with a remote sensor +**************************** + +This example creates a service `set_ambient_pressure` that can be called from Home Assistant: + +.. code-block:: yaml + + api: + services: + - service: set_ambient_pressure + variables: + pressure_mbar: int + then: + - lambda: "id(my_scd41)->set_ambient_pressure_compensation(pressure_mbar);" + + sensor: + - platform: scd4x + id: my_scd41 + measurement_mode: low_power_periodic + temperature_offset: 0 + co2: + name: "CO2 level" See Also diff --git a/components/sensor/sen5x.rst b/components/sensor/sen5x.rst index eaf96ea28..f8424ce85 100644 --- a/components/sensor/sen5x.rst +++ b/components/sensor/sen5x.rst @@ -114,7 +114,7 @@ Configuration variables: - All other options from :ref:`Sensor `. -- **nox** (*Optional*): NOx Index. Note: Only available with Sen54 or Sen55. The sensor will be ignored on unsupported models. +- **nox** (*Optional*): NOx Index. Note: Only available with Sen55. The sensor will be ignored on unsupported models. - **name** (**Required**, string): The name of the sensor. - **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. @@ -162,7 +162,7 @@ Configuration variables: Wiring: ------- -The sensor has a JST GHR-06V-S 6 pin type connector, with a 1.5mm pitch. The cable needs this connector: +The sensor has a JST GHR-06V-S 6 pin type connector, with a 1.25mm pitch. The cable needs this connector: .. figure:: images/jst6pin.png :align: center diff --git a/components/switch/custom.rst b/components/switch/custom.rst index ffea90bfe..a5837b94b 100644 --- a/components/switch/custom.rst +++ b/components/switch/custom.rst @@ -50,6 +50,7 @@ And in YAML: switches: name: "My Custom Switches" + id: my_custom_switch Configuration variables: diff --git a/components/switch/safe_mode.rst b/components/switch/safe_mode.rst index 73ae6384a..2f4ec695f 100644 --- a/components/switch/safe_mode.rst +++ b/components/switch/safe_mode.rst @@ -5,8 +5,7 @@ Safe Mode Switch :description: Instructions for setting up switches that can remotely reboot the ESP in ESPHome into safe mode. :image: restart.svg -The ``safe_mode`` switch allows you to remotely reboot your node into :ref:`Safe Mode `. This is useful in certain situations -where a misbehaving component is preventing Over-The-Air updates from completing successfully. +The ``safe_mode`` switch allows you to remotely reboot your node into :ref:`Safe Mode `. This is useful in certain situations where a misbehaving component, or low memoary state is preventing Over-The-Air updates from completing successfully. This component requires :ref:`OTA ` to be configured. diff --git a/cookbook/air_gradient_diy_air_quality_sensor.rst b/cookbook/air_gradient_diy_air_quality_sensor.rst index 2fc067c8a..be0071e60 100644 --- a/cookbook/air_gradient_diy_air_quality_sensor.rst +++ b/cookbook/air_gradient_diy_air_quality_sensor.rst @@ -37,7 +37,7 @@ Documentation: - `AirGradient Shop for the PCB or PCB plus components `__ - `AirGradient Setup Guide (3D printeable case, setup guide, etc.) `__ -`YAML configuration `__ +`YAML configuration `__ Soldering and setup video: diff --git a/guides/creators.rst b/guides/creators.rst index dc8c459ab..134f2ce0e 100644 --- a/guides/creators.rst +++ b/guides/creators.rst @@ -7,6 +7,10 @@ Sharing ESPHome devices We have added configuration options to ESPHome to make it easier to create, configure, install and distribute devices running ESPHome. +No part of a "template" configuration should have any references to secrets, +or have passwords pre-applied. ESPHome makes it easy for the end-user to add these +themselves after they adopt the device into their own ESPHome dashboard. + Example configuration --------------------- @@ -14,10 +18,13 @@ Example configuration # These substitutions allow the end user to override certain values substitutions: - name: "project-template-32" + name: "project-template" + friendly_name: "Project Template" esphome: name: "${name}" + # Friendly names are used where appropriate in Home Assistant + friendly_name: "${friendly_name}" # Automatically add the mac address to the name # so you can use a single firmware for all devices name_add_mac_suffix: true diff --git a/guides/diy.rst b/guides/diy.rst index 5c328f1a1..b025b4531 100644 --- a/guides/diy.rst +++ b/guides/diy.rst @@ -122,3 +122,4 @@ Sample Configurations - `ESPHome Curtain/Cover/Shutter Switch from a noname Tuya switch `__ by :ghuser:`ludrao` - `ESPHome Free your Thomson Guardian gate controller `__ by :ghuser:`ludrao` - `Ambient Light Sensor tcs34725 example `__ by :ghuser:`RubenKelevra` +- `9 Valve Sprinkler Controller configuration `__ by :ghuser:`hwstar` diff --git a/guides/supporters.rst b/guides/supporters.rst index 29187c06c..5146bcefd 100644 --- a/guides/supporters.rst +++ b/guides/supporters.rst @@ -299,6 +299,7 @@ Contributors - `Expaso (@Expaso) `__ - `Malte Franken (@exxamalte) `__ - `Fabian Affolter (@fabaff) `__ +- `Fabian (@Fabian-Schmidt) `__ - `Federico Ariel Castagnini (@facastagnini) `__ - `C W (@fake-name) `__ - `Florian idB (@fbeek) `__ @@ -416,6 +417,7 @@ Contributors - `James Duke (@jamesduke) `__ - `James Gao (@jamesgao) `__ - `James Lakin (@jamesorlakin) `__ +- `James Swift (@JamesSwift) `__ - `Juraj Andrássy (@JAndrassy) `__ - `Jan Grewe (@jangrewe) `__ - `János Rusiczki (@janosrusiczki) `__ @@ -628,6 +630,7 @@ Contributors - `myhomeiot (@myhomeiot) `__ - `Igor Scheller (@MyIgel) `__ - `Mynasru (@Mynasru) `__ +- `Mikhail Zakharov (@mzakharo) `__ - `Kevin Uhlir (@n0bel) `__ - `Erik Näsström (@Naesstrom) `__ - `H. Árkosi Róbert (@nagyrobi) `__ @@ -779,6 +782,7 @@ Contributors - `ShellAddicted (@ShellAddicted) `__ - `sherbang (@sherbang) `__ - `Shish (@shish) `__ +- `Shreyas Karnik (@shreyaskarnik) `__ - `SiliconAvatar (@SiliconAvatar) `__ - `Francisco J. Solis (@sisco0) `__ - `Derek Hageman (@Sizurka) `__ @@ -812,8 +816,6 @@ Contributors - `Jordan Vohwinkel (@sublime93) `__ - `sumirati (@sumirati) `__ - `swifty99 (@swifty99) `__ -- `Sybren A. Stüvel (@sybrenstuvel) `__ -- `Sympatron GmbH (@Sympatron) `__ - `synco (@synco) `__ - `Marcel Feix (@Syndlex) `__ - `Suryandaru Triandana (@syndtr) `__ @@ -861,7 +863,6 @@ Contributors - `tube0013 (@tube0013) `__ - `Alexey Vlasov (@turbulator) `__ - `Seppel Hardt (@tuxBurner) `__ -- `TVDLoewe (@TVDLoewe) `__ - `Thorsten von Eicken (@tve) `__ - `Ubi de Feo (@ubidefeo) `__ - `uPesy Electronics (@uPesy) `__ @@ -908,4 +909,4 @@ Contributors - `Zack Barett (@zsarnett) `__ - `Christian Zufferey (@zuzu59) `__ -*This page was last updated February 20, 2023.* +*This page was last updated February 23, 2023.*