From f0b82ad1a0e83264f4da4e247f5ff959f14a6871 Mon Sep 17 00:00:00 2001 From: Guillermo Ruffino Date: Mon, 30 Dec 2019 09:20:17 -0300 Subject: [PATCH] merge all ir climates in a single doc (#385) * merge all ir climates in a single doc * Add links to h headers * Run svgo over SVG Optional, but removes the inkscape metadata * Update seo image * Link to FAQ Don't want to have people open those in the normal repo. * Add explicit no to the table * Sort configuration variables by assumed use frequency * Update tag * Add more info to Using a Receiver * Minor change Co-authored-by: Otto Winter --- components/climate/coolix.rst | 80 ------------------ components/climate/fujitsu_general.rst | 52 ------------ components/climate/ir_climate.rst | 112 +++++++++++++++++++++++++ components/climate/tcl112.rst | 77 ----------------- components/climate/yashima.rst | 52 ------------ images/air-conditioner-ir.svg | 1 + index.rst | 5 +- 7 files changed, 114 insertions(+), 265 deletions(-) delete mode 100644 components/climate/coolix.rst delete mode 100644 components/climate/fujitsu_general.rst create mode 100644 components/climate/ir_climate.rst delete mode 100644 components/climate/tcl112.rst delete mode 100644 components/climate/yashima.rst create mode 100644 images/air-conditioner-ir.svg diff --git a/components/climate/coolix.rst b/components/climate/coolix.rst deleted file mode 100644 index a9b7071f5..000000000 --- a/components/climate/coolix.rst +++ /dev/null @@ -1,80 +0,0 @@ -Coolix IR Remote Climate -======================== - -.. seo:: - :description: Controls a Coolix compatible Climate via IR - :image: air-conditioner.png - -The ``coolix`` climate platform allows you to control a Coolix compatible AC unit by sending IR signals -as your remote unit would do. - -This component requires that you have setup a :doc:`/components/remote_transmitter`. - -Due to the unidirectional nature of IR remote controllers, this component cannot determine the -actual state of the device, and will assume the state of the device is the latest state requested. - -Optionally you can add a :doc:`/components/remote_receiver` component so the climate state will be -tracked when it is operated with the original remote controller unit. - -.. figure:: images/climate-ui.png - :align: center - :width: 60.0% - -.. code-block:: yaml - - # Example configuration entry - remote_transmitter: - pin: GPIO32 - carrier_duty_percent: 50% - - climate: - - platform: coolix - name: "Living Room AC" - -Configuration variables: ------------------------- - -- **name** (**Required**, string): The name for the climate. -- **supports_cool** (*Optional*, boolean): Enables setting cool mode for this climate device. Defaults to ``True``. -- **supports_heat** (*Optional*, boolean): Enables setting heat mode for this climate device. Defaults to ``True``. -- **sensor** (*Optional*, :ref:`config-id`): The sensor that is used to measure the ambient - temperature. This is only for reporting the current temperature in the frontend. -- **receiver_id** (*Optional*, :ref:`config-id`): The remote_receiver id, see: :ref:`coolix-receiver_id`. -- All other options from :ref:`Climate `. - -Advanced options: - -- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. -- **transmitter_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the remote transmitter. - -.. _coolix-receiver_id: - -Using a receiver ----------------- - -When using a receiver it is recommended to put the IR receiver as close as possible to the equipment's -IR receiver. - -.. code-block:: yaml - - # Example configuration entry - remote_receiver: - id: rcvr - pin: - number: GPIO14 - inverted: True - mode: INPUT_PULLUP - tolerance: 55 # high tolerance required for some remote control units - - climate: - - platform: coolix - name: "Living Room AC" - receiver_id: rcvr - -See Also --------- - -- :doc:`/components/climate/index` -- :doc:`/components/remote_transmitter` -- :apiref:`coolix/coolix.h` -- :ghedit:`Edit` diff --git a/components/climate/fujitsu_general.rst b/components/climate/fujitsu_general.rst deleted file mode 100644 index c898a8c02..000000000 --- a/components/climate/fujitsu_general.rst +++ /dev/null @@ -1,52 +0,0 @@ -Fujitsu General Remote Climate -============================== - -.. seo:: - :description: Controls a Fujitsu General compatible Climate via IR - :image: air-conditioner.png - -The ``fujitsu_general`` climate platform allows you to control a Fujitsu General compatible AC unit by sending IR signals -as your remote unit would do. - -This component requires that you have setup a :doc:`/components/remote_transmitter`. - -Due to the unidirectional nature of IR remote controllers, this component cannot determine the -actual state of the device, and will assume the state of the device is the latest state requested. - -.. figure:: images/climate-ui.png - :align: center - :width: 60.0% - -.. code-block:: yaml - - # Example configuration entry - remote_transmitter: - pin: GPIO32 - carrier_duty_percent: 50% - - climate: - - platform: fujitsu_general - name: "Living Room AC" - -Configuration variables: ------------------------- - -- **name** (**Required**, string): The name for the climate. -- **supports_cool** (*Optional*, boolean): Enables setting cool mode for this climate device. Defaults to ``True``. -- **supports_heat** (*Optional*, boolean): Enables setting cool heat for this climate device. Defaults to ``True``. -- **sensor** (*Optional*, :ref:`config-id`): The sensor that is used to measure the ambient - temperature. This is only for reporting the current temperature in the frontend. -- All other options from :ref:`Climate `. - -Advanced options: - -- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. -- **transmitter_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the remote transmitter. - -See Also --------- - -- :doc:`/components/climate/index` -- :doc:`/components/remote_transmitter` -- :apiref:`fujitsu_general/fujitsu_general.h` -- :ghedit:`Edit` diff --git a/components/climate/ir_climate.rst b/components/climate/ir_climate.rst new file mode 100644 index 000000000..263dc005b --- /dev/null +++ b/components/climate/ir_climate.rst @@ -0,0 +1,112 @@ +IR Remote Climate +================= + +.. seo:: + :description: Controls a variety of compatible Climate via IR + :image: air-conditioner-ir.png + +The climate component allows you to control a variety of compatible AC units by sending IR signals +as your remote unit would do. + +.. figure:: images/climate-ui.png + :align: center + :width: 60.0% + +There is a growing list of compatible units. If your unit is not listed below you can fill a feature +request so it will be added (see FAQ). + ++------------------------+---------------------+----------------------+ +| Name | Platform name | Supports receiver | +| | | + ++========================+=====================+======================+ +| Coolix | ``coolix`` | yes | ++------------------------+---------------------+----------------------+ +| Fujitsu General | ``fujitsu_general`` | no | ++------------------------+---------------------+----------------------+ +| Mitsubishi | ``mitsubishi`` | no | ++------------------------+---------------------+----------------------+ +| TCL112, Fuego | ``tcl112`` | yes | ++------------------------+---------------------+----------------------+ +| Yashima | ``yashima`` | no | ++------------------------+---------------------+----------------------+ + +This component requires that you have setup a :doc:`/components/remote_transmitter`. + +Due to the unidirectional nature of IR remote controllers, this component cannot determine the +actual state of the device, and will assume the state of the device is the latest state requested. + +However, when receiver is supported, you can optionally you can add a +:doc:`/components/remote_receiver` component so the climate state will be tracked when it is operated +with the original remote controller unit. + +.. code-block:: yaml + + # Example configuration entry + remote_transmitter: + pin: GPIO32 + carrier_duty_percent: 50% + + climate: + - platform: coolix # adjust to match your AC unit! + name: "Living Room AC" + +Configuration variables: +------------------------ + +- **name** (**Required**, string): The name for the climate device. +- **sensor** (*Optional*, :ref:`config-id`): The sensor that is used to measure the ambient + temperature. This is only for reporting the current temperature in the frontend. +- **supports_cool** (*Optional*, boolean): Enables setting cooling mode for this climate device. Defaults to ``True``. +- **supports_heat** (*Optional*, boolean): Enables setting heating mode for this climate device. Defaults to ``True``. +- **receiver_id** (*Optional*, :ref:`config-id`): The id of the remote_receiver if this platform supports + receiver. see: :ref:`ir-receiver_id`. +- All other options from :ref:`Climate `. + +Advanced options: + +- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. +- **transmitter_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the remote transmitter. + +.. _ir-receiver_id: + +Using a Receiver +---------------- + +.. note:: + + This is only supported with select climate devices, see "Supports receiver" in the table at the top of the page. + +Optionally, some platforms can listen to data the climate device sends over infrared to update their state ( +for example what mode the device is in). By setting up a :doc:`remote_receiver ` +and passing its ID to the climate platform you can enable this mode. + +When using a receiver it is recommended to put the IR receiver as close as possible to the equipment's +IR receiver. + +.. code-block:: yaml + + # Example configuration entry + remote_receiver: + id: rcvr + pin: + number: GPIO14 + inverted: True + mode: INPUT_PULLUP + tolerance: 55% # high 55% tolerance is recommended for some remote control units + + climate: + - platform: coolix + name: "Living Room AC" + receiver_id: rcvr + +See Also +-------- + +- :doc:`/components/climate/index` +- :doc:`/components/remote_transmitter` +- :apiref:`coolix.h `, + :apiref:`fujitsu_general.h `, + :apiref:`mitsubishi.h `, + :apiref:`tcl112.h `, + :apiref:`yashima.h ` +- :ghedit:`Edit` diff --git a/components/climate/tcl112.rst b/components/climate/tcl112.rst deleted file mode 100644 index 6dc6b765a..000000000 --- a/components/climate/tcl112.rst +++ /dev/null @@ -1,77 +0,0 @@ -Tcl112 Remote Climate -===================== - -.. seo:: - :description: Controls a Tcl112 compatible Climate via IR - :image: air-conditioner.png - -The ``tcl112`` climate platform allows you to control a TCL112 compatible AC unit by sending IR signals -as your remote unit would do. - -This component requires that you have setup a :doc:`/components/remote_transmitter`. - -Due to the unidirectional nature of IR remote controllers, this component cannot determine the -actual state of the device, and will assume the state of the device is the latest state requested. - -.. figure:: images/climate-ui.png - :align: center - :width: 60.0% - -.. code-block:: yaml - - # Example configuration entry - remote_transmitter: - pin: GPIO32 - carrier_duty_percent: 50% - - climate: - - platform: tcl112 - name: "Living Room AC" - -Configuration variables: ------------------------- - -- **name** (**Required**, string): The name for the climate. -- **supports_cool** (*Optional*, boolean): Enables setting cool mode for this climate device. Defaults to ``True``. -- **supports_heat** (*Optional*, boolean): Enables setting heat mode for this climate device. Defaults to ``True``. -- **sensor** (*Optional*, :ref:`config-id`): The sensor that is used to measure the ambient - temperature. This is only for reporting the current temperature in the frontend. -- **receiver_id** (*Optional*, :ref:`config-id`): The remote_receiver id, see: :ref:`tcl112-receiver_id`. -- All other options from :ref:`Climate `. - -Advanced options: - -- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. -- **transmitter_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the remote transmitter. - -.. _tcl112-receiver_id: - -Using a receiver ----------------- - -When using a receiver it is recommended to put the IR receiver as close as possible to the equipment's -IR receiver. - -.. code-block:: yaml - - # Example configuration entry - remote_receiver: - id: rcvr - pin: - number: GPIO14 - inverted: True - mode: INPUT_PULLUP - tolerance: 45 # high tolerance required for some remote control units - - climate: - - platform: tcl112 - name: "Living Room AC" - receiver_id: rcvr - -See Also --------- - -- :doc:`/components/climate/index` -- :doc:`/components/remote_transmitter` -- :apiref:`tcl112/tcl112.h` -- :ghedit:`Edit` diff --git a/components/climate/yashima.rst b/components/climate/yashima.rst deleted file mode 100644 index 738c0bf82..000000000 --- a/components/climate/yashima.rst +++ /dev/null @@ -1,52 +0,0 @@ -Yashima Remote Climate -====================== - -.. seo:: - :description: Controls a Yashima compatible Climate via IR - :image: air-conditioner.png - -The ``yashima`` climate platform allows you to control a Yashima compatible AC unit by sending IR signals -as your remote unit would do. - -This component requires that you have setup a :doc:`/components/remote_transmitter`. - -Due to the unidirectional nature of IR remote controllers, this component cannot determine the -actual state of the device, and will assume the state of the device is the latest state requested. - -.. figure:: images/climate-ui.png - :align: center - :width: 60.0% - -.. code-block:: yaml - - # Example configuration entry - remote_transmitter: - pin: GPIO32 - carrier_duty_percent: 50% - - climate: - - platform: yashima - name: "Living Room AC" - -Configuration variables: ------------------------- - -- **name** (**Required**, string): The name for the climate. -- **supports_cool** (*Optional*, boolean): Enables setting cool mode for this climate device. Defaults to ``True``. -- **supports_heat** (*Optional*, boolean): Enables setting heat mode for this climate device. Defaults to ``True``. -- **sensor** (*Optional*, :ref:`config-id`): The sensor that is used to measure the ambient - temperature. This is only for reporting the current temperature in the frontend. -- All other options from :ref:`Climate `. - -Advanced options: - -- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. -- **transmitter_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the remote transmitter. - -See Also --------- - -- :doc:`/components/climate/index` -- :doc:`/components/remote_transmitter` -- :apiref:`yashima/yashima.h` -- :ghedit:`Edit` diff --git a/images/air-conditioner-ir.svg b/images/air-conditioner-ir.svg new file mode 100644 index 000000000..ad67e6f81 --- /dev/null +++ b/images/air-conditioner-ir.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/index.rst b/index.rst index 3f5fc6438..2b0c5dd21 100644 --- a/index.rst +++ b/index.rst @@ -295,10 +295,7 @@ Climate Components Climate Core, components/climate/index, folder-open.svg Bang Bang Controller, components/climate/bang_bang, air-conditioner.svg Custom Climate, components/climate/custom, language-cpp.svg - Coolix IR Remote, components/climate/coolix, air-conditioner.svg - Tcl112 IR Remote, components/climate/tcl112, air-conditioner.svg - Yashima IR Remote, components/climate/yashima, air-conditioner.svg - Fujitsu General IR Remote, components/climate/fujitsu_general, air-conditioner.svg + IR Remote Climate, components/climate/ir_climate, air-conditioner-ir.svg Misc Components ---------------