diff --git a/components/sensor/bl0940.rst b/components/sensor/bl0940.rst new file mode 100644 index 000000000..38c60f761 --- /dev/null +++ b/components/sensor/bl0940.rst @@ -0,0 +1,75 @@ +Belling BL0940 Energy Monitor +================================== + +.. seo:: + :description: Instructions for setting up BL0940 power monitors. + :image: bl0940.png + :keywords: BL0940 + +.. note:: + + This page is incomplete and could some work. If you want to contribute, please read the + :doc:`contributing guide `. This page is missing: + + - Images/screenshots/example configs of this device being used in action. + +The ``bl0940`` sensor platform allows you to use BL0940 energy monitors sensors with +ESPHome. These are used in some Tuya-devices (e.g. the power metering BW-SHP10) + +The communication with this integration is done over a :ref:`UART bus `. +You must therefore have a ``uart:`` entry in your configuration with both the TX and RX pins set +to some pins on your board and the baud rate set to 4800 with 1 stop bit. + +.. code-block:: yaml + + # Example configuration entry + uart: + id: uart_bus + tx_pin: TX + rx_pin: RX + baud_rate: 4800 + stop_bits: 1 + + sensor: + - platform: bl0940 + uart_id: uart_bus + voltage: + name: 'BL0940 Voltage' + current: + name: 'BL0940 Current' + power: + name: 'BL0940 Power' + energy: + name: 'BL0940 Energy' + temperature: + name: 'BL0940 Internal temperature' + target_temperature: + name: 'BL0940 External temperature' + update_interval: 60s + +Configuration variables: +------------------------ + +- **voltage** (*Optional*): The voltage value of the sensor in Volts. + All options from :ref:`Sensor `. +- **current** (*Optional*): The current value of the sensor in Amperes. All options from + :ref:`Sensor `. +- **power** (*Optional*): The (active) power value of the sensor in Watts. All options from + :ref:`Sensor `. +- **energy** (*Optional*): Use the voltage value of the sensor in kWh. + All options from :ref:`Sensor `. +- **temperature** (*Optional*): The internal temperature value of the sensor in °C. + All options from :ref:`Sensor `. +- **target_temperature** (*Optional*): The external value of the sensor in °C. Often not connected and gives garbage data. + All options from :ref:`Sensor `. +- **update_interval** (*Optional*, :ref:`config-time`): The interval to check the + sensor. Defaults to ``60s``. +- **uart_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the :ref:`UART Component ` if you want + to use multiple UART buses. + +See Also +-------- + +- :ref:`sensor-filters` +- :apiref:`bl0940/bl0940.h` +- :ghedit:`Edit` diff --git a/images/bl0940.png b/images/bl0940.png new file mode 100644 index 000000000..8668dba08 Binary files /dev/null and b/images/bl0940.png differ diff --git a/index.rst b/index.rst index 09651156e..a5152804c 100644 --- a/index.rst +++ b/index.rst @@ -237,6 +237,7 @@ Electricity ADE7953, components/sensor/ade7953, ade7953.svg, Power ATM90E32, components/sensor/atm90e32, atm90e32.jpg, Voltage & Current & Power + BL0940, components/sensor/bl0940, bl0940.png, Voltage & Current & Power CS5460A, components/sensor/cs5460a, cs5460a.png, Voltage & Current & Power CSE7761, components/sensor/cse7761, cse7761.svg, Voltage & Current & Power CSE7766, components/sensor/cse7766, cse7766.svg, Voltage & Current & Power