Merge branch 'current' into next

This commit is contained in:
Jesse Hills 2021-12-02 17:10:24 +13:00
commit ae922bc8ac
No known key found for this signature in database
GPG Key ID: BEAAE804EFD8E83A
75 changed files with 296 additions and 204 deletions

View File

@ -114,6 +114,20 @@ Release 2021.11.2 - November 26
- Remove floating point ops from the ISR :esphomepr:`2751` by :ghuser:`ssieb`
- Fix parsing numbers from null-terminated buffers :esphomepr:`2755` by :ghuser:`oxan`
Release 2021.11.3 - November 27
-------------------------------
- Fix restoring preferences for ESP32 :esphomepr:`2805` by :ghuser:`mmakaay`
Release 2021.11.4 - November 29
-------------------------------
- Fix parsing numbers in Anova :esphomepr:`2816` by :ghuser:`oxan`
- Fix parsing of multiple values in EZO sensor :esphomepr:`2814` by :ghuser:`oxan`
- Fix compilation error for WPA enterprise in ESP-IDF :esphomepr:`2815` by :ghuser:`CarlosGS`
- Correct bitmask for third color (blue) scaling. :esphomepr:`2817` by :ghuser:`davet2001`
- Add delay to improve stability :esphomepr:`2793` by :ghuser:`Conclusio`
Full list of changes
--------------------
@ -284,6 +298,12 @@ All changes
- esp32_camera_web_server: Improve support for MotionEye :esphomepr:`2777` by :ghuser:`ayufan`
- Remove floating point ops from the ISR :esphomepr:`2751` by :ghuser:`ssieb`
- Fix parsing numbers from null-terminated buffers :esphomepr:`2755` by :ghuser:`oxan`
- Fix restoring preferences for ESP32 :esphomepr:`2805` by :ghuser:`mmakaay`
- Fix parsing numbers in Anova :esphomepr:`2816` by :ghuser:`oxan`
- Fix parsing of multiple values in EZO sensor :esphomepr:`2814` by :ghuser:`oxan`
- Fix compilation error for WPA enterprise in ESP-IDF :esphomepr:`2815` by :ghuser:`CarlosGS`
- Correct bitmask for third color (blue) scaling. :esphomepr:`2817` by :ghuser:`davet2001`
- Add delay to improve stability :esphomepr:`2793` by :ghuser:`Conclusio`
Past Changelogs
---------------

View File

@ -28,7 +28,7 @@ A Python library that implements this protocol is `aioesphomeapi <https://github
Configuration variables:
------------------------
- **port** (*Optional*, integer): The port to run the API Server on. Defaults to ``6053``.
- **port** (*Optional*, int): The port to run the API Server on. Defaults to ``6053``.
- **password** (*Optional*, string): The password to protect the API Server with. Defaults to no password.
- **encryption** (*Optional*): Enable transport encryption of the API layer.
@ -63,7 +63,7 @@ Configuration variables:
</script>
- **services** (*Optional*, list): A list of user-defined services. See :ref:`api-services`.
- **reboot_timeout** (*Optional*, :ref:`time <config-time>`): The amount of time to wait before rebooting when no
- **reboot_timeout** (*Optional*, :ref:`config-time`): The amount of time to wait before rebooting when no
client connects to the API. This is needed because sometimes the low level ESP functions report that
the ESP is connected to the network, when in fact it is not - only a full reboot fixes it.
Can be disabled by setting this to ``0s``. Defaults to ``15min``.

View File

@ -51,10 +51,10 @@ Configuration variables:
- **ibeacon_uuid** (*Optional*, string): The `universally unique identifier <https://en.wikipedia.org/wiki/Universally_unique_identifier>`__
to identify the beacon that needs to be tracked. Note that exactly one of ``mac_address``,
``service_uuid`` or ``ibeacon_uuid`` must be present.
- **ibeacon_major** (*Optional*, integer): The iBeacon major identifier of the beacon that needs
- **ibeacon_major** (*Optional*, int): The iBeacon major identifier of the beacon that needs
to be tracked. Usually used to group beacons, for example for grouping all beacons in the
same building.
- **ibeacon_minor** (*Optional*, integer): The iBeacon minor identifier of the beacon that needs
- **ibeacon_minor** (*Optional*, int): The iBeacon minor identifier of the beacon that needs
to be tracked. Usually used to identify beacons within an iBeacon group.
- **id** (*Optional*, :ref:`config-id`): Manually specify
the ID used for code generation.

View File

@ -45,10 +45,10 @@ Configuration variables:
The configuration is made up of two parts: The central component, and individual Binary sensors per channel.
- **address** (*Optional*, integer): The I²C address of the sensor. Defaults to ``0x29``.
- **address** (*Optional*, int): The I²C address of the sensor. Defaults to ``0x29``.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor.
- **reset_pin** (*Optional*, :ref:`config-pin`): Set the pin that is used to reset the CAP1188 board on boot.
- **touch_threshold** (*Optional*, integer): The touch threshold for all channels. This defines the sensitivity for touch detection.
- **touch_threshold** (*Optional*, int): The touch threshold for all channels. This defines the sensitivity for touch detection.
- ``0x01``: Maximum sensitivity - Most sensitive to touch
- ``0x20``: Default sensitivity
- ``0x40``: Medium sensitivity (I used this sensitivity when being used through a 3mm sheet of plastic)
@ -69,7 +69,7 @@ Configuration variables:
- **name** (*Optional*, string): The name for the binary sensor.
- **cap1188_id** (*Optional*, :ref:`config-id`): The ID of the CAP1188 defined above. Useful for multiple CAP1188's on the I²C bus.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- **channel** (**Required**, integer): The channel number the CAP1188 the touchkey is connected to.
- **channel** (**Required**, int): The channel number the CAP1188 the touchkey is connected to.
- All other options from :ref:`Binary Sensor <config-binary_sensor>`.
.. note::

View File

@ -28,7 +28,7 @@ you can always override it.
Configuration variables:
- **device_class** (*Optional*, string): The device class for the
sensor. See https://www.home-assistant.io/components/binary_sensor/
sensor. See https://developers.home-assistant.io/docs/core/entity/binary-sensor/#available-device-classes
for a list of available options.
- **icon** (*Optional*, icon): Manually set the icon to use for the binary sensor in the frontend.
- **filters** (*Optional*, list): A list of filters to apply on the binary sensor values such as

View File

@ -20,22 +20,22 @@ Configuration variables:
- "read_holding_registers": Function 03 (03hex) Read Holding Registers - Read the binary contents of holding registers in the device.
- "read_input_registers": Function 04 (04hex) Read Input Registers - Read the binary contents of input registers in the device.
- **address**: (**Required**, integer): start address of the first register in a range
- **address**: (**Required**, int): start address of the first register in a range
- **bitmask** : some values are packed in a response. The bitmask is used to determined if the result is true or false
- **skip_updates**: (*Optional*, integer): By default all sensors of of a modbus_controller are updated together. For data points that don't change very frequently updates can be skipped. A value of 5 would only update this sensor range in every 5th update cycle
- **register_count**: (*Optional*): only required for uncommon response encodings or to :ref:`optimize modbus communications<modbus_register_count>`
- **skip_updates**: (*Optional*, int): By default all sensors of of a modbus_controller are updated together. For data points that don't change very frequently updates can be skipped. A value of 5 would only update this sensor range in every 5th update cycle
- **register_count**: (*Optional*, int): only required for uncommon response encodings or to :ref:`optimize modbus communications<modbus_register_count>`
The number of registers this data point spans. Overrides the defaults determined by ``value_type``.
If no value for ``register_count`` is provided, it is calculated based on the register type.
The default size for 1 register is 16 bits (1 Word). Some devices are not adhering to this convention and have registers larger than 16 bits. In this case ``register_count`` and ``response_size`` must be set. For example, if your modbus device uses 1 registers for a FP32 value instead the default of two set ``register_count: 1`` and ``response_size: 4``.
- **response_size**: (*Optional*): Size of the response for the register in bytes. Defaults to register_count*2.
- **response_size**: (*Optional*, int): Size of the response for the register in bytes. Defaults to register_count*2.
- **force_new_range**: (*Optional*, boolean): If possible sensors with sequential addresses are grouped together and requested in one range. Setting ``force_new_range: true`` enforces the start of a new range at that address.
- **custom_data** (*Optional*, list of bytes): raw bytes for modbus command. This allows using non-standard commands. If ``custom_data`` is used ``address`` and ``register_type`` can't be used.
- **custom_data** (*Optional*, list of bytes): raw bytes for modbus command. This allows using non-standard commands. If ``custom_data`` is used ``address`` and ``register_type`` can't be used.
custom data must contain all required bytes including the modbus device address. The crc is automatically calculated and appended to the command.
See :ref:`modbus_custom_data` how to use ``custom_command``
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`):
Lambda to be evaluated every update interval to get the new value of the sensor
- **offset**: (*Optional*, integer): not required for most cases
- **offset**: (*Optional*, int): not required for most cases
offset from start address in bytes. If more than one register is read a modbus read registers command this value is used to find the start of this datapoint relative to start address. The component calculates the size of the range based on offset and size of the value type
The value for offset depends on the register type. If a binary_sensor is created from an input register the offset is in bytes. For coil and discrete input resisters the LSB of the first data byte contains the coil addressed in the request. The other coils follow toward the high-order end of this byte and from low order to high order in subsequent bytes. For the registers offset is the position of the relevant bit.
To get the value of the coil register 2 can be retrived using address: 2 / offset: 0 or address: 0 / offset 2

View File

@ -48,15 +48,15 @@ Configuration variables:
The configuration is made up of two parts: The central component, and individual Binary sensors per channel.
- **address** (*Optional*, integer): The I²C address of the sensor. Defaults to ``0x5A``.
- **address** (*Optional*, int): The I²C address of the sensor. Defaults to ``0x5A``.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor.
- **touch_debounce** (*Optional*, integer): The minimum length before a touch is recognized. Range is from 0 to 7.
- **touch_debounce** (*Optional*, int): The minimum length before a touch is recognized. Range is from 0 to 7.
Defaults to 0.
- **release_debounce** (*Optional*, integer): The minimum length that no touch is recognized before a release event is created.
- **release_debounce** (*Optional*, int): The minimum length that no touch is recognized before a release event is created.
Range is from 0 to 7. Defaults to 0.
- **touch_threshold** (*Optional*, integer): The touch threshold for all channels. This defines the sensitivity for touch detection
- **touch_threshold** (*Optional*, int): The touch threshold for all channels. This defines the sensitivity for touch detection
and should be between 5 and 30 (lower = more sensitive). Defaults to 12. Typically the touch threshold is a little bigger than the release threshold.
- **release_threshold** (*Optional*, integer): The release defines the sensitivity for touch detection and should be between 5 and 30. Defaults to 6.
- **release_threshold** (*Optional*, int): The release defines the sensitivity for touch detection and should be between 5 and 30. Defaults to 6.
Binary Sensor
-------------
@ -72,9 +72,9 @@ Configuration variables:
- **name** (*Optional*, string): The name for the binary sensor.
- **mpr121_id** (*Optional*, :ref:`config-id`): The ID of the MPR121 defined above. Useful for multiple MPR121's on the I²C bus
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- **channel** (**Required**, integer): The channel number at the MPR121 the touchkey is connected to.
- **touch_threshold** (*Optional*, integer): A per-channel override of the global touch_threshold value. If not specified, uses the global value.
- **release_threshold** (*Optional*, integer): A per-channel override of the global release_threshold value. If not specified, uses the global value.
- **channel** (**Required**, int): The channel number at the MPR121 the touchkey is connected to.
- **touch_threshold** (*Optional*, int): A per-channel override of the global touch_threshold value. If not specified, uses the global value.
- **release_threshold** (*Optional*, int): A per-channel override of the global release_threshold value. If not specified, uses the global value.
- All other options from :ref:`Binary Sensor <config-binary_sensor>`.
See Also

View File

@ -48,7 +48,7 @@ Configuration variables:
- **update_interval** (*Optional*, :ref:`config-time`): The duration to update the sensor. If using a :ref:`nextion_custom_binary_sensor_protocol` this should not be used
- **background_color** (*Optional*, :ref:`config-color`): The background color
- **foreground_color** (*Optional*, :ref:`config-color`): The foreground color
- **visible** (*Optional*, boolean ): Visible or not
- **visible** (*Optional*, boolean): Visible or not
- All other options from :ref:`Binary Sensor <config-binary_sensor>`.
**Touch Sensor:**

View File

@ -106,7 +106,7 @@ unique id (``uid``) is currently being detected by the RDM6300 or not.
Configuration variables:
************************
- **uid** (**Required**, integer): The unique ID of the NFC/RFID tag.
- **uid** (**Required**, int): The unique ID of the NFC/RFID tag.
- **name** (**Required**, string): The name of the binary sensor.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`Binary Sensor <config-binary_sensor>`.

View File

@ -48,7 +48,7 @@ The configuration is made up of two parts: The central component, and individual
Configuration variables:
- **name** (**Required**, string): The name of the binary sensor.
- **channel** (**Required**, integer): The channel number at the TTP229 the touchkey is connected to.
- **channel** (**Required**, int): The channel number at the TTP229 the touchkey is connected to.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`Binary Sensor <config-binary_sensor>`.
@ -86,7 +86,7 @@ Base Configuration:
Configuration variables:
- **name** (**Required**, string): The name of the binary sensor.
- **channel** (**Required**, integer): The channel number at the TTP229 the touchkey is connected to.
- **channel** (**Required**, int): The channel number at the TTP229 the touchkey is connected to.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`Binary Sensor <config-binary_sensor>`.

View File

@ -77,25 +77,25 @@ Base Configuration:
- **report_interval** (*Optional*, :ref:`config-time`): The interval to periodically
report the coordinates while the touch screen is touched. Defaults to ``never``.
- **threshold** (*Optional*, integer): The value to detect the touch or release. Defaults to ``400``.
- **threshold** (*Optional*, int): The value to detect the touch or release. Defaults to ``400``.
- **dimension_x** (*Optional*, integer): The dimension of the display in the horizontal
- **dimension_x** (*Optional*, int): The dimension of the display in the horizontal
direction. Usually in pixels but a percentage can be useful as well. Defaults to ``100``.
- **dimension_y** (*Optional*, integer): The dimension of the display in the vertical
- **dimension_y** (*Optional*, int): The dimension of the display in the vertical
direction. Usually in pixels but a percentage can be useful as well. Defaults to ``100``.
- **calibration_x_min** (*Optional*, integer): The raw value corresponding to the left
- **calibration_x_min** (*Optional*, int): The raw value corresponding to the left
(or top if ``swap_x_y`` is specified) edge of the display. See :ref:`xpt2046-calibration`
for the process to calibrate the touch screen. Defaults to ``0``.
- **calibration_x_max** (*Optional*, integer): The raw value corresponding to the right
- **calibration_x_max** (*Optional*, int): The raw value corresponding to the right
(or bottom if ``swap_x_y`` is specified) edge of the display. Defaults to ``4095``.
- **calibration_y_min** (*Optional*, integer): The raw value corresponding to the top
- **calibration_y_min** (*Optional*, int): The raw value corresponding to the top
(or left if ``swap_x_y`` is specified) edge of the display. Defaults to ``0``.
- **calibration_y_max** (*Optional*, integer): The raw value corresponding to the bottom
- **calibration_y_max** (*Optional*, int): The raw value corresponding to the bottom
(or right if ``swap_x_y`` is specified) edge of the display. Defaults to ``4095``.
- **swap_x_y** (*Optional*, boolean): If true the x and y axes are swapped. Defaults to ``false``.
@ -154,10 +154,10 @@ to create individual binary sensors for each virtual button.
- **name** (*Optional*, string): The name for the binary sensor.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- **xpt2046_id** (*Optional*, :ref:`config-id`): Specify the ID of the component the sensor is part of. Useful when you have more than one touch screen.
- **x_min** (*Required*, integer): Left coordinate of the screen area to be detected as the virtual button.
- **x_max** (*Required*, integer): Right coordinate of the screen area to be detected as the virtual button.
- **y_min** (*Required*, integer): Top coordinate of the screen area to be detected as the virtual button.
- **y_max** (*Required*, integer): Bottom coordinate of the screen area to be detected as the virtual button.
- **x_min** (**Required**, int): Left coordinate of the screen area to be detected as the virtual button.
- **x_max** (**Required**, int): Right coordinate of the screen area to be detected as the virtual button.
- **y_min** (**Required**, int): Top coordinate of the screen area to be detected as the virtual button.
- **y_max** (**Required**, int): Bottom coordinate of the screen area to be detected as the virtual button.
- All other options from :ref:`Binary Sensor <config-binary_sensor>`.
.. _xpt2046-calibration:

View File

@ -55,7 +55,7 @@ Each canbus platform extends this configuration schema.
Configuration variables:
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- **can_id** (**Required**, integer): default *can id* used for transmitting frames.
- **can_id** (**Required**, int): default *can id* used for transmitting frames.
- **use_extended_id** (*Optional*, boolean): default *false* identifies the type of *can_id*:
*false*: Standard 11 bits IDs, *true*: Extended 29 bits ID
- **bit_rate** (*Optional*, enum): One of the supported bitrates. Defaults to ``125KBPS``.

View File

@ -84,9 +84,9 @@ Configuration variables:
to use multiple UART buses.
- **name** (**Required**, string): The name of the climate device.
- **transmitter_id** (*Optional*, :ref:`config-id`): Set if you use :doc:`../remote_transmitter` component for IR commands transmit.
- **period** (*Optional*, :ref:`time <config-time>`): Minimal period between requests to the appliance. Defaults to ``1s``.
- **timeout** (*Optional*, :ref:`time <config-time>`): Request response timeout until next request attempt. Defaults to ``2s``.
- **num_attempts** (*Optional*, integer 1-5): Number of request attempts. Defaults to ``3``.
- **period** (*Optional*, :ref:`config-time`): Minimal period between requests to the appliance. Defaults to ``1s``.
- **timeout** (*Optional*, :ref:`config-time`): Request response timeout until next request attempt. Defaults to ``2s``.
- **num_attempts** (*Optional*, int): Number of request attempts between 1 and 5 inclusive. Defaults to ``3``.
- **autoconf** (*Optional*, boolean): Get capabilities automatically. Allows you not to manually define most of the capabilities of the appliance.
Defaults to ``True``.
- **beeper** (*Optional*, boolean): Beeper feedback on command. Defaults to ``False``.
@ -165,7 +165,7 @@ Configuration variables:
- **temperature** (**Required**, float, :ref:`templatable <config-templatable>`): Set the
value of a internal temperature sensor.
- **beeper** (*Optional*, bool, :ref:`templatable <config-templatable>`): set beep on update.
- **beeper** (*Optional*, boolean, :ref:`templatable <config-templatable>`): set beep on update.
Defaults to ``False``

View File

@ -358,7 +358,7 @@ Additional Actions/Behavior
must be disengaged before it may be engaged.
- **min_heating_run_time** (*Required with* ``heat_action``, :ref:`config-time`): Minimum duration the heating action
must be engaged before it may be disengaged.
- **min_idle_time** (*Required*, :ref:`config-time`): Minimum duration the idle action must be active before calling
- **min_idle_time** (**Required**, :ref:`config-time`): Minimum duration the idle action must be active before calling
another climate action.
- **min_fan_mode_switching_time** (*Required with any* ``fan_mode`` *action*, :ref:`config-time`): Minimum duration
any given fan mode must be active before it may be changed.

View File

@ -66,8 +66,8 @@ Configuration variables:
- **position_datapoint** (**Required**, int): The datapoint id number of the cover position value.
- **position_report_datapoint** (*Optional*, int): The datapoint id number of the cover position report value, if separate from position_datapoint.
- **direction_datapoint** (*Optional*, int): The datapoint id number for setting the direction of travel.
- **min_value** (*Optional*, int, default 0): The lowest position value, meaning cover closed.
- **max_value** (*Optional*, int, default 100): the highest position value, meaning cover opened.
- **min_value** (*Optional*, int): The lowest position value, meaning cover closed. Defaults to 0.
- **max_value** (*Optional*, int): the highest position value, meaning cover opened. Defaults to 255.
- **invert_position** (*Optional*, boolean): Sets the direction of travel to be inverted, if direction_datapoint is configured.
- All other options from :ref:`Cover <config-cover>`.
@ -110,4 +110,3 @@ See Also
- :doc:`/components/cover/index`
- :apiref:`tuya/cover/tuya_cover.h`
- :ghedit:`Edit`

View File

@ -108,7 +108,7 @@ Configuration options:
- **file** (*Optional*, int, :ref:`templatable <config-templatable>`): The global track
number (from all tracks in the device). If not specified plays the first track.
- **loop** (*Optional*, bool, :ref:`templatable <config-templatable>`): Repeats playing
- **loop** (*Optional*, boolean, :ref:`templatable <config-templatable>`): Repeats playing
the same track. Defaults to ``false``.
``dfplayer.play_folder`` Action
@ -146,7 +146,7 @@ Configuration options:
- **folder** (**Required**, int, :ref:`templatable <config-templatable>`): The folder number.
- **file** (*Optional*, int, :ref:`templatable <config-templatable>`): The file number
inside the folder to play. Optional only if ``loop`` is not set.
- **loop** (*Optional*, bool, :ref:`templatable <config-templatable>`): Repeats playing
- **loop** (*Optional*, boolean, :ref:`templatable <config-templatable>`): Repeats playing
all files in the folder. Causes ``file`` to be ignored. Defaults to ``false``.

View File

@ -423,9 +423,9 @@ Configuration variables:
- **id** (**Required**, :ref:`config-id`): The ID with which you will be able to reference the graph later
in your display code.
- **width** (**Required**, integer): The graph width in pixels
- **height** (**Required**, integer): The graph height in pixels
- **duration** (**Required**, seconds): The total graph history duration.
- **width** (**Required**, int): The graph width in pixels
- **height** (**Required**, int): The graph height in pixels
- **duration** (**Required**, :ref:`config-time`): The total graph history duration.
- **border** (*Optional*, boolean): Specifies if a border will be drawn around the graph. Default is True.
- **x_grid** (*Optional*): Specifies the time per division. If not specified, no vertical grid will be drawn.
- **y_grid** (*Optional*, float): Specifies the number of units per division. If not specified, no horizontal grid will be drawn.
@ -436,7 +436,7 @@ Configuration variables:
- **traces** (*Optional*): Use this to specify more than a single trace.
Trace specific fields:
- **sensor** (*Optional*, id): The sensor value to plot
- **sensor** (*Optional*, :ref:`config-id`): The sensor value to plot
- **line_thickness** (*Optional*): Defaults to 3
- **line_type** (*Optional*): Specifies the plot line-type. Can be one of the following: ``SOLID``, ``DOTTED``, ``DASHED``. Defaults to ``SOLID``.
- **color** (*Optional*): Sets the color of the sensor trace.

View File

@ -43,9 +43,9 @@ Configuration variables:
------------------------
- **cs_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin you have the CS line hooked up to.
- **num_chips** (*Optional*, integer): The number of chips you wish to use for daisy chaining. Defaults to
- **num_chips** (*Optional*, int): The number of chips you wish to use for daisy chaining. Defaults to
``1``.
- **intensity** (*Optional*, integer): The intensity with which the MAX7219 should drive the outputs. Range is from
- **intensity** (*Optional*, int): The intensity with which the MAX7219 should drive the outputs. Range is from
0 (least intense) to 15 (the default).
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the MAX7219.
See :ref:`display-max7219_lambda` for more information.

View File

@ -42,7 +42,7 @@ Configuration variables:
------------------------
- **cs_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin you have the CS line hooked up to.
- **num_chips** (*Optional*, integer): The number of chips you wish to use for daisy chaining. Defaults to
- **num_chips** (*Optional*, int): The number of chips you wish to use for daisy chaining. Defaults to
``4``.
- **rotate_chip** (*Optional*): Rotates every 8x8 chip. Valid values are ``0``, ``90``, ``180`` and ``270``.
Defaults to ``0``.
@ -58,7 +58,7 @@ Configuration variables:
- **scroll_dwell** (*Optional*, :ref:`config-time`): Sets the wait time at the end of the scroll before starting
over. This is only used in mode ``STOP``. Defaults to ``1s``.
- **reverse_enable** (*Optional*, boolean): For some displays the order of the displays is reversed ("DCBA"). This option will reverse the display to ("ABCD") again. Defaults to ``false``.
- **intensity** (*Optional*, integer): The intensity with which the MAX7219 should drive the outputs. Range is
- **intensity** (*Optional*, int): The intensity with which the MAX7219 should drive the outputs. Range is
from ``0``, least intense to ``15`` the brightest. Defaults to ``15``.
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the
MAX7219. See :ref:`display-max7219digit_lambda` for more information.
@ -66,7 +66,7 @@ Configuration variables:
- **spi_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the :ref:`SPI Component <spi>` if you want
to use multiple SPI buses.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- **num_chip_lines** (*Optional*, integer): Number of lines if you want to use the displays in Multiline Mode. Defaults to ``1`` Example: https://github.com/esphome/esphome/pull/1622#issue-836179156
- **num_chip_lines** (*Optional*, int): Number of lines if you want to use the displays in Multiline Mode. Defaults to ``1`` Example: https://github.com/esphome/esphome/pull/1622#issue-836179156
- **chip_lines_style** (*Optional*): How are the lines in Multiline Mode connected? Possible values are ``zigzag`` and ``snake``. Defaults to ``snake``
.. _display-max7219digit_lambda:

View File

@ -44,16 +44,24 @@ There are numerous board types out there. Some initialize differently as well. T
Configuration variables:
************************
- **model** (**Required**, "See Models Below"): This the model to use. INITR_BLACKTAB is the default
- **model** (**Required**, string): The model to use, one of the following options:
- ``INITR_BLACKTAB``
- ``INITR_GREENTAB``
- ``INITR_REDTAB``
- ``INITR_MINI160X80``
- ``INITR_18BLACKTAB``
- ``INITR_18REDTAB``
- **cs_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The CS pin.
- **dc_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The DC pin.
- **device_width** (**Required**, int): The device width. 128 is default
- **device_height** (**Required**, int): The device height. 160 is default
- **col_start** (**Required**, int): The starting column offset. Default value depends on **model**.
- **row_start** (**Required**, int): The starting row offset. Default value depends on **model**.
- **use_bgr** (*Optional*, "true/false"): Use BGR mode. Default is false.
- **invert_colors** (*Optional*, "true/false"): Invert LCD colors. Default is false.
- **eight_bit_color** (*Optional*, "true/false" ): 8bit mode. Default is false. This saves 50% of the buffer required for the display.
- **use_bgr** (*Optional*, boolean): Use BGR mode. Default is false.
- **invert_colors** (*Optional*, boolean): Invert LCD colors. Default is false.
- **eight_bit_color** (*Optional*, boolean): 8bit mode. Default is false. This saves 50% of the buffer required for the display.
- **reset_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The RESET pin.
Memory notes:

View File

@ -34,7 +34,7 @@ Configuration variables:
- **clk_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin you have the CLK line hooked up to.
- **dio_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin you have the DIO line hooked up to.
- **intensity** (*Optional*, integer): The intensity with which the TM1637 should drive the outputs. Range is from
- **intensity** (*Optional*, int): The intensity with which the TM1637 should drive the outputs. Range is from
0 (least intense) to 7 (the default).
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the TM1637.
See :ref:`display-tm1637_lambda` for more information.

View File

@ -71,6 +71,9 @@ of the ESP32 like ESP32S2, ESP32S3, ESP32C3 and single-core ESP32 chips.
# Custom sdkconfig options
sdkconfig_options:
CONFIG_COMPILER_OPTIMIZATION_SIZE: y
# Advanced tweaking options
advanced:
ignore_efuse_mac_crc: false
- **version** (*Optional*, string): The base framework version number to use, from
`ESP32 ESP-IDF releases <https://github.com/espressif/esp-idf/releases>`__. Defaults to ``recommended``. Additional values are:
@ -82,6 +85,10 @@ of the ESP32 like ESP32S2, ESP32S3, ESP32C3 and single-core ESP32 chips.
- **source** (*Optional*, string): The PlatformIO package or repository to use for the framework. This can be used to use a custom or patched version of the framework.
- **platform_version** (*Optional*, string): The version of the `platformio/espressif32 <https://github.com/platformio/platform-espressif32/releases/>`__ package to use.
- **sdkconfig_options** (*Optional*, mapping): Custom sdkconfig options to set in the ESP-IDF project.
- **advanced** (*Optional*, mapping): Advanced options for highly specific tweaks.
- **ignore_efuse_mac_crc** (*Optional*, boolean): Can be set to ``true`` for devices on which the burnt in MAC address does not
match the also burnt in CRC for that MAC address, resulting in an error like ``Base MAC address from BLK0 of EFUSE CRC error``.
See Also
--------

View File

@ -27,10 +27,10 @@ Configuration variables:
Advanced options:
- **major** (*Optional*, integer): The iBeacon major identifier of this beacon. Usually used to
- **major** (*Optional*, int): The iBeacon major identifier of this beacon. Usually used to
group beacons, for example for grouping all beacons in the same building, but has no effect if
the BLE receiver doesn't use it. Defaults to ``10167``.
- **minor** (*Optional*, integer): The iBeacon minor identifier of this beacon. Usually used to
- **minor** (*Optional*, int): The iBeacon minor identifier of this beacon. Usually used to
identify beacons within an iBeacon group. Defaults to ``61958``.
Setting Up

View File

@ -90,8 +90,8 @@ Frame Settings:
- **contrast** (*Optional*, int): The contrast to apply to the picture, from -2 to 2. Defaults to ``0``.
- **brightness** (*Optional*, int): The brightness to apply to the picture, from -2 to 2. Defaults to ``0``.
- **saturation** (*Optional*, int): The saturation to apply to the picture, from -2 to 2. Defaults to ``0``.
- **vertical_flip** (*Optional*, bool): Whether to flip the image vertically. Defaults to ``true``.
- **horizontal_mirror** (*Optional*, bool): Whether to mirror the image horizontally. Defaults to ``true``.
- **vertical_flip** (*Optional*, boolean): Whether to flip the image vertically. Defaults to ``true``.
- **horizontal_mirror** (*Optional*, boolean): Whether to mirror the image horizontally. Defaults to ``true``.
.. note::

View File

@ -52,7 +52,7 @@ Configuration variables:
- **components** (*Optional*, list): The list of components to use from the external source.
By default, all available components are used.
- **refresh** (*Optional*, :ref:`time <config-time>`): The interval the source will be checked. Has no
- **refresh** (*Optional*, :ref:`config-time`): The interval the source will be checked. Has no
effect on ``local``. See :ref:`external-components_refresh`. for more info. Defaults to ``1day``.

View File

@ -20,7 +20,7 @@ Configuration variables:
------------------------
- **useragent** (*Optional*, string): User-Agent header for requests. Defaults to ``ESPHome``.
- **timeout** (*Optional*, :ref:`time <config-time>`): Timeout for request. Defaults to ``5s``.
- **timeout** (*Optional*, :ref:`config-time`): Timeout for request. Defaults to ``5s``.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
ESP8266 Options:

View File

@ -521,7 +521,7 @@ Configuration variables:
- **colors** (*Optional*, list): A list of colors to cycle through. Defaults to a quick cycle between ON and OFF.
- **state** (*Optional*, boolean): The on/off state to show. Defaults to ``true``.
- **color_mode** (*Optional*, ): The color mode of the light. Defaults to the current color mode.
- **color_mode** (*Optional*, string): The color mode of the light. Defaults to the current color mode.
- **brightness** (*Optional*, percentage): The brightness of the light. Defaults to ``100%``.
- **color_brightness** (*Optional*, percentage): The brightness of the RGB lights, if applicable. Defaults to ``100%``.
- **red** (*Optional*, percentage): The red channel of the light, if applicable. Defaults to ``100%``.
@ -693,7 +693,7 @@ Configuration variables:
- **name** (*Optional*, string): The name of the effect. Defaults to ``Scan``.
- **move_interval** (*Optional*, :ref:`config-time`): The interval with which to move the dot/line one LED forward.
Defaults to ``100ms``.
- **scan_width** (*Optional*, integer): The number of LEDs to use.
- **scan_width** (*Optional*, int): The number of LEDs to use.
Defaults to ``1``.
Addressable Twinkle Effect
@ -778,7 +778,7 @@ Configuration variables:
LED at any given time step. Defaults to ``10%``.
- **use_random_color** (*Optional*, boolean): Whether to use random colors for new firework sparks. Defaults to
using the currently active light color.
- **fade_out_rate** (*Optional*, integer): The rate with which to fade out the LED strip, unitless. Needs to be carefully
- **fade_out_rate** (*Optional*, int): The rate with which to fade out the LED strip, unitless. Needs to be carefully
chosen so that the whole strip doesn't light up forever if the fade out rate is too low or that the firework
sparks do not propagate for a long time. Defaults to ``120``.
@ -944,7 +944,7 @@ For Example JINX_ or Hyperion.NG_ could be used to control E1.31_ enabled ESPHom
Configuration variables:
- **universe** (**Required**, integer): The value of universe, between 1 to 512.
- **universe** (**Required**, int): The value of universe, between 1 to 512.
- **channels** (*Optional*): The type of data. This is used to specify if it is a ``MONO``,
``RGB`` or ``RGBW`` light and in which order the colors are. Defaults to ``RGB``.
@ -1036,7 +1036,7 @@ Prismatik_ can be used to control addressable lights over network on ESPHome.
Configuration variables:
- **port** (*Optional*, integer): The port to run the UDP server on. Defaults to ``21324``.
- **port** (*Optional*, int): The port to run the UDP server on. Defaults to ``21324``.
.. note::

View File

@ -99,11 +99,11 @@ Configuration variables:
- **from** (**Required**, int): The index of the first LED to address in the segment. Counting starts with 0,
so first LED is 0.
- **to** (**Required**, int): The index of the last LED to address in this segment.
- **reversed** (**Optional**, boolean): Whether to reverse the order of LEDs in this segment. Defaults to ``false``.
- **reversed** (*Optional*, boolean): Whether to reverse the order of LEDs in this segment. Defaults to ``false``.
*For single light segments:*
- **single_light_id** (**required**, :ref:`config-id`): The ID of a single addressable or non-addressable light.
- **single_light_id** (**Required**, :ref:`config-id`): The ID of a single addressable or non-addressable light.
If an addressable light is specified, it will be treated as a single light in the partition.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.

View File

@ -60,6 +60,9 @@ perceived intensity of different colors will generally vary. This can be done by
max_power: 80%
# Repeat for green and blue output
.. note::
Remember that ``gamma_correct`` is enabled by default (``γ=2.8``), and you may want take it into account for the calibration. For instance if you command a light to *50%* brightness and want it to be the new maximum: ``max_PWM_power = max_light_power^2.8 = 0.5^2.8 = 0.144``, then you would set ``max_power`` to *14.4%*.
Configuration variables:
------------------------

View File

@ -43,6 +43,10 @@ perceived intensity of different colors will generally vary. This can be done by
pin: D1
max_power: 80%
.. note::
Remember that ``gamma_correct`` is enabled by default (``γ=2.8``), and you may want take it into account for the calibration. For instance if you command a light to *50%* brightness and want it to be the new maximum: ``max_PWM_power = max_light_power^2.8 = 0.5^2.8 = 0.144``, then you would set ``max_power`` to *14.4%*.
.. _rgbw_color_interlock:
Color Interlock

View File

@ -49,6 +49,10 @@ perceived intensity of different colors will generally vary. This can be done by
pin: D1
max_power: 80%
.. note::
Remember that ``gamma_correct`` is enabled by default (``γ=2.8``), and you may want take it into account for the calibration. For instance if you command a light to *50%* brightness and want it to be the new maximum: ``max_PWM_power = max_light_power^2.8 = 0.5^2.8 = 0.144``, then you would set ``max_power`` to *14.4%*.
Color Interlock
---------------

View File

@ -85,15 +85,18 @@ Configuration variables:
If this is set then ESPHome will set the color using a 6 digit hex RGB value.
- **hsv_datapoint** (*Optional*, int): The datapoint id number of the HSV (hue/saturation/value) value.
If this is set then ESPHome will set the color using a 12 digit hex HSV value.
- **min_value** (*Optional*, int, default 0): The lowest dimmer value allowed. My dimmer had a
- **min_value** (*Optional*, int): The lowest dimmer value allowed. My dimmer had a
minimum of 25 and wouldn't even accept anything lower, but this option is available if necessary.
- **max_value** (*Optional*, int, default 255): The highest dimmer value allowed. Most dimmers have a
Defaults to 0.
- **max_value** (*Optional*, int): The highest dimmer value allowed. Most dimmers have a
maximum of 255, but dimmers with a maximum of 1000 can also be found. Try what works best.
- **color_temperature_max_value** (*Optional*, int, default 255): The highest color temperature
value allowed. Some ceiling fans have a value of 100 (also for `max_value`).
- **color_temperature_invert** (*Optional*, boolean, default false): Control how color temperature
values are sent to the MCU. If this is set to true ESPHome will treat 0 as warm white and
Defaults to 255.
- **color_temperature_max_value** (*Optional*, int): The highest color temperature
value allowed. Some ceiling fans have a value of 100 (also for `max_value`). Defaults to 255.
- **color_temperature_invert** (*Optional*, boolean): Control how color temperature values are
sent to the MCU. If this is set to true ESPHome will treat 0 as warm white and
**color_temperature_max_value** as cool white when setting **color_temperature_datapoint**.
Defaults to false.
- **cold_white_color_temperature** (*Optional*, float): The color temperature (in `mireds
<https://en.wikipedia.org/wiki/Mired>`__ or Kelvin) of the cold white channel.
- **warm_white_color_temperature** (*Optional*, float): The color temperature (in `mireds

View File

@ -59,7 +59,7 @@ Configuration variables:
- **id** (**Required**, :ref:`config-id`): The id to use for this MCP23008 component.
- **address** (*Optional*, int): The I²C address of the driver.
Defaults to ``0x20``.
- **open_drain_interrupt** (*Optional*, bool): Configure the interrupt pin to open-drain mode.
- **open_drain_interrupt** (*Optional*, boolean): Configure the interrupt pin to open-drain mode.
Useful when the MCP23008's power supply is greater than 3.3 volts. Note that this pin
will require a pull-up resistor (to 3.3 volts) when this mode is enabled.
@ -68,7 +68,7 @@ Pin configuration variables:
- **mcp23xxx** (**Required**, :ref:`config-id`): The id of the MCP23008 component.
- **interrupt** (*Optional*): Set this pin to trigger the INT pin on the component. Can be one of ``CHANGE``, ``RISING``, ``FALLING``.
- **number** (**Required**, integer): The pin number.
- **number** (**Required**, int): The pin number.
- **inverted** (*Optional*, boolean): If all read and written values
should be treated as inverted. Defaults to ``false``.
- **mode** (*Optional*, string): A pin mode to set for the pin at. One of ``INPUT`` or ``OUTPUT``.
@ -185,7 +185,7 @@ Configuration variables:
- **id** (**Required**, :ref:`config-id`): The id to use for this MCP23017 component.
- **address** (*Optional*, int): The I²C address of the driver.
Defaults to ``0x20``.
- **open_drain_interrupt** (*Optional*, bool): Configure interrupt pins to open-drain mode.
- **open_drain_interrupt** (*Optional*, boolean): Configure interrupt pins to open-drain mode.
Useful when the MCP23017's power supply is greater than 3.3 volts. Note that these pins
will require pull-up resistors (to 3.3 volts) when this mode is enabled.

View File

@ -62,7 +62,7 @@ Configuration variables:
- **cs_pin** (**Required**, int): The SPI chip select pin to use
- **deviceaddress** (*Optional*, int): The address of the chip.
Defaults to ``0``.
- **open_drain_interrupt** (*Optional*, bool): Configure interrupt pins to open-drain mode.
- **open_drain_interrupt** (*Optional*, boolean): Configure interrupt pins to open-drain mode.
Useful when the MCP23S08's power supply is greater than 3.3 volts. Note that these pins
will require pull-up resistors (to 3.3 volts) when this mode is enabled.
@ -130,7 +130,7 @@ Configuration variables:
- **cs_pin** (**Required**, int): The SPI chip select pin to use.
- **deviceaddress** (*Optional*, int): The address of the chip.
Defaults to ``0``.
- **open_drain_interrupt** (*Optional*, bool): Configure interrupt pins to open-drain mode.
- **open_drain_interrupt** (*Optional*, boolean): Configure interrupt pins to open-drain mode.
Useful when the MCP23S17's power supply is greater than 3.3 volts. Note that these pins
will require pull-up resistors (to 3.3 volts) when this mode is enabled.

View File

@ -27,7 +27,7 @@ Configuration variables:
This is useful for RS485 transeivers that do not have automatic flow control switching,
like the common MAX485.
- **send_wait_time** (*Optional*, :ref:`time`): Time in milliseconds before a new modbus command is sent if an answer from a previous command is pending. Defaults to 250 ms.
- **send_wait_time** (*Optional*, :ref:`config-time`): Time in milliseconds before a new modbus command is sent if an answer from a previous command is pending. Defaults to 250 ms.
If multiple modbus devices are attached increasing this value can help avoiding to to overlapping reads.
When 2 devices are sending a command at the same the the response read from uart can't be assigend to the proper design.
This value defines the maximumm queuing time for a command before it is send anyways.
@ -35,7 +35,15 @@ Configuration variables:
See Also
--------
- :doc:`/components/modbus_controller`
- :doc:`/components/sensor/modbus_controller`
- :doc:`/components/binary_sensor/modbus_controller`
- :doc:`/components/text_sensor/modbus_controller`
- :doc:`/components/switch/modbus_controller`
- :doc:`/components/number/modbus_controller`
- :doc:`/components/output/modbus_controller`
- :doc:`EPEVER MPPT Solar Charge Controller Tracer-AN Series</cookbook/tracer-an>`
- `Modbus RTU Protocol Description <https://www.modbustools.com/modbus.html>`__
- :ref:`uart`
- :apiref:`modbus/modbus.h`
- :ghedit:`Edit`

View File

@ -50,7 +50,7 @@ Configuration variables:
- **modbus_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the modbus hub.
- **address** (*Required*, :ref:`config-id`): The modbus address of the device
- **address** (**Required**, :ref:`config-id`): The modbus address of the device
Specify the modbus device address of the.
- **command_throttle** (*Optional*, int): minimum time in milliseconds between 2 requests to the device. Default is 0ms

View File

@ -64,7 +64,7 @@ Configuration variables:
- **ssl_fingerprints** (*Optional*, list): Only on ESP8266. A list of SHA1 hashes used
for verifying SSL connections. See :ref:`mqtt-ssl_fingerprints`
for more information.
- **reboot_timeout** (*Optional*, :ref:`time <config-time>`): The amount of time to wait before rebooting when no
- **reboot_timeout** (*Optional*, :ref:`config-time`): The amount of time to wait before rebooting when no
MQTT connection exists. Can be disabled by setting this to ``0s``. Defaults to ``15min``.
- **keepalive** (*Optional*, :ref:`config-time`): The time
to keep the MQTT socket alive, decreasing this can help with overall stability due to more
@ -314,7 +314,7 @@ Configuration variables:
- **topic** (**Required**, string): The MQTT topic to subscribe to and listen for MQTT
messages on. Every time a message with **this exact topic** is received, the automation will trigger.
- **qos** (*Optional*, integer): The MQTT Quality of Service to subscribe to the topic with. Defaults
- **qos** (*Optional*, int): The MQTT Quality of Service to subscribe to the topic with. Defaults
to 0.
- **payload** (*Optional*, string): Optionally set a payload to match. Only if exactly the payload
@ -396,7 +396,7 @@ Configuration variables:
- **topic** (**Required**, string): The MQTT topic to subscribe to and listen for MQTT
messages on. Every time a message with **this exact topic** is received, the automation will trigger.
- **qos** (*Optional*, integer): The MQTT Quality of Service to subscribe to the topic with. Defaults
- **qos** (*Optional*, int): The MQTT Quality of Service to subscribe to the topic with. Defaults
to 0.
.. note::

View File

@ -31,7 +31,7 @@ Configuration variables:
- FP32 (32 bit IEEE 754 floating point from 2 registers)
- FP32_R (32 bit IEEE 754 floating point - same as FP32 but low word first)
- **skip_updates**: (*Optional*, integer): By default all sensors of of a modbus_controller are updated together. For data points that don't change very frequently updates can be skipped. A value of 5 would only update this sensor range in every 5th update cycle
- **skip_updates**: (*Optional*, int): By default all sensors of of a modbus_controller are updated together. For data points that don't change very frequently updates can be skipped. A value of 5 would only update this sensor range in every 5th update cycle
Note: The modbus_controller groups component by address ranges to reduce number of transactions. All compoents with the same address will be updated in one request. skip_updates applies for all components in the same range.
- **register_count**: (*Optional*): only required for uncommon response encodings or to :ref:`optimize modbus communications<modbus_register_count>`
The number of registers this data point spans. Overrides the defaults determined by ``value_type``.

View File

@ -34,7 +34,7 @@ Configuration variables:
- **port** (*Optional*, int): The port to use for OTA updates. Defaults
to ``3232`` for the ESP32 and ``8266`` for the ESP8266.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- **reboot_timeout** (*Optional*, :ref:`time <config-time>`): The amount of time to wait before rebooting when in
- **reboot_timeout** (*Optional*, :ref:`config-time`): The amount of time to wait before rebooting when in
safe mode. Defaults to ``5min``.
- **num_attempts** (*Optional*, int): The number of attempts to wait before entering safe mode. Defaults to ``10``.
- **on_begin** (*Optional*, :ref:`Automation<automation>`): An action to be

View File

@ -43,9 +43,9 @@ global ``my9231`` hub and give it an id, and then define the
Configuration variables:
************************
- **data_pin** (**Required**, :ref:`config-pin_schema`): The pin which DI is connected
- **data_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin which DI is connected
to.
- **clock_pin** (**Required**, :ref:`config-pin_schema`): The pin which DCKI is
- **clock_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin which DCKI is
connected to.
- **num_channels** (*Optional*, int): Total number of channels of the whole
chain. Must be in range from 3 to 1020. Defaults to 6.

View File

@ -48,8 +48,8 @@ global ``sm16716`` hub and give it an id, and then define the
Configuration variables:
************************
- **data_pin** (**Required**, :ref:`config-pin_schema`): The pin used for MOSI.
- **clock_pin** (**Required**, :ref:`config-pin_schema`): The pin which SCLK is
- **data_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin used for MOSI.
- **clock_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin which SCLK is
connected to.
- **num_channels** (*Optional*, int): Total number of channels of the whole
chain. Must be in range from 3 to 255. Defaults to 3.

View File

@ -56,8 +56,8 @@ global ``sm2135`` hub and give it an id, and then define the
Configuration variables:
************************
- **data_pin** (**Required**, :ref:`config-pin_schema`): The pin used for MOSI.
- **clock_pin** (**Required**, :ref:`config-pin_schema`): The pin which SCLK is
- **data_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin used for MOSI.
- **clock_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin which SCLK is
connected to.
- **id** (*Optional*, :ref:`config-id`): The id to use for
this ``sm2135`` component. Use this if you have multiple SM2135 chains

View File

@ -46,10 +46,10 @@ global ``tlc5947`` hub and give it an id, and then define the
Configuration variables:
************************
- **data_pin** (**Required**, :ref:`config-pin_schema`): The pin connected to DIN.
- **clock_pin** (**Required**, :ref:`config-pin_schema`): The pin connected to CLK.
- **lat_pin** (**Required**, :ref:`config-pin_schema`): The pin connected to LAT.
- **oe_pin** (*Optional*, :ref:`config-pin_schema`): The pin connected to /OE (BLANK).
- **data_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin connected to DIN.
- **clock_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin connected to CLK.
- **lat_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin connected to LAT.
- **oe_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The pin connected to /OE (BLANK).
- **num_chips** (*Optional*, int): Number of chips in the chain. Must be
in range from 1 to 85. Defaults to 1.
- **id** (*Optional*, :ref:`config-id`): The id to use for

View File

@ -60,7 +60,7 @@ Pin configuration variables:
****************************
- **pcf8574** (**Required**, :ref:`config-id`): The id of the PCF8574 component of the pin.
- **number** (**Required**, integer): The pin number.
- **number** (**Required**, int): The pin number.
- **inverted** (*Optional*, boolean): If all read and written values
should be treated as inverted. Defaults to ``false``.
- **mode** (*Optional*, string): A pin mode to set for the pin at. One of ``INPUT`` or ``OUTPUT``.

View File

@ -50,9 +50,9 @@ Configuration variables:
on the ESP32 and ``1kB`` on the ESP8266.
- **memory_blocks** (*Optional*, int): The number of RMT memory blocks used. Only used on ESP32 platform. Defaults to
``3``.
- **filter** (*Optional*, :ref:`time <config-time>`): Filter any pulses that are shorter than this. Useful for removing
- **filter** (*Optional*, :ref:`config-time`): Filter any pulses that are shorter than this. Useful for removing
glitches from noisy signals. Defaults to ``50us``.
- **idle** (*Optional*, :ref:`time <config-time>`): The amount of time that a signal should remain stable (i.e. not
- **idle** (*Optional*, :ref:`config-time`): The amount of time that a signal should remain stable (i.e. not
change) for it to be considered complete. Defaults to ``10ms``.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. Use this if you have
multiple remote receivers.
@ -210,8 +210,8 @@ Remote code selection (exactly one of these has to be included):
- **dish**: Trigger on a decoded Dish Network remote code with the given data.
Beware that Dish remotes use a different carrier frequency (57.6kHz) that many receiver hardware don't decode.
- **address** (*Optional*, int, 1-16): The number of the receiver to target. Defaults to ``1``.
- **command** (**Required**, int, 0-63): The Dish command to listen for.
- **address** (*Optional*, int): The number of the receiver to target, between 1 and 16 inclusive. Defaults to ``1``.
- **command** (**Required**, int): The Dish command to listen for, between 0 and 63 inclusive.
- **rc_switch_raw**: Trigger on a decoded RC Switch raw remote code with the given data.

View File

@ -311,8 +311,8 @@ This :ref:`action <config-action>` sends a Dish Network infrared remote code to
Configuration variables:
- **address** (*Optional*, int, 1-16): The number of the receiver to target. Defaults to ``1``.
- **command** (**Required**, int, 0-63): The command to send.
- **address** (*Optional*, int): The number of the receiver to target, between 1 and 16 inclusive. Defaults to ``1``.
- **command** (**Required**, int): The command to send, between 0 and 63 inclusive.
- All other options from :ref:`remote_transmitter-transmit_action`.
You can find a list of commands in the `LIRC project <https://sourceforge.net/p/lirc-remotes/code/ci/master/tree/remotes/dishnet/Dish_Network.lircd.conf>`__.

View File

@ -51,7 +51,7 @@ and direction binary sensors.
Base Configuration:
- **address** (*Optional*, integer): The I²C address of the sensor. Defaults to ``0x39``.
- **address** (*Optional*, int): The I²C address of the sensor. Defaults to ``0x39``.
- **update_interval** (*Optional*, :ref:`config-time`): The interval
to check the sensor. Defaults to ``60s``.

View File

@ -80,24 +80,24 @@ Configuration variables:
- **cs_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The chip select pin.
- **irq_pin** (**Required**, :ref:`config-pin`): The IRQ pin, which indicates if a lightning strike has been detected.
- **indoor** (*Optional*, boolean): Indicates if the sensor is used indoor. Defaults to ``true``.
- **noise_level** (*Optional*, integer): Noise floor level is compared to known reference voltage.
- **noise_level** (*Optional*, int): Noise floor level is compared to known reference voltage.
If this level is exceeded the chip will issue an interrupt to the IRQ pin, broadcasting that it can not
operate properly due to noise (INT_NH). Defaults to ``2``.
- **spike_rejection** (*Optional*, integer): Helps to differentiate between false events and actual lightning.
- **spike_rejection** (*Optional*, int): Helps to differentiate between false events and actual lightning.
Increasing this value increases robustness at the cost of sensitivity to distant events. Defaults to ``2``.
- **lightning_threshold** (*Optional*, integer): The number of lightnings that must appear in a 15-minute time
- **lightning_threshold** (*Optional*, int): The number of lightnings that must appear in a 15-minute time
window before a lightning storm is detected.
15 minutes is the window of time before the number of detected lightning events is reset.
The number of lightning strikes can be set to 1,5,9, or 16. Defaults to ``1``.
- **mask_disturber** (*Optional*, boolean): This setting will return whether or not disturbers trigger
the IRQ Pin. Defaults to ``false``.
- **div_ratio** (*Optional*, integer): The antenna is designed to resonate at 500kHz and so can be tuned
- **div_ratio** (*Optional*, int): The antenna is designed to resonate at 500kHz and so can be tuned
with the following setting. The accuracy of the antenna must be within 3.5 percent of that value for
proper signal validation and distance estimation. Defaults to ``0``.
- **capacitance** (*Optional*, integer): This setting will add capacitance to the series RLC antenna on the product
- **capacitance** (*Optional*, int): This setting will add capacitance to the series RLC antenna on the product
to help tune its resonance. The datasheet specifies being within 3.5 percent of 500kHz to get optimal lightning
detection and distance sensing. It's possible to add up to 120pF in steps of 8pF to the antenna. Defaults to ``0``.
- **watchdog_threshold** (*Optional*, integer): Determines the threshold for events that trigger the IRQ pin.
- **watchdog_threshold** (*Optional*, int): Determines the threshold for events that trigger the IRQ pin.
Defaults to ``2``.
@ -133,24 +133,24 @@ Configuration variables:
The address is made up using the state of ``A0`` as bit 1 and the state of ``A1`` as bit 2, so a total of four addresses is possible.
- **irq_pin** (**Required**, :ref:`config-pin`): The IRQ pin, which indicates if a lightning strike has been detected.
- **indoor** (*Optional*, boolean): Indicates if the sensor is used indoor. Defaults to ``true``.
- **noise_level** (*Optional*, integer): Noise floor level is compared to known reference voltage.
- **noise_level** (*Optional*, int): Noise floor level is compared to known reference voltage.
If this level is exceeded the chip will issue an interrupt to the IRQ pin, broadcasting that it can not
operate properly due to noise (INT_NH). Defaults to ``2``.
- **spike_rejection** (*Optional*, integer): Helps to differentiate between false events and actual lightning.
- **spike_rejection** (*Optional*, int): Helps to differentiate between false events and actual lightning.
Increasing this value increases robustness at the cost of sensitivity to distant events. Defaults to ``2``.
- **lightning_threshold** (*Optional*, integer): The number of lightnings that must appear in a 15-minute time
- **lightning_threshold** (*Optional*, int): The number of lightnings that must appear in a 15-minute time
window before a lightning storm is detected.
15 minutes is the window of time before the number of detected lightning events is reset.
The number of lightning strikes can be set to 1,5,9, or 16. Defaults to ``1``.
- **mask_disturber** (*Optional*, boolean): This setting will return whether or not disturbers trigger
the IRQ Pin. Defaults to ``false``.
- **div_ratio** (*Optional*, integer): The antenna is designed to resonate at 500kHz and so can be tuned
- **div_ratio** (*Optional*, int): The antenna is designed to resonate at 500kHz and so can be tuned
with the following setting. The accuracy of the antenna must be within 3.5 percent of that value for
proper signal validation and distance estimation. Defaults to ``0``.
- **capacitance** (*Optional*, integer): This setting will add capacitance to the series RLC antenna on the product
- **capacitance** (*Optional*, int): This setting will add capacitance to the series RLC antenna on the product
to help tune its resonance. The datasheet specifies being within 3.5 percent of 500kHz to get optimal lightning
detection and distance sensing. It's possible to add up to 120pF in steps of 8pF to the antenna. Defaults to ``0``.
- **watchdog_threshold** (*Optional*, integer): Determines the threshold for events that trigger the IRQ pin.
- **watchdog_threshold** (*Optional*, int): Determines the threshold for events that trigger the IRQ pin.
Defaults to ``2``.

View File

@ -36,7 +36,7 @@ Configuration variables:
- **characteristic_uuid** (**Required**, UUID): UUID of the service's characteristic to query.
- **descriptor_uuid** (*Optional*, UUID): UUID of the characteristic's descriptor to query.
- **id** (*Optional*, :ref:`config-id`): The ID to use for code generation, and for reference by dependent components.
- **lambda** (*Optional*, :ref:`config-lambda`): The lambda to use for converting a raw data
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for converting a raw data
reading to a sensor value. See :ref:`ble-sensor-lambda` for more information.
- **notify** (*Optional*, boolean): Instruct the server to send notifications for this
characteristic.

View File

@ -41,9 +41,9 @@ data which this component decodes and updates the configured sensors at the pace
Configuration variables:
- **decryption_key** (*Optional*, string, :ref:`templatable <config-templatable>`, 32 characters, case insensitive):
The key to decrypt the telegrams. Used in Lux only.
- **gas_mbus_id** (*Optional*, integer): The id of the gas meter. Defaults to ``1``.
- **decryption_key** (*Optional*, string, :ref:`templatable <config-templatable>`, 32 characters, case insensitive): The key to decrypt the
telegrams. Used in Lux only.
- **gas_mbus_id** (*Optional*, int): The id of the gas meter. Defaults to ``1``.
- **crc_check** (*Optional*, boolean): Specifies if the CRC check must be done. This is required to be set to false for
older DSMR versions as they do not provide a CRC. Defaults to ``true``.
- **max_telegram_length** (*Optional*, integer): The size of the buffer used for reading DSMR telegrams. Increase
@ -51,7 +51,7 @@ Configuration variables:
- **uart_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the UART hub.
- **request_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The pin that can be used for controlling
the P1 port's Data Request pin. Defaults to not using a Data Request pin.
See :ref:`Using the P1 Data Request pin <sensor-dsmr-request_pin>`.
See :ref:`Using the P1 Data Request pin <sensor-dsmr-request_pin>`.
- **request_interval** (*Optional*, :ref:`config-time`): The minimum time between two telegram readings.
Defaults to ``0ms``, meaning that the pace at which the smart meter sends its data determines the update frequency.
This works best in combination with a ``request_pin``, but this option will work without one too.
@ -332,7 +332,7 @@ Version 2.2 is supported with the following configuration:
name: "gas delivered raw"
.. _sensor-dsmr-request_pin:
.. _sensor-dsmr-request_pin:
P1 Data Request pin
-------------------
@ -365,7 +365,7 @@ or a transistor-based circuit are not feasible options. Here's an example circui
.. figure:: images/dsmr-request-pin-circuit-example.png
.. _sensor-dsmr-improving_reader_results:
.. _sensor-dsmr-improving_reader_results:
Improving reader results
------------------------

View File

@ -99,6 +99,31 @@ the initial measurement mode to match whichever mode the device uses, and disabl
initial_mode: CURRENT
change_mode_every: 4294967295
SEL Pin Inversion
-----------------
If using model ``BL0937`` the function of the SEL pin is inverted compared to default. When SEL=0 current is measured,
when SEL=1 voltage is measured. To accommodate this change use the following configuration:
.. code-block:: yaml
# Example configuration entry for device BL0937 using inverted SEL pin functionality
sensor:
- platform: hlw8012
model: BL0937
sel_pin:
number: 12
inverted: true
cf_pin: 4
cf1_pin: 5
current:
name: "BL0937 Current"
voltage:
name: "BL0937 Voltage"
power:
name: "BL0937 Power"
update_interval: 60s
See Also
--------

View File

@ -43,7 +43,7 @@ Configuration variables:
of measurement the sensor should advertise its values with. This does
not actually do any maths (conversion between units).
- **device_class** (*Optional*, string): The device class for the
sensor. See https://www.home-assistant.io/integrations/sensor/#device-class
sensor. See https://developers.home-assistant.io/docs/core/entity/sensor/#available-device-classes
for a list of available options. Set to ``""`` to remove the default device class of a sensor.
- **state_class** (*Optional*, string): The state class for the
sensor. See https://developers.home-assistant.io/docs/core/entity/sensor/#available-state-classes
@ -252,15 +252,15 @@ window size will make the filter slow to react to input changes.
Configuration variables:
- **window_size** (*Optional*, integer): The number of values over which to calculate the median
- **window_size** (*Optional*, int): The number of values over which to calculate the median
when pushing out a value. This number should
be odd if you want an actual received value pushed out.
Defaults to ``5``.
- **send_every** (*Optional*, integer): How often a sensor value should be pushed out. For
- **send_every** (*Optional*, int): How often a sensor value should be pushed out. For
example, in above configuration the median is calculated after every 4th
received sensor value, over the last 7 received values.
Defaults to ``5``.
- **send_first_at** (*Optional*, integer): By default, the very first raw value on boot is immediately
- **send_first_at** (*Optional*, int): By default, the very first raw value on boot is immediately
published. With this parameter you can specify when the very first value is to be sent.
Must be smaller than or equal to ``send_every``
Defaults to ``1``.
@ -284,13 +284,13 @@ react to input changes.
Configuration variables:
- **window_size** (*Optional*, integer): The number of values over which to calculate the min/max when pushing out a
- **window_size** (*Optional*, int): The number of values over which to calculate the min/max when pushing out a
value. Defaults to ``5``.
- **send_every** (*Optional*, integer): How often a sensor value should be pushed out. For
- **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
received sensor value, over the last 7 received values.
Defaults to ``5``.
- **send_first_at** (*Optional*, integer): By default, the very first raw value on boot is immediately
- **send_first_at** (*Optional*, int): By default, the very first raw value on boot is immediately
published. With this parameter you can specify when the very first value is to be sent.
Must be smaller than or equal to ``send_every``
Defaults to ``1``.
@ -303,14 +303,14 @@ react to input changes.
Configuration variables:
- **window_size** (*Optional*, integer): The number of values over which to calculate the min/max
- **window_size** (*Optional*, int): The number of values over which to calculate the min/max
when pushing out a value.
Defaults to ``5``.
- **send_every** (*Optional*, integer): How often a sensor value should be pushed out. For
- **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
received sensor value, over the last 7 received values.
Defaults to ``5``.
- **send_first_at** (*Optional*, integer): By default, the very first raw value on boot is immediately
- **send_first_at** (*Optional*, int): By default, the very first raw value on boot is immediately
published. With this parameter you can specify when the very first value is to be sent.
Must be smaller than or equal to ``send_every``
Defaults to ``1``.
@ -335,12 +335,12 @@ out an average on a specific interval (thus increasing resolution).
Configuration variables:
- **window_size** (*Optional*, integer): The number of values over which to perform an
- **window_size** (*Optional*, int): The number of values over which to perform an
average when pushing out a value.
- **send_every** (*Optional*, integer): How often a sensor value should be pushed out. For
- **send_every** (*Optional*, int): How often a sensor value should be pushed out. For
example, in above configuration the weighted average is only
pushed out on every 15th received sensor value.
- **send_first_at** (*Optional*, integer): By default, the very first raw value on boot is immediately
- **send_first_at** (*Optional*, int): By default, the very first raw value on boot is immediately
published. With this parameter you can specify when the very first value is to be sent.
Defaults to ``1``.
@ -355,7 +355,7 @@ out an average on a specific interval (thus increasing resolution).
Configuration variables:
- **alpha** (*Optional*, float): The forget factor/alpha value of the filter. Defaults to ``0.1``.
- **send_every** (*Optional*, integer): How often a sensor value should be pushed out. Defaults to ``15``.
- **send_every** (*Optional*, int): How often a sensor value should be pushed out. Defaults to ``15``.
``throttle``
************

View File

@ -29,15 +29,15 @@ The :ref:`I²C Bus <i2c>` is required to be set up in your configuration for thi
Configuration variables:
------------------------
- **uv_index** (**Optional**): UV index (UVI). All options from :ref:`Sensor <config-sensor>`.
- **uv** (**Optional**): Sensor counts for the UV sensor (#). All options from :ref:`Sensor <config-sensor>`.
- **light** (**Optional**): Lux of ambient light (lx). All options from :ref:`Sensor <config-sensor>`.
- **ambient_light** (**Optional**): Sensor counts for the Ambient light sensor (#). All options from :ref:`Sensor <config-sensor>`.
- **gain** (**Optional**, string): Adjusts the sensitivity of the sensor. A larger value means higher sensitivity. See table below for details. Default is ``"X3"``.
- **resolution** (**Optional**, int): ADC resolution. Higher resolutions require longer sensor integration times. See table below for details. Default is ``18``.
- **window_correction_factor** (**Optional**, float): Window correction factor. Use larger values when using under tinted windows. Default is ``1.0``, must be ``>= 1.0``.
- **address** (**Optional**, int): Manually specify the I²C address of the sensor. Default is `0x53`.
- **update_interval** (**Optional**, :ref:`config-time`): The interval to check the
- **uv_index** (*Optional*): UV index (UVI). All options from :ref:`Sensor <config-sensor>`.
- **uv** (*Optional*): Sensor counts for the UV sensor (#). All options from :ref:`Sensor <config-sensor>`.
- **light** (*Optional*): Lux of ambient light (lx). All options from :ref:`Sensor <config-sensor>`.
- **ambient_light** (*Optional*): Sensor counts for the Ambient light sensor (#). All options from :ref:`Sensor <config-sensor>`.
- **gain** (*Optional*, string): Adjusts the sensitivity of the sensor. A larger value means higher sensitivity. See table below for details. Default is ``"X3"``.
- **resolution** (*Optional*, int): ADC resolution. Higher resolutions require longer sensor integration times. See table below for details. Default is ``18``.
- **window_correction_factor** (*Optional*, float): Window correction factor. Use larger values when using under tinted windows. Default is ``1.0``, must be ``>= 1.0``.
- **address** (*Optional*, int): Manually specify the I²C address of the sensor. Default is `0x53`.
- **update_interval** (*Optional*, :ref:`config-time`): The interval to check the
sensor. Defaults to ``60s``. It is recommended that the update interval is at least 1 second since updates can take up to 800ms when using a high resolution value.
Lux and UVI Formulas

View File

@ -37,7 +37,7 @@ Configuration variables:
- **name** (**Required**, string): The name for the temperature sensor.
- **cs_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The Chip Select pin of the SPI interface.
- **update_interval** (*Optional*, :ref:`config-time`): The interval to check the sensor. Defaults to ``60s``.
- **reference_temperature** (*Optional*, :ref:`Sensor <config-sensor>`): Access the internal temperature sensor of the MAX31855. Requires a **name** and/or **id**.
- **reference_temperature** (*Optional*, :ref:`config-id`): Access the internal temperature sensor of the MAX31855. Requires a **name** and/or **id**.
- **spi_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the :ref:`SPI Component <spi>` if you want to use multiple SPI buses.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`Sensor <config-sensor>`.

View File

@ -34,7 +34,7 @@ Configuration variables:
- FP32_R (32 bit IEEE 754 floating point - same as FP32 but low word first)s
- **bitmask**: (*Optional*) some values are packed in a response. The bitmask can be used to extract a value from the response. For example, if the high byte value register 0x9013 contains the minute value of the current time. To only exctract this value use bitmask: 0xFF00. The result will be automatically right shifted by the number of 0 before the first 1 in the bitmask. For 0xFF00 (0b1111111100000000) the result is shifted 8 posistions. More than one sensor can use the same address/offset if the bitmask is different.
- **skip_updates**: (*Optional*, integer): By default all sensors of of a modbus_controller are updated together. For data points that don't change very frequently updates can be skipped. A value of 5 would only update this sensor range in every 5th update cycle
- **skip_updates**: (*Optional*, int): By default all sensors of of a modbus_controller are updated together. For data points that don't change very frequently updates can be skipped. A value of 5 would only update this sensor range in every 5th update cycle
Note: The modbus_controller groups component by address ranges to reduce number of transactions. All compoents with the same address will be updated in one request. skip_updates applies for all components in the same range.
- **register_count**: (*Optional*): only required for uncommon response encodings or to :ref:`optimize modbus communications<modbus_register_count>`
The number of registers this data point spans. Overrides the defaults determined by ``value_type``.

View File

@ -60,18 +60,18 @@ Configuration variables:
- **component_name** (*Optional*, string): Manually specify the name of the Nextion component.
- **variable_name** (*Optional*, string): Manually specify the name of the Nextion variable.
- **update_interval** (*Optional*, :ref:`config-time`): The duration to update the sensor
- **precision** (*Optional*, uint8_t): This is for Nextion float components. This sets
- **precision** (*Optional*, int): This is for Nextion float components. This sets
the precision that the component is set to. This typically is the ``vvs1`` setting of the component.
- **background_color** (*Optional*, :ref:`config-color`): The background color
- **foreground_color** (*Optional*, :ref:`config-color`): The foreground color
- **visible** (*Optional*, boolean ): Visible or not
- **visible** (*Optional*, boolean): Visible or not
Waveform Settings
*****************
- **wave_channel_id** (*Optional*, uint8_t): The waveform ID in a range of 0-3
- **wave_max_value** (*Optional*, uint8_t): The max value. Set ``dis`` to the height of the component in the Nextion editor
- **wave_channel_id** (*Optional*, int): The waveform ID in a range of 0-3
- **wave_max_value** (*Optional*, int): The max value. Set ``dis`` to the height of the component in the Nextion editor
and this to the max value that will be sent. This will set up the proper scaling.
- **waveform_send_last_value** (*Optional*, uint8_t): This will send the last value set during an update interval. Setting to true will give a timeseries style graph
- **waveform_send_last_value** (*Optional*, int): This will send the last value set during an update interval. Setting to true will give a timeseries style graph
- **wave_max_length** (*Optional*, int): How many data points to store. Typically this is the width of the component in the Nextion
- **update_interval** (*Optional*, :ref:`config-time`): The duration to update the sensor. This typically should be set for waveforms to send periodic updates.

View File

@ -45,7 +45,7 @@ Configuration variables:
- **uart_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the :ref:`UART Component <uart>` if you want
to use multiple UART buses.
- **update_interval** (*Optional*, defaults to ``never``): If you need to actively request measurements to the sensor, set this to some sensible interval. The IKEA VINDRIKTNING does measurements every 20 seconds.
- **update_interval** (*Optional*, :ref:`config-time`): If you need to actively request measurements to the sensor, set this to some sensible interval. The IKEA VINDRIKTNING does measurements every 20 seconds. Defaults to never.
Using this component standalone
-------------------------------

View File

@ -63,7 +63,7 @@ Configuration variables:
All options from :ref:`Sensor <config-sensor>`.
- **pmc_10_0** (*Optional*): Count of particles with diameter > 10 um in 0.1 L of air (#/0.1L).
All options from :ref:`Sensor <config-sensor>`.
- **standard_units** (*Optional*, bool): ``True`` to use standard units or ``False`` to use environmental units. Defaults to ``True``.
- **standard_units** (*Optional*, boolean): ``True`` to use standard units or ``False`` to use environmental units. Defaults to ``True``.
- **address** (*Optional*, int): Manually specify the I²C address of the sensor.
Defaults to ``0x12``.
- **update_interval** (*Optional*, :ref:`config-time`): The interval to check the

View File

@ -27,7 +27,7 @@ Configuration variables:
time is detected, its discarded and no pulse is counted. Defaults to ``13us``. For S0 pulse meters that are used to meter power consumption 50-100 ms is a reasonable value.
- **timeout** (*Optional*, :ref:`config-time`): If we don't see a pulse for this length of time, we assume 0 pulses/sec. Defaults to ``5 min``.
- **total** (*Optional*, :ref:`Sensor <config-sensor>`): An additional sensor that outputs the total number of pulses counted.
- **total** (*Optional*, :ref:`config-id`): An additional sensor that outputs the total number of pulses counted.
- All other options from :ref:`Sensor <config-sensor>`.
Converting units

View File

@ -57,7 +57,7 @@ Configuration variables:
devices. This variable allows the compensation of those effects by
setting a temperature offset.
- **automatic_self_calibration** (*Optional*, bool): Whether to enable
- **automatic_self_calibration** (*Optional*, boolean): Whether to enable
automatic self calibration (ASC). Defaults to ``true``.
- **ambient_pressure_compensation** (*Optional*, int): Enable compensation

View File

@ -54,7 +54,7 @@ Configuration variables:
compensation of those effects by setting a temperature offset. Defaults to
``4°C``.
- **automatic_self_calibration** (*Optional*, bool): Whether to enable
- **automatic_self_calibration** (*Optional*, boolean): Whether to enable
automatic self calibration (ASC). Defaults to ``true``.
- **ambient_pressure_compensation** (*Optional*, int): Enable compensation

View File

@ -34,7 +34,7 @@ Configuration variables:
- **name** (**Required**, string): The name for the CO₂eq sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- **update_interval** (*Optional*, :ref:`config-time`): The interval to check the sensor. Defaults to ``60s``
- **store_baseline** (*Optional*, boolean ): Stores and retrieves the baseline information for quicker startups. Defaults to ``true``
- **store_baseline** (*Optional*, boolean): Stores and retrieves the baseline information for quicker startups. Defaults to ``true``
- **compensation** (*Optional*): The block containing sensors used for compensation. If not set defaults will be used.

View File

@ -63,7 +63,7 @@ Configuration variables:
(mega counts per second). This is the minimum signal amplitude detected by the sensor necessary
for it to report a valid reading. Setting a lower value may increase the range of the sensor
but also increases the chance of getting inaccurate readings. Defaults to ``0.25``.
- **long_range** (*Optional*, bool): Set the sensor in long range mode. The signal_rate_limit is overruled
- **long_range** (*Optional*, boolean): Set the sensor in long range mode. The signal_rate_limit is overruled
to ``0.1``. Defaults to ``false``.
- **address** (*Optional*, int): Manually specify the i2c address of the sensor. Defaults to ``0x29``.
If an address other the ``0x29`` is specified, the sensor will be dynamically re-addressed at startup.

View File

@ -57,7 +57,7 @@ Pin configuration variables:
****************************
- **sn74hc595** (**Required**, :ref:`config-id`): The id of the SN74HC595 component of the pin.
- **number** (**Required**, integer): The pin number.
- **number** (**Required**, int): The pin number.
- **inverted** (*Optional*, boolean): If all written values should be treated as inverted.
Defaults to ``false``.

View File

@ -14,15 +14,15 @@ Configuration variables:
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- **name** (**Required**, string): The name of the sensor.
- **modbus_functioncode** (**Required**): type of the modbus register.
- **address**: (**Required**, integer): start address of the first register in a range
- **offset**: (*Optional*, integer): not required in most cases
- **address**: (**Required**, int): start address of the first register in a range
- **offset**: (*Optional*, int): not required in most cases
offset from start address in bytes. If more than one register is read a modbus read registers command this value is used to find the start of this datapoint relative to start address. The component calculates the size of the range based on offset and size of the value type
The value for offset depends on the register type. For holding input registers the offset is in bytes. For coil and discrete input resisters the LSB of the first data byte contains the coil addressed in the request. The other coils follow toward the high-order end of this byte and from low order to high order in subsequent bytes. For the registers offset is the position of the relevant bit.
To get the value of the coil register 2 can be retrived using address: 2 / offset: 0 or address: 0 / offset 2
- **bitmask** : some values are packed in a response. The bitmask is used to determined if the result is true or false
- **skip_updates**: (*Optional*, integer): By default all sensors of of a modbus_controller are updated together. For data points that don't change very frequently updates can be skipped. A value of 5 would only update this sensor range in every 5th update cycle
- **skip_updates**: (*Optional*, int): By default all sensors of of a modbus_controller are updated together. For data points that don't change very frequently updates can be skipped. A value of 5 would only update this sensor range in every 5th update cycle
- **use_write_multiple**: (*Optional*, boolean): By default the modbus command ``Force Single Coil`` (function code 5) is used to send state changes to the device. If your device only supports ``Force Multiple Coils`` (function code 15) set this option to true.
- **custom_data** (*Optional*, list of bytes): raw bytes for modbus command. This allows using non-standard commands. If ``custom_data`` is used ``address`` and ``register_type`` can't be used.
- **custom_data** (*Optional*, list of bytes): raw bytes for modbus command. This allows using non-standard commands. If ``custom_data`` is used ``address`` and ``register_type`` can't be used.
custom data must contain all required bytes including the modbus device address. The crc is automatically calculated and appended to the command.
See :ref:`modbus_custom_data` how to use ``custom_command``
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`):

View File

@ -43,7 +43,7 @@ Configuration variables:
- **background_pressed_color** (*Optional*, :ref:`config-color`): The background color when pressed
- **foreground_color** (*Optional*, :ref:`config-color`): The foreground color
- **foreground_pressed_color** (*Optional*, :ref:`config-color`): The foreground color when pressed
- **visible** (*Optional*, boolean ): Visible or not
- **visible** (*Optional*, boolean): Visible or not
- All other options from :ref:`Switch <config-switch>`.
**Only one** *component_name* **or** *variable_name* **can be set**

View File

@ -186,7 +186,7 @@ The outputs can in turn be used to add PWM-enabled lights like the monochromatic
- **sx1509** (**Required**, :ref:`config-id`): The id of the SX1509 component of the pin.
- **number** (**Required**, integer): The pin number.
- **number** (**Required**, int): The pin number.
- **inverted** (*Optional*, boolean): If all read and written values
should be treated as inverted. Defaults to ``false``.
- **mode** (*Optional*, string): A pin mode to set for the pin at. One of ``INPUT``,

View File

@ -17,21 +17,22 @@ Configuration variables:
- discrete_input: discrete input register (read only coil) are similar to coils but can only be read.
- holding: Holding Registers - Holding registers are the most universal 16-bit register. Read and Write access
- read: Read Input Registers - registers are 16-bit registers used for input, and may only be read
- **address**: (**Required**, integer): start address of the first register in a range
- **address**: (**Required**, int): start address of the first register in a range
- **bitmask**: (*Optional*) some values are packed in a response. The bitmask can be used to extract a value from the response. For example, if the high byte value register 0x9013 contains the minute value of the current time. To only exctract this value use bitmask: 0xFF00. The result will be automatically right shifted by the number of 0 before the first 1 in the bitmask. For 0xFF00 (0b1111111100000000) the result is shifted 8 posistions. More than one sensor can use the same address/offset if the bitmask is different.
- **skip_updates**: (*Optional*, integer): By default all sensors of of a modbus_controller are updated together. For data points that don't change very frequently updates can be skipped. A value of 5 would only update this sensor range in every 5th update cycle
- **skip_updates**: (*Optional*, int): By default all sensors of of a modbus_controller are updated together. For data points that don't change very frequently updates can be skipped. A value of 5 would only update this sensor range in every 5th update cycle
- **register_count**: (*Optional*): The number of registers this data point spans. Default is 1
- **response_size**: (**Required**):response number of bytes of the response
- **raw_encode**: (*Optional*, NONE , HEXBYTES, COMMA) If the response is binary it can't be published directly. Since a text sensor only publishes strings the binary data can encoded
- HEXBYTES: 2 byte hex string. 0x2011 will be sent as "2011".
- COMMA: Byte values as integers, delimited by a coma. 0x2011 will be sent as "32,17"
- **force_new_range**: (*Optional*, boolean): If possible sensors with sequential addresses are grouped together and requested in one range. Setting ``force_new_range: true`` enforces the start of a new range at that address.
- **custom_data** (*Optional*, list of bytes): raw bytes for modbus command. This allows using non-standard commands. If ``custom_data`` is used ``address`` and ``register_type`` can't be used.
- **raw_encode**: (*Optional*, enum) If the response is binary it can't be published directly. Since a text sensor only publishes strings the binary data can encoded
- ``NONE``: Don't encode data.
- ``HEXBYTES``: 2 byte hex string. 0x2011 will be sent as "2011".
- ``COMMA``: Byte values as integers, delimited by a coma. 0x2011 will be sent as "32,17"
- **force_new_range**: (*Optional*, boolean): If possible sensors with sequential addresses are grouped together and requested in one range. Setting `foce_new_range: true` enforces the start of a new range at that address.
- **custom_data** (*Optional*, list of bytes): raw bytes for modbus command. This allows using non-standard commands. If ``custom_data`` is used ``address`` and ``register_type`` can't be used.
custom data must contain all required bytes including the modbus device address. The crc is automatically calculated and appended to the command.
See :ref:`modbus_custom_data` how to use ``custom_command``
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`):
Lambda to be evaluated every update interval to get the new value of the text_sensor
- **offset**: (*Optional*, integer): not required in most cases
Lambda to be evaluated every update interval to get the new value of the sensor
- **offset**: (*Optional*, int): not required in most cases
offset from start address in bytes. If more than one register is read a modbus read registers command this value is used to find the start of this datapoint relative to start address. The component calculates the size of the range based on offset and size of the value type

View File

@ -38,8 +38,8 @@ Configuration variables:
- **update_interval** (*Optional*, :ref:`config-time`): The duration to update the sensor. If using a :ref:`nextion_custom_text_sensor_protocol` this should not be used
- **background_color** (*Optional*, :ref:`config-color`): The background color
- **foreground_color** (*Optional*, :ref:`config-color`): The foreground color
- **font_id** (*Optional*, uint8_t): The font id for the component
- **visible** (*Optional*, boolean ): Visible or not
- **font_id** (*Optional*, int): The font id for the component
- **visible** (*Optional*, boolean): Visible or not
- All other options from :ref:`Text Sensor <config-text_sensor>`.
**Only one** *component_name* **or** *variable_name* **can be set**

View File

@ -149,7 +149,7 @@ of the debugging feature.
- **delimiter** (*Optional*, string or list of bytes): Trigger after the specified sequence of bytes is
detected in the communication.
- **sequence** (*Optional*, :ref:`config-action`): Action(s) to perform for publishing debugging data.
- **sequence** (*Optional*, :ref:`Action <config-action>`): Action(s) to perform for publishing debugging data.
Defaults to an action that logs the bytes in hex format. The actions can make use of the following variables:
- **direction**: ``uart::UART_DIRECTION_RX`` or ``uart::UART_DIRECTION_TX``

View File

@ -59,13 +59,13 @@ Configuration variables:
Defaults to 1.
- **manual_ip** (*Optional*): Manually set the IP options for the AP. Same options as
manual_ip for station mode.
- **ap_timeout** (*Optional*, :ref:`time <config-time>`): The time after which to enable the
- **ap_timeout** (*Optional*, :ref:`config-time`): The time after which to enable the
configured fallback hotspot. Defaults to ``1min``.
- **domain** (*Optional*, string): Set the domain of the node hostname used for uploading.
For example, if it's set to ``.local``, all uploads will be sent to ``<HOSTNAME>.local``.
Defaults to ``.local``.
- **reboot_timeout** (*Optional*, :ref:`time <config-time>`): The amount of time to wait before rebooting when no
- **reboot_timeout** (*Optional*, :ref:`config-time`): The amount of time to wait before rebooting when no
WiFi connection exists. Can be disabled by setting this to ``0s``, but note that the low level IP stack currently
seems to have issues with WiFi where a full reboot is required to get the interface back working. Defaults to ``15min``.
- **power_save_mode** (*Optional*, string): The power save mode for the WiFi interface.

View File

@ -531,9 +531,9 @@ turns on a light for 5 seconds. Otherwise, the light is turned off immediately.
Configuration variables:
- **condition** (**Required**, :ref:`config-condition`): The condition to check which branch to take. See :ref:`Conditions <config-condition>`.
- **then** (*Optional*, :ref:`config-action`): The action to perform if the condition evaluates to true.
- **then** (*Optional*, :ref:`Action <config-action>`): The action to perform if the condition evaluates to true.
Defaults to doing nothing.
- **else** (*Optional*, :ref:`config-action`): The action to perform if the condition evaluates to false.
- **else** (*Optional*, :ref:`Action <config-action>`): The action to perform if the condition evaluates to false.
Defaults to doing nothing.
.. _while_action:
@ -559,7 +559,7 @@ a block until a given condition evaluates to false.
Configuration variables:
- **condition** (**Required**): The condition to check whether to execute. See :ref:`Conditions <config-condition>`.
- **then** (**Required**, :ref:`config-action`): The action to perform until the condition evaluates to false.
- **then** (**Required**, :ref:`Action <config-action>`): The action to perform until the condition evaluates to false.
.. _repeat_action:
@ -582,8 +582,8 @@ For example, the automation below will flash the light five times.
Configuration variables:
- **count** (**Required**, integer): The number of times the action should be repeated.
- **then** (**Required**, :ref:`config-action`): The action to repeat.
- **count** (**Required**, int): The number of times the action should be repeated.
- **then** (**Required**, :ref:`Action <config-action>`): The action to repeat.
.. _wait_until_action:
@ -677,9 +677,9 @@ Configuration variables:
- ``queued``: Start a new run after previous runs complete.
- ``parallel``: Start a new, independent run in parallel with previous runs.
- **max_runs** (*Optional*, integer): Allows limiting the maxiumun number of runs when using script
- **max_runs** (*Optional*, int): Allows limiting the maxiumun number of runs when using script
modes ``queued`` and ``parallel``, use value ``0`` for unlimited runs. Defaults to ``0``.
- **then** (**Required**, :ref:`config-action`): The action to perform.
- **then** (**Required**, :ref:`Action <config-action>`): The action to perform.
.. _script-execute_action:
@ -816,7 +816,7 @@ trigger, but this technique is more light-weight and user-friendly.
Configuration variables:
- **interval** (**Required**, :ref:`config-time`): The interval to execute the action with.
- **then** (**Required**, :ref:`config-action`): The action to perform.
- **then** (**Required**, :ref:`Action <config-action>`): The action to perform.
Timers and timeouts

View File

@ -14,7 +14,7 @@ Example configuration
# These substitutions allow the end user to override certain values
substitutions:
name: "jesses-temperature-monitor"
name: "project-template-32"
esphome:
name: "${name}"
@ -25,17 +25,25 @@ Example configuration
# This will allow for (future) project identification,
# configuration and updates.
project:
name: jesse.temperature_monitor
name: esphome.project-template
version: "1.0"
# To be able to get logs from the device via serial and api.
logger:
# API is a requirement of the dashboard import.
api:
# OTA is required for Over-the-Air updating
ota:
# This should point to the public location of this yaml file.
dashboard_import:
package_import_url: github://jesserockz/dummy-esphome-configs/temperature-monitor.yaml@v6
package_import_url: github://esphome/esphome-project-template/project-template-esp32.yaml@v6
wifi:
# Set up a wifi access point
ap:
ssid: jesses_temperature_monitor
password: "12345678"
# In combination with the `ap` this allows the user
@ -47,8 +55,7 @@ Example configuration
esp32_improv:
authorizer: none
logger:
# Sets up the improv via serial client for Wi-Fi provisioning
improv_serial:

View File

@ -19,6 +19,8 @@ Your product has to match the following requirements:
- Your project is powered by ESPHome
- Your ESPHome configuration is open source
- Users should be able to apply updates if your project sells ready-made devices
- Your project supports adoption via the ``dashboard_import`` feature of ESPHome
(see :doc:`Sharing </guides/creators>`)
- Your product name cannot contain **ESPHome** except in the case of *ending with* **for ESPHome**
When your project matches all requirements of the Made for ESPHome program,

View File

@ -130,6 +130,7 @@ Contributors
- `Clifford Roche (@cmroche) <https://github.com/cmroche>`__
- `CODeRUS (@CODeRUS) <https://github.com/CODeRUS>`__
- `Cody James (@codyjamestechnical) <https://github.com/codyjamestechnical>`__
- `Conclusio (@Conclusio) <https://github.com/Conclusio>`__
- `John Coggeshall (@coogle) <https://github.com/coogle>`__
- `James Crook (@cooljimy84) <https://github.com/cooljimy84>`__
- `copercini (@copercini) <https://github.com/copercini>`__
@ -755,4 +756,4 @@ Contributors
- `ZTX18 (@ZTX18) <https://github.com/ZTX18>`__
- `Christian Zufferey (@zuzu59) <https://github.com/zuzu59>`__
*This page was last updated November 26, 2021.*
*This page was last updated November 29, 2021.*