Further changes

This commit is contained in:
Otto Winter 2018-08-24 22:44:01 +02:00
parent 063b170d02
commit f8a6518251
No known key found for this signature in database
GPG Key ID: DB66C0BE6013F97E
145 changed files with 1046 additions and 337 deletions

View File

@ -70,7 +70,38 @@ API Reference
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RawDumper
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RCSwitchRawReceiver
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RCSwitchTypeAReceiver
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RCSwitchTypeBReceiver
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RCSwitchTypeCReceiver
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RCSwitchTypeDReceiver
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RCSwitchDumper
:members:
:protected-members:
:undoc-members:

View File

@ -17,7 +17,7 @@ API Reference
:undoc-members:
.. doxygenstruct:: time::SNTPComponent
.. doxygenclass:: time::SNTPComponent
:members:
:protected-members:
:undoc-members:

View File

@ -8,6 +8,7 @@ Supported Displays
lcd_display
max7219
nextion
ssd1306
waveshare_epaper
@ -32,10 +33,7 @@ DisplayBuffer
TextAlign
*********
.. doxygenclass:: TextAlign
:members:
:protected-members:
:undoc-members:
.. doxygenenum:: TextAlign
Font
****

View File

@ -1,4 +1,4 @@
MAX7219 8-Segment Display
MAX7219 7-Segment Display
=========================
API Reference

21
api/display/nextion.rst Normal file
View File

@ -0,0 +1,21 @@
Nextion Display
===============
.. _api-display-nextion:
API Reference
-------------
.. cpp:namespace:: nullptr
.. doxygenclass:: display::Nextion
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: display::NextionTouchComponent
:members:
:protected-members:
:undoc-members:
.. doxygentypedef:: nextion_writer_t

View File

@ -143,6 +143,11 @@ LightOutput
:protected-members:
:undoc-members:
.. doxygenclass:: light::CWWWLightOutput
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: light::RGBLightOutput
:members:
:protected-members:
@ -153,6 +158,11 @@ LightOutput
:protected-members:
:undoc-members:
.. doxygenclass:: light::RGBWWLightOutput
:members:
:protected-members:
:undoc-members:
LightState

View File

@ -39,7 +39,7 @@ API Reference
.. doxygentypedef:: sensor::BME680TemperatureSensor
.. doxygentypedef:: sensor::BME680PressureSensor
.. doxygentypedef:: sensor::BME680HumiditySensor
.. doxygentypedef:: sensor::BME2680GasResistanceSensor
.. doxygentypedef:: sensor::BME680GasResistanceSensor
.. doxygenstruct:: sensor::BME680CalibrationData
:members:

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

28
api/sensor/hlw8012.rst Normal file
View File

@ -0,0 +1,28 @@
HLW8012 Power Sensor
====================
.. cpp:namespace:: nullptr
See :cpp:func:`Application::make_hlw8012`.
API Reference
-------------
.. cpp:namespace:: nullptr
.. doxygenclass:: sensor::HLW8012Component
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: sensor::HLW8012VoltageSensor
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: sensor::HLW8012CurrentSensor
:members:
:protected-members:
:undoc-members:
.. doxygentypedef:: HLW8012PowerSensor

View File

@ -15,7 +15,6 @@ API Reference
:protected-members:
:undoc-members:
.. doxygenenum:: INA219VoltageSensor
.. doxygenenum:: INA219CurrentSensor
.. doxygenenum:: INA219PowerSensor
.. doxygendefine:: USE_INA219
.. doxygentypedef:: INA219VoltageSensor
.. doxygentypedef:: INA219CurrentSensor
.. doxygentypedef:: INA219PowerSensor

View File

@ -15,7 +15,6 @@ API Reference
:protected-members:
:undoc-members:
.. doxygenenum:: INA3221VoltageSensor
.. doxygenenum:: INA3221CurrentSensor
.. doxygenenum:: INA3221PowerSensor
.. doxygendefine:: USE_INA3221
.. doxygentypedef:: INA3221VoltageSensor
.. doxygentypedef:: INA3221CurrentSensor
.. doxygentypedef:: INA3221PowerSensor

View File

@ -13,7 +13,6 @@ See :cpp:func:`Application::register_sensor`.
adc
ads1115
bh1750
ble_rssi
bme280
bme680
bmp085
@ -24,6 +23,7 @@ See :cpp:func:`Application::register_sensor`.
duty_cycle
esp32_hall
hdc1080
hlw8012
hmc5883l
htu21d
hx711

View File

@ -17,4 +17,3 @@ API Reference
.. doxygentypedef:: MHZ19CO2Sensor
.. doxygentypedef:: MHZ19TemperatureSensor
.. doxygendefine:: USE_MHZ19

View File

@ -15,6 +15,5 @@ API Reference
:protected-members:
:undoc-members:
.. doxygenenum:: MS5611TemperatureSensor
.. doxygenenum:: MS5611PressureSensor
.. doxygendefine:: USE_MS5611
.. doxygentypedef:: MS5611TemperatureSensor
.. doxygentypedef:: MS5611PressureSensor

View File

@ -20,4 +20,3 @@ API Reference
.. doxygentypedef:: TCS35725IlluminanceSensor
.. doxygentypedef:: TCS35725ColorTemperatureSensor
.. doxygentypedef:: TCS35725ColorChannelSensor
.. doxygendefine:: USE_TCS34725

View File

@ -51,6 +51,38 @@ API Reference
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RCSwitchProtocol
:members:
:protected-members:
:undoc-members:
.. doxygenvariable:: rc_switch_protocols
.. doxygenclass:: remote::RCSwitchRawTransmitter
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RCSwitchTypeATransmitter
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RCSwitchTypeBTransmitter
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RCSwitchTypeCTransmitter
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::RCSwitchTypeDTransmitter
:members:
:protected-members:
:undoc-members:
.. doxygenclass:: remote::SonyTransmitter
:members:
:protected-members:

View File

@ -3,6 +3,7 @@ GPIO, components/binary_sensor/gpio, pin.svg
Status, components/binary_sensor/status, server-network.svg
ESP32 BLE Device, components/binary_sensor/esp32_ble_tracker, bluetooth.svg
ESP32 Touch Pad, components/binary_sensor/esp32_touch, touch.svg
Nextion Touch, components/binary_sensor/nextion, nextion.jpg
Template Binary Sensor, components/binary_sensor/template, description.svg
Remote Receiver, components/binary_sensor/remote_receiver, remote.svg
PN532 Tag, components/binary_sensor/pn532, pn532.jpg

1 Binary Sensor Core components/binary_sensor/index folder-open.svg
3 Status components/binary_sensor/status server-network.svg
4 ESP32 BLE Device components/binary_sensor/esp32_ble_tracker bluetooth.svg
5 ESP32 Touch Pad components/binary_sensor/esp32_touch touch.svg
6 Nextion Touch components/binary_sensor/nextion nextion.jpg
7 Template Binary Sensor components/binary_sensor/template description.svg
8 Remote Receiver components/binary_sensor/remote_receiver remote.svg
9 PN532 Tag components/binary_sensor/pn532 pn532.jpg

View File

@ -45,5 +45,6 @@ See Also
^^^^^^^^
- :doc:`sensor/ads1115`
- `i2cdevlib <https://github.com/jrowberg/i2cdevlib>`__ by `Jeff Rowberg <https://github.com/jrowberg>`__
- :doc:`API Reference </api/sensor/ads1115>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/ads1115.rst>`__

View File

@ -20,7 +20,7 @@ bluetooth low energy device.
name: "ESP32 BLE Tracker Google Home Mini"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **mac_address** (**Required**, MAC Address): The MAC address to track for this
binary sensor.
@ -33,7 +33,7 @@ Configuration variables:
.. _esp32_ble_tracker-setting_up_devices:
Setting Up Devices
~~~~~~~~~~~~~~~~~~
------------------
To set up binary sensors for specific BLE beacons you first have to know which MAC address
to track. Most devices show this screen in some setting menu. If you don't know the MAC address,
@ -55,10 +55,10 @@ Please note that devices that show a ``RANDOM`` address type in the logs cannot
tracking, since their MAC-address periodically changes.
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/esp32_ble_tracker`
- :doc:`/esphomeyaml/components/binary_sensor/index`
- :doc:`API Reference </api/misc/esp32_ble_tracker>`
- `ESP32 BLE for Arduino <https://github.com/nkolban/ESP32_BLE_Arduino>`__ by `Neil Kolban <https://github.com/nkolban>`__.
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/binary_sensor/esp32_ble_tracker.rst>`__

View File

@ -25,7 +25,7 @@ an ``OFF`` state.
threshold: 1000
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **pin** (**Required**, :ref:`config-pin`): The pin to detect touch
events on.
@ -39,7 +39,7 @@ Configuration variables:
and :ref:`MQTT Component <config-mqtt-component>`.
Touch Pad Pins
~~~~~~~~~~~~~~
--------------
8 pins on the ESP32 can be used to detect touches. These are (in the default "raw" pin names):
@ -55,7 +55,7 @@ Touch Pad Pins
- ``GPIO33``
Finding thresholds
~~~~~~~~~~~~~~~~~~
------------------
For each touch pad you want to monitor, you need to find a threshold first. This threshold is
used to determine if a pad is being touched or not using the raw values from the sensor. Lower
@ -93,9 +93,10 @@ option again by setting it to ``False``. Otherwise you will end up spamming the
down.
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/esp32_touch`
- :doc:`/esphomeyaml/components/binary_sensor/index`
- :doc:`API Reference </api/binary_sensor/esp32_touch>`
- `esp-idf Touch Sensor API <https://esp-idf.readthedocs.io/en/latest/api-reference/peripherals/touch_pad.html>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/binary_sensor/esp32_touch.rst>`__

View File

@ -18,7 +18,7 @@ device as a binary sensor.
device_class: window
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin to periodically check.
- **name** (**Required**, string): The name of the binary sensor.
@ -41,7 +41,7 @@ Configuration variables:
name: ...
Inverting Values
~~~~~~~~~~~~~~~~
----------------
Use the ``inverted`` property of the :ref:`Pin Schema <config-pin_schema>` to invert the binary
sensor:
@ -57,7 +57,7 @@ sensor:
name: ...
Debouncing Values
~~~~~~~~~~~~~~~~~
-----------------
Some binary sensors are a bit unstable and quickly transition between the ON and OFF state while
they're pressed. To fix this and debounce the signal, use the :ref:`binary sensor filters <binary_sensor-filters>`:
@ -87,7 +87,7 @@ will wait 10ms before publishing an OFF value:
- delayed_off: 10ms
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/binary_sensor/index`
- :ref:`config-pin_schema`

View File

@ -237,3 +237,4 @@ See Also
remote_receiver
pn532
rdm6300
nextion

View File

@ -0,0 +1,38 @@
Nextion Touch Component
=======================
The ``nextion`` binary sensor platform lets you track when a component on the display is
touched or not. The binary sensor will turn on when the component with the given component and page id is
pressed on, and will turn off as soon as the finger is released.
See :doc:`/esphomeyaml/components/display/nextion` for setting up the display
.. code:: yaml
# Example configuration entry
display:
- platform: nextion
# ...
binary_sensor:
- platform: nextion
page_id: 0
component_id: 2
Configuration variables:
------------------------
- **name** (**Required**, string): The name of the binary sensor.
- **page_id** (**Required**, int): The ID of the page the component is on. Use ``0`` for the default page.
- **component_id** (**Required**, int): The ID (the number, not name!) of the component to track.
- **nextion_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the Nextion display.
- All other options from :ref:`Binary Sensor <config-binary_sensor>` and :ref:`MQTT Component <config-mqtt-component>`.
See Also
--------
- :doc:`/esphomeyaml/components/display/nextion`
- :doc:`index`
- :doc:`API Reference </api/display/nextion>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/binary_sensor/nextion.rst>`__

View File

@ -28,7 +28,7 @@ See :doc:`/esphomeyaml/components/pn532` for instructions for setting up the con
name: "PN532 NFC Tag"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **uid** (**Required**, string): The unique ID of the NFC/RFID tag. This is a hypen-separated list
of hexadecimal values. For example ``74-10-37-94``.
@ -39,7 +39,7 @@ Configuration variables:
.. _pn532-setting_up_tags:
Setting Up Tags
~~~~~~~~~~~~~~~
---------------
To set up binary sensors for specific NFC tags you first have to know their unique IDs. To obtain this
id, first set up a simple pn532 configuration without any binary sensors like above.
@ -54,7 +54,7 @@ Then copy this id and create a ``binary_sensor`` entry as in the configuration e
each tag.
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/pn532`
- :doc:`index`

View File

@ -25,7 +25,7 @@ See :doc:`/esphomeyaml/components/rdm6300` for instructions for setting up the c
name: "RDM6300 NFC Tag"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **uid** (**Required**, integer): The unique ID of the NFC/RFID tag.
- **name** (**Required**, string): The name of the binary sensor.
@ -35,7 +35,7 @@ Configuration variables:
.. _rdm6300-setting_up_tags:
Setting Up Tags
~~~~~~~~~~~~~~~
---------------
To set up binary sensors for specific NFC tags you first have to know their unique IDs. To obtain this
id, first set up a simple RDM6300 configuration without any binary sensors like above.
@ -54,7 +54,7 @@ each tag.
:width: 80.0%
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/rdm6300`
- :doc:`/esphomeyaml/components/binary_sensor/index`

View File

@ -20,7 +20,7 @@ then immediately OFF.
command: 0x100BCBD
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name for the binary sensor.
- The remote code, see :ref:`remote_transmitter-codes`. Only one
@ -35,11 +35,31 @@ Configuration variables:
See :ref:`finding_remote_codes` for a guide for setting this up.
.. note::
For the Sonoff RF Bridge you can use `this hack <https://github.com/xoseperez/espurna/wiki/Hardware-Itead-Sonoff-RF-Bridge---Direct-Hack>`__
created by the Github user wildwiz. Then use this configuration for the remote receiver/transmitter hubs:
.. code:: yaml
remote_receiver:
pin: 4
dump: all
remote_transmitter:
pin: 5
carrier_duty_percent: 100%
Supporting the RF Bridge chip directly is currently only a long-term goal for esphomelib.
See Also
--------
- :doc:`index`
- :doc:`/esphomeyaml/components/remote_receiver`
- :doc:`/esphomeyaml/components/remote_transmitter`
- `RCSwitch <https://github.com/sui77/rc-switch>`__ by `Suat Özgür <https://github.com/sui77>`__
- `IRRemoteESP8266 <https://github.com/markszabo/IRremoteESP8266/>`__ by `Mark Szabo-Simon <https://github.com/markszabo>`__
- :doc:`API Reference </api/binary_sensor/remote_receiver>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/binary_sensor/remote_receiver.rst>`__

View File

@ -17,7 +17,7 @@ to do this.
name: "Living Room Status"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name of the binary sensor.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
@ -25,7 +25,7 @@ Configuration variables:
and :ref:`MQTT Component <config-mqtt-component>`. (Inverted mode is not supported)
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/binary_sensor/index`
- :doc:`/esphomeyaml/components/mqtt`

View File

@ -34,7 +34,7 @@ Possible return values of the lambda:
- ``return {};`` if the last state should be repeated.
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name of the binary sensor.
- **lambda** (**Required**, :ref:`lambda <config-lambda>`):
@ -47,7 +47,7 @@ Configuration variables:
and :ref:`MQTT Component <config-mqtt-component>`.
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/binary_sensor/index`
- :doc:`/esphomeyaml/components/sensor/template`

View File

@ -8,7 +8,7 @@ commands: *open*, *close* and *stop*.
.. _cover-open_action:
``cover.open`` Action
^^^^^^^^^^^^^^^^^^^^^
---------------------
This action opens the cover with the given ID when executed.
@ -22,7 +22,7 @@ This action opens the cover with the given ID when executed.
.. _cover-close_action:
``cover.close`` Action
^^^^^^^^^^^^^^^^^^^^^^
----------------------
This action closes the cover with the given ID when executed.
@ -36,7 +36,7 @@ This action closes the cover with the given ID when executed.
.. _cover-stop_action:
``cover.stop`` Action
^^^^^^^^^^^^^^^^^^^^^
---------------------
This action stops the cover with the given ID when executed.
@ -49,7 +49,7 @@ This action stops the cover with the given ID when executed.
lambda calls
""""""""""""
------------
From :ref:`lambdas <config-lambda>`, you can call several methods on all covers to do some
advanced stuff (see the full :doc:`API Reference </api/cover/index>` for more info).
@ -98,7 +98,7 @@ advanced stuff (see the full :doc:`API Reference </api/cover/index>` for more in
See Also
^^^^^^^^
--------
- :doc:`API Reference </api/cover/index>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/cover/index.rst>`__

View File

@ -40,7 +40,7 @@ Possible return values for the optional lambda:
- ``return {};`` if the last state should be repeated.
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name of the cover.
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`):
@ -62,7 +62,7 @@ Configuration variables:
and :ref:`MQTT Component <config-mqtt-component>`.
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/cover/index`
- :ref:`automation`

View File

@ -25,7 +25,7 @@ massively long wires, work fine in most cases) between ``3.3V`` and the data pin
name: "Livingroom Temperature"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **pin** (**Required**, number): The pin the sensor bus is connected to.
- **update_interval** (*Optional*, :ref:`config-time`): The interval that the sensors should be checked.
@ -33,8 +33,9 @@ Configuration variables:
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
See Also
^^^^^^^^
--------
- :doc:`sensor/dallas`
- `Arduino DallasTemperature library <https://github.com/milesburton/Arduino-Temperature-Control-Library>`__ by `Miles Burton <https://github.com/milesburton>`__
- :doc:`API Reference </api/sensor/dallas>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/dallas.rst>`__

View File

@ -21,7 +21,7 @@ a bunch of useful information like reset reason, free heap size, esphomelib vers
There are no configuration variables for this component.
See Also
^^^^^^^^
--------
- :doc:`logger`
- :doc:`API Reference </api/misc/debug>`

View File

@ -27,7 +27,7 @@ even Over The Air updates.
sleep_duration: 10min
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **run_duration** (*Optional*, :ref:`config-time`): The time duration the node should be active, i.e. run code.
- **run_cycles** (*Optional*, int): The number of ``loop()`` cycles to go through before
@ -57,7 +57,7 @@ Configuration variables:
.. _deep_sleep-esp32_wakeup_pin_mode:
ESP32 Wakeup Pin Mode
~~~~~~~~~~~~~~~~~~~~~
---------------------
On the ESP32, you have the option of waking up on any RTC pin. However, there's one scenario that you need
to tell esphomelib how to handle: What if the wakeup pin is already in the state with which it would wake up
@ -75,7 +75,7 @@ when the deep sleep should start? There are three ways of handling this using th
.. _deep_sleep-enter_action:
``deep_sleep.enter`` Action
^^^^^^^^^^^^^^^^^^^^^^^^^^^
---------------------------
This action makes the given deep sleep component enter deep sleep immediately.
@ -89,7 +89,7 @@ This action makes the given deep sleep component enter deep sleep immediately.
.. _deep_sleep-prevent_action:
``deep_sleep.prevent`` Action
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-----------------------------
This action prevents the given deep sleep component from entering deep sleep.
Useful for
@ -128,7 +128,7 @@ Useful for
id: deep_sleep_1
See Also
^^^^^^^^
--------
- :doc:`switch/shutdown`
- :ref:`automation`

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

View File

@ -2,14 +2,15 @@ Display Component
=================
The ``display`` component houses esphomelib's powerful rendering and display
engine. Fundamentally, there are two types of displays:
engine. Fundamentally, there are these types of displays:
- Text based displays like :doc:`8-Segment displays <max7219>` or
- Text based displays like :doc:`7-Segment displays <max7219>` or
:doc:`some LCD displays <lcd_gpio>`.
- Displays like the :doc:`nextion` that have their own processors for rendering.
- Binary displays which can toggle ON/OFF any pixel, like :doc:`E-Paper displays <waveshare_epaper>` or
:doc:`OLED displays <ssd1306_spi>`.
For the latter type, esphomelib and esphomeyaml has a powerful rendering engine that can do
For the last type, esphomelib and esphomeyaml have a powerful rendering engine that can do
many things like draw some basic shapes, print text with any font you want, or even show images.
To achieve all this flexibility displays tie in directly into esphomeyaml's :ref:`lambda system <config-lambda>`.
@ -60,7 +61,7 @@ x always represents the horizontal axis (width) and y the vertical axis (height)
the rendering engine is always first specify the ``x`` coordinate and then the ``y`` coordinate.
Basic Shapes
^^^^^^^^^^^^
************
Now that you know a bit more about esphomelib's coordinate system, let's draw some basic shapes like lines, rectangles
and circles:
@ -121,7 +122,7 @@ You can view the full API documentation for the rendering engine over at :ref:`d
.. _display-static_text:
Drawing Static Text
^^^^^^^^^^^^^^^^^^^
*******************
The rendering engine also has a powerful font drawer which integrates seamlessly into esphomeyaml.
Whereas in most arduino display projects you have to use one of a few pre-defined fonts in very
@ -210,7 +211,7 @@ As with basic shapes, you can also specify a color for the text:
.. _display-printf:
Formatted Text
^^^^^^^^^^^^^^
**************
Static text by itself is not too impressive. What we really want is to display *dynamic* content like sensor values
on the display!. That's where ``printf`` comes in. ``printf`` is a formatting engine from the C era and esphomelib
@ -299,7 +300,7 @@ use any string you pass it, like ``"ON"`` or ``"OFF"``.
.. _display-strftime:
Displaying Time
^^^^^^^^^^^^^^^
***************
With esphomelib you can also display the current time using the NTP protocol. Please see the example :ref:`here <strftime>`.
@ -350,6 +351,7 @@ See Also
lcd_gpio
lcd_pcf8574
max7219
nextion
ssd1306_i2c
ssd1306_spi
waveshare_epaper

View File

@ -104,4 +104,5 @@ See Also
- :doc:`index`
- :doc:`lcd_pcf8574`
- :doc:`API Reference </api/display/lcd_display>`
- `Arduino LiquidCrystal Library <https://www.arduino.cc/en/Reference/LiquidCrystal>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/display/lcd_gpio.rst>`__

View File

@ -49,5 +49,7 @@ See Also
- :doc:`index`
- :doc:`lcd_gpio`
- :doc:`/esphomeyaml/components/pcf8574`
- :doc:`API Reference </api/display/lcd_display>`
- `Arduino LiquidCrystal Library <https://www.arduino.cc/en/Reference/LiquidCrystal>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/display/lcd_pcf8574.rst>`__

View File

@ -1,15 +1,15 @@
MAX7219 8-Segment Display
MAX7219 7-Segment Display
=========================
The ``max7219`` display platform allows you to use MAX7219 8-segment display drivers (`datasheet <https://datasheets.maximintegrated.com/en/ds/MAX7219-MAX7221.pdf>`__,
The ``max7219`` display platform allows you to use MAX7219 7-segment display drivers (`datasheet <https://datasheets.maximintegrated.com/en/ds/MAX7219-MAX7221.pdf>`__,
`hobbycomponents <https://hobbycomponents.com/displays/597-max7219-8-digit-seven-segment-display-module>`__)
with esphomelib. Please note that this integration is *only* for 8-segment display, not matrix configurations.
with esphomelib. Please note that this integration is *only* for 7-segment display, not matrix configurations.
.. figure:: images/max7219-full.jpg
:align: center
:width: 75.0%
MAX7219 8-Segment Display.
MAX7219 7-Segment Display.
As the communication with the MAX7219 is done using SPI for this integration, you need
to have an :ref:`SPI bus <spi>` in your configuration with both the **mosi_pin** set (miso_pin is not required).
@ -42,8 +42,6 @@ Configuration variables:
``1``.
- **intensity** (*Optional*, integer): The intensity with which the MAX7219 should drive the outputs. Range is from
0 (least intense) to 15 (the default).
- **spi_id** (*Optional*, :ref:`config-id`): The ID of the :ref:`SPI bus <spi>` you wish to use for this max7129.
Use this if you want to use multiple spi buses at once.
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the MAX7219.
See :ref:`display-max7219_lambda` for more information.
- **update_interval** (*Optional*, :ref:`config-time`): The interval to re-draw the screen. Defaults to ``1s``.
@ -57,7 +55,7 @@ Rendering Lambda
----------------
The MAX7219 has a similar API to the fully fledged ::ref:`display-engine`, but it's only a subset as the MAX7219
8-segment displays don't have a concept of individual pixels. In the lambda you're passed a variable called ``it``
7-segment displays don't have a concept of individual pixels. In the lambda you're passed a variable called ``it``
as with all other displays. In this case however, ``it`` is an :ref:`api-display-max7219` instance.
The most basic operation with the MAX7219 is wiring a simple number to the screen as in the configuration example
@ -108,7 +106,7 @@ Please see :ref:`display-printf` for a quick introduction into the ``printf`` fo
.. _display-max7219_characters:
All 8-Segment Characters
All 7-Segment Characters
------------------------
.. table::
@ -321,7 +319,7 @@ All 8-Segment Characters
.. note::
Original 8-segment display base image taken from Wikipedia at https://de.wikipedia.org/wiki/Datei:7_Segment_Display.svg
Original 7-segment display base image taken from Wikipedia at https://de.wikipedia.org/wiki/Datei:7_Segment_Display.svg
by user `h2g2bob <https://commons.wikimedia.org/wiki/User:H2g2bob>`__ under
`Creative Commons BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/deed.de>`__ and modified
for this documentation.
@ -331,4 +329,5 @@ See Also
- :doc:`index`
- :doc:`API Reference </api/display/max7219>`
- `MAX7219 Library <https://github.com/nickgammon/MAX7219>`__ by `Nick Gammon <https://github.com/nickgammon>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/display/max7219.rst>`__

View File

@ -0,0 +1,85 @@
Nextion TFT LCD Display
=======================
The ``nextion`` display platform allows you to use Nextion LCD displays (`datasheet <https://nextion.itead.cc/resources/datasheets/>`__,
`iTead <https://www.itead.cc/display/nextion.html>`__)
with esphomelib.
.. figure:: images/nextion-full.jpg
:align: center
:width: 75.0%
Nextion LCD Display.
As the communication with the MH-Z19 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.
Additionally, you need to set the baud rate to 9600.
.. code:: yaml
# Example configuration entry
uart:
rx_pin: D0
tx_pin: D1
baud_rate: 9600
display:
- platform: nextion
lambda: |-
it.set_component_value("gauge", 50);
it.set_component_text("textview", "Hello World!");
Configuration variables:
------------------------
- **uart_id** (*Optional*, :ref:`config-id`): The ID of the :ref:`UART bus <uart>` you wish to use for this display.
Use this if you want to use multiple UART buses at once.
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the nextion display.
See :ref:`display-nextion_lambda` for more information.
- **update_interval** (*Optional*, :ref:`config-time`): The interval to call the lambda to update the display.
Defaults to ``5s``.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
.. _display-nextion_lambda:
Rendering Lambda
----------------
With Nextion displays, a dedicated chip on the display itself does the whole rendering. esphomelib can only
send *instructions* to the display to tell it *how* to render something and *what* to render.
First, you need to use the `Nextion Editor <https://nextion.itead.cc/resources/download/nextion-editor/>`__ to
create a display file and insert it using the SD card slot. Then, in the rendering ``lambda``, you have 3 main methods
you can call to populate data on the display:
.. code:: yaml
display:
- platform: nextion
# ...
lambda: |-
// set the "value" of a component - value is always an integer
// for example gauges represent their status using integers from 0 to 100
it.set_component_value("gauge", 50);
// set the text of a component
it.set_component_text("textview", "Hello World!");
// set the text of a component with formatting
it.set_component_text("textview", "The uptime is: %.1f", id(uptime_sensor).value);
Please see :ref:`display-printf` for a quick introduction into the ``printf`` formatting rules and
:ref:`display-strftime` for an introduction into the ``strftime`` time formatting. Additionally, check
out :ref:`api-display-nextion` for the full API of the Nextion display object.
See Also
--------
- :doc:`index`
- :doc:`API Reference </api/display/nextion>`
- `Simple Nextion Library <https://github.com/bborncr/nextion>`__ by `Bentley Born <https://github.com/bborncr>`__
- `Official Nextion Library <https://github.com/itead/ITEADLIB_Arduino_Nextion>`__ by `iTead <http://itead.cc/>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/display/nextion.rst>`__

View File

@ -60,4 +60,5 @@ See Also
- :doc:`index`
- :doc:`API Reference </api/display/ssd1306>`
- `SSD1306 Library <https://github.com/adafruit/Adafruit_SSD1306>`__ by `Adafruit <http://adafruit.com/>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/display/ssd1306_i2c.rst>`__

View File

@ -65,4 +65,5 @@ See Also
- :doc:`index`
- :doc:`API Reference </api/display/ssd1306>`
- `SSD1306 Library <https://github.com/adafruit/Adafruit_SSD1306>`__ by `Adafruit <http://adafruit.com/>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/display/ssd1306_spi.rst>`__

View File

@ -98,4 +98,5 @@ See Also
- :doc:`index`
- :doc:`API Reference </api/display/waveshare_epaper>`
- `Arduino Waveshare E-Paper library <https://github.com/soonuse/epd-library-arduino>`__ by `Yehui (@soonuse) <https://github.com/soonuse>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/display/waveshare_epaper.rst>`__

View File

@ -72,4 +72,5 @@ See Also
- :doc:`binary_sensor/esp32_ble_tracker`
- :doc:`API Reference </api/misc/esp32_ble_beacon>`
- `ESP32 BLE for Arduino <https://github.com/nkolban/ESP32_BLE_Arduino>`__ by `Neil Kolban <https://github.com/nkolban>`__.
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/esp32_ble_beacon.rst>`__

View File

@ -44,15 +44,16 @@ for information on how you can find out the MAC address of a device and track it
name: "Xiaomi MiJia Battery Level"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **scan_interval** (*Optional*, :ref:`config-time`): The length of each scan.
If a device is not found within this time window, it will be marked as not present. Defaults to 300s.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID for this ESP32 BLE Hub.
See Also
^^^^^^^^
--------
- :doc:`binary_sensor/esp32_ble_tracker`
- :doc:`API Reference </api/misc/esp32_ble_tracker>`
- `ESP32 BLE for Arduino <https://github.com/nkolban/ESP32_BLE_Arduino>`__ by `Neil Kolban <https://github.com/nkolban>`__.
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/esp32_ble_tracker.rst>`__

View File

@ -17,7 +17,7 @@ the eight touch pads of the ESP32 as :doc:`binary senors </esphomeyaml/component
threshold: 1000
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **setup_mode** (*Optional*, boolean): Whether debug messages with the touch pad value should
be displayed in the logs. Useful for finding out suitable thresholds for the binary sensors, but
@ -48,7 +48,7 @@ Advanced options (the defaults are usually quite good, but if you're having accu
for a nice explanation of this. One of ``1.5V``, ``1V``, ``0.5V``, ``0V``. Default is ``0V``.
See Also
^^^^^^^^
--------
- :doc:`binary_sensor/esp32_touch`
- :doc:`API Reference </api/binary_sensor/esp32_touch>`

View File

@ -15,7 +15,7 @@ where you specify the **name** of the node, the **platform** and
board: nodemcu-32s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): This is the name of the node. It
should always be unique to the node and no other node in your system
@ -58,7 +58,7 @@ Automations:
.. _using_latest_arduino_framework:
Using the latest Arduino framework version
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
------------------------------------------
The default version of the arduino framework distributed through platformio is usually quite old
and the latest staging versions of the framework can in some cases increase stability a lot.
@ -80,7 +80,7 @@ And for the ESP8266, the URL is https://github.com/platformio/platform-espressif
.. _esphomeyaml-on_boot:
``on_boot``
"""""""""""
-----------
This automation will be triggered when the ESP boots up. By default, it is executed after everything else
is already set up. You can however change this using the ``priority`` parameter.
@ -116,7 +116,7 @@ Configuration variables:
.. _esphomeyaml-on_shutdown:
``on_shutdown``
"""""""""""""""
---------------
This automation will be triggered when the ESP is about to shut down. Shutting down is usually caused by
too many WiFi/MQTT connection attempts, Over-The-Air updates being applied or through the :doc:`deep_sleep`.
@ -138,6 +138,6 @@ too many WiFi/MQTT connection attempts, Over-The-Air updates being applied or th
Configuration variables: See :ref:`Automation <automation>`.
See Also
~~~~~~~~
--------
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/esphomeyaml.rst>`__

View File

@ -16,7 +16,7 @@ The ``binary`` fan platform lets you represent any binary :ref:`output` as a fan
name: "Living Room Fan"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **output** (**Required**, :ref:`config-id`): The id of the
binary output component to use for this fan.
@ -29,7 +29,7 @@ Configuration variables:
and :ref:`Fan Component <config-fan>`.
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/output/index`
- :doc:`/esphomeyaml/components/output/gpio`

View File

@ -13,7 +13,7 @@ oscillate output.
.. _config-fan:
Base Fan Configuration
~~~~~~~~~~~~~~~~~~~~~~
----------------------
.. code:: yaml
@ -37,7 +37,7 @@ Configuration variables:
.. _fan-toggle_action:
``fan.toggle`` Action
^^^^^^^^^^^^^^^^^^^^^
---------------------
Toggles the ON/OFF state of the fan with the given ID when executed.
@ -51,7 +51,7 @@ Toggles the ON/OFF state of the fan with the given ID when executed.
.. _fan-turn_off_action:
``fan.turn_off`` Action
^^^^^^^^^^^^^^^^^^^^^^^
-----------------------
Turns the fan with the given ID off when executed.
@ -65,7 +65,7 @@ Turns the fan with the given ID off when executed.
.. _fan-turn_on_action:
``fan.turn_on`` Action
^^^^^^^^^^^^^^^^^^^^^^
----------------------
Turns the fan with the given ID off when executed.
@ -86,7 +86,7 @@ Configuration options:
If you template this value, return ``fan::FAN_SPEED_...``, for example ``fan::FAN_SPEED_HIGH``.
Full Fan Index
^^^^^^^^^^^^^^
--------------
- :doc:`API Reference </api/fan/index>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/fan/index.rst>`__

View File

@ -17,7 +17,7 @@ supports speed settings.
name: "Living Room Fan"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **output** (**Required**, :ref:`config-id`): The id of the
:ref:`float output <output>` to use for this fan.
@ -38,7 +38,7 @@ Configuration variables:
and :ref:`Fan Component <config-fan>`.
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/output/index`
- :doc:`/esphomeyaml/components/fan/index`

View File

@ -15,7 +15,7 @@ to work correctly, you need to define the i²c bus in your configuration.
scan: False
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **sda** (*Optional*, :ref:`config-pin`): The pin for the data line of the i²c bus.
Defaults to the default of your board (usually GPIO21 for ESP32 and GPIO4 for ESP8266).

View File

@ -17,7 +17,7 @@ The ``binary`` light platform creates a simple ON/OFF-only light from a
output: output_component1
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name of the light.
- **output** (**Required**, :ref:`config-id`): The id of the
@ -28,7 +28,7 @@ Configuration variables:
- All other options from :ref:`MQTT Component <config-mqtt-component>`.
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/output/index`
- :doc:`/esphomeyaml/components/light/index`

View File

@ -0,0 +1,56 @@
Cold White + Warm White Light
=============================
The ``cwww`` light platform creates an Cold-White+Warm-White
light from 2 :ref:`float output components <output>` (one for each channel). The two
channels will be mixed using the color temperature configuration options.
.. code:: yaml
# Example configuration entry
light:
- platform: rgbw
name: "Livingroom Lights"
cold_white: output_component1
warm_white: output_component2
cold_white_color_temperature: 153 mireds
warm_white_color_temperature: 500 mireds
Configuration variables:
------------------------
- **name** (**Required**, string): The name of the light.
- **cold_white** (**Required**, :ref:`config-id`): The id of the float :ref:`output` to use for the cold white channel.
- **warm_white** (**Required**, :ref:`config-id`): The id of the float :ref:`output` to use for the warm white channel.
- **cold_white_color_temperature** (**Required**, float): The color temperate (in `mireds <https://en.wikipedia.org/wiki/Mired>`__)
of the cold white channel.
- **warm_white_color_temperature** (**Required**, float): The color temperate (in `mireds <https://en.wikipedia.org/wiki/Mired>`__)
of the warm white channel.
- **gamma_correct** (*Optional*, float): The `gamma correction
factor <https://en.wikipedia.org/wiki/Gamma_correction>`__ for the light. Defaults to ``2.8``.
- **default_transition_length** (*Optional*, :ref:`config-time`): The length of
the transition if no transition parameter is provided by Home Assistant. Defaults to ``1s``.
- **effects** (*Optional*, list): A list of :ref:`light effects <light-effects>` to use for this light.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`MQTT Component <config-mqtt-component>`.
.. note::
The CWWW light platform only works with ``float`` :ref:`outputs <output>` that
can output any light intensity percentage like the :doc:`ESP32 LEDC </esphomeyaml/components/output/ledc>` or
:doc:`ESP8266 PWM </esphomeyaml/components/output/esp8266_pwm>` components and does **not** work with output
platforms like the :doc:`/esphomeyaml/components/output/gpio`.
See Also
--------
- :doc:`/esphomeyaml/components/output/index`
- :doc:`/esphomeyaml/components/light/index`
- :doc:`/esphomeyaml/components/light/rgb`
- :doc:`/esphomeyaml/components/light/rgbw`
- :doc:`/esphomeyaml/components/power_supply`
- :doc:`/esphomeyaml/components/output/ledc`
- :doc:`/esphomeyaml/components/output/esp8266_pwm`
- :doc:`/esphomeyaml/components/output/pca9685`
- :doc:`API Reference </api/light/index>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/light/cwww.rst>`__

View File

@ -23,7 +23,7 @@ Clockless FastLED lights differ from the
name: "FastLED WS2811 Light"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name of the light.
- **chipset** (**Required**, string): Set a chipset to use.
@ -52,7 +52,7 @@ Configuration variables:
.. _fastled_clockless-chipsets:
Supported Chipsets
~~~~~~~~~~~~~~~~~~
------------------
- ``NEOPIXEL``
- ``WS2811``
@ -80,10 +80,11 @@ Supported Chipsets
- ``UCS2903``
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/light/index`
- :doc:`/esphomeyaml/components/light/fastled_spi`
- :doc:`/esphomeyaml/components/power_supply`
- :doc:`API Reference </api/light/fastled>`
- `Arduino FastLED library <https://github.com/FastLED/FastLED>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/light/fastled_clockless.rst>`__

View File

@ -25,7 +25,7 @@ whereas the clockless lights only need a single pin.
name: "FastLED SPI Light"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name of the light.
- **chipset** (**Required**, string): Set a chipset to use. See :ref:`fastled_spi-chipsets` for options.
@ -52,7 +52,7 @@ Configuration variables:
.. _fastled_spi-chipsets:
Supported Chipsets
~~~~~~~~~~~~~~~~~~
------------------
- ``APA102``
- ``DOTSTAR``
@ -64,10 +64,11 @@ Supported Chipsets
- ``WS2803``
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/light/index`
- :doc:`/esphomeyaml/components/light/fastled_clockless`
- :doc:`/esphomeyaml/components/power_supply`
- :doc:`API Reference </api/light/fastled>`
- `Arduino FastLED library <https://github.com/FastLED/FastLED>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/light/fastled_spi.rst>`__

View File

@ -457,14 +457,17 @@ See Also
--------
- :doc:`API Reference </api/light/index>`
- `WS2812FX library <https://github.com/kitesurfer1404/WS2812FX>`__ by `@kitesurfer1404 <https://github.com/kitesurfer1404>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/light/index.rst>`__
.. toctree::
:maxdepth: 1
binary.rst
cwww.rst
monochromatic.rst
rgb.rst
rgbw.rst
rgbww.rst
fastled_clockless.rst
fastled_spi.rst

View File

@ -23,7 +23,7 @@ The ``monochromatic`` light platform creates a simple brightness-only light from
output: output_component1
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name of the light.
- **output** (**Required**, :ref:`config-id`): The id of the float :ref:`output` to use for this light.
@ -45,7 +45,7 @@ Configuration variables:
platforms like the :doc:`/esphomeyaml/components/output/gpio`.
See Also
^^^^^^^^
--------
.. figure:: images/monochromatic-detail.jpg
:align: center

View File

@ -25,7 +25,7 @@ The ``rgb`` light platform creates an RGB light from 3 :ref:`float output compon
blue: output_component3
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name of the light.
- **red** (**Required**, :ref:`config-id`): The id of the float :ref:`output` to use for the red channel.
@ -47,7 +47,7 @@ Configuration variables:
platforms like the :doc:`/esphomeyaml/components/output/gpio`.
See Also
^^^^^^^^
--------
.. figure:: images/rgb-detail.jpg
:align: center

View File

@ -15,7 +15,7 @@ The ``rgbw`` light platform creates an RGBW light from 4 :ref:`float output comp
white: output_component4
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name of the light.
- **red** (**Required**, :ref:`config-id`): The id of the float :ref:`output` to use for the red channel.
@ -38,7 +38,7 @@ Configuration variables:
platforms like the :doc:`/esphomeyaml/components/output/gpio`.
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/output/index`
- :doc:`/esphomeyaml/components/light/index`

View File

@ -0,0 +1,62 @@
RGBWW Light
===========
The ``rgbww`` light platform creates an RGBWW (cold white + warm white)
light from 5 :ref:`float output components <output>` (one for each channel). The cold white
and warm white channels will be mixed using the color temperature configuration options.
.. code:: yaml
# Example configuration entry
light:
- platform: rgbww
name: "Livingroom Lights"
red: output_component1
green: output_component2
blue: output_component3
cold_white: output_component4
warm_white: output_component5
cold_white_color_temperature: 153 mireds
warm_white_color_temperature: 500 mireds
Configuration variables:
------------------------
- **name** (**Required**, string): The name of the light.
- **red** (**Required**, :ref:`config-id`): The id of the float :ref:`output` to use for the red channel.
- **green** (**Required**, :ref:`config-id`): The id of the float :ref:`output` to use for the green channel.
- **blue** (**Required**, :ref:`config-id`): The id of the float :ref:`output` to use for the blue channel.
- **cold_white** (**Required**, :ref:`config-id`): The id of the float :ref:`output` to use for the cold white channel.
- **warm_white** (**Required**, :ref:`config-id`): The id of the float :ref:`output` to use for the warm white channel.
- **cold_white_color_temperature** (**Required**, float): The color temperate (in `mireds <https://en.wikipedia.org/wiki/Mired>`__)
of the cold white channel.
- **warm_white_color_temperature** (**Required**, float): The color temperate (in `mireds <https://en.wikipedia.org/wiki/Mired>`__)
of the warm white channel.
- **gamma_correct** (*Optional*, float): The `gamma correction
factor <https://en.wikipedia.org/wiki/Gamma_correction>`__ for the light. Defaults to ``2.8``.
- **default_transition_length** (*Optional*, :ref:`config-time`): The length of
the transition if no transition parameter is provided by Home Assistant. Defaults to ``1s``.
- **effects** (*Optional*, list): A list of :ref:`light effects <light-effects>` to use for this light.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- All other options from :ref:`MQTT Component <config-mqtt-component>`.
.. note::
The RGBWW light platform only works with ``float`` :ref:`outputs <output>` that
can output any light intensity percentage like the :doc:`ESP32 LEDC </esphomeyaml/components/output/ledc>` or
:doc:`ESP8266 PWM </esphomeyaml/components/output/esp8266_pwm>` components and does **not** work with output
platforms like the :doc:`/esphomeyaml/components/output/gpio`.
See Also
--------
- :doc:`/esphomeyaml/components/output/index`
- :doc:`/esphomeyaml/components/light/index`
- :doc:`/esphomeyaml/components/light/rgb`
- :doc:`/esphomeyaml/components/light/rgbw`
- :doc:`/esphomeyaml/components/power_supply`
- :doc:`/esphomeyaml/components/output/ledc`
- :doc:`/esphomeyaml/components/output/esp8266_pwm`
- :doc:`/esphomeyaml/components/output/pca9685`
- :doc:`API Reference </api/light/index>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/light/rgbww.rst>`__

View File

@ -13,7 +13,7 @@ can help with the performance of the application and memory size.
level: DEBUG
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **baud_rate** (*Optional*, int): The baud rate to use for the serial
UART port. Defaults to 115200.
@ -30,7 +30,7 @@ Configuration variables:
.. _logger-log_levels:
Log Levels
~~~~~~~~~~
----------
Possible log levels are (sorted by severity):
@ -45,7 +45,7 @@ Possible log levels are (sorted by severity):
.. _logger-manual_tag_specific_levels:
Manual Tag-Specific Log Levels
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
------------------------------
If some component is spamming the logs and you want to manually set the
log level for it, first identify the tag of the log messages in question

View File

@ -16,7 +16,7 @@ Assistant configuration.
password: MyMQTTPassword
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **broker** (**Required**, string): The host of your MQTT broker.
- **port** (*Optional*, int): The port to connect to. Defaults to 1883.
@ -58,7 +58,7 @@ Configuration variables:
.. _mqtt-message:
MQTTMessage
~~~~~~~~~~~
-----------
With the MQTT Message schema you can tell esphomeyaml how a specific MQTT message should be sent.
It is used in several places like last will and birth messages or MQTT log options.
@ -92,7 +92,7 @@ Configuration options:
Using with Home Assistant
~~~~~~~~~~~~~~~~~~~~~~~~~
-------------------------
Using esphomelib with Home Assistant is easy, simply setup an MQTT
broker (like `mosquitto <https://mosquitto.org/>`__) and point both your
@ -131,7 +131,7 @@ topic, simply add ``--topic <your_topic>`` to the command.
.. _mqtt-defaults:
Defaults
~~~~~~~~
--------
By default, esphomelib will prefix all messages with your node name or
``topic_prefix`` if you have specified it manually. The client id will
@ -148,7 +148,7 @@ configuration. That way, you can use your existing wildcards like
.. _mqtt-last_will_birth:
Last Will And Birth Messages
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
----------------------------
esphomelib (and esphomeyaml) uses the `last will
testament <https://www.hivemq.com/blog/mqtt-essentials-part-9-last-will-and-testament>`__
@ -189,7 +189,7 @@ disabled.
.. _mqtt-ssl_fingerprints:
SSL Fingerprints
~~~~~~~~~~~~~~~~
----------------
On the ESP8266 you have the option to use SSL connections for MQTT. This feature
will get expanded to the ESP32 once the base library, AsyncTCP, supports it. Please
@ -217,7 +217,7 @@ then run the ``mqtt-fingerprint`` script of esphomeyaml to get the certificate:
.. _config-mqtt-component:
MQTT Component Base Configuration
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
---------------------------------
All components in esphomelib that do some sort of communication through
MQTT can have some overrides for specific options.
@ -264,7 +264,7 @@ Configuration variables:
.. _mqtt-on_message:
on_message
^^^^^^^^^^
----------
With this configuration option you can write complex automations whenever an MQTT
message on a specific topic is received. To use the message content, use a :ref:`lambda <config-lambda>`
@ -312,7 +312,7 @@ Configuration variables:
.. _mqtt-publish_action:
``mqtt.publish`` Action
^^^^^^^^^^^^^^^^^^^^^^^
-----------------------
Publish an MQTT message on a topic using this action in automations.
@ -344,7 +344,7 @@ Configuration options:
have a retain flag on or not. Defaults to ``False``.
See Also
^^^^^^^^
--------
- :doc:`API Reference </api/core/mqtt>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/mqtt.rst>`__

View File

@ -26,7 +26,7 @@ Logging+WiFi+OTA are initialized, so that you can upload a new binary.
password: VERYSECURE
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **safe_mode** (*Optional*, boolean): Whether to enable safe mode.
Defaults to ``True``.

View File

@ -36,4 +36,5 @@ See Also
- :doc:`/esphomeyaml/components/fan/speed`
- :doc:`/esphomeyaml/components/power_supply`
- :doc:`API Reference </api/output/ledc>`
- `esp-idf LEDC API docs <https://esp-idf.readthedocs.io/en/latest/api-reference/peripherals/ledc.html>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/output/ledc.rst>`__

View File

@ -45,4 +45,5 @@ See Also
- :doc:`/esphomeyaml/components/fan/speed`
- :doc:`/esphomeyaml/components/power_supply`
- :doc:`API Reference </api/output/pca9685>`
- `PCA9685 Arduino Library <https://github.com/NachtRaveVL/PCA9685-Arduino>`__ by `@NachtRaveVL <https://github.com/NachtRaveVL>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/output/pca9685.rst>`__

View File

@ -23,7 +23,7 @@ global ``pca9685`` hub and give it an id, and then define the
channel: 0
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **frequency** (**Required**, float): The frequency to let the
component drive all PWM outputs at. Must be in range from 24Hz to

View File

@ -56,5 +56,6 @@ See Also
- :ref:`i2c`
- :doc:`switch/gpio`
- :doc:`binary_sensor/gpio`
- `PCF8574 Arduino Library <https://github.com/skywodd/pcf8574_arduino_library>`__ by `Fabien Batteix <https://github.com/skywodd>`__
- :doc:`API Reference </api/misc/pcf8574>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/pcf8574.rst>`__

View File

@ -57,5 +57,6 @@ See Also
- :doc:`binary_sensor/pn532`
- :doc:`rdm6300`
- `PN532 Library <https://github.com/adafruit/Adafruit-PN532/blob/master/Adafruit_PN532.cpp>`__ by `Adafruit <https://www.adafruit.com/>`__
- :doc:`API Reference </api/binary_sensor/pn532>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/pn532.rst>`__

View File

@ -19,7 +19,7 @@ after the last ouput has been disabled.
pin: 13
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **id** (**Required**, :ref:`config-id`): The id of the
power supply so that it can be used by the outputs.
@ -37,7 +37,7 @@ See the :ref:`output component base configuration <config-output>`
for information on how to apply the power supply for a specific output.
ATX Power Supplies
~~~~~~~~~~~~~~~~~~
------------------
.. figure:: images/power_supply-atx.jpg
:align: center

View File

@ -32,16 +32,17 @@ with the baud rate set to 9600
name: "RDM6300 NFC Tag"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **uart_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the :ref:`UART Component <uart>` if you want
to use multiple UART buses.
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID for this component.
See Also
^^^^^^^^
--------
- :doc:`binary_sensor/rdm6300`
- :doc:`pn532`
- `RDM6300 Arduino Library <https://github.com/arliones/RDM6300-Arduino>`__ by `Arliones Hoeller Jr <https://github.com/arliones>`__
- :doc:`API Reference </api/binary_sensor/rdm6300>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/rdm6300.rst>`__

View File

@ -49,5 +49,7 @@ Configuration variables:
See Also
--------
- `RCSwitch <https://github.com/sui77/rc-switch>`__ by `Suat Özgür <https://github.com/sui77>`__
- `IRRemoteESP8266 <https://github.com/markszabo/IRremoteESP8266/>`__ by `Mark Szabo-Simon <https://github.com/markszabo>`__
- :doc:`API Reference </api/switch/remote_transmitter>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/remote_transmitter.rst>`__

View File

@ -45,5 +45,7 @@ Configuration variables:
See Also
--------
- `RCSwitch <https://github.com/sui77/rc-switch>`__ by `Suat Özgür <https://github.com/sui77>`__
- `IRRemoteESP8266 <https://github.com/markszabo/IRremoteESP8266/>`__ by `Mark Szabo-Simon <https://github.com/markszabo>`__
- :doc:`API Reference </api/switch/remote_transmitter>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/remote_transmitter.rst>`__

View File

@ -20,7 +20,7 @@ GPIO39 can be used.
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **pin** (**Required**, :ref:`config-pin`): The pin to measure the voltage on.
Or on the ESP8266 alternatively also ``VCC``, see :ref:`adc-esp8266_vcc`.
@ -40,7 +40,7 @@ Configuration variables:
.. _adc-esp32_attenuation:
ESP32 Attenuation
~~~~~~~~~~~~~~~~~
-----------------
On the ESP32, the voltage measured with the ADC caps out at 1.1V by default as the sensing range
or the attenuation of the ADC is set to ``0db`` by default.
@ -56,7 +56,7 @@ To measure voltages higher than 1.1V, set ``attenuation`` to one of the `followi
.. _adc-esp8266_vcc:
ESP8266 Measuring VCC
~~~~~~~~~~~~~~~~~~~~~
---------------------
On the ESP8266 you can even measure the voltage the chip is getting. This can be useful in situations
where you want to shut down the chip if the voltage is low when using a battery.
@ -85,7 +85,7 @@ automatically for you because of how the compiler is linking the esphomelib libr
// ...
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`ads1115`

View File

@ -30,7 +30,7 @@ voltage to Home Assistant.
name: "ADS1115 Channel A0-GND"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **multiplexer** (**Required**): The multiplexer channel of this sensor. Effectively means between which pins you
want to measure voltage.
@ -43,7 +43,7 @@ Configuration variables:
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
Multiplexer And Gain
~~~~~~~~~~~~~~~~~~~~
--------------------
The ADS1115 has a multiplexer that can be configured to measure voltage between several pin configurations. These are:
@ -66,10 +66,11 @@ Additionally, the ADS1115 has a Programmable Gain Amplifier (PGA) that can help
- ``0.256`` (measures up to 0.256V)
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`adc`
- :doc:`max6675`
- :doc:`API Reference </api/sensor/ads1115>`
- `i2cdevlib <https://github.com/jrowberg/i2cdevlib>`__ by `Jeff Rowberg <https://github.com/jrowberg>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/ads1115.rst>`__

View File

@ -29,7 +29,7 @@ your configuration for this sensor to work.
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name for the sensor.
- **address** (*Optional*, int): Manually specify the i^2c address of the sensor.
@ -44,9 +44,10 @@ Configuration variables:
- All other options from :ref:`Sensor <config-sensor>` and :ref:`MQTT Component <config-mqtt-component>`.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`tsl2561`
- :doc:`API Reference </api/sensor/bh1750>`
- `BH1750 Library <https://github.com/claws/BH1750>`__ by `@claws <https://github.com/claws>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/bh1750.rst>`__

View File

@ -17,7 +17,7 @@ instructions for setting up this platform.
name: "BLE Google Home Mini RSSI value"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **mac_address** (**Required**, MAC Address): The MAC address to track for this
sensor.
@ -26,7 +26,7 @@ Configuration variables:
- All other options from :ref:`Sensor <config-sensor>` and :ref:`MQTT Component <config-mqtt-component>`.
See Also
^^^^^^^^
--------
- :doc:`/esphomeyaml/components/esp32_ble_tracker`
- :doc:`/esphomeyaml/components/sensor/index`

View File

@ -8,10 +8,9 @@ required to be set up in your configuration for this sensor to work.
.. figure:: images/bme280-full.jpg
:align: center
:target: `Adafruit`_
:width: 50.0%
BME280 Temperature, Pressure & Humidity Sensor. Image by `Adafruit`_.
BME280 Temperature, Pressure & Humidity Sensor.
.. _Adafruit: https://www.adafruit.com/product/2652
@ -31,7 +30,7 @@ required to be set up in your configuration for this sensor to work.
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **temperature** (**Required**): The information for the temperature.
sensor
@ -69,7 +68,7 @@ Configuration variables:
.. _bme280-oversampling:
Oversampling Options
~~~~~~~~~~~~~~~~~~~~
--------------------
By default, the BME280 sensor measures each value 16 times when requesting a new value. You can, however,
configure this amount. Possible oversampling values:
@ -82,10 +81,12 @@ configure this amount. Possible oversampling values:
- ``16x`` (default)
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`bme680`
- :doc:`bmp085`
- :doc:`API Reference </api/sensor/bme280>`
- `Adafruit BME280 Library <https://github.com/adafruit/Adafruit_BME280_Library>`__ by `Adafruit <https://www.adafruit.com/>`__
- `Sparkfun BME280 Library <https://github.com/sparkfun/SparkFun_BME280_Arduino_Library>`__ by `Sparkfun <https://www.sparkfun.com/>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/bme280.rst>`__

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@ -105,4 +105,5 @@ See Also
- :doc:`bme280`
- :doc:`bmp085`
- :doc:`API Reference </api/sensor/bme680>`
- `BME680 Sensor API <https://github.com/BoschSensortec/BME680_driver>`__ by `Bosch Sensortec <https://www.bosch-sensortec.com/>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/bme680.rst>`__

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@ -58,4 +58,5 @@ See Also
- :doc:`bme280`
- :doc:`bme680`
- :doc:`API Reference </api/sensor/bmp085>`
- `i2cdevlib <https://github.com/jrowberg/i2cdevlib>`__ by `Jeff Rowberg <https://github.com/jrowberg>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/bmp085.rst>`__

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@ -84,4 +84,5 @@ See Also
- :doc:`bme680`
- :doc:`bmp085`
- :doc:`API Reference </api/sensor/bmp280>`
- `BME280 Library <https://github.com/adafruit/Adafruit_BMP280_Library>`__ by `Adafruit <https://www.adafruit.com/>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/bmp280.rst>`__

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -11,7 +11,6 @@ To initialize a sensor, first supply either ``address`` **or** ``index`` to iden
.. figure:: images/dallas-wired.jpg
:align: center
:target: `Adafruit`_
:width: 50.0%
Wired Version of the DS18b20 One-Wire Temperature Sensor.
@ -35,7 +34,7 @@ To initialize a sensor, first supply either ``address`` **or** ``index`` to iden
name: "Living Room Temperature"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **address** (**Required**, int): The address of the sensor. Use either
this option or index.
@ -52,7 +51,7 @@ Configuration variables:
.. _dallas-getting-ids:
Getting Sensor IDs
~~~~~~~~~~~~~~~~~~
------------------
It is highly recommended to use the ``address`` attribute for creating
dallas sensors, because if you have multiple sensors on a bus and the
@ -99,10 +98,11 @@ When you're finished mapping each address to a name, just change the ``Temperatu
to your assigned names and you should be ready.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`/esphomeyaml/components/dallas`
- :doc:`max6675`
- `Arduino DallasTemperature library <https://github.com/milesburton/Arduino-Temperature-Control-Library>`__ by `Miles Burton <https://github.com/milesburton>`__
- :doc:`API Reference </api/sensor/dallas>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/dallas.rst>`__

View File

@ -41,7 +41,7 @@ if you're having issues try the 4.7kΩ recommended by the manufacturer) between
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **pin** (**Required**, :ref:`config-pin`): The pin where the DHT bus is connected.
- **temperature** (**Required**): The information for the temperature sensor.
@ -69,7 +69,7 @@ Configuration variables:
on the DATA pin or too long cables.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`dht12`
@ -77,4 +77,5 @@ See Also
- :doc:`htu21d`
- :doc:`sht3xd`
- :doc:`API Reference </api/sensor/dht>`
- `Arduino DHTLib <https://playground.arduino.cc/Main/DHTLib>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/dht.rst>`__

View File

@ -29,7 +29,7 @@ The ``dht12`` Temperature+Humidity sensor allows you to use your DHT12
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **temperature** (**Required**): The information for the temperature sensor.
@ -47,7 +47,7 @@ Configuration variables:
See :ref:`sensor-default_filter`.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`dht`
@ -55,4 +55,5 @@ See Also
- :doc:`htu21d`
- :doc:`sht3xd`
- :doc:`API Reference </api/sensor/dht12>`
- `DHT12 Library <https://github.com/dplasa/dht>`__ by `Daniel Plasa <https://github.com/dplasa>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/dht12.rst>`__

View File

@ -23,7 +23,7 @@ by the hall sensor.
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name of the hall effect sensor.
- **update_interval** (*Optional*, :ref:`config-time`): The interval
@ -41,7 +41,7 @@ Configuration variables:
please feel free to do so 😺.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`adc`

View File

@ -32,7 +32,7 @@ required to be set up in your configuration for this sensor to work.
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **temperature** (**Required**): The information for the temperature sensor.
@ -54,7 +54,7 @@ as it seems to only be rarely of use. If you need it, please open an
issue.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`dht`
@ -62,4 +62,5 @@ See Also
- :doc:`htu21d`
- :doc:`sht3xd`
- :doc:`API Reference </api/sensor/hdc1080>`
- `HDC1080 Library <https://github.com/closedcube/ClosedCube_HDC1080_Arduino>`__ by `ClosedCube <https://www.tindie.com/stores/closedcube/>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/hdc1080.rst>`__

View File

@ -0,0 +1,62 @@
HLW8012 Power Sensor
====================
The ``hlw8012`` sensor platform allows you to use your HLW8012 voltage/current and power sensors
(`datasheet <https://github.com/xoseperez/hlw8012/blob/master/docs/HLW8012.pdf>`__) sensors with
esphomelib. This sensor is commonly found in Sonoff POWs.
This sensor has two data outputs which both encode values using the frequency of a modulated signal: CF and CF1.
CF's frequency is proportional to the (active) power measured and CF1 is proportional to the current/voltage. Using
the SEL pin, one can choose between which mode to use.
esphomelib will continuously cycle the state of the SEL pin to measure current *and* voltage, though both cannot
be measured at the same exact points in time.
.. code:: yaml
# Example configuration entry
sensor:
- platform: hlw8012
sel_pin: 5
cf_pin: 14
cf1_pin: 13
current:
name: "HLW8012 Current"
voltage:
name: "HLW8012 Voltage"
power:
name: "HLW8012 Power"
update_interval: 15s
.. note::
The configuration above should work for Sonoff POWs (R1).
Configuration variables:
------------------------
- **sel_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin SEL is connected to.
- **cf_pin** (**Required**, :ref:`config-pin`): The pin CF is connected to.
- **cf1_pin** (**Required**, :ref:`config-pin`): The pin CF1 is connected to.
- **current** (*Optional*): Use the current value of the sensor in amperes. All options from
:ref:`Sensor <config-sensor>` and :ref:`MQTT Component <config-mqtt-component>`.
- **power** (*Optional*): Use the (active) power value of the sensor in watts. All options from
:ref:`Sensor <config-sensor>` and :ref:`MQTT Component <config-mqtt-component>`.
- **voltage** (*Optional*): Use the voltage value of the sensor in V (RMS).
All options from :ref:`Sensor <config-sensor>` and :ref:`MQTT Component <config-mqtt-component>`.
- **current_resistor** (*Optional*, float): The value of the shunt resistor for current measurement.
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``.
Defaults to the Sonoff POW's value ``2351``.
- **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. Defaults to ``8``.
- **update_interval** (*Optional*, :ref:`config-time`): The interval to check the sensor. Defaults to ``15s``.
See :ref:`sensor-default_filter`.
See Also
--------
- :ref:`sensor-filters`
- :doc:`API Reference </api/sensor/hlw8012>`
- `HLW8012 Library <https://github.com/xoseperez/hlw8012>`__ by `Xose Pérez <https://github.com/xoseperez>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/hlw8012.rst>`__

View File

@ -7,13 +7,6 @@ The ``hmc5883l`` allows you to use your HMC5883L triple-axis magnetometers
esphomelib. The :ref:`I²C Bus <i2c>` is
required to be set up in your configuration for this sensor to work.
.. figure:: images/hmc5883l-full.jpg
:align: center
:width: 50.0%
HMC5883L Magnetometer. Image by Adafruit_.
.. _Adafruit: https://www.adafruit.com/product/1746
.. code:: yaml
@ -34,7 +27,7 @@ required to be set up in your configuration for this sensor to work.
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **address** (*Optional*, int): Manually specify the i^2c address of the sensor. Defaults to ``0x1E``.
- **field_strength_x** (*Optional*): The field strength in microtesla along the X-Axis. All options from
@ -50,10 +43,11 @@ Configuration variables:
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`template`
- :doc:`ultrasonic`
- :doc:`API Reference </api/sensor/hmc5883l>`
- `HMC5883L Library <https://github.com/jarzebski/Arduino-HMC5883L>`__ by `Korneliusz Jarzębski <https://github.com/jarzebski>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/hmc5883l.rst>`__

View File

@ -57,4 +57,5 @@ See Also
- :doc:`hdc1080`
- :doc:`sht3xd`
- :doc:`API Reference </api/sensor/htu21d>`
- `i2cdevlib <https://github.com/jrowberg/i2cdevlib>`__ by `Jeff Rowberg <https://github.com/jrowberg>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/htu21d.rst>`__

View File

@ -45,4 +45,5 @@ See Also
- :ref:`sensor-filters`
- :doc:`adc`
- :doc:`API Reference </api/sensor/hx711>`
- `HX711 Library <https://github.com/bogde/HX711>`__ by `@bogde <https://github.com/bogde>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/hx711.rst>`__

Binary file not shown.

After

Width:  |  Height:  |  Size: 308 KiB

View File

@ -40,7 +40,7 @@ required to be set up in your configuration for this sensor to work.
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **address** (*Optional*, int): Manually specify the i^2c address of the sensor. Defaults to ``0x40``.
- **shunt_resistance** (*Optional*, float): The value of the shunt resistor on the board for current calculation.
@ -61,9 +61,10 @@ Configuration variables:
See :ref:`sensor-default_filter`.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`ina3221`
- :doc:`API Reference </api/sensor/ina219>`
- `INA291 Arduino Library <https://github.com/adafruit/Adafruit_INA219>`__ by `Adafruit <https://www.adafruit.com/>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/ina219.rst>`__

View File

@ -77,4 +77,5 @@ See Also
- :ref:`sensor-filters`
- :doc:`ina219`
- :doc:`API Reference </api/sensor/ina3221>`
- `INA3221 Arduino Library <https://github.com/switchdoclabs/SDL_Arduino_INA3221>`__ by `SwitchDoc Labs <https://github.com/switchdoclabs>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/ina3221.rst>`__

View File

@ -8,7 +8,7 @@ configuration options.
.. _config-sensor:
Base Sensor Configuration
~~~~~~~~~~~~~~~~~~~~~~~~~
-------------------------
All sensors in esphomeyaml/esphomelib have a name and some other
optional configuration options. By default, the sensor platform will
@ -75,7 +75,7 @@ Automations:
.. _sensor-filters:
Sensor Filters
~~~~~~~~~~~~~~
--------------
esphomeyaml/esphomelib allow you to do some basic preprocessing of
sensor values before theyre sent to Home Assistant. This is for example
@ -167,7 +167,7 @@ every filter there is currently:
as a raw string.
Example: Converting Celsius to Fahrenheit
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-----------------------------------------
While I personally dont like the Fahrenheit temperature scale, I do
understand that having temperature values appear in the fahrenheit unit
@ -185,7 +185,7 @@ fahrenheit.
.. _sensor-default_filter:
Default Filter
^^^^^^^^^^^^^^
--------------
By default, esphomelib takes an average over the last 15 values before publishing updates.
This was done in order to automatically decrease sensor noise.
@ -200,7 +200,7 @@ directly, put an empty ``filters:`` block in your configuration:
filters:
Sensor Automation
^^^^^^^^^^^^^^^^^
-----------------
You can access the most recent state of the sensor in :ref:`lambdas <config-lambda>` using
``id(sensor_id).value`` and the most recent raw state using ``id(sensor_id).raw_value``.
@ -208,7 +208,7 @@ You can access the most recent state of the sensor in :ref:`lambdas <config-lamb
.. _sensor-on_value:
``on_value``
""""""""""""
************
This automation will be triggered when a new value that has passed through all filters
is published. In :ref:`Lambdas <config-lambda>` you can get the value from the trigger
@ -230,7 +230,7 @@ Configuration variables: See :ref:`Automation <automation>`.
.. _sensor-on_value_range:
``on_value_range``
""""""""""""""""""
******************
With this automation you can observe if a sensor value passes from outside
a defined range of values to inside a range. For example you can have an
@ -262,7 +262,7 @@ Configuration variables:
.. _sensor-on_raw_value:
``on_raw_value``
""""""""""""""""
****************
This automation will be triggered when a new value that has passed through all filters
is published. In :ref:`Lambdas <config-lambda>` you can get the value from the trigger
@ -282,7 +282,7 @@ with ``x``.
Configuration variables: See :ref:`Automation <automation>`.
lambda calls
""""""""""""
************
From :ref:`lambdas <config-lambda>`, you can call several methods on all sensors to do some
advanced stuff (see the full :doc:`API Reference </api/sensor/index>` for more info).
@ -313,7 +313,7 @@ advanced stuff (see the full :doc:`API Reference </api/sensor/index>` for more i
See Also
^^^^^^^^
********
- :doc:`API Reference </api/sensor/index>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/index.rst>`__
@ -336,6 +336,7 @@ See Also
duty_cycle
esp32_hall
hdc1080
hlw8012
hmc5883l
htu21d
hx711

View File

@ -36,7 +36,7 @@ Connect ``GND`` to ``GND``, ``VCC`` to ``3.3V`` and the other three ``MISO`` (or
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name for the temperature sensor.
- **cs_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The Chip Select pin of the SPI interface.
@ -48,12 +48,13 @@ Configuration variables:
- All other options from :ref:`Sensor <config-sensor>` and :ref:`MQTT Component <config-mqtt-component>`.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`dallas`
- :doc:`dht`
- :doc:`adc`
- :doc:`sht3xd`
- `MAX6675 Library <https://github.com/adafruit/MAX6675-library>`__ by `Adafruit <https://www.adafruit.com/>`__
- :doc:`API Reference </api/sensor/max6675>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/max6675.rst>`__

View File

@ -24,6 +24,7 @@ TX/RX labels are from the perspective of the MH-Z19). Additionally, you need to
rx_pin: D0
tx_pin: D1
baud_rate: 9600
sensor:
- platform: mhz19
co2:
@ -65,5 +66,6 @@ See Also
--------
- :ref:`sensor-filters`
- `MH-Z19 library <https://github.com/nara256/mhz19_uart>`__ by `@nara356 <https://github.com/nara256>`__
- :doc:`API Reference </api/sensor/mhz19>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/mhz19.rst>`__

View File

@ -75,4 +75,5 @@ See Also
- :doc:`template`
- :doc:`ultrasonic`
- :doc:`API Reference </api/sensor/mpu6050>`
- `i2cdevlib <https://github.com/jrowberg/i2cdevlib>`__ by `Jeff Rowberg <https://github.com/jrowberg>`__
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/mpu6050.rst>`__

View File

@ -59,5 +59,6 @@ See Also
- :doc:`bmp280`
- :doc:`bme280`
- :doc:`bmp085`
- `Arduino MS5611 Library <https://github.com/jarzebski/Arduino-MS5611>`__ by `Korneliusz Jarzębski <https://github.com/jarzebski>`__
- :doc:`API Reference </api/sensor/ms5611>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/ms5611.rst>`__

View File

@ -21,7 +21,7 @@ on the ESP32.
name: "Pulse Counter"
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **pin** (**Required**, :ref:`config-pin`): The pin to count pulses on.
- **name** (**Required**, string): The name of the sensor.
@ -46,7 +46,7 @@ Configuration variables:
- All other options from :ref:`Sensor <config-sensor>` and :ref:`MQTT Component <config-mqtt-component>`.
Converting units
~~~~~~~~~~~~~~~~
----------------
The sensor defaults to measuring its values using a unit of measurement
of “pulses/min”. You can change this by using :ref:`sensor-filters`.
@ -65,7 +65,7 @@ count the light pulses on a power meter, you can do the following:
- multiply: 0.06
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`rotary_encoder`

View File

@ -33,7 +33,7 @@ outputs go in the wrong direction, you can just swap these two pins.
pin_b: D2
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **pin_a** (**Required**, :ref:`Pin Schema <config-pin_schema>`):
The first pin for determining the step value. Must not be a pin from an external I/O expander.
@ -47,7 +47,7 @@ Configuration variables:
- All other options from :ref:`Sensor <config-sensor>` and :ref:`MQTT Component <config-mqtt-component>`.
Debouncing Output
~~~~~~~~~~~~~~~~~
-----------------
This sensor can output a lot of values in a short period of time when turning the knob.
In order to not put too much stress on your network connection, you can leverage esphomelib's
@ -68,10 +68,11 @@ sensor filters. The following will only send out values if the last input value
- delta: 10
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`pulse_counter`
- :doc:`template`
- `Mechanical Input Library <https://github.com/jkDesignDE/MechInputs>`__ by `Jochen Krapf <https://github.com/JK-de>`__
- :doc:`API Reference </api/sensor/rotary_encoder>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/rotary_encoder.rst>`__

View File

@ -26,7 +26,7 @@ required to be set up in your configuration for this sensor to work.
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **temperature** (**Required**): The information for the temperature sensor.
@ -46,7 +46,7 @@ Configuration variables:
sensor. Defaults to ``15s``. See :ref:`sensor-default_filter`.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :doc:`dht`

View File

@ -41,7 +41,7 @@ required to be set up in your configuration for this sensor to work.
update_interval: 15s
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **red_channel** (*Optional*): Get the percentage of how strongly the red color channel is activated.
All options from :ref:`Sensor <config-sensor>` and :ref:`MQTT Component <config-mqtt-component>`.
@ -64,8 +64,9 @@ Configuration variables:
sensor. Defaults to ``15s``. See :ref:`sensor-default_filter`.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- `TCS34725 library <https://github.com/adafruit/Adafruit_TCS34725>`__ by `Adafruit <https://www.adafruit.com/>`__
- :doc:`API Reference </api/sensor/tcs34725>`
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/sensor/tcs34725.rst>`__

View File

@ -26,7 +26,7 @@ Possible return values for the lambda:
- ``return {};`` if you don't want to publish a new state (advanced).
Configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~
------------------------
- **name** (**Required**, string): The name of the binary sensor.
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`):
@ -37,7 +37,7 @@ Configuration variables:
- All other options from :ref:`Binary Sensor <config-binary_sensor>` and :ref:`MQTT Component <config-mqtt-component>`.
See Also
^^^^^^^^
--------
- :ref:`sensor-filters`
- :ref:`automation`

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