Many example yaml tidy-ups

This commit is contained in:
Jesse Hills 2024-05-07 05:03:16 +00:00
parent 435ac13488
commit bab084cd69
No known key found for this signature in database
GPG Key ID: BEAAE804EFD8E83A
148 changed files with 898 additions and 1542 deletions

View File

@ -27,8 +27,8 @@ Configuration variables:
- **codes** (*Optional*, list of string): A list of codes for disarming the alarm, if *requires_code_to_arm* set to true then for arming the alarm too. - **codes** (*Optional*, list of string): A list of codes for disarming the alarm, if *requires_code_to_arm* set to true then for arming the alarm too.
- **requires_code_to_arm** (*Optional*, boolean): Code required for arming the alarm, *codes* must be provided. - **requires_code_to_arm** (*Optional*, boolean): Code required for arming the alarm, *codes* must be provided.
- **arming_away_time** (*Optional*, :ref:`config-time`): The exit delay before the alarm is armed to away mode. Defaults to ``0s``. - **arming_away_time** (*Optional*, :ref:`config-time`): The exit delay before the alarm is armed to away mode. Defaults to ``0s``.
- **arming_home_time** (*Optional*, :ref:`config-time`): The exit delay before the alarm is armed to home mode. - **arming_home_time** (*Optional*, :ref:`config-time`): The exit delay before the alarm is armed to home mode.
- **arming_night_time** (*Optional*, :ref:`config-time`): The exit delay before the alarm is armed to night mode. - **arming_night_time** (*Optional*, :ref:`config-time`): The exit delay before the alarm is armed to night mode.
- **pending_time** (*Optional*, :ref:`config-time`): The entry delay before the alarm is triggered. Defaults to ``0s``. - **pending_time** (*Optional*, :ref:`config-time`): The entry delay before the alarm is triggered. Defaults to ``0s``.
- **trigger_time** (*Optional*, :ref:`config-time`): The time after a triggered alarm before resetting to previous state if the sensors are cleared/off. Defaults to ``0s``. - **trigger_time** (*Optional*, :ref:`config-time`): The time after a triggered alarm before resetting to previous state if the sensors are cleared/off. Defaults to ``0s``.
- **binary_sensors** (*Optional*, *list*): A list of binary sensors the panel should use. Each consists of: - **binary_sensors** (*Optional*, *list*): A list of binary sensors the panel should use. Each consists of:
@ -169,7 +169,7 @@ Example:
name: Zone 1 name: Zone 1
device_class: door device_class: door
pin: pin:
number: D1 number: GPIOXX
mode: INPUT_PULLUP mode: INPUT_PULLUP
inverted: True inverted: True
- platform: gpio - platform: gpio
@ -177,7 +177,7 @@ Example:
name: Zone 2 name: Zone 2
device_class: door device_class: door
pin: pin:
number: D2 number: GPIOXX
mode: INPUT_PULLUP mode: INPUT_PULLUP
inverted: True inverted: True
- platform: gpio - platform: gpio
@ -185,7 +185,7 @@ Example:
name: Zone 3 name: Zone 3
device_class: motion device_class: motion
pin: pin:
number: D3 number: GPIOXX
mode: INPUT_PULLUP mode: INPUT_PULLUP
inverted: True inverted: True
- platform: gpio - platform: gpio
@ -193,7 +193,7 @@ Example:
name: Zone 4 name: Zone 4
device_class: door device_class: door
pin: pin:
number: D4 number: GPIOXX
mode: INPUT_PULLUP mode: INPUT_PULLUP
inverted: True inverted: True
- platform: homeassistant - platform: homeassistant
@ -206,7 +206,7 @@ Example:
id: siren id: siren
name: Siren name: Siren
icon: mdi:alarm-bell icon: mdi:alarm-bell
pin: D7 pin: GPIOXX
See Also See Also

View File

@ -32,17 +32,6 @@ a :doc:`/components/i2c` component (and its requisite GPIO pins) is required in
id: "Radar" id: "Radar"
i2c_id: bus_a i2c_id: bus_a
binary_sensor:
- platform: gpio
pin: GPIO21
name: "Radar motion"
switch:
# Switch to turn on/off RF emission
- platform: at581x
at581x_id: "Radar"
name: "Enable Radar"
.. _at581x-component: .. _at581x-component:
Component/Hub Component/Hub
@ -87,7 +76,7 @@ The state of the radar detection is available via its GPIO pin. It's required to
binary_sensor: binary_sensor:
- platform: gpio - platform: gpio
name: "Human in front" name: "Human in front"
pin: GPIO21 pin: GPIOXX
Configuration variables: Configuration variables:
************************ ************************
@ -127,8 +116,8 @@ Actions
.. warning:: .. warning::
The hardware frontend reset option is only required to reset the frontend in case it is struck, before sending the The hardware frontend reset option is only required to reset the frontend in case it is struck, before sending the
new configuration. However, a frontend reset is always performed after changing the settings. new configuration. However, a frontend reset is always performed after changing the settings.
The radar has several settings which can be changed. These settings are not saved in non-volatile memory The radar has several settings which can be changed. These settings are not saved in non-volatile memory
and need to be set on each boot. and need to be set on each boot.

View File

@ -30,7 +30,7 @@ required to be set up in your configuration for this sensor to work.
cap1188: cap1188:
id: cap1188_component id: cap1188_component
address: 0x29 address: 0x29
reset_pin: 14 reset_pin: GPIOXX
touch_threshold: 0x40 touch_threshold: 0x40
allow_multiple_touches: true allow_multiple_touches: true

View File

@ -130,8 +130,8 @@ an ``OFF`` state.
binary_sensor: binary_sensor:
- platform: esp32_touch - platform: esp32_touch
name: "ESP32 Touch Pad GPIO27" name: "ESP32 Touch Pad"
pin: GPIO27 pin: GPIOXX
threshold: 1000 threshold: 1000
Configuration variables: Configuration variables:
@ -164,7 +164,7 @@ If access to the raw values is required, a template sensor can be created that p
binary_sensor: binary_sensor:
- platform: esp32_touch - platform: esp32_touch
id: esp32_touch_pad id: esp32_touch_pad
pin: GPIO4 pin: GPIOXX
threshold: 0 threshold: 0
sensor: sensor:
@ -174,8 +174,8 @@ If access to the raw values is required, a template sensor can be created that p
return id(esp32_touch_pad).get_value(); return id(esp32_touch_pad).get_value();
update_interval: 3s update_interval: 3s
One example of use is a wide area pressure sensor that integrates a number of smaller sensors in an area. Make two strips One example of use is a wide area pressure sensor that integrates a number of smaller sensors in an area. Make two strips
of aluminium foil that sandwich paper, and connect one wire to a touch pin and the other to ground. Set up several sensors of aluminium foil that sandwich paper, and connect one wire to a touch pin and the other to ground. Set up several sensors
under a flexible object like a plastic mat, add the raw values, and apply a threshold. under a flexible object like a plastic mat, add the raw values, and apply a threshold.
.. _esp32-touch-pad-pins: .. _esp32-touch-pad-pins:

View File

@ -17,17 +17,17 @@ Additional sensors for Haier Climate device. **These sensors are supported only
# Example configuration entry # Example configuration entry
uart: uart:
baud_rate: 9600 baud_rate: 9600
tx_pin: 17 tx_pin: GPIOXX
rx_pin: 16 rx_pin: GPIOXX
id: ac_port id: ac_port
climate: climate:
- platform: haier - platform: haier
id: haier_ac id: haier_ac
protocol: hOn protocol: hOn
name: Haier AC name: Haier AC
uart_id: ac_port uart_id: ac_port
binary_sensor: binary_sensor:
- platform: haier - platform: haier
haier_id: haier_ac haier_id: haier_ac
@ -56,9 +56,9 @@ Configuration variables:
All options from :ref:`Binary Sensor <config-binary_sensor>`. All options from :ref:`Binary Sensor <config-binary_sensor>`.
- **indoor_electric_heating_status** (*Optional*): A binary sensor that indicates electrical heating system activity. - **indoor_electric_heating_status** (*Optional*): A binary sensor that indicates electrical heating system activity.
All options from :ref:`Binary Sensor <config-binary_sensor>`. All options from :ref:`Binary Sensor <config-binary_sensor>`.
- **indoor_fan_status** (*Optional*): A binary sensor that indicates indoor fan activity. - **indoor_fan_status** (*Optional*): A binary sensor that indicates indoor fan activity.
All options from :ref:`Binary Sensor <config-binary_sensor>`. All options from :ref:`Binary Sensor <config-binary_sensor>`.
- **outdoor_fan_status** (*Optional*): A binary sensor that indicates outdoor fan activity. - **outdoor_fan_status** (*Optional*): A binary sensor that indicates outdoor fan activity.
All options from :ref:`Binary Sensor <config-binary_sensor>`. All options from :ref:`Binary Sensor <config-binary_sensor>`.
See Also See Also

View File

@ -12,12 +12,6 @@ For this sensor to work, a :doc:`/components/sensor/hydreon_rgxx` must be set up
.. code-block:: yaml .. code-block:: yaml
# Example RG-9 entry # Example RG-9 entry
uart:
rx_pin: GPIO16
tx_pin: GPIO17
baud_rate: 9600
sensor: sensor:
- platform: hydreon_rgxx - platform: hydreon_rgxx
model: "RG_9" model: "RG_9"

View File

@ -42,7 +42,7 @@ you can then create individual binary sensors that track if an NFC/RFID tag is c
spi: spi:
rc522_spi: rc522_spi:
cs_pin: GPIO15 cs_pin: GPIOXX
binary_sensor: binary_sensor:
- platform: rc522 - platform: rc522

View File

@ -17,7 +17,7 @@ momentarily set a GPIO pin using a button.
# Example configuration entry # Example configuration entry
output: output:
- platform: gpio - platform: gpio
pin: 25 pin: GPIOXX
id: output1 id: output1
button: button:

View File

@ -11,10 +11,6 @@ The ``uart`` button platform allows you to send a pre-defined sequence of bytes
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
uart:
baud_rate: 9600
tx_pin: D0
button: button:
- platform: uart - platform: uart
name: "UART String Output" name: "UART String Output"

View File

@ -69,7 +69,7 @@ Configuration variables:
- ``12K5BPS`` - Support by ``esp32_can`` depends on ESP32 variant - ``12K5BPS`` - Support by ``esp32_can`` depends on ESP32 variant
- ``16KBPS`` - Support by ``esp32_can`` depends on ESP32 variant - ``16KBPS`` - Support by ``esp32_can`` depends on ESP32 variant
- ``20KBPS`` - Support by ``esp32_can`` depends on ESP32 variant - ``20KBPS`` - Support by ``esp32_can`` depends on ESP32 variant
- ``25KBPS`` - ``25KBPS``
- ``31K25BPS`` - Not supported by ``esp32_can`` - ``31K25BPS`` - Not supported by ``esp32_can``
- ``33KBPS`` - Not supported by ``esp32_can`` - ``33KBPS`` - Not supported by ``esp32_can``
- ``40KBPS`` - Not supported by ``esp32_can`` - ``40KBPS`` - Not supported by ``esp32_can``
@ -197,8 +197,8 @@ You only need to specify the RX and TX pins. Any GPIO will work.
# Example configuration entry # Example configuration entry
canbus: canbus:
- platform: esp32_can - platform: esp32_can
tx_pin: GPIO5 tx_pin: GPIOXX
rx_pin: GPIO4 rx_pin: GPIOXX
can_id: 4 can_id: 4
bit_rate: 50kbps bit_rate: 50kbps
on_frame: on_frame:
@ -209,28 +209,28 @@ You only need to specify the RX and TX pins. Any GPIO will work.
The table lists the specific bit rates supported by the component for ESP32 variants: The table lists the specific bit rates supported by the component for ESP32 variants:
=================== ======= ========== ========== ========== ========== ========== =================== ======= ========== ========== ========== ========== ==========
bit_rate ESP32 ESP32-S2 ESP32-S3 ESP32-C3 ESP32-C6 ESP32-H2 bit_rate ESP32 ESP32-S2 ESP32-S3 ESP32-C3 ESP32-C6 ESP32-H2
=================== ======= ========== ========== ========== ========== ========== =================== ======= ========== ========== ========== ========== ==========
1KBPS x x x x x 1KBPS x x x x x
5KBPS x x x x x 5KBPS x x x x x
10KBPS x x x x x 10KBPS x x x x x
12K5BPS x x x x x 12K5BPS x x x x x
16KBPS x x x x x 16KBPS x x x x x
20KBPS x x x x x 20KBPS x x x x x
25KBPS x x x x x x 25KBPS x x x x x x
31K25BPS 31K25BPS
33KBPS 33KBPS
40KBPS 40KBPS
50KBPS x x x x x x 50KBPS x x x x x x
80KBPS 80KBPS
83K38BPS 83K38BPS
95KBPS 95KBPS
100KBPS x x x x x x 100KBPS x x x x x x
125KBPS (Default) x x x x x x 125KBPS (Default) x x x x x x
250KBPS x x x x x x 250KBPS x x x x x x
500KBPS x x x x x x 500KBPS x x x x x x
800KBPS x x x x x x 800KBPS x x x x x x
1000KBPS x x x x x x 1000KBPS x x x x x x
=================== ======= ========== ========== ========== ========== ========== =================== ======= ========== ========== ========== ========== ==========
@ -273,7 +273,7 @@ For wiring up the MSP2515 please refer to the section below.
# Example configuration entry # Example configuration entry
canbus: canbus:
- platform: mcp2515 - platform: mcp2515
cs_pin: D5 cs_pin: GPIOXX
can_id: 4 can_id: 4
bit_rate: 50kbps bit_rate: 50kbps
on_frame: on_frame:
@ -359,7 +359,7 @@ Standard IDs and Extended IDs can coexist on the same segment.
- platform: mcp2515 - platform: mcp2515
id: my_mcp2515 id: my_mcp2515
spi_id: McpSpi spi_id: McpSpi
cs_pin: GPIO14 cs_pin: GPIOXX
can_id: 0x1fff can_id: 0x1fff
use_extended_id: true use_extended_id: true
bit_rate: 125kbps bit_rate: 125kbps
@ -385,9 +385,9 @@ Button is connected on a can node which sends an A message on ID 0x100 with payl
spi: spi:
id: McpSpi id: McpSpi
clk_pin: GPIO16 clk_pin: GPIOXX
mosi_pin: GPIO5 mosi_pin: GPIOXX
miso_pin: GPIO4 miso_pin: GPIOXX
binary_sensor: binary_sensor:
- platform: template - platform: template
@ -398,7 +398,7 @@ Button is connected on a can node which sends an A message on ID 0x100 with payl
- platform: mcp2515 - platform: mcp2515
id: my_mcp2515 id: my_mcp2515
spi_id: McpSpi spi_id: McpSpi
cs_pin: GPIO14 cs_pin: GPIOXX
can_id: 4 can_id: 4
bit_rate: 125kbps bit_rate: 125kbps
on_frame: on_frame:
@ -430,15 +430,15 @@ Buttons are connected on the CAN-Node and also the motor is connected via CAN.
spi: spi:
id: McpSpi id: McpSpi
clk_pin: GPIO16 clk_pin: GPIOXX
mosi_pin: GPIO5 mosi_pin: GPIOXX
miso_pin: GPIO4 miso_pin: GPIOXX
canbus: canbus:
- platform: mcp2515 - platform: mcp2515
id: my_mcp2515 id: my_mcp2515
spi_id: McpSpi spi_id: McpSpi
cs_pin: GPIO14 cs_pin: GPIOXX
can_id: 4 can_id: 4
bit_rate: 125kbps bit_rate: 125kbps
on_frame: on_frame:

View File

@ -76,7 +76,7 @@ controller unit.
# Example configuration entry # Example configuration entry
remote_transmitter: remote_transmitter:
pin: GPIO32 pin: GPIOXX
carrier_duty_percent: 50% carrier_duty_percent: 50%
climate: climate:
@ -156,7 +156,7 @@ IR receiver.
remote_receiver: remote_receiver:
id: rcvr id: rcvr
pin: pin:
number: GPIO14 number: GPIOXX
inverted: true inverted: true
mode: mode:
input: true input: true
@ -283,8 +283,8 @@ Configuration variables:
- **set_fan_mode** (*Optional*, string): Select the fan modes desired or that are supported on your remote. Defaults to ``3levels`` - **set_fan_mode** (*Optional*, string): Select the fan modes desired or that are supported on your remote. Defaults to ``3levels``
- Options are: ``3levels`` , ``4levels``, ``quiet_4levels``. - Options are: ``3levels`` , ``4levels``, ``quiet_4levels``.
- ``3levels``; Low [fan speed 1], Medium [2], High [3] - ``3levels``; Low [fan speed 1], Medium [2], High [3]
- ``4levels``; Low [1], Middle [2], Medium [3], High [4] - ``4levels``; Low [1], Middle [2], Medium [3], High [4]
- ``quiet_4levels``; Low [1], Middle [2], Medium [3], High [4], Quiet [5] - ``quiet_4levels``; Low [1], Middle [2], Medium [3], High [4], Quiet [5]
@ -292,10 +292,10 @@ Configuration variables:
- **supports_dry** (*Optional*, boolean): Enables setting dry mode for this unit. Defaults to ``false``. - **supports_dry** (*Optional*, boolean): Enables setting dry mode for this unit. Defaults to ``false``.
- **supports_fan_only** (*Optional*, boolean): Enables setting fan only mode for this unit. Confirm that mode is supported on your remote. Defaults to ``false``. - **supports_fan_only** (*Optional*, boolean): Enables setting fan only mode for this unit. Confirm that mode is supported on your remote. Defaults to ``false``.
- **horizontal_default** (*Optional*, string): What to default to when the AC unit's horizontal direction is *not* set to swing. Defaults to ``middle``. - **horizontal_default** (*Optional*, string): What to default to when the AC unit's horizontal direction is *not* set to swing. Defaults to ``middle``.
- Options are: ``left``, ``middle-left``, ``middle``, ``middle-right``, ``right``, ``auto`` - Options are: ``left``, ``middle-left``, ``middle``, ``middle-right``, ``right``, ``auto``
- **vertical_default** (*Optional*, string): What to default to when the AC unit's vertical direction is *not* set to swing. Defaults to ``middle``. - **vertical_default** (*Optional*, string): What to default to when the AC unit's vertical direction is *not* set to swing. Defaults to ``middle``.
- Options are: ``down``, ``middle-down``, ``middle``, ``middle-up``, ``up``, ``auto`` - Options are: ``down``, ``middle-down``, ``middle``, ``middle-up``, ``up``, ``auto``
@ -423,8 +423,8 @@ Configuration variables:
``zhlt01`` Climate ``zhlt01`` Climate
--------------------- ---------------------
ZH/LT-01 is a remote control that is used with many locally branded split airconditioners. ZH/LT-01 is a remote control that is used with many locally branded split airconditioners.
Supported brands include: Supported brands include:
- Eurom - Eurom
- Chigo - Chigo

View File

@ -58,18 +58,11 @@ This component requires a :ref:`uart` to be setup.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
uart:
baud_rate: 9600
tx_pin: 17
rx_pin: 16
id: ac_port
climate: climate:
- platform: haier - platform: haier
id: haier_ac id: haier_ac
protocol: hOn protocol: hOn
name: Haier AC name: Haier AC
uart_id: ac_port uart_id: ac_port
wifi_signal: true wifi_signal: true
beeper: true beeper: true

View File

@ -25,17 +25,6 @@ The ``midea`` component creates a Midea air conditioner climate device.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
# Disable logging over UART (required)
logger:
baud_rate: 0
# UART settings for Midea dongle (required)
uart:
tx_pin: 1 # hardware dependant
rx_pin: 3 # hardware dependant
baud_rate: 9600
# Main settings # Main settings
climate: climate:
- platform: midea - platform: midea

View File

@ -31,16 +31,7 @@ will be required.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
uart:
tx_pin: GPIO2
rx_pin: GPIO5
baud_rate: 9600
# Declare DFPlayer mini module
dfplayer: dfplayer:
on_finished_playback:
then:
logger.log: 'Somebody press play!'
Configuration variables: Configuration variables:
------------------------ ------------------------
@ -114,11 +105,11 @@ Configuration options:
``dfplayer.play_mp3`` Action ``dfplayer.play_mp3`` Action
---------------------------- ----------------------------
Plays a track inside the folder ``mp3``. Files inside the folder must be numbered from 1 Plays a track inside the folder ``mp3``. Files inside the folder must be numbered from 1
to 9999, like ``0001.mp3``, ``0002.mp3``, ... etc. to 9999, like ``0001.mp3``, ``0002.mp3``, ... etc.
The folder name needs to be ``mp3``, placed under the SD card root directory, and the The folder name needs to be ``mp3``, placed under the SD card root directory, and the
mp3 file name needs to be 4 digits, for example, "0001.mp3", placed under the mp3 folder. mp3 file name needs to be 4 digits, for example, "0001.mp3", placed under the mp3 folder.
If you want, you can add additional text after the number in the filename, for example, If you want, you can add additional text after the number in the filename, for example,
``0001hello.mp3``, but must always be referenced by number only in yaml. ``0001hello.mp3``, but must always be referenced by number only in yaml.
.. code-block:: bash .. code-block:: bash
@ -345,8 +336,8 @@ Sample code
.. code-block:: yaml .. code-block:: yaml
uart: uart:
tx_pin: GPIO2 tx_pin: GPIOXX
rx_pin: GPIO5 rx_pin: GPIOXX
baud_rate: 9600 baud_rate: 9600
dfplayer: dfplayer:

View File

@ -19,18 +19,6 @@ The display requires that an :apiclass:`AddressableLight <light::AddressableLigh
.. code-block:: yaml .. code-block:: yaml
light:
- platform: fastled_clockless
chipset: WS2812B
pin: GPIO4
num_leds: 64
rgb_order: GRB
name: "led_matrix"
id: led_matrix_light
default_transition_length: 0s
color_correct: [50%, 50%, 50%]
restore_mode: ALWAYS_ON
display: display:
- platform: addressable_light - platform: addressable_light
id: led_matrix_display id: led_matrix_display
@ -61,10 +49,10 @@ Configuration variables:
- **update_interval** (*Optional*, :ref:`config-time`): The interval to call the lambda to update the display. - **update_interval** (*Optional*, :ref:`config-time`): The interval to call the lambda to update the display.
Defaults to ``16ms``. Defaults to ``16ms``.
- **pixel_mapper** (*Optional*, :ref:`lambda <config-lambda>`): A lambda that returns the integer address of the LED - **pixel_mapper** (*Optional*, :ref:`lambda <config-lambda>`): A lambda that returns the integer address of the LED
given the supplied the ``x`` and ``y`` pixel coordinate. By default, a left-to-right direct pixel mapper is used. given the supplied the ``x`` and ``y`` pixel coordinate. By default, a left-to-right direct pixel mapper is used.
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the display. - **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the display.
``it`` will be an instance of :apiclass:`DisplayBuffer <display::DisplayBuffer>`. ``it`` will be an instance of :apiclass:`DisplayBuffer <display::DisplayBuffer>`.
See :ref:`display-engine` for more information. See :ref:`display-engine` for more information.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. - **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
@ -73,7 +61,7 @@ Configuration variables:
When enabled (the default, but also via ``it.set_enabled(true)``), any effect currently running on the When enabled (the default, but also via ``it.set_enabled(true)``), any effect currently running on the
addressable light will be disabled. When disabled (``it.set_enabled(false)``), the last configured effect will addressable light will be disabled. When disabled (``it.set_enabled(false)``), the last configured effect will
be restored. be restored.
While the display is enabled, it is still possible to control the parent addressable light component in some While the display is enabled, it is still possible to control the parent addressable light component in some
limited capacity. Changing the brightness will still work, but changing the color will have no affect. It is not limited capacity. Changing the brightness will still work, but changing the color will have no affect. It is not
adivsable to enable any effects (ex: rainbow, color wipe, etc) while the display is enabled, as this will cause a adivsable to enable any effects (ex: rainbow, color wipe, etc) while the display is enabled, as this will cause a

View File

@ -55,8 +55,8 @@ beyond the basic SPI connections, and a reasonable amount of RAM, it is not well
display: display:
- platform: ili9xxx - platform: ili9xxx
model: ili9341 model: ili9341
dc_pin: 27 dc_pin: GPIOXX
reset_pin: 33 reset_pin: GPIOXX
lambda: |- lambda: |-
it.fill(COLOR_BLACK); it.fill(COLOR_BLACK);
it.print(0, 0, id(my_font), id(my_red), TextAlign::TOP_LEFT, "Hello World!"); it.print(0, 0, id(my_font), id(my_red), TextAlign::TOP_LEFT, "Hello World!");
@ -180,13 +180,13 @@ To configure a dimmable backlight:
# Define a PWM output on the ESP32 # Define a PWM output on the ESP32
output: output:
- platform: ledc - platform: ledc
pin: 32 pin: GPIOXX
id: gpio_32_backlight_pwm id: backlight_pwm
# Define a monochromatic, dimmable light for the backlight # Define a monochromatic, dimmable light for the backlight
light: light:
- platform: monochromatic - platform: monochromatic
output: gpio_32_backlight_pwm output: backlight_pwm
name: "Display Backlight" name: "Display Backlight"
id: back_light id: back_light
restore_mode: ALWAYS_ON restore_mode: ALWAYS_ON
@ -204,8 +204,8 @@ To configure an image adaptive color pallet to show greater than 8 bit color dep
display: display:
- platform: ili9xxx - platform: ili9xxx
model: ili9341 model: ili9341
dc_pin: 4 dc_pin: GPIOXX
reset_pin: 22 reset_pin: GPIOXX
rotation: 90 rotation: 90
id: tft_ha id: tft_ha
color_palette: IMAGE_ADAPTIVE color_palette: IMAGE_ADAPTIVE
@ -234,7 +234,7 @@ This config rotates the display into landscape mode using the driver chip.
mirror_y: true mirror_y: true
color_order: bgr color_order: bgr
data_rate: 80MHz data_rate: 80MHz
cs_pin: 10 cs_pin: GPIOXX
dc_pin: GPIO13 dc_pin: GPIO13
reset_pin: GPIO9 reset_pin: GPIO9

View File

@ -5,8 +5,8 @@ Character-Based LCD Display
:description: Instructions for setting up character-based HD44780 LCD displays. :description: Instructions for setting up character-based HD44780 LCD displays.
:image: lcd.jpg :image: lcd.jpg
The ``lcd_pcf8574`` and ``lcd_gpio`` display components allow you to use HD44780-compatible, character-based LCD displays The ``lcd_pcf8574`` and ``lcd_gpio`` display components allow you to use HD44780-compatible, character-based LCD displays
with ESPHome. This integration is only for LCD displays that display individual characters on a screen with ESPHome. This integration is only for LCD displays that display individual characters on a screen
(usually 8-40 columns and 2-4 rows), and not for LCD displays that can control each pixel individually. (usually 8-40 columns and 2-4 rows), and not for LCD displays that can control each pixel individually.
.. figure:: images/lcd-hello_world.jpg .. figure:: images/lcd-hello_world.jpg
@ -15,12 +15,12 @@ with ESPHome. This integration is only for LCD displays that display individual
.. note:: .. note::
Multiple versions of the display exist, supporting different character sets: Multiple versions of the display exist, supporting different character sets:
- HD44780UA00 English-Japanese which includes katakana characters, some Greek letters and mathematical symbols - HD44780UA00 English-Japanese which includes katakana characters, some Greek letters and mathematical symbols
- HD44780UA02 English-European which includes Greek, Cyrillic and Western European characters (with some diacritics) - HD44780UA02 English-European which includes Greek, Cyrillic and Western European characters (with some diacritics)
- HD44780UBxx custom, manufacturer-specific character sets - HD44780UBxx custom, manufacturer-specific character sets
It is also possible to add eight user-defined characters. It is also possible to add eight user-defined characters.
.. _lcd-pcf8574: .. _lcd-pcf8574:
@ -28,7 +28,7 @@ with ESPHome. This integration is only for LCD displays that display individual
lcd_pcf8574 Component lcd_pcf8574 Component
--------------------- ---------------------
``lcd_pcf8574`` is for LCD displays with a PCF8574 GPIO expander module connected to all the data pins. This has the ``lcd_pcf8574`` is for LCD displays with a PCF8574 GPIO expander module connected to all the data pins. This has the
benefit that you only need to connect two data wires to the ESP instead of the six or ten as with the :ref:`lcd-gpio`. benefit that you only need to connect two data wires to the ESP instead of the six or ten as with the :ref:`lcd-gpio`.
The communication happens via :ref:`I²C Bus <i2c>`, you need to have an ``i2c:`` section in your configuration. The communication happens via :ref:`I²C Bus <i2c>`, you need to have an ``i2c:`` section in your configuration.
@ -65,7 +65,7 @@ Configuration variables:
.. note:: .. note::
If you're not seeing anything on the display, try turning the contrast potentiometer around on the If you're not seeing anything on the display, try turning the contrast potentiometer around on the
PCF8574 board. PCF8574 board.
.. _lcd-gpio: .. _lcd-gpio:
@ -74,7 +74,7 @@ lcd_gpio Component
------------------ ------------------
The ``lcd_gpio`` version of this component addresses the screen directly and does not employ a GPIO expander module. The ``lcd_gpio`` version of this component addresses the screen directly and does not employ a GPIO expander module.
Each of the data pins of the LCD needs a dedicated GPIO pin on the ESP. Connecting the screen this way offers Each of the data pins of the LCD needs a dedicated GPIO pin on the ESP. Connecting the screen this way offers
faster refresh, especially in conjunction with an :ref:`LCD Menu <lcd_menu>`. faster refresh, especially in conjunction with an :ref:`LCD Menu <lcd_menu>`.
.. figure:: images/lcd_gpio.svg .. figure:: images/lcd_gpio.svg
@ -90,12 +90,12 @@ faster refresh, especially in conjunction with an :ref:`LCD Menu <lcd_menu>`.
- platform: lcd_gpio - platform: lcd_gpio
dimensions: 20x4 dimensions: 20x4
data_pins: data_pins:
- GPIO32 - GPIOXX
- GPIO33 - GPIOXX
- GPIO5 - GPIOXX
- GPIO17 - GPIOXX
enable_pin: D4 enable_pin: GPIOXX
rs_pin: D5 rs_pin: GPIOXX
lambda: |- lambda: |-
it.print("Hello World!"); it.print("Hello World!");
@ -105,8 +105,8 @@ Configuration variables:
- **dimensions** (**Required**, string): The dimensions of the display with ``COLUMNSxROWS``. If you're not - **dimensions** (**Required**, string): The dimensions of the display with ``COLUMNSxROWS``. If you're not
sure, power the display on, turn contrast high up and just count them. sure, power the display on, turn contrast high up and just count them.
- **data_pins** (**Required**, list of :ref:`pins <config-pin_schema>`): A list of the data pins you - **data_pins** (**Required**, list of :ref:`pins <config-pin_schema>`): A list of the data pins you
have hooked up to the LCD. The list can either be 4 items long (operating in 4-bit mode with have hooked up to the LCD. The list can either be 4 items long (operating in 4-bit mode with
either the first 4 data pins connected or the last 4 data pins connected), or 8 items long (when you have either the first 4 data pins connected or the last 4 data pins connected), or 8 items long (when you have
connected all 8 data pins). connected all 8 data pins).
- **enable_pin** (**Required**, :ref:`pin <config-pin_schema>`): The pin you have ``E`` (``06``) hooked up to. - **enable_pin** (**Required**, :ref:`pin <config-pin_schema>`): The pin you have ``E`` (``06``) hooked up to.
- **rs_pin** (**Required**, :ref:`pin <config-pin_schema>`): The pin you have ``RS`` (``04``) hooked up to. - **rs_pin** (**Required**, :ref:`pin <config-pin_schema>`): The pin you have ``RS`` (``04``) hooked up to.
@ -118,7 +118,7 @@ Configuration variables:
.. note:: .. note::
If you're not seeing anything on the display, make sure you apply ``3.3V`` to the ``VEE`` (``03``) contrast control If you're not seeing anything on the display, make sure you apply ``3.3V`` to the ``VEE`` (``03``) contrast control
pin of the board. You can use a potentiometer to make it adjustable. pin of the board. You can use a potentiometer to make it adjustable.
@ -177,7 +177,7 @@ The LCD display has the possibility to define up to eight user defined character
``0`` to ``7`` and mirrored at ``8`` to ``15`` (i.e. ``\x08`` can be used instead of the ``\0`` that can ``0`` to ``7`` and mirrored at ``8`` to ``15`` (i.e. ``\x08`` can be used instead of the ``\0`` that can
be problematic in strings). Each character has eight lines of five bits, with the first line on the top be problematic in strings). Each character has eight lines of five bits, with the first line on the top
and the most significant bit on the left, meaning that ``0b10000`` followed by six zeros and a ``0b00001`` and the most significant bit on the left, meaning that ``0b10000`` followed by six zeros and a ``0b00001``
defines a dot at the upper left and lower right of the character. defines a dot at the upper left and lower right of the character.
.. code-block:: yaml .. code-block:: yaml
@ -221,7 +221,7 @@ Keep in mind that the display lambda runs for every ``update_interval``, so if t
it cannot be overridden from other parts. it cannot be overridden from other parts.
With the ``lcd_gpio``, the backlight is lit by applying ``Vcc`` to the ``BLA`` (``15``) pin and connect ``BLK`` (``16``) With the ``lcd_gpio``, the backlight is lit by applying ``Vcc`` to the ``BLA`` (``15``) pin and connect ``BLK`` (``16``)
pin to ``GND``. The backlight can draw more power than the microcontroller output pins can supply, so it is advisable pin to ``GND``. The backlight can draw more power than the microcontroller output pins can supply, so it is advisable
to use a transistor as a switch to control the power for the backlight pins. to use a transistor as a switch to control the power for the backlight pins.
Below an example for a typical use-case where the backlight is turned on when a motion sensor activates and Below an example for a typical use-case where the backlight is turned on when a motion sensor activates and

View File

@ -18,15 +18,15 @@ with ESPHome.
As the communication with the Nextion LCD display is done using UART, you need to have an :ref:`UART bus <uart>` As the communication with the Nextion LCD display is done using UART, you need to have an :ref:`UART bus <uart>`
in your configuration with ``rx_pin`` both the ``tx_pin`` set to the respective pins on the display. in your configuration with ``rx_pin`` both the ``tx_pin`` set to the respective pins on the display.
The Nextion uses a baud rate of 9600 by default. It may be configured to use a faster speed by adding (for The Nextion uses a baud rate of 9600 by default. It may be configured to use a faster speed by adding (for
example) example)
.. code-block:: c++ .. code-block:: c++
baud=115200 // Sets the baud rate to 115200 baud=115200 // Sets the baud rate to 115200
bkcmd=0 // Tells the Nextion to not send responses on commands. This is the current default but can be set just in case bkcmd=0 // Tells the Nextion to not send responses on commands. This is the current default but can be set just in case
to the ``program.s`` source file (in the Nextion Editor) before the ``page`` line. to the ``program.s`` source file (in the Nextion Editor) before the ``page`` line.
This permits faster communication with the Nextion display and it is highly recommended when using :ref:`uart-hardware_uarts`. Without a hardware uart make sure to set the baud rate to 9600. This permits faster communication with the Nextion display and it is highly recommended when using :ref:`uart-hardware_uarts`. Without a hardware uart make sure to set the baud rate to 9600.
@ -36,17 +36,9 @@ The below example configures a UART for the Nextion display to use
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
uart:
id: uart_2
rx_pin: GPIO16
tx_pin: GPIO17
baud_rate: 115200
display: display:
- platform: nextion - platform: nextion
id: nextion1 id: nextion1
uart_id: uart_2
lambda: |- lambda: |-
it.set_component_value("gauge", 50); it.set_component_value("gauge", 50);
it.set_component_text("textview", "Hello World!"); it.set_component_text("textview", "Hello World!");
@ -73,7 +65,7 @@ Configuration variables:
- **on_wake** (*Optional*, :ref:`Action <config-action>`): An action to be performed when the Nextion wakes up. See :ref:`Nextion Automation <nextion-on_sleep>`. - **on_wake** (*Optional*, :ref:`Action <config-action>`): An action to be performed when the Nextion wakes up. See :ref:`Nextion Automation <nextion-on_sleep>`.
- **on_page** (*Optional*, :ref:`Action <config-action>`): An action to be performed after a page change. See :ref:`Nextion Automation <nextion-on_page>`. - **on_page** (*Optional*, :ref:`Action <config-action>`): An action to be performed after a page change. See :ref:`Nextion Automation <nextion-on_page>`.
- **on_touch** (*Optional*, :ref:`Action <config-action>`): An action to be performed after a touch event (press or release). See :ref:`Nextion Automation <nextion-on_touch>`. - **on_touch** (*Optional*, :ref:`Action <config-action>`): An action to be performed after a touch event (press or release). See :ref:`Nextion Automation <nextion-on_touch>`.
.. _display-nextion_lambda: .. _display-nextion_lambda:
Rendering Lambda Rendering Lambda
@ -113,7 +105,7 @@ Lambda Calls
************ ************
Several methods are available for use within :ref:`lambdas <config-lambda>`; these permit advanced functionality beyond simple Several methods are available for use within :ref:`lambdas <config-lambda>`; these permit advanced functionality beyond simple
display updates. See the full :apiref:`nextion/nextion.h` for more info. display updates. See the full :apiref:`nextion/nextion.h` for more info.
.. _nextion_upload_tft: .. _nextion_upload_tft:
@ -126,7 +118,7 @@ The developer tools in Home Assistant can be used to trigger the update. The bel
services: services:
- service: update_nextion - service: update_nextion
then: then:
- lambda: 'id(nextion1)->upload_tft();' - lambda: 'id(nextion1)->upload_tft();'
.. _nextion_update_all_components: .. _nextion_update_all_components:
@ -178,7 +170,7 @@ The developer tools in Home Assistant can be used to trigger the update. The bel
.. _nextion_queue_types: .. _nextion_queue_types:
Queue Types: Queue Types:
- SENSOR 0 - SENSOR 0
- BINARY_SENSOR 1 - BINARY_SENSOR 1
- SWITCH 2 - SWITCH 2
@ -291,7 +283,7 @@ The following arguments will be available:
Uploading A TFT File Uploading A TFT File
-------------------- --------------------
This will download the file from the tft_url and will transfer it over the UART to the Nextion. This will download the file from the tft_url and will transfer it over the UART to the Nextion.
Once completed both the ESP and Nextion will reboot. During the upload process esphome will be Once completed both the ESP and Nextion will reboot. During the upload process esphome will be
unresponsive and no logging will take place. This uses the same protocol as the Nextion editor and unresponsive and no logging will take place. This uses the same protocol as the Nextion editor and
only updates the changes of the TFT file. If HTTPS/SSL is enabled it will be about 1kB/sec. only updates the changes of the TFT file. If HTTPS/SSL is enabled it will be about 1kB/sec.
@ -304,7 +296,7 @@ To host the TFT file you can use Home Assistant itself or any other web server.
Home Assistant Home Assistant
************** **************
To host the TFT file from Home Assistant, create a www directory if it doesn't exist in your config To host the TFT file from Home Assistant, create a www directory if it doesn't exist in your config
directory. You can create a subdirectory for those files as well. directory. You can create a subdirectory for those files as well.
For example if the file is located For example if the file is located
@ -321,8 +313,8 @@ The below NGINX example configuration will serve files out of the /var/www/nexti
.. code-block:: nginx .. code-block:: nginx
server { server {
listen 80; listen 80;
access_log /var/log/nginx/nextion_access.log; access_log /var/log/nginx/nextion_access.log;
error_log /var/log/nginx/nextion_error.log; error_log /var/log/nginx/nextion_error.log;
root /var/www/nextion; root /var/www/nextion;
} }

View File

@ -50,9 +50,9 @@ ESP-IDF. PSRAM is a requirement due to the size of the display buffer. A :ref:`q
color_order: rgb color_order: rgb
invert_colors: false invert_colors: false
brightness: 255 brightness: 255
cs_pin: 11 cs_pin: GPIOXX
reset_pin: 13 reset_pin: GPIOXX
enable_pin: 9 enable_pin: GPIOXX
Configuration variables: Configuration variables:
@ -150,17 +150,17 @@ Lilygo T-Display S3 AMOLED
- 7 - 7
- 48 - 48
- 5 - 5
i2c: i2c:
sda: 3 sda: 3
scl: 2 scl: 2
touchscreen: touchscreen:
- platform: cst816 - platform: cst816
id: my_touchscreen id: my_touchscreen
interrupt_pin: interrupt_pin:
number: 21 number: 21
display: display:
- platform: qspi_amoled - platform: qspi_amoled
model: RM67162 model: RM67162

View File

@ -40,17 +40,13 @@ to an ESP module.
.. code-block:: yaml .. code-block:: yaml
# Example minimal configuration entry # Example minimal configuration entry
spi:
clk_pin: GPIO18
mosi_pin: GPIO19
display: display:
- platform: st7789v - platform: st7789v
model: TTGO TDisplay 135x240 model: TTGO TDisplay 135x240
backlight_pin: GPIO4 backlight_pin: GPIOXX
cs_pin: GPIO5 cs_pin: GPIOXX
dc_pin: GPIO16 dc_pin: GPIOXX
reset_pin: GPIO23 reset_pin: GPIOXX
lambda: |- lambda: |-
it.print(0, 0, id(font), "Hello World!"); it.print(0, 0, id(font), "Hello World!");
@ -191,7 +187,7 @@ Items marked RQ are hardware dependent but required and not preset. Items marked
- 22 - 22
- 23 - 23
- 4 - 4
- -
- 18 - 18
- 19 - 19
* - Custom * - Custom

View File

@ -22,10 +22,10 @@ The LCD have four signal, ``cs`` for chip select, ``data`` for data signal, ``re
display: display:
platform: tm1621 platform: tm1621
id: tm1621_display id: tm1621_display
cs_pin: GPIO17 cs_pin: GPIOXX
data_pin: GPIO5 data_pin: GPIOXX
read_pin: GPIO23 read_pin: GPIOXX
write_pin: GPIO18 write_pin: GPIOXX
lambda: |- lambda: |-
it.printf(0, "%.1f", id(my_sensor1).state); it.printf(0, "%.1f", id(my_sensor1).state);
it.display_celsius(true); it.display_celsius(true);
@ -82,7 +82,7 @@ Also we have five function to display or not some unites:
- °F on the first line : ``display_fahrenheit(bool)`` - °F on the first line : ``display_fahrenheit(bool)``
- %HR on the second line : ``display_humidity(bool)`` - %HR on the second line : ``display_humidity(bool)``
- V on the first line and A on the second line : ``display_voltage(bool)`` - V on the first line and A on the second line : ``display_voltage(bool)``
- kW/h on the first line and W on the second line : ``display_kwh(bool)`` - kW/h on the first line and W on the second line : ``display_kwh(bool)``
See Also See Also
-------- --------

View File

@ -23,9 +23,9 @@ The module can be powered with 5v DC. To display the colon punctuation use the
display: display:
platform: tm1638 platform: tm1638
id: tm1638_display id: tm1638_display
stb_pin: 5 stb_pin: GPIOXX
clk_pin: 18 clk_pin: GPIOXX
dio_pin: 23 dio_pin: GPIOXX
intensity: 5 intensity: 5
update_interval: 5s update_interval: 5s
lambda: |- lambda: |-
@ -113,9 +113,9 @@ The following example creates a typical digital clock with the ``:`` colon flash
display: display:
platform: tm1638 platform: tm1638
clk_pin: 18 clk_pin: GPIOXX
dio_pin: 23 dio_pin: GPIOXX
stb_pin: 5 stb_pin: GPIOXX
update_interval: 500ms update_interval: 500ms
lambda: |- lambda: |-
static int i = 0; static int i = 0;
@ -132,16 +132,16 @@ The TM1638 7 Segment Display Keypad & LED Module has 8 LED lights across the top
.. code-block:: yaml .. code-block:: yaml
switch: switch:
- platform: tm1638 - platform: tm1638
id: TM1638Led1 id: TM1638Led1
led: 0 led: 0
output: output:
- platform: tm1638 - platform: tm1638
id: TM1638Led2 id: TM1638Led2
led: 1 led: 1
Buttons Buttons
@ -163,7 +163,7 @@ The TM1638 7 Segment Display Keypad & LED Module has 8 buttons across the top or
on_release: on_release:
then: then:
- switch.turn_off: TM1638Led1 - switch.turn_off: TM1638Led1
- platform: tm1638 - platform: tm1638
name: "TM1638 Button 2" name: "TM1638 Button 2"
id: TM1638Button2 id: TM1638Button2

View File

@ -14,16 +14,16 @@ directly integrate into Home Assistant through the native API.
esp32_camera: esp32_camera:
name: My Camera name: My Camera
external_clock: external_clock:
pin: GPIO27 pin: GPIOXX
frequency: 20MHz frequency: 20MHz
i2c_pins: i2c_pins:
sda: GPIO25 sda: GPIOXX
scl: GPIO23 scl: GPIOXX
data_pins: [GPIO17, GPIO35, GPIO34, GPIO5, GPIO39, GPIO18, GPIO36, GPIO19] data_pins: [GPIOXX, GPIOXX, GPIOXX, GPIOXX, GPIOXX, GPIOXX, GPIOXX, GPIOXX]
vsync_pin: GPIO22 vsync_pin: GPIOXX
href_pin: GPIO26 href_pin: GPIOXX
pixel_clock_pin: GPIO21 pixel_clock_pin: GPIOXX
reset_pin: GPIO15 reset_pin: GPIOXX
resolution: 640x480 resolution: 640x480
jpeg_quality: 10 jpeg_quality: 10

View File

@ -17,8 +17,8 @@ This component and the Wi-Fi component may **not** be used simultaneously, even
# Example configuration entry for RMII chips # Example configuration entry for RMII chips
ethernet: ethernet:
type: LAN8720 type: LAN8720
mdc_pin: GPIO23 mdc_pin: GPIOXX
mdio_pin: GPIO18 mdio_pin: GPIOXX
clk_mode: GPIO0_IN clk_mode: GPIO0_IN
phy_addr: 0 phy_addr: 0
@ -33,12 +33,12 @@ This component and the Wi-Fi component may **not** be used simultaneously, even
# Example configuration entry for SPI chips # Example configuration entry for SPI chips
ethernet: ethernet:
type: W5500 type: W5500
clk_pin: GPIO19 clk_pin: GPIOXX
mosi_pin: GPIO21 mosi_pin: GPIOXX
miso_pin: GPIO23 miso_pin: GPIOXX
cs_pin: GPIO18 cs_pin: GPIOXX
interrupt_pin: GPIO36 interrupt_pin: GPIOXX
reset_pin: GPIO22 reset_pin: GPIOXX
Configuration variables: Configuration variables:
------------------------ ------------------------

View File

@ -52,7 +52,7 @@ minute, the indicator will be on.
switch: switch:
- platform: gpio - platform: gpio
pin: GPIO22 pin: GPIOXX
id: led id: led
script: script:

View File

@ -14,18 +14,13 @@ The ``binary`` fan platform lets you represent any binary :ref:`output` as a fan
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
output:
- id: fan_output
platform: gpio
pin: GPIO16
fan: fan:
- platform: binary - platform: binary
output: fan_output output: fan_output
name: "Living Room Fan" name: "Living Room Fan"
Configuration variables: Configuration variables:
------------------------ ------------------------

View File

@ -23,14 +23,6 @@ The ``hbridge`` fan platform allows you to use a compatible *h-bridge* (L298N, D
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
output:
- platform: ...
id: motor_forward_pin
pin: GPIO5
- platform: ...
id: motor_reverse_pin
pin: GPIO4
fan: fan:
- platform: hbridge - platform: hbridge
id: my_fan id: my_fan

View File

@ -30,16 +30,10 @@ If available on your reader model, it's recommended to connect 3.3VT (touch indu
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
uart:
rx_pin: GPIO13
tx_pin: GPIO15
baud_rate: 57600
# Declare Grow Fingerprint Reader
fingerprint_grow: fingerprint_grow:
sensing_pin: GPIO12 sensing_pin: GPIOXX
sensor_power_pin: sensor_power_pin:
number: GPIO18 number: GPIOXX
inverted: true inverted: true
idle_period_to_sleep: 5s idle_period_to_sleep: 5s
@ -93,46 +87,27 @@ Configuration variables:
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. - **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`Binary Sensor <config-binary_sensor>`. - All other options from :ref:`Binary Sensor <config-binary_sensor>`.
Optional Sensor Configuration:
Sensor Sensor
------ ------
- **fingerprint_count**: The number of enrolled fingerprints stored on the reader. - **fingerprint_count**: The number of enrolled fingerprints stored on the reader.
All options from :ref:`Sensor <config-sensor>`.
- **name** (**Required**, string): The name for the sensor.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`Sensor <config-sensor>`.
- **last_finger_id**: The last matched enrolled fingerprint as set by :ref:`fingerprint_grow-on_finger_scan_matched`. - **last_finger_id**: The last matched enrolled fingerprint as set by :ref:`fingerprint_grow-on_finger_scan_matched`.
All options from :ref:`Sensor <config-sensor>`.
- **name** (**Required**, string): The name for the sensor.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`Sensor <config-sensor>`.
- **last_confidence**: The last matched confidence as set by :ref:`fingerprint_grow-on_finger_scan_matched`. - **last_confidence**: The last matched confidence as set by :ref:`fingerprint_grow-on_finger_scan_matched`.
All options from :ref:`Sensor <config-sensor>`.
- **name** (**Required**, string): The name for the sensor.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`Sensor <config-sensor>`.
- **status**: The integer representation of the internal status register of the reader. - **status**: The integer representation of the internal status register of the reader.
All options from :ref:`Sensor <config-sensor>`.
- **name** (**Required**, string): The name for the sensor.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`Sensor <config-sensor>`.
- **capacity**: The fingerprint storage capacity of the reader. - **capacity**: The fingerprint storage capacity of the reader.
All options from :ref:`Sensor <config-sensor>`.
- **name** (**Required**, string): The name for the sensor.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`Sensor <config-sensor>`.
- **security_level**: The integer representation of the currently configured security level of the reader. Higher security levels reduce the false acceptance rate (FAR) at the expense of increasing the false rejection rate (FRR). Range is 1 (lowest) to 5 (highest). - **security_level**: The integer representation of the currently configured security level of the reader. Higher security levels reduce the false acceptance rate (FAR) at the expense of increasing the false rejection rate (FRR). Range is 1 (lowest) to 5 (highest).
All options from :ref:`Sensor <config-sensor>`.
- **name** (**Required**, string): The name for the sensor.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`Sensor <config-sensor>`.
.. _fingerprint_grow-sleep_mode: .. _fingerprint_grow-sleep_mode:
@ -150,14 +125,14 @@ This is a wiring example for the R503 and below you can find the respective conf
.. code-block:: yaml .. code-block:: yaml
uart: uart:
rx_pin: GPIO16 rx_pin: GPIOXX
tx_pin: GPIO17 tx_pin: GPIOXX
baud_rate: 57600 baud_rate: 57600
fingerprint_grow: fingerprint_grow:
sensing_pin: GPIO4 sensing_pin: GPIOXX
sensor_power_pin: sensor_power_pin:
number: GPIO18 number: GPIOXX
inverted: true inverted: true
idle_period_to_sleep: 5s idle_period_to_sleep: 5s
@ -191,7 +166,7 @@ The ``new_password:`` configuration option is meant to be compiled, flashed to t
``on_finger_scan_start`` Trigger ``on_finger_scan_start`` Trigger
------------------------------------ ------------------------------------
With this configuration option, you can trigger an automation when a finger is detected touching the sensor. Very useful to indicate to the user via AuraLed that the sensor has detected the finger touch and will perform the scan. This trigger will **only** activate if your fingerprint sensor is configured with the ``sensing_pin`` option. With this configuration option, you can trigger an automation when a finger is detected touching the sensor. Very useful to indicate to the user via AuraLed that the sensor has detected the finger touch and will perform the scan. This trigger will **only** activate if your fingerprint sensor is configured with the ``sensing_pin`` option.
.. code-block:: yaml .. code-block:: yaml
@ -513,12 +488,12 @@ Sample code
.. code-block:: yaml .. code-block:: yaml
uart: uart:
rx_pin: GPIO13 rx_pin: GPIOXX
tx_pin: GPIO15 tx_pin: GPIOXX
baud_rate: 57600 baud_rate: 57600
fingerprint_grow: fingerprint_grow:
sensing_pin: GPIO12 sensing_pin: GPIOXX
on_finger_scan_invalid: on_finger_scan_invalid:
- homeassistant.event: - homeassistant.event:
event: esphome.test_node_finger_scan_invalid event: esphome.test_node_finger_scan_invalid

View File

@ -22,9 +22,6 @@ in your configuration - only the RX pin should be necessary.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
uart:
rx_pin: D7
baud_rate: 9600
# Declare GPS module # Declare GPS module
gps: gps:

View File

@ -20,8 +20,8 @@ connecting the wires from each device back to the two I²C pins on the ESP.
# Example configuration entry for ESP32 # Example configuration entry for ESP32
i2c: i2c:
sda: 21 sda: GPIOXX
scl: 22 scl: GPIOXX
scan: true scan: true
id: bus_a id: bus_a
@ -51,12 +51,12 @@ Configuration variables:
# Example configuration entry # Example configuration entry
i2c: i2c:
- id: bus_a - id: bus_a
sda: 13 sda: GPIOXX
scl: 16 scl: GPIOXX
scan: true scan: true
- id: bus_b - id: bus_b
sda: 14 sda: GPIOXX
scl: 15 scl: GPIOXX
scan: true scan: true
# Sensors should be specified as follows # Sensors should be specified as follows
- platform: bme680 - platform: bme680

View File

@ -14,8 +14,8 @@ This component only works on ESP32 based chips.
# Example configuration entry # Example configuration entry
i2s_audio: i2s_audio:
i2s_lrclk_pin: GPIO33 i2s_lrclk_pin: GPIOXX
i2s_bclk_pin: GPIO19 i2s_bclk_pin: GPIOXX
Configuration variables: Configuration variables:
------------------------ ------------------------

View File

@ -20,10 +20,6 @@ The ``binary`` light platform creates a simple ON/OFF-only light from a
name: "Desk Lamp" name: "Desk Lamp"
output: light_output output: light_output
output:
- id: light_output
platform: gpio
pin: GPIO16
Configuration variables: Configuration variables:
------------------------ ------------------------

View File

@ -12,7 +12,7 @@ This is a component using the ESP32 RMT peripheral to drive most addressable LED
light: light:
- platform: esp32_rmt_led_strip - platform: esp32_rmt_led_strip
rgb_order: GRB rgb_order: GRB
pin: GPIO13 pin: GPIOXX
num_leds: 30 num_leds: 30
rmt_channel: 0 rmt_channel: 0
chipset: ws2812 chipset: ws2812

View File

@ -47,7 +47,7 @@ Clockless FastLED lights differ from the
light: light:
- platform: fastled_clockless - platform: fastled_clockless
chipset: WS2811 chipset: WS2811
pin: GPIO23 pin: GPIOXX
num_leds: 60 num_leds: 60
rgb_order: BRG rgb_order: BRG
name: "FastLED WS2811 Light" name: "FastLED WS2811 Light"
@ -126,8 +126,8 @@ whereas the clockless lights only need a single pin.
light: light:
- platform: fastled_spi - platform: fastled_spi
chipset: WS2801 chipset: WS2801
data_pin: GPIO23 data_pin: GPIOXX
clock_pin: GPIO22 clock_pin: GPIOXX
num_leds: 60 num_leds: 60
rgb_order: BRG rgb_order: BRG
name: "FastLED SPI Light" name: "FastLED SPI Light"

View File

@ -12,23 +12,12 @@ The ``hbridge`` light platform creates a dual color brightness controlled light
:align: center :align: center
:width: 40.0% :width: 40.0%
H-bridge lights are very common for Christmas lighting and they use 2 wires for a bunch of LEDs. H-bridge lights are very common for Christmas lighting and they use 2 wires for a bunch of LEDs.
The pins are switched alternatively to allow two sets of lights to operate. The pins are switched alternatively to allow two sets of lights to operate.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
# Specify the two pins of the h-bridge as PWM pins
output:
- platform: esp8266_pwm
id: pina
pin: GPIO12
- platform: esp8266_pwm
id: pinb
pin: GPIO14
# Create a light using the hbridge
light: light:
- platform: hbridge - platform: hbridge
id: mainlight id: mainlight

View File

@ -26,11 +26,6 @@ The ``monochromatic`` light platform creates a simple brightness-only light from
name: "Kitchen Lights" name: "Kitchen Lights"
output: output_component1 output: output_component1
# Example output entry
output:
- platform: esp8266_pwm
id: output_component1
pin: D1
Configuration variables: Configuration variables:
------------------------ ------------------------

View File

@ -28,7 +28,7 @@ the `NeoPixelBus <https://github.com/Makuna/NeoPixelBus/>`__ library internally.
- platform: neopixelbus - platform: neopixelbus
type: GRB type: GRB
variant: WS2811 variant: WS2811
pin: GPIO23 pin: GPIOXX
num_leds: 60 num_leds: 60
name: "NeoPixel Light" name: "NeoPixel Light"
@ -129,7 +129,7 @@ settings vary by method:
- **esp8266_uart**: An alternative method for ESP8266s that uses the UART peripheral to send data. - **esp8266_uart**: An alternative method for ESP8266s that uses the UART peripheral to send data.
Available on pin GPIO1 for bus 0, and GPIO2 for bus 1. Additional options: Available on pin GPIO1 for bus 0, and GPIO2 for bus 1. Additional options:
- **bus** (*Optional*, int): The UART bus to use. If 0, the logger ``baud_rate`` option must - **bus** (*Optional*, int): The UART bus to use. If 0, the logger ``baud_rate`` option must
be set to 0 and logs over USB/serial won't work. be set to 0 and logs over USB/serial won't work.
- **async** (*Optional*, boolean): Use an asynchronous transfer. Defaults to ``false``. If enabled, - **async** (*Optional*, boolean): Use an asynchronous transfer. Defaults to ``false``. If enabled,
the logger must be disabled even if bus 1 is used. the logger must be disabled even if bus 1 is used.
@ -154,7 +154,7 @@ The following method is available only for two-wire chips (specify ``data_pin``
- **bus** (*Optional*, string): On ESP32s the SPI bus to be used can be selected. One of ``vspi`` and ``hspi``. - **bus** (*Optional*, string): On ESP32s the SPI bus to be used can be selected. One of ``vspi`` and ``hspi``.
- **speed** (*Optional*, int): The frequency to send data with. Defaults to ``10MHz``. One of - **speed** (*Optional*, int): The frequency to send data with. Defaults to ``10MHz``. One of
``40MHz``, ``20MHz``, ``10MHz``, ``5MHz``, ``2MHz``, ``1MHz``, ``500KHz``. ``40MHz``, ``20MHz``, ``10MHz``, ``5MHz``, ``2MHz``, ``1MHz``, ``500KHz``.
On ESP8266 only GPIO13 can be used for ``data_pin`` and only GPIO14 can be used for ``clock_pin``. On ESP8266 only GPIO13 can be used for ``data_pin`` and only GPIO14 can be used for ``clock_pin``.
The ``method`` key also accepts a short-hand syntax consisting of a single value for historic reasons. Usage of The ``method`` key also accepts a short-hand syntax consisting of a single value for historic reasons. Usage of

View File

@ -28,12 +28,6 @@ The ``rgb`` light platform creates an RGB light from 3 :ref:`float output compon
green: output_component2 green: output_component2
blue: output_component3 blue: output_component3
# Example output entry
output:
- platform: esp8266_pwm
id: output_component1
pin: D1
# Repeat for green and blue output
Color Correction Color Correction
---------------- ----------------
@ -54,9 +48,8 @@ perceived intensity of different colors will generally vary. This can be done by
# Example output entry # Example output entry
output: output:
- platform: esp8266_pwm - platform: ...
id: output_component1 id: output_component1
pin: D1
max_power: 80% max_power: 80%
# Repeat for green and blue output # Repeat for green and blue output

View File

@ -38,9 +38,8 @@ perceived intensity of different colors will generally vary. This can be done by
# Example output entry # Example output entry
output: output:
- platform: esp8266_pwm - platform: ...
id: output_component1 id: output_component1
pin: D1
max_power: 80% max_power: 80%
.. note:: .. note::

View File

@ -44,9 +44,8 @@ perceived intensity of different colors will generally vary. This can be done by
# Example output entry # Example output entry
output: output:
- platform: esp8266_pwm - platform: ...
id: output_component1 id: output_component1
pin: D1
max_power: 80% max_power: 80%
.. note:: .. note::

View File

@ -13,7 +13,7 @@ This is a component using the RP2040 PIO peripheral to drive most addressable LE
- platform: rp2040_pio_led_strip - platform: rp2040_pio_led_strip
name: led_strip name: led_strip
id: led_strip id: led_strip
pin: GPIO13 pin: GPIOXX
num_leds: 10 num_leds: 10
pio: 0 pio: 0
rgb_order: GRB rgb_order: GRB

View File

@ -8,7 +8,7 @@ SPI LED Strip Light
The ``spi_led_strip`` light platform drives one or more SPI interfaced RGB LEDs. These LEDs are often used in strips, where The ``spi_led_strip`` light platform drives one or more SPI interfaced RGB LEDs. These LEDs are often used in strips, where
each LED is individually addressable. This component requires an SPI interface to be configured. each LED is individually addressable. This component requires an SPI interface to be configured.
This component has been tested with APA102 LEDs and the P9813 LED driver. It should also work with HD107 and SK9822 type This component has been tested with APA102 LEDs and the P9813 LED driver. It should also work with HD107 and SK9822 type
LEDs, or any others with a similar interface - SPI, 8 bits per colour and BGR ordering. LEDs, or any others with a similar interface - SPI, 8 bits per colour and BGR ordering.
.. figure:: images/apa102.jpg .. figure:: images/apa102.jpg
@ -18,14 +18,9 @@ LEDs, or any others with a similar interface - SPI, 8 bits per colour and BGR or
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
spi:
mosi_pin: GPIO3
clk_pin: GPIO9
light: light:
- platform: spi_led_strip - platform: spi_led_strip
num_leds: 30 num_leds: 30
color_correct: [80%, 60%, 100%]
id: rgb_led id: rgb_led
name: "RGB LED Strip" name: "RGB LED Strip"
data_rate: 1MHz data_rate: 1MHz

View File

@ -22,7 +22,7 @@ When the device is in OK state, the LED will be restored to the state of the ``b
light: light:
- platform: status_led - platform: status_led
name: "Switch state" name: "Switch state"
pin: GPIO2 pin: GPIOXX
.. note:: .. note::
@ -50,7 +50,7 @@ Configuration variables:
.. code-block:: yaml .. code-block:: yaml
pin: pin:
number: GPIO2 number: GPIOXX
inverted: true inverted: true

View File

@ -22,19 +22,8 @@ Using an inexpensive RF transmitter and receiver you can control your devices vi
# Specify the two pins to connect the receiver and transmitter # Specify the two pins to connect the receiver and transmitter
lightwaverf: lightwaverf:
read_pin: 13 read_pin: GPIOXX
write_pin: 14 write_pin: GPIOXX
# Create a switch to trigger a light
switch:
- platform: template
name: "Turn off sofa"
id: light_off_ceiling_sofa
turn_on_action:
lightwaverf.send_raw:
code: [0x04, 0x00, 0x00, 0x00, 0x0f, 0x03, 0x0d, 0x09, 0x08, 0x08]
name: "Sofa"
repeat: 1
Note: To gather the RAW codes from the remote, setup the ``read_pin`` and observe in the logs the printing of the codes. Note: To gather the RAW codes from the remote, setup the ``read_pin`` and observe in the logs the printing of the codes.

View File

@ -16,7 +16,7 @@ The ``output`` lock platform allows you to use any output component as a lock.
# Example configuration entry # Example configuration entry
output: output:
- platform: gpio - platform: gpio
pin: 25 pin: GPIOXX
id: 'generic_out' id: 'generic_out'
lock: lock:
- platform: output - platform: output

View File

@ -23,15 +23,15 @@ Component
matrix_keypad: matrix_keypad:
id: mykeypad id: mykeypad
rows: rows:
- pin: 21 - pin: GPIOXX
- pin: 19 - pin: GPIOXX
- pin: 18 - pin: GPIOXX
- pin: 5 - pin: GPIOXX
columns: columns:
- pin: 17 - pin: GPIOXX
- pin: 16 - pin: GPIOXX
- pin: 4 - pin: GPIOXX
- pin: 15 - pin: GPIOXX
keys: "123A456B789C*0#D" keys: "123A456B789C*0#D"
has_diodes: false has_diodes: false

View File

@ -13,7 +13,7 @@ The ``max6956`` exists in 2 versions 20 or 28 ports, depending on the packaging.
Once configured, you can use any of the 20 or 28 pins for your projects. Within ESPHome they emulate a real internal GPIO pin Once configured, you can use any of the 20 or 28 pins for your projects. Within ESPHome they emulate a real internal GPIO pin
and can therefore be used with many of ESPHome's components such as the GPIO binary sensor or GPIO switch. Interrupt-on-change for inputs is not possible. and can therefore be used with many of ESPHome's components such as the GPIO binary sensor or GPIO switch. Interrupt-on-change for inputs is not possible.
Pins can also be individualy configured as led driver and used with Light components. Current value can be set globaly or for each pin, through 16 possible levels. Driving RGB Pins can also be individualy configured as led driver and used with Light components. Current value can be set globaly or for each pin, through 16 possible levels. Driving RGB
led requires 3 pins. led requires 3 pins.
Any option accepting a :ref:`Pin Schema <config-pin_schema>` can theoretically be used. Any option accepting a :ref:`Pin Schema <config-pin_schema>` can theoretically be used.
@ -48,7 +48,7 @@ Configuration variables:
- **brightness_global** (*Optional*): Set the value of the current to be sink by all pins configured as led driver. - **brightness_global** (*Optional*): Set the value of the current to be sink by all pins configured as led driver.
Defaults to ``0`` Defaults to ``0``
- **brightness_mode** (*Optional*): Define if the current to be sink will be confgured globaly or per pin configured as led driver. - **brightness_mode** (*Optional*): Define if the current to be sink will be confgured globaly or per pin configured as led driver.
Defaults to ``global`` Defaults to ``global``
Binary Sensor Example Binary Sensor Example
@ -58,19 +58,7 @@ Binary Sensor Example
.. code-block:: yaml .. code-block:: yaml
# Example configuration : pin as input with pullup # Example configuration
i2c:
id: bus_a
sda: GPIO13
scl: GPIO16
scan: false
max6956:
- id: max6956_1
address: 0x40
i2c_id: bus_a
# Individual input
binary_sensor: binary_sensor:
- platform: gpio - platform: gpio
name: "MaxIn Pin 4" name: "MaxIn Pin 4"
@ -78,7 +66,7 @@ Binary Sensor Example
pin: pin:
max6956: max6956_1 max6956: max6956_1
number: 4 number: 4
mode: mode:
input: true input: true
pullup: true pullup: true
inverted: False inverted: False
@ -91,18 +79,7 @@ Switch Example
.. code-block:: yaml .. code-block:: yaml
# Example configuration : pin as output # Example configuration
i2c:
id: bus_a
sda: GPIO13
scl: GPIO16
max6956:
- id: max6956_1
address: 0x40
i2c_id: bus_a
# Individual output
switch: switch:
- platform: gpio - platform: gpio
name: "MaxIn Pin 8" name: "MaxIn Pin 8"
@ -110,9 +87,9 @@ Switch Example
pin: pin:
max6956: max6956_1 max6956: max6956_1
number: 8 number: 8
mode: mode:
output: true output: true
inverted: False inverted: False
Led driver Example Led driver Example
@ -126,8 +103,8 @@ Led driver Example
# Example configuration : pin as led driver, current globaly # Example configuration : pin as led driver, current globaly
i2c: i2c:
id: bus_a id: bus_a
sda: GPIO13 sda: GPIOXX
scl: GPIO16 scl: GPIOXX
switch: switch:
- platform: template - platform: template
@ -153,7 +130,7 @@ Led driver Example
- max6956.set_brightness_global: - max6956.set_brightness_global:
id: max6956_1 id: max6956_1
brightness_global: !lambda return x; brightness_global: !lambda return x;
max6956: max6956:
- id: max6956_1 - id: max6956_1
address: 0x40 address: 0x40
@ -166,7 +143,7 @@ Led driver Example
- platform: max6956 - platform: max6956
pin: 4 pin: 4
id: maxOut_pin4 id: maxOut_pin4
#led binded to output #led binded to output
light: light:
- platform: monochromatic - platform: monochromatic
@ -178,8 +155,8 @@ Led driver Example
# Example configuration : pin as led driver, current managed individualy (RBG led) # Example configuration : pin as led driver, current managed individualy (RBG led)
i2c: i2c:
id: bus_a id: bus_a
sda: GPIO13 sda: GPIOXX
scl: GPIO16 scl: GPIOXX
max6956: max6956:
- id: max6956_1 - id: max6956_1
@ -229,7 +206,7 @@ Led driver Example
- output.set_level: - output.set_level:
id: maxOut_pin4 id: maxOut_pin4
level: !lambda return x/100; level: !lambda return x/100;
- platform: template - platform: template
name: "Number Green" name: "Number Green"
id: number_LedGreen id: number_LedGreen
@ -256,7 +233,7 @@ Led driver Example
on_value: on_value:
- output.set_level: - output.set_level:
id: maxOut_pin6 id: maxOut_pin6
level: !lambda return x/100; level: !lambda return x/100;
output: output:
- platform: max6956 - platform: max6956
pin: 4 pin: 4
@ -275,7 +252,7 @@ Led driver Example
gamma_correct: 1 gamma_correct: 1
red: maxOut_pin4 red: maxOut_pin4
green: maxOut_pin5 green: maxOut_pin5
blue: maxOut_pin6 blue: maxOut_pin6

View File

@ -26,7 +26,7 @@ The MCP23S08 component (`datasheet <http://ww1.microchip.com/downloads/en/Device
# Example configuration entry # Example configuration entry
mcp23s08: mcp23s08:
- id: 'mcp23s08_hub' - id: 'mcp23s08_hub'
cs_pin: D8 cs_pin: GPIOXX
deviceaddress: 0 deviceaddress: 0
# Individual outputs # Individual outputs
@ -94,7 +94,7 @@ binary sensor or GPIO switch.
# Example configuration entry # Example configuration entry
mcp23s17: mcp23s17:
- id: 'mcp23s17_hub' - id: 'mcp23s17_hub'
cs_pin: D8 cs_pin: GPIOXX
deviceaddress: 0 deviceaddress: 0
# Individual outputs # Individual outputs

View File

@ -15,7 +15,7 @@ via the :doc:`/components/i2s_audio`. This platform only works on ESP32 based ch
- platform: i2s_audio - platform: i2s_audio
name: ESPHome I2S Media Player name: ESPHome I2S Media Player
dac_type: external dac_type: external
i2s_dout_pin: GPIO22 i2s_dout_pin: GPIOXX
mode: mono mode: mono
Configuration variables: Configuration variables:
@ -35,8 +35,8 @@ External DAC
- **mute_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The GPIO pin to use to mute the media player. - **mute_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The GPIO pin to use to mute the media player.
- **mode** (*Optional*, string): The mode of the I²S bus. Can be ``mono`` or ``stereo``. Defaults to ``mono``. - **mode** (*Optional*, string): The mode of the I²S bus. Can be ``mono`` or ``stereo``. Defaults to ``mono``.
- **i2s_audio_id** (*Optional*, :ref:`config-id`): The ID of the :ref:`I²S Audio <i2s_audio>` you wish to use for this media player. - **i2s_audio_id** (*Optional*, :ref:`config-id`): The ID of the :ref:`I²S Audio <i2s_audio>` you wish to use for this media player.
- **i2s_comm_fmt** (*Optional*, string): I2S communication format. By default MSB format is used (AC101, PCM5102A). - **i2s_comm_fmt** (*Optional*, string): I2S communication format. By default MSB format is used (AC101, PCM5102A).
Set to ``lsb`` if using an external DAC that uses Japanese (Least Significant Bit Justified) format (like PT8211). Set to ``lsb`` if using an external DAC that uses Japanese (Least Significant Bit Justified) format (like PT8211).
Can be ``msb`` or ``lsb``. Defaults to ``msb``. Can be ``msb`` or ``lsb``. Defaults to ``msb``.
For best results, keep the wires as short as possible. For best results, keep the wires as short as possible.

View File

@ -24,12 +24,12 @@ This platform only works on ESP32 based chips.
- platform: i2s_audio - platform: i2s_audio
id: external_mic id: external_mic
adc_type: external adc_type: external
i2s_din_pin: GPIO23 i2s_din_pin: GPIOXX
- platform: i2s_audio - platform: i2s_audio
id: adc_mic id: adc_mic
adc_type: internal adc_type: internal
adc_pin: GPIO35 adc_pin: GPIOXX
Configuration variables: Configuration variables:
@ -80,7 +80,7 @@ M5Stack Atom Echo
microphone: microphone:
- platform: i2s_audio - platform: i2s_audio
adc_type: external adc_type: external
i2s_din_pin: GPIO23 i2s_din_pin: GPIOXX
pdm: true pdm: true
RaspiAudio Muse Luxe RaspiAudio Muse Luxe
@ -90,7 +90,7 @@ RaspiAudio Muse Luxe
microphone: microphone:
- platform: i2s_audio - platform: i2s_audio
i2s_din_pin: GPIO35 i2s_din_pin: GPIOXX
adc_type: external adc_type: external
pdm: false pdm: false

View File

@ -78,7 +78,7 @@ Technically there is no difference between the "inline" and the standard definit
... ...
modbus: modbus:
flow_control_pin: 5 flow_control_pin: GPIOXX
id: modbus1 id: modbus1
modbus_controller: modbus_controller:
@ -129,43 +129,43 @@ Bitmasks
Some devices use decimal values in read registers to show multiple binary states occupying only one register address. To decode them, you can use bitmasks according to the table below. The decimal value corresponding to a bit is always double of the previous one in the row. Multiple bits can be represented in a single register by making a sum of all the values corresponding to the bits. Some devices use decimal values in read registers to show multiple binary states occupying only one register address. To decode them, you can use bitmasks according to the table below. The decimal value corresponding to a bit is always double of the previous one in the row. Multiple bits can be represented in a single register by making a sum of all the values corresponding to the bits.
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| Alarm bit | Description | DEC value | HEX value | | Alarm bit | Description | DEC value | HEX value |
+============+==================+===========+===========+ +============+==================+===========+===========+
| bit 0 | Binary Sensor 0 | 1 | 1 | | bit 0 | Binary Sensor 0 | 1 | 1 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 1 | Binary Sensor 1 | 2 | 2 | | bit 1 | Binary Sensor 1 | 2 | 2 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 2 | Binary Sensor 2 | 4 | 4 | | bit 2 | Binary Sensor 2 | 4 | 4 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 3 | Binary Sensor 3 | 8 | 8 | | bit 3 | Binary Sensor 3 | 8 | 8 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 4 | Binary Sensor 4 | 16 | 10 | | bit 4 | Binary Sensor 4 | 16 | 10 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 5 | Binary Sensor 5 | 32 | 20 | | bit 5 | Binary Sensor 5 | 32 | 20 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 6 | Binary Sensor 6 | 64 | 40 | | bit 6 | Binary Sensor 6 | 64 | 40 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 7 | Binary Sensor 7 | 128 | 80 | | bit 7 | Binary Sensor 7 | 128 | 80 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 8 | Binary Sensor 8 | 256 | 100 | | bit 8 | Binary Sensor 8 | 256 | 100 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 9 | Binary Sensor 9 | 512 | 200 | | bit 9 | Binary Sensor 9 | 512 | 200 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 10 | Binary Sensor 10 | 1024 | 400 | | bit 10 | Binary Sensor 10 | 1024 | 400 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 11 | Binary Sensor 11 | 2048 | 800 | | bit 11 | Binary Sensor 11 | 2048 | 800 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 12 | Binary Sensor 12 | 4096 | 1000 | | bit 12 | Binary Sensor 12 | 4096 | 1000 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 13 | Binary Sensor 13 | 8192 | 2000 | | bit 13 | Binary Sensor 13 | 8192 | 2000 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 14 | Binary Sensor 14 | 16384 | 4000 | | bit 14 | Binary Sensor 14 | 16384 | 4000 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
| bit 15 | Binary Sensor 15 | 32768 | 8000 | | bit 15 | Binary Sensor 15 | 32768 | 8000 |
+------------+------------------+-----------+-----------+ +------------+------------------+-----------+-----------+
In the example below, register ``15``, holds several binary values. It stores the decimal value ``12288``, which is the sum of ``4096`` + ``8192``, meaning the corresponding bits ``12`` and ``13`` are ``1``, the other bits are ``0``. In the example below, register ``15``, holds several binary values. It stores the decimal value ``12288``, which is the sum of ``4096`` + ``8192``, meaning the corresponding bits ``12`` and ``13`` are ``1``, the other bits are ``0``.
To gather some of these bits as binary sensors in ESPHome, use ``bitmask``: To gather some of these bits as binary sensors in ESPHome, use ``bitmask``:
@ -513,7 +513,7 @@ The response is mapped to the sensor based on ``register_count`` and offset in b
The code synchronizes the localtime of MCU to the epever controller The code synchronizes the localtime of MCU to the epever controller
The time is set by writing 12 bytes to register 0x9013. The time is set by writing 12 bytes to register 0x9013.
Then battery charge settings are sent. Then battery charge settings are sent.
.. code-block:: yaml .. code-block:: yaml
esphome: esphome:
@ -565,7 +565,7 @@ The response is mapped to the sensor based on ``register_count`` and offset in b
0x04BA, // 900d Low Volt. Disconnect Volt. 11.8 0x04BA, // 900d Low Volt. Disconnect Volt. 11.8
0x04BA // 900E Discharging Limit Voltage 11.8 0x04BA // 900E Discharging Limit Voltage 11.8
}; };
// Boost and equalization periods // Boost and equalization periods
std::vector<uint16_t> battery_settings2 = { std::vector<uint16_t> battery_settings2 = {
0x0000, // 906B Equalize Duration (min.) 0 0x0000, // 906B Equalize Duration (min.) 0
@ -574,7 +574,7 @@ The response is mapped to the sensor based on ``register_count`` and offset in b
esphome::modbus_controller::ModbusCommandItem set_battery1_command = esphome::modbus_controller::ModbusCommandItem set_battery1_command =
esphome::modbus_controller::ModbusCommandItem::create_write_multiple_command(controller, 0x9000, battery_settings1.size() , esphome::modbus_controller::ModbusCommandItem::create_write_multiple_command(controller, 0x9000, battery_settings1.size() ,
battery_settings1); battery_settings1);
esphome::modbus_controller::ModbusCommandItem set_battery2_command = esphome::modbus_controller::ModbusCommandItem set_battery2_command =
esphome::modbus_controller::ModbusCommandItem::create_write_multiple_command(controller, 0x906B, battery_settings3.size(), esphome::modbus_controller::ModbusCommandItem::create_write_multiple_command(controller, 0x906B, battery_settings3.size(),
battery_settings2); battery_settings2);
@ -583,19 +583,19 @@ The response is mapped to the sensor based on ``register_count`` and offset in b
delay(200) ; delay(200) ;
controller->queue_command(set_battery2_command); controller->queue_command(set_battery2_command);
ESP_LOGI("ModbusLambda", "EPSOLAR Battery set"); ESP_LOGI("ModbusLambda", "EPSOLAR Battery set");
uart: uart:
id: mod_bus id: mod_bus
tx_pin: 19 tx_pin: GPIOXX
rx_pin: 18 rx_pin: GPIOXX
baud_rate: 115200 baud_rate: 115200
stop_bits: 1 stop_bits: 1
modbus: modbus:
#flow_control_pin: 23 #flow_control_pin: GPIOXX
send_wait_time: 200ms send_wait_time: 200ms
id: mod_bus_epever id: mod_bus_epever
modbus_controller: modbus_controller:
- id: epever - id: epever
## the Modbus device addr ## the Modbus device addr
@ -604,7 +604,7 @@ The response is mapped to the sensor based on ``register_count`` and offset in b
command_throttle: 0ms command_throttle: 0ms
setup_priority: -10 setup_priority: -10
update_interval: ${updates} update_interval: ${updates}
sensor: sensor:
- platform: modbus_controller - platform: modbus_controller
modbus_controller_id: epever modbus_controller_id: epever
@ -617,7 +617,7 @@ The response is mapped to the sensor based on ``register_count`` and offset in b
accuracy_decimals: 1 accuracy_decimals: 1
filters: filters:
- multiply: 0.01 - multiply: 0.01
- platform: modbus_controller - platform: modbus_controller
modbus_controller_id: epever modbus_controller_id: epever
id: array_rated_current id: array_rated_current
@ -629,7 +629,7 @@ The response is mapped to the sensor based on ``register_count`` and offset in b
accuracy_decimals: 2 accuracy_decimals: 2
filters: filters:
- multiply: 0.01 - multiply: 0.01
- platform: modbus_controller - platform: modbus_controller
modbus_controller_id: epever modbus_controller_id: epever
id: array_rated_power id: array_rated_power

View File

@ -34,9 +34,9 @@ for example the `RobotDyn dimmer
output: output:
- platform: ac_dimmer - platform: ac_dimmer
id: dimmer1 id: dimmer1
gate_pin: D7 gate_pin: GPIOXX
zero_cross_pin: zero_cross_pin:
number: D6 number: GPIOXX
mode: mode:
input: true input: true
inverted: yes inverted: yes

View File

@ -24,8 +24,8 @@ It is used in some smart light bulbs:
# Example configuration entry # Example configuration entry
bp1658cj: bp1658cj:
data_pin: GPIO6 data_pin: GPIOXX
clock_pin: GPIO7 clock_pin: GPIOXX
max_power_color_channels: 4 # Valid values 0-15 max_power_color_channels: 4 # Valid values 0-15
max_power_white_channels: 6 # Valid values 0-15 max_power_white_channels: 6 # Valid values 0-15

View File

@ -24,8 +24,8 @@ It is used in some smart light bulbs:
# Example configuration entry # Example configuration entry
bp5758d: bp5758d:
data_pin: GPIO3 data_pin: GPIOXX
clock_pin: GPIO5 clock_pin: GPIOXX
Configuration variables: Configuration variables:

View File

@ -15,7 +15,7 @@ like the one on the ESP32 (see :doc:`ledc`) are preferred.
# Example configuration entry # Example configuration entry
output: output:
- platform: esp8266_pwm - platform: esp8266_pwm
pin: D1 pin: GPIOXX
frequency: 1000 Hz frequency: 1000 Hz
id: pwm_output id: pwm_output

View File

@ -14,7 +14,7 @@ will not show up in Home Assistant. See :doc:`/components/switch/gpio`.
# Example configuration entry # Example configuration entry
output: output:
- platform: gpio - platform: gpio
pin: D1 pin: GPIOXX
id: gpio_d1 id: gpio_d1
Configuration variables: Configuration variables:

View File

@ -12,6 +12,32 @@ of the ESP32 as an output component.
The frequency range of LEDC is from 10Hz to 40MHz - however, higher frequencies require a smaller The frequency range of LEDC is from 10Hz to 40MHz - however, higher frequencies require a smaller
bit depth which means the output is not that accurate for frequencies above ~300kHz. bit depth which means the output is not that accurate for frequencies above ~300kHz.
Configuration variables:
------------------------
- **pin** (**Required**, :ref:`config-pin`): The pin to use LEDC on. Can only be GPIO0-GPIO33.
- **id** (**Required**, :ref:`config-id`): The id to use for this output component.
- **frequency** (*Optional*, float): At which frequency to run the LEDC
channels timer. Defaults to 1000Hz.
- All other options from :ref:`Output <config-output>`.
Advanced options:
- **channel** (*Optional*, int): Manually set the `LEDC
channel <https://docs.espressif.com/projects/esp-idf/en/latest/api-reference/peripherals/ledc.html#configure-channel>`__
to use. Two adjacent channels share the same timer. Defaults to an automatic selection.
Note: When configuring custom frequencies for two or more outputs, ensure that you manually specify
channel 0, 2, 4, 6 for each output. This will prevent issues that arise from automatic selection,
which chooses adjacent channels with shared timers. See
`Issue #3114 <https://github.com/esphome/issues/issues/3114>`__ for more details.
- **phase_angle** (*Optional*, float): Set a phase angle to the other channel of this timer.
Range 0-360°, defaults to 0°
Note: this variable is only available for the esp-idf framework
Example Usage For a Light Example Usage For a Light
************************* *************************
@ -20,8 +46,8 @@ Example Usage For a Light
# Example configuration entry # Example configuration entry
output: output:
- platform: ledc - platform: ledc
pin: GPIO19 pin: GPIOXX
id: gpio_19 id: gpio_
# Example usage in a light # Example usage in a light
light: light:
@ -63,31 +89,6 @@ Example Usage For a Piezo Buzzer
id: buzzer id: buzzer
level: "50%" level: "50%"
Configuration variables:
------------------------
- **pin** (**Required**, :ref:`config-pin`): The pin to use LEDC on. Can only be GPIO0-GPIO33.
- **id** (**Required**, :ref:`config-id`): The id to use for this output component.
- **frequency** (*Optional*, float): At which frequency to run the LEDC
channels timer. Defaults to 1000Hz.
- All other options from :ref:`Output <config-output>`.
Advanced options:
- **channel** (*Optional*, int): Manually set the `LEDC
channel <https://docs.espressif.com/projects/esp-idf/en/latest/api-reference/peripherals/ledc.html#configure-channel>`__
to use. Two adjacent channels share the same timer. Defaults to an automatic selection.
Note: When configuring custom frequencies for two or more outputs, ensure that you manually specify
channel 0, 2, 4, 6 for each output. This will prevent issues that arise from automatic selection,
which chooses adjacent channels with shared timers. See
`Issue #3114 <https://github.com/esphome/issues/issues/3114>`__ for more details.
- **phase_angle** (*Optional*, float): Set a phase angle to the other channel of this timer.
Range 0-360°, defaults to 0°
Note: this variable is only available for the esp-idf framework
Recommended frequencies Recommended frequencies
----------------------- -----------------------

View File

@ -31,14 +31,9 @@ global ``my9231`` hub and give it an id, and then define the
# Example configuration entry # Example configuration entry
my9231: my9231:
- data_pin: GPIO12 - data_pin: GPIOXX
clock_pin: GPIO14 clock_pin: GPIOXX
# Individual outputs
output:
- platform: my9231
id: 'my9231_output1'
channel: 0
Configuration variables: Configuration variables:
************************ ************************
@ -68,11 +63,6 @@ The MY931/MY9291 output component exposes a MY931/MY9291 channel of a global
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry
my9231:
- data_pin: GPIO12
clock_pin: GPIO14
# Individual outputs # Individual outputs
output: output:
- platform: my9231 - platform: my9231

View File

@ -44,7 +44,7 @@ global ``pca9685`` hub and give it an id, and then define the
output: output:
# generate PWM from ESP32 ledc # generate PWM from ESP32 ledc
- platform: ledc - platform: ledc
pin: 25 pin: GPIOXX
id: extclk id: extclk
min_power: 1 min_power: 1
frequency: 40MHz frequency: 40MHz
@ -118,10 +118,10 @@ This output can be used for different PWM functions. E.g. output for light, fan
- platform: pca9685 - platform: pca9685
channel: 0 channel: 0
id: pwm01 id: pwm01
light: light:
- platform: monochromatic - platform: monochromatic
name: 'main light' name: 'main light'
output: pwm01 output: pwm01
See Also See Also

View File

@ -14,13 +14,13 @@ it is possible to update the output value with each update cycle, not just at th
For example, if you choose to toggle the output at most once every 1 second and decide on a For example, if you choose to toggle the output at most once every 1 second and decide on a
PWM period of 10 seconds, for reasonably frequent updates, with :doc:`/components/output/slow_pwm` PWM period of 10 seconds, for reasonably frequent updates, with :doc:`/components/output/slow_pwm`
there are only 10 possible levels, and for higher precision a longer update interval is needed, there are only 10 possible levels, and for higher precision a longer update interval is needed,
restricting the update rate. restricting the update rate.
A *sigma-delta* output is updated during each cycle, thus a higher precision can be achieved, without A *sigma-delta* output is updated during each cycle, thus a higher precision can be achieved, without
being constrained by a calculation timeframe (=period). being constrained by a calculation timeframe (=period).
So instead of having to define a ``period`` where the width of the pulse determines the output level, here you So instead of having to define a ``period`` where the width of the pulse determines the output level, here you
choose an ``update_interval`` which acts like a clock signal from where the pulse density determines the output level. choose an ``update_interval`` which acts like a clock signal from where the pulse density determines the output level.
This component can be used as a drop-in replacement for :doc:`/components/output/slow_pwm` by changing the ``platform`` to This component can be used as a drop-in replacement for :doc:`/components/output/slow_pwm` by changing the ``platform`` to
``sigma_delta_output`` and changing ``period`` to ``update_interval`` (you usually want to set the *sigma-delta*'s ``sigma_delta_output`` and changing ``period`` to ``update_interval`` (you usually want to set the *sigma-delta*'s
@ -35,7 +35,7 @@ This component can be used as a drop-in replacement for :doc:`/components/output
id: sd_heater_output id: sd_heater_output
# Output to a pin # Output to a pin
pin: 15 pin: GPIOXX
# Use the same output, but through automations # Use the same output, but through automations
turn_on_action: turn_on_action:
@ -44,9 +44,9 @@ This component can be used as a drop-in replacement for :doc:`/components/output
turn_off_action: turn_off_action:
then: then:
- output.turn_off: heater_relay - output.turn_off: heater_relay
- platform: gpio - platform: gpio
pin: 15 pin: GPIOXX
id: heater_relay id: heater_relay
Configuration variables: Configuration variables:

View File

@ -22,7 +22,7 @@ heating element through a relay where a fast PWM update cycle would not be appro
# Example configuration entry # Example configuration entry
output: output:
- platform: slow_pwm - platform: slow_pwm
pin: D1 pin: GPIOXX
id: my_slow_pwm id: my_slow_pwm
period: 15s period: 15s

View File

@ -28,22 +28,11 @@ global ``sm16716`` hub and give it an id, and then define the
# Example configuration entry # Example configuration entry
sm16716: sm16716:
data_pin: GPIO14 data_pin: GPIOXX
clock_pin: GPIO4 clock_pin: GPIOXX
num_channels: 3 num_channels: 3
num_chips: 1 num_chips: 1
# Individual outputs
output:
- platform: sm16716
id: output_red
channel: 0
- platform: sm16716
id: output_green
channel: 1
- platform: sm16716
id: output_blue
channel: 2
Configuration variables: Configuration variables:
************************ ************************
@ -69,13 +58,6 @@ The SM16716 output component exposes a SM16716 channel of a global
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry
sm16716:
data_pin: GPIO14
clock_pin: GPIO4
num_channels: 3
num_chips: 1
# Individual outputs # Individual outputs
output: output:
- platform: sm16716 - platform: sm16716
@ -174,7 +156,7 @@ A complete configuration for a Feit Electric A19 looks like:
The white LEDs are much brighter than the color LEDs and will fully overpower The white LEDs are much brighter than the color LEDs and will fully overpower
the set color when the white level is set even a little bit high. You will need the set color when the white level is set even a little bit high. You will need
to set the white level to 0 in order to get usable colors from this bulb. to set the white level to 0 in order to get usable colors from this bulb.
Alternative Costco Feit A19 RGBCT bulb configuration: Alternative Costco Feit A19 RGBCT bulb configuration:
.. code-block:: yaml .. code-block:: yaml
@ -224,8 +206,8 @@ Alternative Costco Feit A19 RGBCT bulb configuration:
power_supply: power_supply:
- id: rgb_power - id: rgb_power
pin: GPIO13 pin: GPIO13
See Also See Also
-------- --------

View File

@ -27,31 +27,9 @@ global ``sm2135`` hub and give it an id, and then define the
# Example configuration entry # Example configuration entry
sm2135: sm2135:
data_pin: GPIO12 data_pin: GPIOXX
clock_pin: GPIO14 clock_pin: GPIOXX
# Individual outputs
output:
- platform: sm2135
id: output_red
channel: 0
max_power: 0.8
- platform: sm2135
id: output_green
channel: 1
max_power: 0.8
- platform: sm2135
id: output_blue
channel: 2
max_power: 0.8
- platform: sm2135
id: output_white
channel: 3
max_power: 0.8
- platform: sm2135
id: output_warmwhite
channel: 4
max_power: 0.8
Configuration variables: Configuration variables:
************************ ************************
@ -62,7 +40,7 @@ Configuration variables:
- **id** (*Optional*, :ref:`config-id`): The id to use for - **id** (*Optional*, :ref:`config-id`): The id to use for
this ``sm2135`` component. Use this if you have multiple SM2135 chains this ``sm2135`` component. Use this if you have multiple SM2135 chains
connected at the same time. connected at the same time.
- **cw_current** (*Optional*, current): The current used for the white channel. - **cw_current** (*Optional*, current): The current used for the white channel.
Defaults to ``10mA``. Defaults to ``10mA``.
Can be one of ``10mA``, ``15mA``, ``20mA``, ``25mA``, ``30mA``, ``35mA``, ``40mA``, ``45mA``, ``50mA``, ``55mA``, ``60mA``. Can be one of ``10mA``, ``15mA``, ``20mA``, ``25mA``, ``30mA``, ``35mA``, ``40mA``, ``45mA``, ``50mA``, ``55mA``, ``60mA``.
- **rgb_current** (*Optional*, current): The current used for the RGB channel. - **rgb_current** (*Optional*, current): The current used for the RGB channel.
@ -82,11 +60,6 @@ The SM2135 output component exposes a SM2135 channel of a global
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry
sm2135:
data_pin: GPIO12
clock_pin: GPIO14
# Individual outputs # Individual outputs
output: output:
- platform: sm2135 - platform: sm2135

View File

@ -21,8 +21,8 @@ global ``sm2235`` hub and give it an id, and then define the
# Example configuration entry # Example configuration entry
sm2235: sm2235:
data_pin: GPIO4 data_pin: GPIOXX
clock_pin: GPIO5 clock_pin: GPIOXX
max_power_color_channels: 9 max_power_color_channels: 9
max_power_white_channels: 9 max_power_white_channels: 9

View File

@ -24,8 +24,8 @@ global ``sm2335`` hub and give it an id, and then define the
# Example configuration entry # Example configuration entry
sm2335: sm2335:
data_pin: GPIO4 data_pin: GPIOXX
clock_pin: GPIO5 clock_pin: GPIOXX
max_power_color_channels: 9 max_power_color_channels: 9
max_power_white_channels: 9 max_power_white_channels: 9

View File

@ -22,14 +22,10 @@ The ``template`` output component can be used to create templated binary and flo
id: output2 id: output2
level: !lambda return state; level: !lambda return state;
- platform: esp8266_pwm - platform: ...
id: output1 id: output1
pin: GPIO12 - platform: ...
inverted: true
- platform: esp8266_pwm
id: output2 id: output2
pin: GPIO14
inverted: true

View File

@ -27,21 +27,9 @@ global ``tlc5947`` hub and give it an id, and then define the
# Example configuration entry # Example configuration entry
tlc5947: tlc5947:
data_pin: GPIO12 data_pin: GPIOXX
clock_pin: GPIO14 clock_pin: GPIOXX
lat_pin: GPIO15 lat_pin: GPIOXX
# Individual outputs
output:
- platform: tlc5947
id: output_red
channel: 0
- platform: tlc5947
id: output_green
channel: 1
- platform: tlc5947
id: output_blue
channel: 2
Configuration variables: Configuration variables:
************************ ************************
@ -66,12 +54,6 @@ The tlc5947 output component exposes a tlc5947 channel of a global
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry
tlc5947:
data_pin: GPIO12
clock_pin: GPIO14
lat_pin: GPIO15
# Individual outputs # Individual outputs
output: output:
- platform: tlc5947 - platform: tlc5947

View File

@ -27,20 +27,9 @@ global ``tlc5971`` hub and give it an id, and then define the
# Example configuration entry # Example configuration entry
tlc5971: tlc5971:
data_pin: GPIO12 data_pin: GPIOXX
clock_pin: GPIO14 clock_pin: GPIOXX
# Individual outputs
output:
- platform: tlc5971
id: output_red
channel: 0
- platform: tlc5971
id: output_green
channel: 1
- platform: tlc5971
id: output_blue
channel: 2
Configuration variables: Configuration variables:
************************ ************************
@ -63,11 +52,6 @@ The tlc5971 output component exposes a tlc5971 channel of a global
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry
tlc5971:
data_pin: GPIO12
clock_pin: GPIO14
# Individual outputs # Individual outputs
output: output:
- platform: tlc5971 - platform: tlc5971

View File

@ -15,7 +15,7 @@ The ``x9c`` output platform allows you to add an output that controls a `X9C dig
The X9C family of digital potentiometers are available in different resistance values. The X9C family of digital potentiometers are available in different resistance values.
==================== ===================== ==================== =====================
``X9C102`` ``1kΩ`` ``X9C102`` ``1kΩ``
-------------------- --------------------- -------------------- ---------------------
``X9C103`` ``10kΩ`` ``X9C103`` ``10kΩ``
@ -33,9 +33,9 @@ All chips are controlled by a three wire interface and feature 100 possible wipe
output: output:
- platform: x9c - platform: x9c
id: x9c_pot id: x9c_pot
cs_pin: GPIO25 cs_pin: GPIOXX
inc_pin: GPIO27 inc_pin: GPIOXX
ud_pin: GPIO26 ud_pin: GPIOXX
initial_value: 0.5 initial_value: 0.5
Configuration variables: Configuration variables:

View File

@ -37,16 +37,8 @@ There is a buffer to buffer up to 10 commands.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
uart:
- id: uart_bus
tx_pin: GPIO18
rx_pin: GPIO19
# most devices use 2400 as baud_rate
baud_rate: 2400
pipsolar: pipsolar:
- uart_id: uart_bus - id: inverter0
id: inverter0
Configuration variables: Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~

View File

@ -30,10 +30,10 @@ In addition, the :doc:`binary_sensor/nfc` platform may be used to quickly and ea
.. code-block:: yaml .. code-block:: yaml
pn7150_i2c: pn7150_i2c:
dwl_req_pin: 17 dwl_req_pin: GPIOXX
irq_pin: 35 irq_pin: GPIOXX
ven_pin: 16 ven_pin: GPIOXX
wkup_req_pin: 21 wkup_req_pin: GPIOXX
emulation_message: https://www.home-assistant.io/tag/pulse_ce emulation_message: https://www.home-assistant.io/tag/pulse_ce
tag_ttl: 1000ms tag_ttl: 1000ms
@ -348,7 +348,7 @@ NDEF Writing
The examples below illustrate how NDEF messages may be written to cards/tags via the PN7150. Note that a The examples below illustrate how NDEF messages may be written to cards/tags via the PN7150. Note that a
:doc:`button </components/button/index>` is a great mechanism to use to trigger these actions. :doc:`button </components/button/index>` is a great mechanism to use to trigger these actions.
The first example will write a simple, fixed NDEF message to a tag. The first example will write a simple, fixed NDEF message to a tag.
.. code-block:: yaml .. code-block:: yaml

View File

@ -42,11 +42,11 @@ The ``pn7160_spi`` component allows you to use :ref:`SPI-equipped <spi>` PN7160
.. code-block:: yaml .. code-block:: yaml
pn7160_spi: pn7160_spi:
cs_pin: 15 cs_pin: GPIOXX
dwl_req_pin: 17 dwl_req_pin: GPIOXX
irq_pin: 35 irq_pin: GPIOXX
ven_pin: 16 ven_pin: GPIOXX
wkup_req_pin: 21 wkup_req_pin: GPIOXX
emulation_message: https://www.home-assistant.io/tag/pulse_ce emulation_message: https://www.home-assistant.io/tag/pulse_ce
tag_ttl: 1000ms tag_ttl: 1000ms
@ -87,10 +87,10 @@ The ``pn7160_i2c`` component allows you to use :ref:`I²C-equipped <i2c>` PN7160
.. code-block:: yaml .. code-block:: yaml
pn7160_i2c: pn7160_i2c:
dwl_req_pin: 17 dwl_req_pin: GPIOXX
irq_pin: 35 irq_pin: GPIOXX
ven_pin: 16 ven_pin: GPIOXX
wkup_req_pin: 21 wkup_req_pin: GPIOXX
emulation_message: https://www.home-assistant.io/tag/pulse_ce emulation_message: https://www.home-assistant.io/tag/pulse_ce
tag_ttl: 1000ms tag_ttl: 1000ms
@ -406,7 +406,7 @@ NDEF Writing
The examples below illustrate how NDEF messages may be written to cards/tags via the PN7160. Note that a The examples below illustrate how NDEF messages may be written to cards/tags via the PN7160. Note that a
:doc:`button </components/button/index>` is a great mechanism to use to trigger these actions. :doc:`button </components/button/index>` is a great mechanism to use to trigger these actions.
The first example will write a simple, fixed NDEF message to a tag. The first example will write a simple, fixed NDEF message to a tag.
.. code-block:: yaml .. code-block:: yaml

View File

@ -21,7 +21,7 @@ after the last output has been disabled.
# Example configuration entry # Example configuration entry
power_supply: power_supply:
- id: 'power_supply1' - id: 'power_supply1'
pin: 13 pin: GPIOXX
Configuration variables: Configuration variables:
------------------------ ------------------------

View File

@ -20,7 +20,7 @@ which will trigger when they hear their own configured signal.
# Example configuration entry # Example configuration entry
remote_receiver: remote_receiver:
pin: GPIO32 pin: GPIOXX
dump: all dump: all
Configuration variables: Configuration variables:
@ -206,10 +206,6 @@ then immediately OFF.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
remote_receiver:
pin: GPIO32
dump: all
binary_sensor: binary_sensor:
- platform: remote_receiver - platform: remote_receiver
name: "Panasonic Remote Input" name: "Panasonic Remote Input"
@ -439,7 +435,7 @@ Remote code selection (exactly one of these has to be included):
remote_receiver: remote_receiver:
pin: pin:
number: D4 number: GPIOXX
inverted: true inverted: true
mode: mode:
input: true input: true
@ -475,4 +471,3 @@ See Also
- `IRRemoteESP8266 <https://github.com/markszabo/IRremoteESP8266/>`__ by `Mark Szabo-Simon <https://github.com/markszabo>`__ - `IRRemoteESP8266 <https://github.com/markszabo/IRremoteESP8266/>`__ by `Mark Szabo-Simon <https://github.com/markszabo>`__
- :apiref:`remote/remote_receiver.h` - :apiref:`remote/remote_receiver.h`
- :ghedit:`Edit` - :ghedit:`Edit`

View File

@ -24,18 +24,9 @@ remote signals.
# Example configuration entry # Example configuration entry
remote_transmitter: remote_transmitter:
pin: GPIO32 pin: GPIOXX
carrier_duty_percent: 50% carrier_duty_percent: 50%
# Individual switches
switch:
- platform: template
name: "Panasonic TV Off"
turn_on_action:
remote_transmitter.transmit_panasonic:
address: 0x4004
command: 0x100BCBD
Configuration variables: Configuration variables:
------------------------ ------------------------
@ -293,7 +284,7 @@ Configuration variables:
- **id** (**Required**, int): The 24-bit ID to send. Each remote has a unique one. - **id** (**Required**, int): The 24-bit ID to send. Each remote has a unique one.
- **channel** (**Required**, int): The 8-bit channel to send, between 0 and 255 inclusive. - **channel** (**Required**, int): The 8-bit channel to send, between 0 and 255 inclusive.
- **button** (**Required**, int): The 4-bit button to send, between 0 and 15 inclusive. - **button** (**Required**, int): The 4-bit button to send, between 0 and 15 inclusive.
- **check** (**Required**, int): The 4-bit check to send. Includes an indication that a button is being held down. See dumper output for more info. - **check** (**Required**, int): The 4-bit check to send. Includes an indication that a button is being held down. See dumper output for more info.
- All other options from :ref:`remote_transmitter-transmit_action`. - All other options from :ref:`remote_transmitter-transmit_action`.
@ -911,7 +902,7 @@ remote_receiver instance:
.. code-block:: yaml .. code-block:: yaml
remote_receiver: remote_receiver:
pin: D0 pin: GPIOXX
dump: all dump: all
Compile and upload the code. While viewing the log output from the ESP, Compile and upload the code. While viewing the log output from the ESP,
@ -940,7 +931,7 @@ IR diode to a new pin on the ESP and configure a global ``remote_transmitter`` i
.. code-block:: yaml .. code-block:: yaml
remote_transmitter: remote_transmitter:
pin: D1 pin: GPIOXX
# Infrared remotes use a 50% carrier signal # Infrared remotes use a 50% carrier signal
carrier_duty_percent: 50% carrier_duty_percent: 50%
@ -986,7 +977,7 @@ First, connect the RF module to a pin on the ESP and set up a remote_receiver in
.. code-block:: yaml .. code-block:: yaml
remote_receiver: remote_receiver:
pin: D0 pin: GPIOXX
dump: all dump: all
# Settings to optimize recognition of RF devices # Settings to optimize recognition of RF devices
tolerance: 50% tolerance: 50%
@ -1018,7 +1009,7 @@ You should see log output like below:
.. code-block:: yaml .. code-block:: yaml
remote_receiver: remote_receiver:
pin: D0 pin: GPIOXX
dump: dump:
- rc_switch - rc_switch
tolerance: 50% tolerance: 50%
@ -1036,7 +1027,7 @@ RF transmitter to a new pin on the ESP and configure a global ``remote_transmitt
.. code-block:: yaml .. code-block:: yaml
remote_transmitter: remote_transmitter:
pin: D1 pin: GPIOXX
# RF uses a 100% carrier signal # RF uses a 100% carrier signal
carrier_duty_percent: 100% carrier_duty_percent: 100%

View File

@ -127,7 +127,7 @@ Common beeps
You can do your own beep patterns too! Here's a short collection so you can just use right away or tweak them to your like: You can do your own beep patterns too! Here's a short collection so you can just use right away or tweak them to your like:
.. code-block:: .. code-block::
two_short:d=4,o=5,b=100:16e6,16e6 two_short:d=4,o=5,b=100:16e6,16e6
long:d=1,o=5,b=100:e6 long:d=1,o=5,b=100:e6
@ -165,7 +165,7 @@ Sample code
output: output:
- platform: esp8266_pwm - platform: esp8266_pwm
pin: D1 pin: GPIOXX
id: rtttl_out id: rtttl_out
rtttl: rtttl:

View File

@ -22,7 +22,7 @@ ADC in your device to measure a voltage on certain pins.
# Example configuration entry # Example configuration entry
sensor: sensor:
- platform: adc - platform: adc
pin: A0 pin: GPIOXX
name: "Living Room Brightness" name: "Living Room Brightness"
update_interval: 60s update_interval: 60s

View File

@ -6,8 +6,8 @@ ADC128S102 8-Channel 12-Bit A/D Converter
:keywords: ADC128S102 :keywords: ADC128S102
:image: adc128s102.png :image: adc128s102.png
The ADC128S102 is a low-power, eight-channel CMOS 12-bit analog-to-digital converter specified for conversion The ADC128S102 is a low-power, eight-channel CMOS 12-bit analog-to-digital converter specified for conversion
throughput rates of 500 ksps to 1 MSPS. The converter is based on a successive-approximation register architecture throughput rates of 500 ksps to 1 MSPS. The converter is based on a successive-approximation register architecture
with an internal track-and-hold circuit. with an internal track-and-hold circuit.
.. figure:: images/adc128s102.png .. figure:: images/adc128s102.png
@ -31,16 +31,9 @@ sensors for your projects.
# Example configuration entry # Example configuration entry
adc128s102: adc128s102:
cs_pin: GPIO15 cs_pin: GPIOXX
id: my_adc id: my_adc
sensor:
- platform: adc128s102 # Attached to pin 0 of the ADC128S102.
update_interval: 1s
adc128s102_id: my_adc
id: freezer_temp_source
channel: 0 # ADC128S102 channel
Configuration variables: Configuration variables:
- **id** (**Required**, :ref:`config-id`): The id to use for this ADC128S102 component. - **id** (**Required**, :ref:`config-id`): The id to use for this ADC128S102 component.
- **cs_pin** (**Required**, int): The SPI cable select pin to use - **cs_pin** (**Required**, int): The SPI cable select pin to use
@ -52,6 +45,15 @@ The ``adc128s102`` sensor allows you to use your ADC128S102 12-Bit A/D Converter
First, setup a :ref:`ADC128S102 Hub <adc128s102-component>` for your ADC128S102 sensor and then use this First, setup a :ref:`ADC128S102 Hub <adc128s102-component>` for your ADC128S102 sensor and then use this
sensor platform to create individual sensors that will report the voltage to Home Assistant. sensor platform to create individual sensors that will report the voltage to Home Assistant.
.. code-block:: yaml
sensor:
- platform: adc128s102 # Attached to pin 0 of the ADC128S102.
update_interval: 1s
adc128s102_id: my_adc
id: freezer_temp_source
channel: 0 # ADC128S102 channel
Configuration variables: Configuration variables:
- **adc128s102_id** (**Required**, :ref:`config-id`): The id of the parent ADC128S102 component. - **adc128s102_id** (**Required**, :ref:`config-id`): The id of the parent ADC128S102 component.

View File

@ -190,9 +190,9 @@ configured).
sensor: sensor:
- platform: ade7880 - platform: ade7880
irq0_pin: irq0_pin:
number: GPIO13 number: GPIOXX
irq1_pin: irq1_pin:
number: GPIO5 number: GPIOXX
phase_a: phase_a:
name: Room Heater name: Room Heater
voltage: Voltage voltage: Voltage
@ -217,9 +217,9 @@ Heater Current', etc.
sensor: sensor:
- platform: ade7880 - platform: ade7880
irq0_pin: irq0_pin:
number: GPIO13 number: GPIOXX
irq1_pin: irq1_pin:
number: GPIO5 number: GPIOXX
phase_a: phase_a:
voltage: Voltage voltage: Voltage
current: current:
@ -249,11 +249,11 @@ configuration mode.
sensor: sensor:
- platform: ade7880 - platform: ade7880
irq0_pin: irq0_pin:
number: GPIO13 number: GPIOXX
irq1_pin: irq1_pin:
number: GPIO5 number: GPIOXX
reset_pin: reset_pin:
number: GPIO16 number: GPIOXX
frequency: 60Hz frequency: 60Hz
phase_a: phase_a:
name: Phase A name: Phase A

View File

@ -35,7 +35,7 @@ Over I²C
# Example configuration entry for i2c # Example configuration entry for i2c
sensor: sensor:
- platform: ade7953_i2c - platform: ade7953_i2c
irq_pin: GPIO16 irq_pin: GPIOXX
voltage: voltage:
name: ADE7953 Voltage name: ADE7953 Voltage
frequency: frequency:
@ -129,69 +129,35 @@ Over SPI
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry for SPI (taken from a Shelly Pro 4PM) # Example configuration entry for SPI
sensor: sensor:
- platform: ade7953_spi - platform: ade7953_spi
cs_pin: GPIO04 cs_pin: GPIOXX
irq_pin: GPIO35 irq_pin: GPIOXX
current_pga_gain_a: 2x
current_pga_gain_b: 2x
current_gain_a: 0x600000
current_gain_b: 0x600000
voltage: voltage:
name: "Voltage" name: "Voltage"
filters:
- delta: 1
frequency: frequency:
name: ADE7953 Frequency name: ADE7953 Frequency
filters:
- delta: 0.1
current_a: current_a:
name: "Current A" name: "Current A"
filters:
- delta: 0.01
current_b: current_b:
name: "Current B" name: "Current B"
filters:
- delta: 0.01
power_factor_a: power_factor_a:
name: "Power Factor A" name: "Power Factor A"
filters:
- delta: 5
power_factor_b: power_factor_b:
name: "ADE7953 Power Factor B" name: "ADE7953 Power Factor B"
filters:
- delta: 5
apparent_power_a: apparent_power_a:
name: "Apparent Power A" name: "Apparent Power A"
filters:
- delta: 1
apparent_power_b: apparent_power_b:
name: "Apparent Power B" name: "Apparent Power B"
filters:
- delta: 1
active_power_a: active_power_a:
name: "Power A" name: "Power A"
id: active_power_1
# active_power is inverted, so multiply by -1
filters:
- multiply: -1
- delta: 1
active_power_b: active_power_b:
name: "Power B" name: "Power B"
id: active_power_2
# active_power is inverted, so multiply by -1
filters:
- multiply: -1
- delta: 1
reactive_power_a: reactive_power_a:
name: "Reactive Power A" name: "Reactive Power A"
filters:
- delta: 1
reactive_power_b: reactive_power_b:
name: "Reactive Power B" name: "Reactive Power B"
filters:
- delta: 1
Configuration variables: Configuration variables:
************************ ************************

View File

@ -25,7 +25,7 @@ It uses the :ref:`SPI Bus <spi>` for communication.
.. code-block:: yaml .. code-block:: yaml
ads1118: ads1118:
cs_pin: GPIO15 cs_pin: GPIOXX
Configuration variables: Configuration variables:
************************ ************************
@ -46,14 +46,12 @@ sensor platform to create individual sensors that will report the voltage.
.. code-block:: yaml .. code-block:: yaml
ads1118:
cs_pin: GPIO15
sensor: sensor:
- platform: ads1118 - platform: ads1118
type: 'adc' type: adc
id: 'batt_volt' id: batt_volt
name: "Battery Voltage" name: Battery Voltage
multiplexer: 'A3_GND' multiplexer: A3_GND
gain: 4.096 gain: 4.096
update_interval: .01s update_interval: .01s

View File

@ -58,20 +58,10 @@ The ``as3935_spi`` sensor platform allows you to use your AS3935 sensor
.. code-block:: yaml .. code-block:: yaml
# Example configuration for SPI (decide for one!) # Example configuration for SPI
as3935_spi: as3935_spi:
cs_pin: GPIO12 cs_pin: GPIOXX
irq_pin: GPIO13 irq_pin: GPIOXX
# Example lightning and energy sensor
sensor:
- platform: as3935
lightning_energy:
name: "Lightning Energy"
distance:
name: "Distance Storm"
binary_sensor:
- platform: as3935
name: "Storm Alert"
Configuration variables: Configuration variables:
@ -117,19 +107,9 @@ The ``as3935_i2c`` sensor platform allows you to use your AS3935 sensor
.. code-block:: yaml .. code-block:: yaml
# Example configuration for I²C (decide for one!) # Example configuration for I²C
as3935_i2c: as3935_i2c:
irq_pin: GPIO12 irq_pin: GPIOXX
# Example shared configuration
sensor:
- platform: as3935
lightning_energy:
name: "Lightning Energy"
distance:
name: "Distance Storm"
binary_sensor:
- platform: as3935
name: "Storm Alert"
Configuration variables: Configuration variables:
************************ ************************
@ -173,19 +153,22 @@ Sensor
A sensor platform to read lightning data A sensor platform to read lightning data
.. code-block:: yaml
sensor:
- platform: as3935
lightning_energy:
name: Lightning Energy
distance:
name: Distance Storm
Configuration variables: Configuration variables:
- **lightning_energy** (*Optional*): Lightning energy value. According to the datasheet this is only a pure value that doesn't have any physical meaning. - **lightning_energy** (*Optional*): Lightning energy value. According to the datasheet this is only a pure value that doesn't have any physical meaning.
All options from :ref:`Sensor <config-sensor>`.
- **name** (**Required**, string): The name for the lightning energy sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **distance** (*Optional*): Distance in km to the front of the storm and not the distance to a lightning strike. - **distance** (*Optional*): Distance in km to the front of the storm and not the distance to a lightning strike.
All options from :ref:`Sensor <config-sensor>`.
- **name** (**Required**, string): The name for the distance sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
Binary Sensor Binary Sensor
@ -193,11 +176,16 @@ Binary Sensor
Binary sensor that indicates if a lightning strike was detected. Binary sensor that indicates if a lightning strike was detected.
.. code-block:: yaml
# Example storm alert binary sensor
binary_sensor:
- platform: as3935
name: Storm Alert
Configuration variables: Configuration variables:
- **name** (**Required**, string): The name of the binary sensor. - All options from :ref:`Binary Sensor <config-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>`.
See Also See Also

View File

@ -30,7 +30,7 @@ the :ref:`I²C Bus <i2c>` and connect the sensor to the pins specified there.
.. code-block:: yaml .. code-block:: yaml
as5600: as5600:
dir_pin: 22 dir_pin: GPIOXX
start_position: 0deg start_position: 0deg
range: 180deg range: 180deg
@ -39,7 +39,7 @@ Configuration variables:
- **dir_pin** (*Optional*, int): The pin connected to the AS5600's direction pin. - **dir_pin** (*Optional*, int): The pin connected to the AS5600's direction pin.
See :ref:`Direction <as5600_direction>` for more information. See :ref:`Direction <as5600_direction>` for more information.
- **direction** (*Optional*, string): The direction that the magnet should rotate to increase values. - **direction** (*Optional*, string): The direction that the magnet should rotate to increase values.
Used in combination with the **dir_pin**. Used in combination with the **dir_pin**.
- ``clockwise`` (default) - ``clockwise`` (default)
@ -57,7 +57,7 @@ Configuration variables:
- ``lsb2`` - ``lsb2``
- ``lsb3`` - ``lsb3``
- **power_mode** (*Optional*, string): The power mode to run the sensor. Note: When **watchdog** is enabled, - **power_mode** (*Optional*, string): The power mode to run the sensor. Note: When **watchdog** is enabled,
it will switch the device to ``low3`` when there is not much change in position. it will switch the device to ``low3`` when there is not much change in position.
- ``nominal`` (default) - ``nominal`` (default)
@ -65,7 +65,7 @@ Configuration variables:
- ``low2`` - ``low2``
- ``low3`` - ``low3``
- **watchdog** (*Optional*, boolean): Whether to enable the watchdog that puts the the chip in to - **watchdog** (*Optional*, boolean): Whether to enable the watchdog that puts the the chip in to
low power mode 3. Check the datasheet for more information. low power mode 3. Check the datasheet for more information.
Defaults to ``off``. Defaults to ``off``.
- **slow_filter** (*Optional*, string): See datasheet. - **slow_filter** (*Optional*, string): See datasheet.
@ -98,9 +98,9 @@ Direction
The AS5600 has ``direction`` pin that controls which rotation direction will cause the position value to **increase**. The AS5600 has ``direction`` pin that controls which rotation direction will cause the position value to **increase**.
This pin should be pulled low for clockwise, and pulled high for counterclockwise. If left floating, you are likely This pin should be pulled low for clockwise, and pulled high for counterclockwise. If left floating, you are likely
to encounter erratic behavior. to encounter erratic behavior.
If you would like the ESP controller to pull that pin high or low, you may configure the ``dir_pin`` and optionally, the If you would like the ESP controller to pull that pin high or low, you may configure the ``dir_pin`` and optionally, the
``direction`` option to have the ESP controller pull the pin high or low. ``direction`` option to have the ESP controller pull the pin high or low.
.. _as5600_position_range: .. _as5600_position_range:
@ -136,7 +136,7 @@ For example, let's say we have the following component config:
start_position: 90deg start_position: 90deg
range: 180deg range: 180deg
direction: clockwise direction: clockwise
dir_pin: 22 dir_pin: GPIOXX
- If the magnet north was at the right side of the chip (i.e. 1024 / 90deg raw position), the scaled position would report a value of ``0``. - If the magnet north was at the right side of the chip (i.e. 1024 / 90deg raw position), the scaled position would report a value of ``0``.
- If the magnet north was at the bottom of the chip (i.e. 2048 / 180deg raw position), the scaled position would report a value of ``2048``. - If the magnet north was at the bottom of the chip (i.e. 2048 / 180deg raw position), the scaled position would report a value of ``2048``.
@ -147,7 +147,7 @@ For example, let's say we have the following component config:
.. note:: .. note::
You may specify an ``end_position`` that is less than the ``start_position``. When doing so, the allowable range will start at the You may specify an ``end_position`` that is less than the ``start_position``. When doing so, the allowable range will start at the
``start_position`` and continue through to the highest position value (i.e. ``4095``) and then continue from ``0`` until it reaches ``start_position`` and continue through to the highest position value (i.e. ``4095``) and then continue from ``0`` until it reaches
the ``end_position``. the ``end_position``.
@ -180,7 +180,7 @@ sensor platform to create individual sensors that will report the position to Ho
.. code-block:: yaml .. code-block:: yaml
as5600: as5600:
dir_pin: 22 dir_pin: GPIOXX
sensor: sensor:
- platform: as5600 - platform: as5600

View File

@ -21,8 +21,8 @@ Configuration variables:
- **cs_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin CS is connected to. For the 6 channel meter main board, this will always be 5 and 4. For the add-on boards a jumper can be selected for each CS pin, but default to 0 and 16. - **cs_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin CS is connected to. For the 6 channel meter main board, this will always be 5 and 4. For the add-on boards a jumper can be selected for each CS pin, but default to 0 and 16.
- **line_frequency** (**Required**, string): The AC line frequency of the supply voltage. One of ``50Hz``, ``60Hz``. - **line_frequency** (**Required**, string): The AC line frequency of the supply voltage. One of ``50Hz``, ``60Hz``.
- **meter_constant** (**Required**, float): The number of pulses per kWh. The ATM90E26 internally works based on pulses and - **meter_constant** (**Required**, float): The number of pulses per kWh. The ATM90E26 internally works based on pulses and
this value converts a pulse into Wh, which are emitted as ``forward_active_energy`` etc. Matching it against an existing this value converts a pulse into Wh, which are emitted as ``forward_active_energy`` etc. Matching it against an existing
meter is useful in that it allows visual confirmation for some devices that blink an LED for each pulse. Common values are meter is useful in that it allows visual confirmation for some devices that blink an LED for each pulse. Common values are
1000 pulses/kWh, 1666.66 pulses/kWh, or 3200 pulses/kWh. See also **gain_metering** which determines after how much energy 1000 pulses/kWh, 1666.66 pulses/kWh, or 3200 pulses/kWh. See also **gain_metering** which determines after how much energy
a pulse is emitted. a pulse is emitted.
@ -111,13 +111,13 @@ Keeping the calibration values at the top of your yaml might make editing easier
metering_cal: '7481' # default: 7481 - Calibrate this to match your meter based on the CF1 (CFx) pulse. metering_cal: '7481' # default: 7481 - Calibrate this to match your meter based on the CF1 (CFx) pulse.
spi: spi:
clk_pin: 18 clk_pin: GPIOXX
miso_pin: 19 miso_pin: GPIOXX
mosi_pin: 23 mosi_pin: GPIOXX
sensor: sensor:
- platform: atm90e26 - platform: atm90e26
cs_pin: 5 cs_pin: GPIOXX
voltage: voltage:
name: House Voltage name: House Voltage
accuracy_decimals: 1 accuracy_decimals: 1

View File

@ -168,7 +168,7 @@ a time-series-database, e.g. InfluxDB.
sensor: sensor:
#IC1 Main #IC1 Main
- platform: atm90e32 - platform: atm90e32
cs_pin: 5 cs_pin: GPIOXX
phase_a: phase_a:
forward_active_energy: forward_active_energy:
name: ${disp_name} ct1 FAWattHours name: ${disp_name} ct1 FAWattHours
@ -208,13 +208,13 @@ Additional Examples
# Example configuration entry for split single phase meter # Example configuration entry for split single phase meter
spi: spi:
clk_pin: 18 clk_pin: GPIOXX
miso_pin: 19 miso_pin: GPIOXX
mosi_pin: 23 mosi_pin: GPIOXX
sensor: sensor:
- platform: atm90e32 - platform: atm90e32
cs_pin: 5 cs_pin: GPIOXX
phase_a: phase_a:
voltage: voltage:
name: "EMON Line Voltage A" name: "EMON Line Voltage A"

View File

@ -6,17 +6,17 @@ Binary Sensor Map
:image: binary_sensor_map.jpg :image: binary_sensor_map.jpg
The ``binary_sensor_map`` sensor platform allows you to map multiple :doc:`binary sensor </components/binary_sensor/index>` The ``binary_sensor_map`` sensor platform allows you to map multiple :doc:`binary sensor </components/binary_sensor/index>`
to an individual value. Depending on the state of each binary sensor, its associated configured parameters, and this sensor's mapping type, to an individual value. Depending on the state of each binary sensor, its associated configured parameters, and this sensor's mapping type,
the ``binary_sensor_map`` publishes a single numerical value. the ``binary_sensor_map`` publishes a single numerical value.
Use this sensor to combine one or more binary sensors' ``ON`` or ``OFF`` states into a numerical value. Some possible use cases include Use this sensor to combine one or more binary sensors' ``ON`` or ``OFF`` states into a numerical value. Some possible use cases include
touch devices and determining Bayesian probabilities for an event. touch devices and determining Bayesian probabilities for an event.
This platform supports three measurement types: ``BAYESIAN``, ``GROUP``, and ``SUM``. This platform supports three measurement types: ``BAYESIAN``, ``GROUP``, and ``SUM``.
You need to specify your desired mapping with the ``type:`` configuration value. You need to specify your desired mapping with the ``type:`` configuration value.
When using the ``BAYESIAN`` type, add your binary sensors as ``observations`` to the binary sensor map. When using the ``BAYESIAN`` type, add your binary sensors as ``observations`` to the binary sensor map.
If you use the ``GROUP`` or ``SUM`` type, add your binary sensors as ``channels``. If you use the ``GROUP`` or ``SUM`` type, add your binary sensors as ``channels``.
The maximum amount of observations/channels supported is 64. The maximum amount of observations/channels supported is 64.
- ``BAYESIAN`` This type replicates Home Assistant's `Bayesian sensor <https://www.home-assistant.io/integrations/bayesian/>`__. Based on the observation states, this sensor returns the Bayesian probability of a particular event occurring. The configured ``prior:`` probability is the likelihood that the Bayesian event is true, ignoring all external influences. Every observation has its own ``prob_given_true`` and ``prob_given_false`` parameters. The ``prob_given_true:`` value is the probability that the observation's binary sensor is ``ON`` when the Bayesian event is ``true``. The ``prob_given_false:`` value is the probability that the observation's binary sensor is ``ON`` when the Bayesian event is ``false``. Use an :doc:`/components/binary_sensor/analog_threshold` to convert this sensor's probability to a binary ``ON`` or ``OFF`` by setting an appropriate threshold. - ``BAYESIAN`` This type replicates Home Assistant's `Bayesian sensor <https://www.home-assistant.io/integrations/bayesian/>`__. Based on the observation states, this sensor returns the Bayesian probability of a particular event occurring. The configured ``prior:`` probability is the likelihood that the Bayesian event is true, ignoring all external influences. Every observation has its own ``prob_given_true`` and ``prob_given_false`` parameters. The ``prob_given_true:`` value is the probability that the observation's binary sensor is ``ON`` when the Bayesian event is ``true``. The ``prob_given_false:`` value is the probability that the observation's binary sensor is ``ON`` when the Bayesian event is ``false``. Use an :doc:`/components/binary_sensor/analog_threshold` to convert this sensor's probability to a binary ``ON`` or ``OFF`` by setting an appropriate threshold.
@ -39,12 +39,12 @@ The maximum amount of observations/channels supported is 64.
prob_given_false: 0.1 prob_given_false: 0.1
binary_sensor: binary_sensor:
# If the Bayesian probability is greater than 0.6, # If the Bayesian probability is greater than 0.6,
# then predict the event is occuring # then predict the event is occuring
- platform: analog_threshold - platform: analog_threshold
name: "Bayesian Event Predicted State" name: "Bayesian Event Predicted State"
sensor_id: bayesian_prob sensor_id: bayesian_prob
threshold: 0.6 threshold: 0.6
# ... # ...
- ``GROUP`` Each channel has its own ``value``. The sensor publishes the average value of all active - ``GROUP`` Each channel has its own ``value``. The sensor publishes the average value of all active
@ -78,7 +78,7 @@ The maximum amount of observations/channels supported is 64.
channel: 0 channel: 0
id: touchkey0 id: touchkey0
# ... # ...
- ``SUM`` Each channel has its own ``value``. The sensor publishes the sum of all the active - ``SUM`` Each channel has its own ``value``. The sensor publishes the sum of all the active
binary sensors values or ``0`` if no sensors are active. binary sensors values or ``0`` if no sensors are active.
@ -102,19 +102,19 @@ The maximum amount of observations/channels supported is 64.
binary_sensor: binary_sensor:
- platform: gpio - platform: gpio
pin: 4 pin: GPIOXX
id: bit0 id: bit0
- platform: gpio - platform: gpio
pin: 5 pin: GPIOXX
id: bit1 id: bit1
- platform: gpio - platform: gpio
pin: 6 pin: GPIOXX
id: bit2 id: bit2
- platform: gpio - platform: gpio
pin: 7 pin: GPIOXX
id: bit3 id: bit3
# ... # ...
@ -128,7 +128,7 @@ Configuration variables:
- **binary_sensor** (**Required**): The id of the :doc:`binary sensor </components/binary_sensor/index>` - **binary_sensor** (**Required**): The id of the :doc:`binary sensor </components/binary_sensor/index>`
to add as a channel for this sensor. to add as a channel for this sensor.
- **value** (**Required**): The value this channel should report when its binary sensor is active. - **value** (**Required**): The value this channel should report when its binary sensor is active.
- **prior** (**Required for BAYESIAN type**, float between 0 and 1): The prior probability of the event. - **prior** (**Required for BAYESIAN type**, float between 0 and 1): The prior probability of the event.
- **observations** (**Required for BAYESIAN type**): A list of observations that influence the Bayesian probability of the event. - **observations** (**Required for BAYESIAN type**): A list of observations that influence the Bayesian probability of the event.
- **binary_sensor** (**Required**): The id of the :doc:`binary sensor </components/binary_sensor/index>` - **binary_sensor** (**Required**): The id of the :doc:`binary sensor </components/binary_sensor/index>`

View File

@ -20,20 +20,8 @@ Additionally, you need to set the baud rate to 4800, parity to ``NONE`` and stop
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
# Disable logging over serial
logger:
baud_rate: 0
uart:
tx_pin: GPIO25
rx_pin: GPIO26
baud_rate: 4800
parity: NONE
stop_bits: 2
sensor: sensor:
- platform: bl0939 - platform: bl0939
update_interval: 30s
voltage: voltage:
name: 'BL0939 Voltage' name: 'BL0939 Voltage'
current_1: current_1:

View File

@ -9,7 +9,7 @@ BME280 Temperature+Pressure+Humidity Sensor
The ``bme280`` sensor platform allows you to use your BME280 The ``bme280`` sensor platform allows you to use your BME280
(`datasheet <https://cdn-shop.adafruit.com/datasheets/BST-BME280_DS001-10.pdf>`__, (`datasheet <https://cdn-shop.adafruit.com/datasheets/BST-BME280_DS001-10.pdf>`__,
`Adafruit`_) temperature, pressure and humidity sensors with ESPHome. The sensor `Adafruit`_) temperature, pressure and humidity sensors with ESPHome. The sensor
is used in *Forced Mode* where measurement is performed and then is used in *Forced Mode* where measurement is performed and then
the sensor returns to sleep mode until next measurement. The :ref:`I²C <i2c>` or :ref:`SPI <spi>` is the sensor returns to sleep mode until next measurement. The :ref:`I²C <i2c>` or :ref:`SPI <spi>` is
required to be set up in your configuration for this sensor to work. required to be set up in your configuration for this sensor to work.
@ -28,13 +28,10 @@ required to be set up in your configuration for this sensor to work.
- platform: bme280_i2c - platform: bme280_i2c
temperature: temperature:
name: "BME280 Temperature" name: "BME280 Temperature"
oversampling: 16x
pressure: pressure:
name: "BME280 Pressure" name: "BME280 Pressure"
humidity: humidity:
name: "BME280 Humidity" name: "BME280 Humidity"
address: 0x77
update_interval: 60s
# Example configuration entry SPI # Example configuration entry SPI
@ -42,40 +39,31 @@ required to be set up in your configuration for this sensor to work.
- platform: bme280_spi - platform: bme280_spi
temperature: temperature:
name: "BME280 Temperature" name: "BME280 Temperature"
oversampling: 16x
pressure: pressure:
name: "BME280 Pressure" name: "BME280 Pressure"
humidity: humidity:
name: "BME280 Humidity" name: "BME280 Humidity"
cs_pin: GPIO5 cs_pin: GPIOXX
update_interval: 60s
Configuration variables: Configuration variables:
------------------------ ------------------------
- **temperature** (*Optional*): The information for the temperature sensor. - **temperature** (*Optional*): The information for the temperature sensor.
- **name** (**Required**, string): The name for the temperature
sensor.
- **oversampling** (*Optional*): The oversampling parameter for the temperature sensor. - **oversampling** (*Optional*): The oversampling parameter for the temperature sensor.
See :ref:`Oversampling Options <bme280-oversampling>`. See :ref:`Oversampling Options <bme280-oversampling>`.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`. - All other options from :ref:`Sensor <config-sensor>`.
- **pressure** (*Optional*): The information for the pressure sensor. - **pressure** (*Optional*): The information for the pressure sensor.
- **name** (**Required**, string): The name for the pressure sensor.
- **oversampling** (*Optional*): The oversampling parameter for the temperature sensor. - **oversampling** (*Optional*): The oversampling parameter for the temperature sensor.
See :ref:`Oversampling Options <bme280-oversampling>`. See :ref:`Oversampling Options <bme280-oversampling>`.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`. - All other options from :ref:`Sensor <config-sensor>`.
- **humidity** (*Optional*): The information for the pressure sensor. - **humidity** (*Optional*): The information for the pressure sensor.
- **name** (**Required**, string): The name for the humidity sensor.
- **oversampling** (*Optional*): The oversampling parameter for the temperature sensor. - **oversampling** (*Optional*): The oversampling parameter for the temperature sensor.
See :ref:`Oversampling Options <bme280-oversampling>`. See :ref:`Oversampling Options <bme280-oversampling>`.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`. - All other options from :ref:`Sensor <config-sensor>`.
- **address** (*Optional*, int): Manually specify the I²C address of - **address** (*Optional*, int): Manually specify the I²C address of

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

@ -35,11 +35,6 @@ driven by a GPIO or wired to VCC.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
spi:
clk_pin: 18
mosi_pin: 23
miso_pin: 19
sensor: sensor:
- platform: cs5460a - platform: cs5460a
current: current:
@ -58,7 +53,7 @@ driven by a GPIO or wired to VCC.
current_gain: 0.01 current_gain: 0.01
voltage_gain: 0.000573 voltage_gain: 0.000573
pulse_energy: 1 Wh pulse_energy: 1 Wh
cs_pin: 33 cs_pin: GPIOXX
Configuration variables: Configuration variables:
------------------------ ------------------------

View File

@ -20,16 +20,6 @@ Additionally, you need to set the baud rate to 38400 and parity to ``EVEN``.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
# Disable logging over serial
logger:
baud_rate: 0
uart:
tx_pin: GPIO25
rx_pin: GPIO26
baud_rate: 38400
parity: EVEN
sensor: sensor:
- platform: cse7761 - platform: cse7761
voltage: voltage:
@ -42,7 +32,6 @@ Additionally, you need to set the baud rate to 38400 and parity to ``EVEN``.
name: 'CSE7761 Active Power 1' name: 'CSE7761 Active Power 1'
active_power_2: active_power_2:
name: 'CSE7761 Active Power 2' name: 'CSE7761 Active Power 2'
update_interval: 5s
.. note:: .. note::

View File

@ -28,13 +28,7 @@ if you don't have massively long wires.
# Example configuration entry # Example configuration entry
dallas: dallas:
- pin: 23 - pin: GPIOXX
# Individual sensors
sensor:
- platform: dallas
address: 0x1c0000031edd2a28
name: "Livingroom Temperature"
Configuration variables: Configuration variables:
************************ ************************
@ -71,10 +65,6 @@ To initialize a sensor, first supply either ``address`` **or** ``index`` to iden
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry
dallas:
- pin: GPIO23
# Individual sensors # Individual sensors
sensor: sensor:
- platform: dallas - platform: dallas
@ -114,7 +104,7 @@ the scanning will happen even with no sensors connected. For example with this c
# Example configuration entry # Example configuration entry
dallas: dallas:
- pin: GPIO23 - pin: GPIOXX
# Note you don't have to add any sensors at this point # Note you don't have to add any sensors at this point
@ -128,7 +118,7 @@ Now we can add the individual sensors to our configuration:
# Example configuration entry # Example configuration entry
dallas: dallas:
- pin: GPIO23 - pin: GPIOXX
sensor: sensor:
- platform: dallas - platform: dallas
@ -154,9 +144,9 @@ Use this if you have multiple dallas hubs:
# Example configuration entry # Example configuration entry
dallas: dallas:
- pin: GPIO23 - pin: GPIOXX
id: hub_1 id: hub_1
- pin: GPIO24 - pin: GPIOXX
id: hub_2 id: hub_2
sensor: sensor:

View File

@ -15,18 +15,29 @@ The BMS communicates via :ref:`UART <uart>`.
:align: center :align: center
:width: 100.0% :width: 100.0%
Component/Hub
-------------
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry (ESP8266) # Example configuration entry
uart:
tx_pin: GPIO1
rx_pin: GPIO3
baud_rate: 9600
daly_bms: daly_bms:
update_interval: 20s update_interval: 20s
Configuration variables:
************************
- **update_interval** (*Optional*, :ref:`config-time`): Delay between data requests.
- **address** (*Optional*, int): Address to use, defaults to ``0x80``.
Sensor
------
A sensor platform to read BMS data
.. code-block:: yaml
sensor: sensor:
- platform: daly_bms - platform: daly_bms
voltage: voltage:
@ -68,11 +79,81 @@ The BMS communicates via :ref:`UART <uart>`.
cell_4_voltage: cell_4_voltage:
name: "Cell 4 Voltage" name: "Cell 4 Voltage"
Configuration variables:
************************
- **voltage** (*Optional*): Voltage of the battery pack connected to Daly BMS.
All options from :ref:`Sensor <config-sensor>`.
- **current** (*Optional*): Current flowing trough the BMS (input or output from batttery).
All options from :ref:`Sensor <config-sensor>`.
- **battery_level** (*Optional*): Battery level in % (SoC).
All options from :ref:`Sensor <config-sensor>`.
- **max_cell_voltage** (*Optional*): The cell of the battery with the higher voltage.
All options from :ref:`Sensor <config-sensor>`.
- **max_cell_voltage_number** (*Optional*): The cell number of the battery with the higher voltage.
All options from :ref:`Sensor <config-sensor>`.
- **min_cell_voltage** (*Optional*): The cell of the battery with the lower voltage.
All options from :ref:`Sensor <config-sensor>`.
- **min_cell_voltage_number** (*Optional*): The cell number of the battery with the lower voltage.
All options from :ref:`Sensor <config-sensor>`.
- **max_temperature** (*Optional*): The higher temperature measured from the temperature sensors.
All options from :ref:`Sensor <config-sensor>`.
- **max_temperature_probe_number** (*Optional*): The sensor number which has measured the higher temperature.
All options from :ref:`Sensor <config-sensor>`.
- **min_temperature** (*Optional*): The lower temperature measured from the temperature sensors.
All options from :ref:`Sensor <config-sensor>`.
- **min_temperature_probe_number** (*Optional*): The sensor number which has measured the lower temperature.
All options from :ref:`Sensor <config-sensor>`.
- **remaining_capacity** (*Optional*): The capacity in Ah left in the battery.
All options from :ref:`Sensor <config-sensor>`.
- **cells_number** (*Optional*): The number of cells in series in the battery pack.
All options from :ref:`Sensor <config-sensor>`.
- **temperature_1** (*Optional*): The first temperature sensor.
All options from :ref:`Sensor <config-sensor>`.
- **temperature_2** (*Optional*): The second temperature sensor.
All options from :ref:`Sensor <config-sensor>`.
- **cell_1_voltage** (*Optional*): The voltage of cell number 1. Cell number can be from 1 to 16.
All options from :ref:`Sensor <config-sensor>`.
Text Sensor
-----------
Text sensor that indicates the status of BMS.
.. code-block:: yaml
text_sensor: text_sensor:
- platform: daly_bms - platform: daly_bms
status: status:
name: "BMS Status" name: "BMS Status"
Configuration variables:
************************
- **status** (*Optional*): The BMS Status (Charging, Discharging, Stationary).
All options from :ref:`Text Sensor <config-text_sensor>`.
Binary Sensor
-------------
Binary sensor that indicates the status of MOS.
.. code-block:: yaml
binary_sensor: binary_sensor:
- platform: daly_bms - platform: daly_bms
@ -81,163 +162,25 @@ The BMS communicates via :ref:`UART <uart>`.
discharging_mos_enabled: discharging_mos_enabled:
name: "Discharging MOS" name: "Discharging MOS"
Component/Hub
-------------
Configuration variables:
************************
- **update_interval** (*Optional*, :ref:`config-time`): Delay between data requests.
- **address** (*Optional*, int): Address to use, defaults to ``0x80``.
Sensor
------
A sensor platform to read BMS data
Configuration variables:
************************
- **voltage** (*Optional*): Voltage of the battery pack connected to Daly BMS.
- **name** (**Required**, string): The name for the voltage sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **current** (*Optional*): Current flowing trough the BMS (input or output from batttery).
- **name** (**Required**, string): The name for the current sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **battery_level** (*Optional*): Battery level in % (SoC).
- **name** (**Required**, string): The name for the SoC sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **max_cell_voltage** (*Optional*): The cell of the battery with the higher voltage.
- **name** (**Required**, string): The name for the Max Cell Voltage sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **max_cell_voltage_number** (*Optional*): The cell number of the battery with the higher voltage.
- **name** (**Required**, string): The name for the Max Cell Voltage Number sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **min_cell_voltage** (*Optional*): The cell of the battery with the lower voltage.
- **name** (**Required**, string): The name for the Min Cell Voltage sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **min_cell_voltage_number** (*Optional*): The cell number of the battery with the lower voltage.
- **name** (**Required**, string): The name for the Min Cell Voltage Number sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **max_temperature** (*Optional*): The higher temperature measured from the temperature sensors.
- **name** (**Required**, string): The name for the Max Temperature sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **max_temperature_probe_number** (*Optional*): The sensor number which has measured the higher temperature.
- **name** (**Required**, string): The name for the Max Temperature Probe Number sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **min_temperature** (*Optional*): The lower temperature measured from the temperature sensors.
- **name** (**Required**, string): The name for the Min Temperature sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **min_temperature_probe_number** (*Optional*): The sensor number which has measured the lower temperature.
- **name** (**Required**, string): The name for the Min Temperature Probe Number sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **remaining_capacity** (*Optional*): The capacity in Ah left in the battery.
- **name** (**Required**, string): The name for the Remaining Capacity sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **cells_number** (*Optional*): The number of cells in series in the battery pack.
- **name** (**Required**, string): The name for the Cells Number sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **temperature_1** (*Optional*): The first temperature sensor.
- **name** (**Required**, string): The name for the first temperature sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **temperature_2** (*Optional*): The second temperature sensor.
- **name** (**Required**, string): The name for the second temperature sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **cell_1_voltage** (*Optional*): The voltage of cell number 1. Cell number can be from 1 to 16.
- **name** (**Required**, string): The name for the cell voltage sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
Text Sensor
-----------
Text sensor that indicates the status of BMS.
Configuration variables:
************************
- **status** (*Optional*): The BMS Status (Charging, Discharging, Stationary).
- **name** (**Required**, string): The name for the BMS status text sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Text Sensor <config-text_sensor>`.
Binary Sensor
-------------
Binary sensor that indicates the status of MOS.
Configuration variables: Configuration variables:
************************ ************************
- **charging_mos_enabled** (*Optional*): The BMS charging MOS status to enable the recharge of the battery. - **charging_mos_enabled** (*Optional*): The BMS charging MOS status to enable the recharge of the battery.
All options from :ref:`Binary Sensor <config-binary_sensor>`.
- **name** (**Required**, string): The name for the charging MOS binary sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Binary Sensor <config-binary_sensor>`.
- **discharging_mos_enabled** (*Optional*): The BMS discharging mos status to enable the load. - **discharging_mos_enabled** (*Optional*): The BMS discharging mos status to enable the load.
All options from :ref:`Binary Sensor <config-binary_sensor>`.
- **name** (**Required**, string): The name for the discharging MOS binary sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Binary Sensor <config-binary_sensor>`.
Control BMS Control BMS
----------- -----------
At this moment Daly sensor platform don't suppport controlling you BMS, but you can make some stuff using uart.write At this moment Daly sensor platform don't suppport controlling you BMS, but you can make some stuff using uart.write
First you need to setup binary sensors for charging and disharging MOS First you need to setup binary sensors for charging and disharging MOS
.. code-block:: yaml .. code-block:: yaml
binary_sensor: binary_sensor:
- platform: daly_bms - platform: daly_bms
charging_mos_enabled: charging_mos_enabled:
@ -249,11 +192,11 @@ First you need to setup binary sensors for charging and disharging MOS
id: bin_daly_dischg_mos # binary MOS sensor must have ID to use with switch id: bin_daly_dischg_mos # binary MOS sensor must have ID to use with switch
internal: True # but you can make it internal to avoid duplication internal: True # but you can make it internal to avoid duplication
Then you can add switches Then you can add switches
.. code-block:: yaml .. code-block:: yaml
switch: switch:
- platform: template - platform: template
name: "Daly Charging MOS" name: "Daly Charging MOS"
@ -266,12 +209,12 @@ Then you can add switches
turn_on_action: turn_on_action:
- uart.write: - uart.write:
data: [0xA5, 0x40, 0xDA, 0x08, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC8] data: [0xA5, 0x40, 0xDA, 0x08, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC8]
- logger.log: - logger.log:
format: "Send cmd to Daly: Set charge MOS on" format: "Send cmd to Daly: Set charge MOS on"
turn_off_action: turn_off_action:
- uart.write: - uart.write:
data: [0xA5, 0x40, 0xDA, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC7] data: [0xA5, 0x40, 0xDA, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC7]
- logger.log: - logger.log:
format: "Send cmd to Daly: Set charge MOS off" format: "Send cmd to Daly: Set charge MOS off"
- platform: template - platform: template
@ -285,20 +228,20 @@ Then you can add switches
turn_on_action: turn_on_action:
- uart.write: - uart.write:
data: [0xA5, 0x40, 0xD9, 0x08, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC7] data: [0xA5, 0x40, 0xD9, 0x08, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC7]
- logger.log: - logger.log:
format: "Send cmd to Daly: Set discharge MOS on" format: "Send cmd to Daly: Set discharge MOS on"
turn_off_action: turn_off_action:
- uart.write: - uart.write:
data: [0xA5, 0x40, 0xD9, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6] data: [0xA5, 0x40, 0xD9, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6]
- logger.log: - logger.log:
format: "Send cmd to Daly: Set discharge MOS off" format: "Send cmd to Daly: Set discharge MOS off"
Also you can add select to change battery level Also you can add select to change battery level
.. code-block:: yaml
.. code-block:: yaml
select: select:
- platform: template - platform: template
name: "Daly Battery Level setup" name: "Daly Battery Level setup"
@ -318,7 +261,7 @@ Also you can add select to change battery level
then: then:
- uart.write: - uart.write:
data: [0xA5, 0x40, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xE8, 0xF9] data: [0xA5, 0x40, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xE8, 0xF9]
- logger.log: - logger.log:
format: "Send cmd to Daly: Set SOC to 100%" format: "Send cmd to Daly: Set SOC to 100%"
else: else:
- if: - if:
@ -327,7 +270,7 @@ Also you can add select to change battery level
then: then:
- uart.write: - uart.write:
data: [0xA5, 0x40, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xEE, 0xFE] data: [0xA5, 0x40, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xEE, 0xFE]
- logger.log: - logger.log:
format: "Send cmd to Daly: Set SOC to 75%" format: "Send cmd to Daly: Set SOC to 75%"
else: else:
- if: - if:
@ -336,7 +279,7 @@ Also you can add select to change battery level
then: then:
- uart.write: - uart.write:
data: [0xA5, 0x40, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF4, 0x03] data: [0xA5, 0x40, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF4, 0x03]
- logger.log: - logger.log:
format: "Send cmd to Daly: Set SOC to 50%" format: "Send cmd to Daly: Set SOC to 50%"
else: else:
- if: - if:
@ -345,7 +288,7 @@ Also you can add select to change battery level
then: then:
- uart.write: - uart.write:
data: [0xA5, 0x40, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x08] data: [0xA5, 0x40, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x08]
- logger.log: - logger.log:
format: "Send cmd to Daly: Set SOC to 25%" format: "Send cmd to Daly: Set SOC to 25%"
else: else:
- if: - if:
@ -354,10 +297,10 @@ Also you can add select to change battery level
then: then:
- uart.write: - uart.write:
data: [0xA5, 0x40, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E] data: [0xA5, 0x40, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E]
- logger.log: - logger.log:
format: "Send cmd to Daly: Set SOC to 0%" format: "Send cmd to Daly: Set SOC to 0%"
UART Connection UART Connection
--------------- ---------------
@ -368,15 +311,15 @@ Connect RX from BMS to TX in ESP board and TX from BMS to RX in ESP board
:width: 100.0% :width: 100.0%
Uart Pinout. Uart Pinout.
**3.3v Warning:** some BMS 3.3v cant source large currents and may not work to properly power the ESP. If you are having WIFI connection issues or similar, try a different power source. There is 12-15v available on the Daly connector which via a proper step-down converter can properly power the ESP. **3.3v Warning:** some BMS 3.3v cant source large currents and may not work to properly power the ESP. If you are having WIFI connection issues or similar, try a different power source. There is 12-15v available on the Daly connector which via a proper step-down converter can properly power the ESP.
On the ESP32 (untested on ESP8266) if you are having missing data (such as Temperature 1/2), it may be due to UART buffer size. On the ESP32 (untested on ESP8266) if you are having missing data (such as Temperature 1/2), it may be due to UART buffer size.
Add the following to your configuration to increase the buffer from the default 256 to 512. Add the following to your configuration to increase the buffer from the default 256 to 512.
.. code-block:: .. code-block::
uart: uart:
... ...
rx_buffer_size: 512 rx_buffer_size: 512

View File

@ -15,27 +15,16 @@ The ``Growatt Inverter`` sensor platform allows you to use growatt inverter data
Growatt Logo Growatt Logo
The communication with this integration is done over a :ref:`UART bus <uart>` using :ref:`Modbus <modbus>`. The communication with this integration is done over a :ref:`UART bus <uart>` using :ref:`Modbus <modbus>`.
You must therefore have a ``uart:`` entry in your configuration with both the TX and RX pins set You must therefore have a ``uart:`` and ``modbus:`` entry in your configuration with both the TX and RX pins set
to some pins on your board and the baud rate set to 9600. to some pins on your board and the baud rate set to 9600.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration
uart:
- id: gw_uart
baud_rate: 9600
tx_pin: GPIO1
rx_pin: GPIO3
modbus:
uart_id: gw_uart
flow_control_pin: GPIO4
sensor: sensor:
- platform: growatt_solar - platform: growatt_solar
update_interval: 10s
protocol_version: RTU protocol_version: RTU
inverter_status: inverter_status:
name: "Growatt Status Code" name: "Growatt Status Code"
@ -88,7 +77,7 @@ to some pins on your board and the baud rate set to 9600.
energy_production_day: energy_production_day:
name: "Growatt Today's Generation" name: "Growatt Today's Generation"
total_energy_production: total_energy_production:
name: "Growatt Total Energy Production" name: "Growatt Total Energy Production"
@ -96,14 +85,12 @@ to some pins on your board and the baud rate set to 9600.
name: "Growatt Inverter Module Temp" name: "Growatt Inverter Module Temp"
Configuration variables: Configuration variables:
------------------------ ------------------------
- **inverter_status** (*Optional*): Status code of the inverter (0: waiting, 1: normal, 3:fault) - **inverter_status** (*Optional*): Status code of the inverter (0: waiting, 1: normal, 3:fault)
- **protocol_version** (*Optional*): Version of the protocol used by your inverter. - **protocol_version** (*Optional*): Version of the protocol used by your inverter.
Old inverters use RTU (default). Newer ones use RTU2 (e.g. MIC, MIN, MAX series) Old inverters use RTU (default). Newer ones use RTU2 (e.g. MIC, MIN, MAX series)
- **phase_a** (*Optional*): The group of exposed sensors for Phase A/1. - **phase_a** (*Optional*): The group of exposed sensors for Phase A/1.

View File

@ -15,19 +15,6 @@ Additional sensors for Haier Climate device. **These sensors are supported only
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
uart:
baud_rate: 9600
tx_pin: 17
rx_pin: 16
id: ac_port
climate:
- platform: haier
id: haier_ac
protocol: hOn
name: Haier AC
uart_id: ac_port
sensor: sensor:
- platform: haier - platform: haier
haier_id: haier_ac haier_id: haier_ac

View File

@ -17,23 +17,12 @@ with ESPHome.
Havells On Grid Solar Inverter. Havells On Grid Solar Inverter.
The communication with this integration is done over a :ref:`UART bus <uart>` using :ref:`Modbus <modbus>`. The communication with this integration is done over a :ref:`UART bus <uart>` using :ref:`Modbus <modbus>`.
You must therefore have a ``uart:`` entry in your configuration with both the TX and RX pins set You must therefore have a ``uart:`` and ``modbus:`` entry in your configuration with both the TX and RX pins set
to some pins on your board and the baud rate set to 9600. to some pins on your board and the baud rate set to 9600.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
uart:
- id: modbus_uart
baud_rate: 9600
tx_pin: GPIO1
rx_pin: GPIO3
modbus:
uart_id: modbus_uart
flow_control_pin: GPIO4
sensor: sensor:
- platform: havells_solar - platform: havells_solar
update_interval: 60s update_interval: 60s

View File

@ -28,9 +28,9 @@ be measured at the same exact points in time.
# Example configuration entry # Example configuration entry
sensor: sensor:
- platform: hlw8012 - platform: hlw8012
sel_pin: 5 sel_GPIOXX
cf_pin: 14 cf_pin: GPIOXX
cf1_pin: 13 cf1_pin: GPIOXX
current: current:
name: "HLW8012 Current" name: "HLW8012 Current"
voltage: voltage:
@ -67,11 +67,11 @@ Advanced Options:
Defaults to the Sonoff POW's value ``0.001 ohm``. Defaults to the Sonoff POW's value ``0.001 ohm``.
- **voltage_divider** (*Optional*, float): The value of the voltage divider on the board as ``(R_upstream + R_downstream) / R_downstream``. - **voltage_divider** (*Optional*, float): The value of the voltage divider on the board as ``(R_upstream + R_downstream) / R_downstream``.
Defaults to the Sonoff POW's value ``2351``. Defaults to the Sonoff POW's value ``2351``.
- **model** (*Optional*, string): The sensor model on the board, to set internal constant factors to convert pulses to measurements. - **model** (*Optional*, string): The sensor model on the board, to set internal constant factors to convert pulses to measurements.
Possible values are ``HLW8012``, ``CSE7759``, ``BL0937``. Defaults to ``HLW8012``. Possible values are ``HLW8012``, ``CSE7759``, ``BL0937``. Defaults to ``HLW8012``.
CSE7759 uses same constants and it also works with default. Must be set for BL0937 to be able to calibrate all three measurements at the same time. CSE7759 uses same constants and it also works with default. Must be set for BL0937 to be able to calibrate all three measurements at the same time.
- **change_mode_every** (*Optional*, int): After how many updates to cycle between the current/voltage measurement mode. - **change_mode_every** (*Optional*, int): After how many updates to cycle between the current/voltage measurement mode.
Note that the first value after switching is discarded because it is often inaccurate. When set to ``"never"`` the measurement mode will stay at the Note that the first value after switching is discarded because it is often inaccurate. When set to ``"never"`` the measurement mode will stay at the
set ``initial_mode``. Defaults to ``8``. set ``initial_mode``. Defaults to ``8``.
- **initial_mode** (*Optional*, string): The initial measurement mode. Defaults to ``VOLTAGE``. - **initial_mode** (*Optional*, string): The initial measurement mode. Defaults to ``VOLTAGE``.
Possible initial measurement modes are ``VOLTAGE`` or ``CURRENT``. Possible initial measurement modes are ``VOLTAGE`` or ``CURRENT``.
@ -87,9 +87,9 @@ the initial measurement mode to match whichever mode the device uses, and disabl
# Example configuration entry for device with fixed measurement mode # Example configuration entry for device with fixed measurement mode
sensor: sensor:
- platform: hlw8012 - platform: hlw8012
sel_pin: 5 sel_pin: GPIOXX
cf_pin: 14 cf_pin: GPIOXX
cf1_pin: 13 cf1_pin: GPIOXX
current: current:
name: "HLW8012 Current" name: "HLW8012 Current"
voltage: voltage:
@ -112,11 +112,11 @@ when SEL=1 voltage is measured. To accommodate this change use the following con
sensor: sensor:
- platform: hlw8012 - platform: hlw8012
model: BL0937 model: BL0937
sel_pin: sel_pin:
number: 12 number: GPIOXX
inverted: true inverted: true
cf_pin: 4 cf_pin: GPIOXX
cf1_pin: 5 cf1_pin: GPIOXX
current: current:
name: "BL0937 Current" name: "BL0937 Current"
voltage: voltage:

View File

@ -6,7 +6,7 @@ Honeywell ABP Pressure Sensors
:image: honeywellabp.jpg :image: honeywellabp.jpg
:keywords: Honeywell ABP :keywords: Honeywell ABP
The ``honeywellabp`` sensor platform allows you to use your Honeywell ABP The ``honeywellabp`` sensor platform allows you to use your Honeywell ABP
(`website <https://sps.honeywell.com/us/en/products/sensing-and-iot/sensors/pressure-sensors/board-mount-pressure-sensors/basic-abp-series>`__, (`website <https://sps.honeywell.com/us/en/products/sensing-and-iot/sensors/pressure-sensors/board-mount-pressure-sensors/basic-abp-series>`__,
`datasheet <https://prod-edam.honeywell.com/content/dam/honeywell-edam/sps/siot/en-us/products/sensors/pressure-sensors/board-mount-pressure-sensors/basic-abp-series/documents/sps-siot-basic-board-mount-pressure-abp-series-datasheet-32305128-ciid-155789.pdf?download=false>`__, `datasheet <https://prod-edam.honeywell.com/content/dam/honeywell-edam/sps/siot/en-us/products/sensors/pressure-sensors/board-mount-pressure-sensors/basic-abp-series/documents/sps-siot-basic-board-mount-pressure-abp-series-datasheet-32305128-ciid-155789.pdf?download=false>`__,
`Mouser <https://www.mouser.ca/new/honeywell/honeywell-abp-pressure-sensors/>`_) pressure and temperature sensors with ESPHome. The :ref:`SPI <spi>` is `Mouser <https://www.mouser.ca/new/honeywell/honeywell-abp-pressure-sensors/>`_) pressure and temperature sensors with ESPHome. The :ref:`SPI <spi>` is
@ -24,30 +24,27 @@ required to be set up in your configuration for this sensor to work
sensor: sensor:
- platform: honeywellabp - platform: honeywellabp
pressure: pressure:
name: "Honeywell pressure" name: Honeywell pressure
unit_of_measurement: "psi"
min_pressure: 0 min_pressure: 0
max_pressure: 15 max_pressure: 15
temperature: temperature:
name: "Honeywell temperature" name: Honeywell temperature
cs_pin: GPIO5 #D5 cs_pin: GPIOXX
Configuration variables: Configuration variables:
------------------------ ------------------------
The values for ``min_pressure`` and ``max_pressure`` can be found in the device datasheet for the specific device. These are used to calculate The values for ``min_pressure`` and ``max_pressure`` can be found in the device datasheet for the specific device. These are used to calculate
the pressure reading published by the sensor. Some sensors measure pressure in ``bar`` or ``kPa``; set ``min_pressure`` and ``max_pressure`` to the pressure reading published by the sensor. Some sensors measure pressure in ``bar`` or ``kPa``; set ``min_pressure`` and ``max_pressure`` to
the measurement range and ``unit_of_measurement`` to the appropriate unit for your device. the measurement range and ``unit_of_measurement`` to the appropriate unit for your device.
- **pressure** (*Optional*): The information for the pressure sensor. - **pressure** (*Optional*): The information for the pressure sensor.
- **name** (**Required**, string): The name for the pressure sensor.
- **min_pressure** (**Required**, int or float): Minimum pressure for the pressure sensor, default unit ``psi``. - **min_pressure** (**Required**, int or float): Minimum pressure for the pressure sensor, default unit ``psi``.
- **max_pressure** (**Required**, int or float): Maximum pressure for the pressure sensor, default unit ``psi``. - **max_pressure** (**Required**, int or float): Maximum pressure for the pressure sensor, default unit ``psi``.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`. - All other options from :ref:`Sensor <config-sensor>`.
Some sensors do not have temperature sensing ability, see datasheet. In some cases the sensor may return a valid temperature even though the Some sensors do not have temperature sensing ability, see datasheet. In some cases the sensor may return a valid temperature even though the
datasheet indicates that the sensor does not measure temperature. datasheet indicates that the sensor does not measure temperature.
- **temperature** (*Optional*): The information for the temperature sensor. - **temperature** (*Optional*): The information for the temperature sensor.

View File

@ -6,7 +6,7 @@ HRXL/XL MaxSonar WR Series
:image: hrxl_maxsonar_wr.jpg :image: hrxl_maxsonar_wr.jpg
:keywords: ultrasonic, maxbotix, maxsonar :keywords: ultrasonic, maxbotix, maxsonar
This sensor allows you to use HRXL MaxSonar WR series ultrasonic sensors by MaxBotix This sensor allows you to use HRXL MaxSonar WR series ultrasonic sensors by MaxBotix
(`datasheet <https://www.maxbotix.com/documents/HRXL-MaxSonar-WR_Datasheet.pdf>`__) (`datasheet <https://www.maxbotix.com/documents/HRXL-MaxSonar-WR_Datasheet.pdf>`__)
or the XL MaxSonar WR series or the XL MaxSonar WR series
(`datasheet <https://www.maxbotix.com/documents/XL-MaxSonar-WR_Datasheet.pdf>`__) (`datasheet <https://www.maxbotix.com/documents/XL-MaxSonar-WR_Datasheet.pdf>`__)
@ -27,28 +27,15 @@ multiple times per second, filtering is highly recommended.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
uart:
rx_pin: 36
baud_rate: 9600
sensor: sensor:
- platform: "hrxl_maxsonar_wr" - platform: "hrxl_maxsonar_wr"
name: "Rainwater Tank" name: "Rainwater Tank"
# Tweak the filters for your application
filters:
- sliding_window_moving_average:
window_size: 12
send_every: 12
- or:
- throttle: "20min"
- delta: 0.02
Configuration variables: Configuration variables:
------------------------ ------------------------
- **name** (**Required**, string): The name of the sensor. - All options from :ref:`Sensor <config-sensor>`.
- All other options from :ref:`Sensor <config-sensor>`.
Advanced options: Advanced options:

View File

@ -26,58 +26,40 @@ Device FAQ: `<https://rainsensors.com/support/rg-9-rg-15-faq/>`__
.. code-block:: yaml .. code-block:: yaml
# Example RG-9 entry # Example RG-9 entry
uart:
rx_pin: GPIO16
tx_pin: GPIO17
baud_rate: 9600
sensor: sensor:
- platform: hydreon_rgxx - platform: hydreon_rgxx
model: "RG_9" model: RG_9
id: "hydreon_1" id: hydreon_1
update_interval: 20s
disable_led: false
moisture: moisture:
name: "Rain Level" name: Rain Level
temperature: temperature:
name: "Device Temperature" name: Device Temperature
binary_sensor: binary_sensor:
- platform: hydreon_rgxx - platform: hydreon_rgxx
hydreon_rgxx_id: "hydreon_1" hydreon_rgxx_id: hydreon_1
too_cold: too_cold:
entity_category: diagnostic name: Temperature Status
name: "Temperature Status"
lens_bad: lens_bad:
entity_category: diagnostic name: Lens Status
name: "Lens Status"
em_sat: em_sat:
entity_category: diagnostic name: Emitter Saturation
name: "Emitter Saturation"
.. code-block:: yaml .. code-block:: yaml
# Example RG-15 entry # Example RG-15 entry
uart:
rx_pin: GPIO16
tx_pin: GPIO17
baud_rate: 9600
sensor: sensor:
- platform: hydreon_rgxx - platform: hydreon_rgxx
model: "RG_15" model: RG_15
resolution: high resolution: high
update_interval: 60s
acc: acc:
name: "rain" name: Rain
event_acc: event_acc:
name: "rain event" name: Rain Event"
total_acc: total_acc:
name: "rain total" name: Rain Total"
r_int: r_int:
name: "rain intensity" name: Rain Intensity
Configuration variables: Configuration variables:
------------------------ ------------------------

View File

@ -48,12 +48,6 @@ A configured modbus component is optional. It will be automatically created.
.. code-block:: yaml .. code-block:: yaml
# Example configuration entry # Example configuration entry
uart:
- id: uart_bus
tx_pin: GPIO16
rx_pin: GPIO17
baud_rate: 19200
parity: EVEN
sensor: sensor:
- platform: kuntze - platform: kuntze

Some files were not shown because too many files have changed in this diff Show More