diff --git a/api/binary_sensor/remote_receiver.rst b/api/binary_sensor/remote_receiver.rst index 55e41eeb7..2a32edcb9 100644 --- a/api/binary_sensor/remote_receiver.rst +++ b/api/binary_sensor/remote_receiver.rst @@ -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: diff --git a/api/core/time.rst b/api/core/time.rst index 6704fdb80..ceed5226e 100644 --- a/api/core/time.rst +++ b/api/core/time.rst @@ -17,7 +17,7 @@ API Reference :undoc-members: -.. doxygenstruct:: time::SNTPComponent +.. doxygenclass:: time::SNTPComponent :members: :protected-members: :undoc-members: diff --git a/api/display/index.rst b/api/display/index.rst index 93b887bb3..72765761f 100644 --- a/api/display/index.rst +++ b/api/display/index.rst @@ -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 **** diff --git a/api/display/max7219.rst b/api/display/max7219.rst index 069aeaada..96f99b26c 100644 --- a/api/display/max7219.rst +++ b/api/display/max7219.rst @@ -1,4 +1,4 @@ -MAX7219 8-Segment Display +MAX7219 7-Segment Display ========================= API Reference diff --git a/api/display/nextion.rst b/api/display/nextion.rst new file mode 100644 index 000000000..279d4f92d --- /dev/null +++ b/api/display/nextion.rst @@ -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 diff --git a/api/light/index.rst b/api/light/index.rst index c97b59992..485609b73 100644 --- a/api/light/index.rst +++ b/api/light/index.rst @@ -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 diff --git a/api/sensor/bme680.rst b/api/sensor/bme680.rst index e303d01c5..f878193f1 100644 --- a/api/sensor/bme680.rst +++ b/api/sensor/bme680.rst @@ -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: diff --git a/api/sensor/hlw8012.rst b/api/sensor/hlw8012.rst new file mode 100644 index 000000000..bfe0b121f --- /dev/null +++ b/api/sensor/hlw8012.rst @@ -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 diff --git a/api/sensor/ina219.rst b/api/sensor/ina219.rst index a916344c9..5e945850a 100644 --- a/api/sensor/ina219.rst +++ b/api/sensor/ina219.rst @@ -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 diff --git a/api/sensor/ina3221.rst b/api/sensor/ina3221.rst index 835918c10..ef45a7e14 100644 --- a/api/sensor/ina3221.rst +++ b/api/sensor/ina3221.rst @@ -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 diff --git a/api/sensor/index.rst b/api/sensor/index.rst index a535f75d4..f022dff36 100644 --- a/api/sensor/index.rst +++ b/api/sensor/index.rst @@ -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 diff --git a/api/sensor/mhz19.rst b/api/sensor/mhz19.rst index fd051772c..93205e913 100644 --- a/api/sensor/mhz19.rst +++ b/api/sensor/mhz19.rst @@ -17,4 +17,3 @@ API Reference .. doxygentypedef:: MHZ19CO2Sensor .. doxygentypedef:: MHZ19TemperatureSensor -.. doxygendefine:: USE_MHZ19 diff --git a/api/sensor/ms5611.rst b/api/sensor/ms5611.rst index 6f0a059ff..156bad54c 100644 --- a/api/sensor/ms5611.rst +++ b/api/sensor/ms5611.rst @@ -15,6 +15,5 @@ API Reference :protected-members: :undoc-members: -.. doxygenenum:: MS5611TemperatureSensor -.. doxygenenum:: MS5611PressureSensor -.. doxygendefine:: USE_MS5611 +.. doxygentypedef:: MS5611TemperatureSensor +.. doxygentypedef:: MS5611PressureSensor diff --git a/api/sensor/tcs34725.rst b/api/sensor/tcs34725.rst index 65312a720..b676d9a37 100644 --- a/api/sensor/tcs34725.rst +++ b/api/sensor/tcs34725.rst @@ -20,4 +20,3 @@ API Reference .. doxygentypedef:: TCS35725IlluminanceSensor .. doxygentypedef:: TCS35725ColorTemperatureSensor .. doxygentypedef:: TCS35725ColorChannelSensor -.. doxygendefine:: USE_TCS34725 diff --git a/api/switch/remote_transmitter.rst b/api/switch/remote_transmitter.rst index db4cba54d..4c05b63fc 100644 --- a/api/switch/remote_transmitter.rst +++ b/api/switch/remote_transmitter.rst @@ -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: diff --git a/esphomeyaml/binary_sensor.csv b/esphomeyaml/binary_sensor.csv index d29d3acd8..49fa87937 100644 --- a/esphomeyaml/binary_sensor.csv +++ b/esphomeyaml/binary_sensor.csv @@ -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 diff --git a/esphomeyaml/components/ads1115.rst b/esphomeyaml/components/ads1115.rst index dbe329c09..a677f060e 100644 --- a/esphomeyaml/components/ads1115.rst +++ b/esphomeyaml/components/ads1115.rst @@ -45,5 +45,6 @@ See Also ^^^^^^^^ - :doc:`sensor/ads1115` +- `i2cdevlib `__ by `Jeff Rowberg `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/binary_sensor/esp32_ble_tracker.rst b/esphomeyaml/components/binary_sensor/esp32_ble_tracker.rst index 669a34da9..7475e6e5e 100644 --- a/esphomeyaml/components/binary_sensor/esp32_ble_tracker.rst +++ b/esphomeyaml/components/binary_sensor/esp32_ble_tracker.rst @@ -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 ` +- `ESP32 BLE for Arduino `__ by `Neil Kolban `__. - `Edit this page on GitHub `__ - diff --git a/esphomeyaml/components/binary_sensor/esp32_touch.rst b/esphomeyaml/components/binary_sensor/esp32_touch.rst index 90e3a8f34..c9f6ca856 100644 --- a/esphomeyaml/components/binary_sensor/esp32_touch.rst +++ b/esphomeyaml/components/binary_sensor/esp32_touch.rst @@ -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 `. 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 ` +- `esp-idf Touch Sensor API `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/binary_sensor/gpio.rst b/esphomeyaml/components/binary_sensor/gpio.rst index 81046cef5..f5abd562d 100644 --- a/esphomeyaml/components/binary_sensor/gpio.rst +++ b/esphomeyaml/components/binary_sensor/gpio.rst @@ -18,7 +18,7 @@ device as a binary sensor. device_class: window Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **pin** (**Required**, :ref:`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 ` 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 `: @@ -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` diff --git a/esphomeyaml/components/binary_sensor/index.rst b/esphomeyaml/components/binary_sensor/index.rst index a9e42cec1..06f8bfc85 100644 --- a/esphomeyaml/components/binary_sensor/index.rst +++ b/esphomeyaml/components/binary_sensor/index.rst @@ -237,3 +237,4 @@ See Also remote_receiver pn532 rdm6300 + nextion diff --git a/esphomeyaml/components/binary_sensor/nextion.rst b/esphomeyaml/components/binary_sensor/nextion.rst new file mode 100644 index 000000000..bd1306ef6 --- /dev/null +++ b/esphomeyaml/components/binary_sensor/nextion.rst @@ -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 ` and :ref:`MQTT Component `. + +See Also +-------- + +- :doc:`/esphomeyaml/components/display/nextion` +- :doc:`index` +- :doc:`API Reference ` +- `Edit this page on GitHub `__ + diff --git a/esphomeyaml/components/binary_sensor/pn532.rst b/esphomeyaml/components/binary_sensor/pn532.rst index 3b5ec3d87..7e1c8413d 100644 --- a/esphomeyaml/components/binary_sensor/pn532.rst +++ b/esphomeyaml/components/binary_sensor/pn532.rst @@ -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` diff --git a/esphomeyaml/components/binary_sensor/rdm6300.rst b/esphomeyaml/components/binary_sensor/rdm6300.rst index f7c417ba1..257c52faf 100644 --- a/esphomeyaml/components/binary_sensor/rdm6300.rst +++ b/esphomeyaml/components/binary_sensor/rdm6300.rst @@ -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` diff --git a/esphomeyaml/components/binary_sensor/remote_receiver.rst b/esphomeyaml/components/binary_sensor/remote_receiver.rst index 3621d419d..cb01d1d10 100644 --- a/esphomeyaml/components/binary_sensor/remote_receiver.rst +++ b/esphomeyaml/components/binary_sensor/remote_receiver.rst @@ -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 `__ + 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 `__ by `Suat Özgür `__ +- `IRRemoteESP8266 `__ by `Mark Szabo-Simon `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/binary_sensor/status.rst b/esphomeyaml/components/binary_sensor/status.rst index a138b8ddb..fa305a00e 100644 --- a/esphomeyaml/components/binary_sensor/status.rst +++ b/esphomeyaml/components/binary_sensor/status.rst @@ -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 `. (Inverted mode is not supported) See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/binary_sensor/index` - :doc:`/esphomeyaml/components/mqtt` diff --git a/esphomeyaml/components/binary_sensor/template.rst b/esphomeyaml/components/binary_sensor/template.rst index f897a82a9..b4c423c0f 100644 --- a/esphomeyaml/components/binary_sensor/template.rst +++ b/esphomeyaml/components/binary_sensor/template.rst @@ -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 `): @@ -47,7 +47,7 @@ Configuration variables: and :ref:`MQTT Component `. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/binary_sensor/index` - :doc:`/esphomeyaml/components/sensor/template` diff --git a/esphomeyaml/components/cover/index.rst b/esphomeyaml/components/cover/index.rst index 1005ddd50..9ac79454c 100644 --- a/esphomeyaml/components/cover/index.rst +++ b/esphomeyaml/components/cover/index.rst @@ -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 `, you can call several methods on all covers to do some advanced stuff (see the full :doc:`API Reference ` for more info). @@ -98,7 +98,7 @@ advanced stuff (see the full :doc:`API Reference ` for more in See Also -^^^^^^^^ +-------- - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/cover/template.rst b/esphomeyaml/components/cover/template.rst index f87de7c54..50510b40b 100644 --- a/esphomeyaml/components/cover/template.rst +++ b/esphomeyaml/components/cover/template.rst @@ -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 `): @@ -62,7 +62,7 @@ Configuration variables: and :ref:`MQTT Component `. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/cover/index` - :ref:`automation` diff --git a/esphomeyaml/components/dallas.rst b/esphomeyaml/components/dallas.rst index 8cfee847e..b76884f13 100644 --- a/esphomeyaml/components/dallas.rst +++ b/esphomeyaml/components/dallas.rst @@ -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 `__ by `Miles Burton `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/debug.rst b/esphomeyaml/components/debug.rst index e66adb76a..64e8ba4ef 100644 --- a/esphomeyaml/components/debug.rst +++ b/esphomeyaml/components/debug.rst @@ -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 ` diff --git a/esphomeyaml/components/deep_sleep.rst b/esphomeyaml/components/deep_sleep.rst index 36d385f60..126ce4e36 100644 --- a/esphomeyaml/components/deep_sleep.rst +++ b/esphomeyaml/components/deep_sleep.rst @@ -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` diff --git a/esphomeyaml/components/display/images/nextion-full.jpg b/esphomeyaml/components/display/images/nextion-full.jpg new file mode 100644 index 000000000..1e0c5805a Binary files /dev/null and b/esphomeyaml/components/display/images/nextion-full.jpg differ diff --git a/esphomeyaml/components/display/index.rst b/esphomeyaml/components/display/index.rst index ea6f18b91..8ba5526b7 100644 --- a/esphomeyaml/components/display/index.rst +++ b/esphomeyaml/components/display/index.rst @@ -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 ` or +- Text based displays like :doc:`7-Segment displays ` or :doc:`some LCD displays `. +- 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 ` or :doc:`OLED displays `. -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 `. @@ -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 `. @@ -350,6 +351,7 @@ See Also lcd_gpio lcd_pcf8574 max7219 + nextion ssd1306_i2c ssd1306_spi waveshare_epaper diff --git a/esphomeyaml/components/display/lcd_gpio.rst b/esphomeyaml/components/display/lcd_gpio.rst index 4fb4e82bd..a7fb4945d 100644 --- a/esphomeyaml/components/display/lcd_gpio.rst +++ b/esphomeyaml/components/display/lcd_gpio.rst @@ -104,4 +104,5 @@ See Also - :doc:`index` - :doc:`lcd_pcf8574` - :doc:`API Reference ` +- `Arduino LiquidCrystal Library `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/display/lcd_pcf8574.rst b/esphomeyaml/components/display/lcd_pcf8574.rst index c70c9b741..5296f4398 100644 --- a/esphomeyaml/components/display/lcd_pcf8574.rst +++ b/esphomeyaml/components/display/lcd_pcf8574.rst @@ -49,5 +49,7 @@ See Also - :doc:`index` - :doc:`lcd_gpio` +- :doc:`/esphomeyaml/components/pcf8574` - :doc:`API Reference ` +- `Arduino LiquidCrystal Library `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/display/max7219.rst b/esphomeyaml/components/display/max7219.rst index 9c6bb9e8c..da5d55cfa 100644 --- a/esphomeyaml/components/display/max7219.rst +++ b/esphomeyaml/components/display/max7219.rst @@ -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 `__, +The ``max7219`` display platform allows you to use MAX7219 7-segment display drivers (`datasheet `__, `hobbycomponents `__) -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 ` 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 ` you wish to use for this max7129. - Use this if you want to use multiple spi buses at once. - **lambda** (*Optional*, :ref:`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 `__ under `Creative Commons BY-SA 3.0 `__ and modified for this documentation. @@ -331,4 +329,5 @@ See Also - :doc:`index` - :doc:`API Reference ` +- `MAX7219 Library `__ by `Nick Gammon `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/display/nextion.rst b/esphomeyaml/components/display/nextion.rst new file mode 100644 index 000000000..d9cfcc980 --- /dev/null +++ b/esphomeyaml/components/display/nextion.rst @@ -0,0 +1,85 @@ +Nextion TFT LCD Display +======================= + +The ``nextion`` display platform allows you to use Nextion LCD displays (`datasheet `__, +`iTead `__) +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 ` +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 ` you wish to use for this display. + Use this if you want to use multiple UART buses at once. +- **lambda** (*Optional*, :ref:`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 `__ 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 ` +- `Simple Nextion Library `__ by `Bentley Born `__ +- `Official Nextion Library `__ by `iTead `__ +- `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/display/ssd1306_i2c.rst b/esphomeyaml/components/display/ssd1306_i2c.rst index cd7b36a92..fd5c5e1c2 100644 --- a/esphomeyaml/components/display/ssd1306_i2c.rst +++ b/esphomeyaml/components/display/ssd1306_i2c.rst @@ -60,4 +60,5 @@ See Also - :doc:`index` - :doc:`API Reference ` +- `SSD1306 Library `__ by `Adafruit `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/display/ssd1306_spi.rst b/esphomeyaml/components/display/ssd1306_spi.rst index a0bb3cab1..5f3be72f4 100644 --- a/esphomeyaml/components/display/ssd1306_spi.rst +++ b/esphomeyaml/components/display/ssd1306_spi.rst @@ -65,4 +65,5 @@ See Also - :doc:`index` - :doc:`API Reference ` +- `SSD1306 Library `__ by `Adafruit `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/display/waveshare_epaper.rst b/esphomeyaml/components/display/waveshare_epaper.rst index 4001ee7c3..ad88bd4da 100644 --- a/esphomeyaml/components/display/waveshare_epaper.rst +++ b/esphomeyaml/components/display/waveshare_epaper.rst @@ -98,4 +98,5 @@ See Also - :doc:`index` - :doc:`API Reference ` +- `Arduino Waveshare E-Paper library `__ by `Yehui (@soonuse) `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/esp32_ble_beacon.rst b/esphomeyaml/components/esp32_ble_beacon.rst index 2b857ff15..a5723810d 100644 --- a/esphomeyaml/components/esp32_ble_beacon.rst +++ b/esphomeyaml/components/esp32_ble_beacon.rst @@ -72,4 +72,5 @@ See Also - :doc:`binary_sensor/esp32_ble_tracker` - :doc:`API Reference ` +- `ESP32 BLE for Arduino `__ by `Neil Kolban `__. - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/esp32_ble_tracker.rst b/esphomeyaml/components/esp32_ble_tracker.rst index 97c0e6b72..5c1e8a462 100644 --- a/esphomeyaml/components/esp32_ble_tracker.rst +++ b/esphomeyaml/components/esp32_ble_tracker.rst @@ -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 ` +- `ESP32 BLE for Arduino `__ by `Neil Kolban `__. - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/esp32_touch.rst b/esphomeyaml/components/esp32_touch.rst index f921a50d4..bcf4138f1 100644 --- a/esphomeyaml/components/esp32_touch.rst +++ b/esphomeyaml/components/esp32_touch.rst @@ -17,7 +17,7 @@ the eight touch pads of the ESP32 as :doc:`binary senors ` diff --git a/esphomeyaml/components/esphomeyaml.rst b/esphomeyaml/components/esphomeyaml.rst index 74147c5b3..510c6924e 100644 --- a/esphomeyaml/components/esphomeyaml.rst +++ b/esphomeyaml/components/esphomeyaml.rst @@ -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 `. See Also -~~~~~~~~ +-------- - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/fan/binary.rst b/esphomeyaml/components/fan/binary.rst index 5a80e221e..f0a1acbab 100644 --- a/esphomeyaml/components/fan/binary.rst +++ b/esphomeyaml/components/fan/binary.rst @@ -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 `. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/output/index` - :doc:`/esphomeyaml/components/output/gpio` diff --git a/esphomeyaml/components/fan/index.rst b/esphomeyaml/components/fan/index.rst index 824036954..fbfeb9e72 100644 --- a/esphomeyaml/components/fan/index.rst +++ b/esphomeyaml/components/fan/index.rst @@ -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 ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/fan/speed.rst b/esphomeyaml/components/fan/speed.rst index ec2d4fd74..3b9508966 100644 --- a/esphomeyaml/components/fan/speed.rst +++ b/esphomeyaml/components/fan/speed.rst @@ -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 ` to use for this fan. @@ -38,7 +38,7 @@ Configuration variables: and :ref:`Fan Component `. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/output/index` - :doc:`/esphomeyaml/components/fan/index` diff --git a/esphomeyaml/components/i2c.rst b/esphomeyaml/components/i2c.rst index ac1d9bc06..de77638f5 100644 --- a/esphomeyaml/components/i2c.rst +++ b/esphomeyaml/components/i2c.rst @@ -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). diff --git a/esphomeyaml/components/light/binary.rst b/esphomeyaml/components/light/binary.rst index 4259d616b..05cc77d1e 100644 --- a/esphomeyaml/components/light/binary.rst +++ b/esphomeyaml/components/light/binary.rst @@ -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 `. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/output/index` - :doc:`/esphomeyaml/components/light/index` diff --git a/esphomeyaml/components/light/cwww.rst b/esphomeyaml/components/light/cwww.rst new file mode 100644 index 000000000..adc1839ca --- /dev/null +++ b/esphomeyaml/components/light/cwww.rst @@ -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 ` (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 `__) + of the cold white channel. +- **warm_white_color_temperature** (**Required**, float): The color temperate (in `mireds `__) + of the warm white channel. +- **gamma_correct** (*Optional*, float): The `gamma correction + factor `__ 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 ` 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 `. + +.. note:: + + The CWWW light platform only works with ``float`` :ref:`outputs ` that + can output any light intensity percentage like the :doc:`ESP32 LEDC ` or + :doc:`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 ` +- `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/light/fastled_clockless.rst b/esphomeyaml/components/light/fastled_clockless.rst index dc824f53a..7247b1acb 100644 --- a/esphomeyaml/components/light/fastled_clockless.rst +++ b/esphomeyaml/components/light/fastled_clockless.rst @@ -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 ` +- `Arduino FastLED library `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/light/fastled_spi.rst b/esphomeyaml/components/light/fastled_spi.rst index fc07e0e99..330f714e0 100644 --- a/esphomeyaml/components/light/fastled_spi.rst +++ b/esphomeyaml/components/light/fastled_spi.rst @@ -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 ` +- `Arduino FastLED library `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/light/index.rst b/esphomeyaml/components/light/index.rst index f9c8a3417..2721e77c2 100644 --- a/esphomeyaml/components/light/index.rst +++ b/esphomeyaml/components/light/index.rst @@ -457,14 +457,17 @@ See Also -------- - :doc:`API Reference ` +- `WS2812FX library `__ by `@kitesurfer1404 `__ - `Edit this page on GitHub `__ .. toctree:: :maxdepth: 1 binary.rst + cwww.rst monochromatic.rst rgb.rst rgbw.rst + rgbww.rst fastled_clockless.rst fastled_spi.rst diff --git a/esphomeyaml/components/light/monochromatic.rst b/esphomeyaml/components/light/monochromatic.rst index 53d35ef48..d0deddd66 100644 --- a/esphomeyaml/components/light/monochromatic.rst +++ b/esphomeyaml/components/light/monochromatic.rst @@ -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 diff --git a/esphomeyaml/components/light/rgb.rst b/esphomeyaml/components/light/rgb.rst index a57e6af4b..cb93ff854 100644 --- a/esphomeyaml/components/light/rgb.rst +++ b/esphomeyaml/components/light/rgb.rst @@ -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 diff --git a/esphomeyaml/components/light/rgbw.rst b/esphomeyaml/components/light/rgbw.rst index 2b0191aed..55cb28f24 100644 --- a/esphomeyaml/components/light/rgbw.rst +++ b/esphomeyaml/components/light/rgbw.rst @@ -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` diff --git a/esphomeyaml/components/light/rgbww.rst b/esphomeyaml/components/light/rgbww.rst new file mode 100644 index 000000000..b610f6408 --- /dev/null +++ b/esphomeyaml/components/light/rgbww.rst @@ -0,0 +1,62 @@ +RGBWW Light +=========== + +The ``rgbww`` light platform creates an RGBWW (cold white + warm white) +light from 5 :ref:`float output components ` (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 `__) + of the cold white channel. +- **warm_white_color_temperature** (**Required**, float): The color temperate (in `mireds `__) + of the warm white channel. +- **gamma_correct** (*Optional*, float): The `gamma correction + factor `__ 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 ` 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 `. + +.. note:: + + The RGBWW light platform only works with ``float`` :ref:`outputs ` that + can output any light intensity percentage like the :doc:`ESP32 LEDC ` or + :doc:`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 ` +- `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/logger.rst b/esphomeyaml/components/logger.rst index 73c40f970..384f20804 100644 --- a/esphomeyaml/components/logger.rst +++ b/esphomeyaml/components/logger.rst @@ -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 diff --git a/esphomeyaml/components/mqtt.rst b/esphomeyaml/components/mqtt.rst index 3fbc002a7..0bb8c54c0 100644 --- a/esphomeyaml/components/mqtt.rst +++ b/esphomeyaml/components/mqtt.rst @@ -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 `__) and point both your @@ -131,7 +131,7 @@ topic, simply add ``--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 `__ @@ -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 ` @@ -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 ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/ota.rst b/esphomeyaml/components/ota.rst index 94baa19fd..10f4be2ec 100644 --- a/esphomeyaml/components/ota.rst +++ b/esphomeyaml/components/ota.rst @@ -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``. diff --git a/esphomeyaml/components/output/ledc.rst b/esphomeyaml/components/output/ledc.rst index 23fc9e9d3..9d45c0eb9 100644 --- a/esphomeyaml/components/output/ledc.rst +++ b/esphomeyaml/components/output/ledc.rst @@ -36,4 +36,5 @@ See Also - :doc:`/esphomeyaml/components/fan/speed` - :doc:`/esphomeyaml/components/power_supply` - :doc:`API Reference ` +- `esp-idf LEDC API docs `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/output/pca9685.rst b/esphomeyaml/components/output/pca9685.rst index fbef5dd56..ddb1fbf69 100644 --- a/esphomeyaml/components/output/pca9685.rst +++ b/esphomeyaml/components/output/pca9685.rst @@ -45,4 +45,5 @@ See Also - :doc:`/esphomeyaml/components/fan/speed` - :doc:`/esphomeyaml/components/power_supply` - :doc:`API Reference ` +- `PCA9685 Arduino Library `__ by `@NachtRaveVL `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/pca9685.rst b/esphomeyaml/components/pca9685.rst index 884b2aeab..494d5d0ba 100644 --- a/esphomeyaml/components/pca9685.rst +++ b/esphomeyaml/components/pca9685.rst @@ -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 diff --git a/esphomeyaml/components/pcf8574.rst b/esphomeyaml/components/pcf8574.rst index 863c79f7e..2c3c52356 100644 --- a/esphomeyaml/components/pcf8574.rst +++ b/esphomeyaml/components/pcf8574.rst @@ -56,5 +56,6 @@ See Also - :ref:`i2c` - :doc:`switch/gpio` - :doc:`binary_sensor/gpio` +- `PCF8574 Arduino Library `__ by `Fabien Batteix `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/pn532.rst b/esphomeyaml/components/pn532.rst index 0a60554a6..bb276d93c 100644 --- a/esphomeyaml/components/pn532.rst +++ b/esphomeyaml/components/pn532.rst @@ -57,5 +57,6 @@ See Also - :doc:`binary_sensor/pn532` - :doc:`rdm6300` +- `PN532 Library `__ by `Adafruit `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/power_supply.rst b/esphomeyaml/components/power_supply.rst index 08c3d405a..3001d1a1e 100644 --- a/esphomeyaml/components/power_supply.rst +++ b/esphomeyaml/components/power_supply.rst @@ -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 ` for information on how to apply the power supply for a specific output. ATX Power Supplies -~~~~~~~~~~~~~~~~~~ +------------------ .. figure:: images/power_supply-atx.jpg :align: center diff --git a/esphomeyaml/components/rdm6300.rst b/esphomeyaml/components/rdm6300.rst index fe5754ee0..9ecc55f4b 100644 --- a/esphomeyaml/components/rdm6300.rst +++ b/esphomeyaml/components/rdm6300.rst @@ -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 ` 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 `__ by `Arliones Hoeller Jr `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/remote_receiver.rst b/esphomeyaml/components/remote_receiver.rst index 7d14499e3..16a675cfb 100644 --- a/esphomeyaml/components/remote_receiver.rst +++ b/esphomeyaml/components/remote_receiver.rst @@ -49,5 +49,7 @@ Configuration variables: See Also -------- +- `RCSwitch `__ by `Suat Özgür `__ +- `IRRemoteESP8266 `__ by `Mark Szabo-Simon `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/remote_transmitter.rst b/esphomeyaml/components/remote_transmitter.rst index 3690004df..a752f3e9c 100644 --- a/esphomeyaml/components/remote_transmitter.rst +++ b/esphomeyaml/components/remote_transmitter.rst @@ -45,5 +45,7 @@ Configuration variables: See Also -------- +- `RCSwitch `__ by `Suat Özgür `__ +- `IRRemoteESP8266 `__ by `Mark Szabo-Simon `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/adc.rst b/esphomeyaml/components/sensor/adc.rst index 4341c4c52..544238834 100644 --- a/esphomeyaml/components/sensor/adc.rst +++ b/esphomeyaml/components/sensor/adc.rst @@ -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` diff --git a/esphomeyaml/components/sensor/ads1115.rst b/esphomeyaml/components/sensor/ads1115.rst index 057cae813..6a7b5795f 100644 --- a/esphomeyaml/components/sensor/ads1115.rst +++ b/esphomeyaml/components/sensor/ads1115.rst @@ -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 ` +- `i2cdevlib `__ by `Jeff Rowberg `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/bh1750.rst b/esphomeyaml/components/sensor/bh1750.rst index 9c05c69dd..6cc8d623e 100644 --- a/esphomeyaml/components/sensor/bh1750.rst +++ b/esphomeyaml/components/sensor/bh1750.rst @@ -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 ` and :ref:`MQTT Component `. See Also -^^^^^^^^ +-------- - :ref:`sensor-filters` - :doc:`tsl2561` - :doc:`API Reference ` +- `BH1750 Library `__ by `@claws `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/ble_rssi.rst b/esphomeyaml/components/sensor/ble_rssi.rst index a46c946d0..0e294a660 100644 --- a/esphomeyaml/components/sensor/ble_rssi.rst +++ b/esphomeyaml/components/sensor/ble_rssi.rst @@ -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 ` and :ref:`MQTT Component `. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/esp32_ble_tracker` - :doc:`/esphomeyaml/components/sensor/index` diff --git a/esphomeyaml/components/sensor/bme280.rst b/esphomeyaml/components/sensor/bme280.rst index 9dad6495d..a9ed0a31d 100644 --- a/esphomeyaml/components/sensor/bme280.rst +++ b/esphomeyaml/components/sensor/bme280.rst @@ -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 ` +- `Adafruit BME280 Library `__ by `Adafruit `__ +- `Sparkfun BME280 Library `__ by `Sparkfun `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/bme680.rst b/esphomeyaml/components/sensor/bme680.rst index 8516191ab..f58514237 100644 --- a/esphomeyaml/components/sensor/bme680.rst +++ b/esphomeyaml/components/sensor/bme680.rst @@ -105,4 +105,5 @@ See Also - :doc:`bme280` - :doc:`bmp085` - :doc:`API Reference ` +- `BME680 Sensor API `__ by `Bosch Sensortec `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/bmp085.rst b/esphomeyaml/components/sensor/bmp085.rst index 9094deecf..2a6060da9 100644 --- a/esphomeyaml/components/sensor/bmp085.rst +++ b/esphomeyaml/components/sensor/bmp085.rst @@ -58,4 +58,5 @@ See Also - :doc:`bme280` - :doc:`bme680` - :doc:`API Reference ` +- `i2cdevlib `__ by `Jeff Rowberg `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/bmp280.rst b/esphomeyaml/components/sensor/bmp280.rst index 91617cbf8..0b6ba750a 100644 --- a/esphomeyaml/components/sensor/bmp280.rst +++ b/esphomeyaml/components/sensor/bmp280.rst @@ -84,4 +84,5 @@ See Also - :doc:`bme680` - :doc:`bmp085` - :doc:`API Reference ` +- `BME280 Library `__ by `Adafruit `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/dallas.rst b/esphomeyaml/components/sensor/dallas.rst index ff27b372d..cf4322deb 100644 --- a/esphomeyaml/components/sensor/dallas.rst +++ b/esphomeyaml/components/sensor/dallas.rst @@ -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 `__ by `Miles Burton `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/dht.rst b/esphomeyaml/components/sensor/dht.rst index 3940f1644..9a9ae0c51 100644 --- a/esphomeyaml/components/sensor/dht.rst +++ b/esphomeyaml/components/sensor/dht.rst @@ -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 ` +- `Arduino DHTLib `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/dht12.rst b/esphomeyaml/components/sensor/dht12.rst index a3b600d29..a09950189 100644 --- a/esphomeyaml/components/sensor/dht12.rst +++ b/esphomeyaml/components/sensor/dht12.rst @@ -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 ` +- `DHT12 Library `__ by `Daniel Plasa `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/esp32_hall.rst b/esphomeyaml/components/sensor/esp32_hall.rst index 5bc1f1d8c..2809c155f 100644 --- a/esphomeyaml/components/sensor/esp32_hall.rst +++ b/esphomeyaml/components/sensor/esp32_hall.rst @@ -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` diff --git a/esphomeyaml/components/sensor/hdc1080.rst b/esphomeyaml/components/sensor/hdc1080.rst index 86a72e7b9..b5274d53f 100644 --- a/esphomeyaml/components/sensor/hdc1080.rst +++ b/esphomeyaml/components/sensor/hdc1080.rst @@ -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 ` +- `HDC1080 Library `__ by `ClosedCube `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/hlw8012.rst b/esphomeyaml/components/sensor/hlw8012.rst new file mode 100644 index 000000000..e3dcd8ce4 --- /dev/null +++ b/esphomeyaml/components/sensor/hlw8012.rst @@ -0,0 +1,62 @@ +HLW8012 Power Sensor +==================== + +The ``hlw8012`` sensor platform allows you to use your HLW8012 voltage/current and power sensors +(`datasheet `__) 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 `): 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 ` and :ref:`MQTT Component `. +- **power** (*Optional*): Use the (active) power value of the sensor in watts. All options from + :ref:`Sensor ` and :ref:`MQTT Component `. +- **voltage** (*Optional*): Use the voltage value of the sensor in V (RMS). + All options from :ref:`Sensor ` and :ref:`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 ` +- `HLW8012 Library `__ by `Xose Pérez `__ +- `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/hmc5883l.rst b/esphomeyaml/components/sensor/hmc5883l.rst index af905138b..9eb253820 100644 --- a/esphomeyaml/components/sensor/hmc5883l.rst +++ b/esphomeyaml/components/sensor/hmc5883l.rst @@ -7,13 +7,6 @@ The ``hmc5883l`` allows you to use your HMC5883L triple-axis magnetometers esphomelib. The :ref:`I²C Bus ` 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 ` +- `HMC5883L Library `__ by `Korneliusz Jarzębski `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/htu21d.rst b/esphomeyaml/components/sensor/htu21d.rst index daff9f8dd..52f6e34e2 100644 --- a/esphomeyaml/components/sensor/htu21d.rst +++ b/esphomeyaml/components/sensor/htu21d.rst @@ -57,4 +57,5 @@ See Also - :doc:`hdc1080` - :doc:`sht3xd` - :doc:`API Reference ` +- `i2cdevlib `__ by `Jeff Rowberg `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/hx711.rst b/esphomeyaml/components/sensor/hx711.rst index 3398978e5..55d146c63 100644 --- a/esphomeyaml/components/sensor/hx711.rst +++ b/esphomeyaml/components/sensor/hx711.rst @@ -45,4 +45,5 @@ See Also - :ref:`sensor-filters` - :doc:`adc` - :doc:`API Reference ` +- `HX711 Library `__ by `@bogde `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/images/hdc1080-full.jpg b/esphomeyaml/components/sensor/images/hdc1080-full.jpg new file mode 100644 index 000000000..a98efce50 Binary files /dev/null and b/esphomeyaml/components/sensor/images/hdc1080-full.jpg differ diff --git a/esphomeyaml/components/sensor/ina219.rst b/esphomeyaml/components/sensor/ina219.rst index 9523378e1..ebec27e8d 100644 --- a/esphomeyaml/components/sensor/ina219.rst +++ b/esphomeyaml/components/sensor/ina219.rst @@ -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 ` +- `INA291 Arduino Library `__ by `Adafruit `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/ina3221.rst b/esphomeyaml/components/sensor/ina3221.rst index cff501d37..7690972dd 100644 --- a/esphomeyaml/components/sensor/ina3221.rst +++ b/esphomeyaml/components/sensor/ina3221.rst @@ -77,4 +77,5 @@ See Also - :ref:`sensor-filters` - :doc:`ina219` - :doc:`API Reference ` +- `INA3221 Arduino Library `__ by `SwitchDoc Labs `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/index.rst b/esphomeyaml/components/sensor/index.rst index 67264ad75..52ab04229 100644 --- a/esphomeyaml/components/sensor/index.rst +++ b/esphomeyaml/components/sensor/index.rst @@ -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 they’re 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 don’t 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 ` 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 ` you can get the value from the trigger @@ -230,7 +230,7 @@ Configuration variables: See :ref:`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 ` you can get the value from the trigger @@ -282,7 +282,7 @@ with ``x``. Configuration variables: See :ref:`Automation `. lambda calls -"""""""""""" +************ From :ref:`lambdas `, you can call several methods on all sensors to do some advanced stuff (see the full :doc:`API Reference ` for more info). @@ -313,7 +313,7 @@ advanced stuff (see the full :doc:`API Reference ` for more i See Also -^^^^^^^^ +******** - :doc:`API Reference ` - `Edit this page on GitHub `__ @@ -336,6 +336,7 @@ See Also duty_cycle esp32_hall hdc1080 + hlw8012 hmc5883l htu21d hx711 diff --git a/esphomeyaml/components/sensor/max6675.rst b/esphomeyaml/components/sensor/max6675.rst index c428242a5..ffcd2748c 100644 --- a/esphomeyaml/components/sensor/max6675.rst +++ b/esphomeyaml/components/sensor/max6675.rst @@ -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 `): The Chip Select pin of the SPI interface. @@ -48,12 +48,13 @@ Configuration variables: - All other options from :ref:`Sensor ` and :ref:`MQTT Component `. See Also -^^^^^^^^ +-------- - :ref:`sensor-filters` - :doc:`dallas` - :doc:`dht` - :doc:`adc` - :doc:`sht3xd` +- `MAX6675 Library `__ by `Adafruit `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/mhz19.rst b/esphomeyaml/components/sensor/mhz19.rst index 180de32ed..d424b49ff 100644 --- a/esphomeyaml/components/sensor/mhz19.rst +++ b/esphomeyaml/components/sensor/mhz19.rst @@ -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 `__ by `@nara356 `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/mpu6050.rst b/esphomeyaml/components/sensor/mpu6050.rst index b0edac5f8..dc82f4d36 100644 --- a/esphomeyaml/components/sensor/mpu6050.rst +++ b/esphomeyaml/components/sensor/mpu6050.rst @@ -75,4 +75,5 @@ See Also - :doc:`template` - :doc:`ultrasonic` - :doc:`API Reference ` +- `i2cdevlib `__ by `Jeff Rowberg `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/ms5611.rst b/esphomeyaml/components/sensor/ms5611.rst index 56efc6fda..09e5533fc 100644 --- a/esphomeyaml/components/sensor/ms5611.rst +++ b/esphomeyaml/components/sensor/ms5611.rst @@ -59,5 +59,6 @@ See Also - :doc:`bmp280` - :doc:`bme280` - :doc:`bmp085` +- `Arduino MS5611 Library `__ by `Korneliusz Jarzębski `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/pulse_counter.rst b/esphomeyaml/components/sensor/pulse_counter.rst index beae5ae62..847a2919c 100644 --- a/esphomeyaml/components/sensor/pulse_counter.rst +++ b/esphomeyaml/components/sensor/pulse_counter.rst @@ -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 ` and :ref:`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` diff --git a/esphomeyaml/components/sensor/rotary_encoder.rst b/esphomeyaml/components/sensor/rotary_encoder.rst index 86b6fe02a..d413e1ea3 100644 --- a/esphomeyaml/components/sensor/rotary_encoder.rst +++ b/esphomeyaml/components/sensor/rotary_encoder.rst @@ -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 `): 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 ` and :ref:`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 `__ by `Jochen Krapf `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/sht3xd.rst b/esphomeyaml/components/sensor/sht3xd.rst index 1359df3f9..9c0636106 100644 --- a/esphomeyaml/components/sensor/sht3xd.rst +++ b/esphomeyaml/components/sensor/sht3xd.rst @@ -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` diff --git a/esphomeyaml/components/sensor/tcs34725.rst b/esphomeyaml/components/sensor/tcs34725.rst index b26ff8464..90bca436d 100644 --- a/esphomeyaml/components/sensor/tcs34725.rst +++ b/esphomeyaml/components/sensor/tcs34725.rst @@ -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 ` and :ref:`MQTT Component `. @@ -64,8 +64,9 @@ Configuration variables: sensor. Defaults to ``15s``. See :ref:`sensor-default_filter`. See Also -^^^^^^^^ +-------- - :ref:`sensor-filters` +- `TCS34725 library `__ by `Adafruit `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/template.rst b/esphomeyaml/components/sensor/template.rst index 09d7d0771..aa3c10b9f 100644 --- a/esphomeyaml/components/sensor/template.rst +++ b/esphomeyaml/components/sensor/template.rst @@ -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 `): @@ -37,7 +37,7 @@ Configuration variables: - All other options from :ref:`Binary Sensor ` and :ref:`MQTT Component `. See Also -^^^^^^^^ +-------- - :ref:`sensor-filters` - :ref:`automation` diff --git a/esphomeyaml/components/sensor/tsl2561.rst b/esphomeyaml/components/sensor/tsl2561.rst index 8e3d9d353..a12f22b1f 100644 --- a/esphomeyaml/components/sensor/tsl2561.rst +++ b/esphomeyaml/components/sensor/tsl2561.rst @@ -52,5 +52,6 @@ See Also - :ref:`sensor-filters` - :doc:`bh1750` - :doc:`adc` +- `SparkFun TSL2561 Arduino Library `__ by `Sparkfun `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/ultrasonic.rst b/esphomeyaml/components/sensor/ultrasonic.rst index 40ee6112b..8f550ec35 100644 --- a/esphomeyaml/components/sensor/ultrasonic.rst +++ b/esphomeyaml/components/sensor/ultrasonic.rst @@ -37,7 +37,7 @@ set too high. name: "Ultrasonic Sensor" Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **trigger_pin** (**Required**, :ref:`Pin Schema `): The output pin to periodically send the trigger pulse to. @@ -55,7 +55,7 @@ Configuration variables: - All other options from :ref:`Sensor ` and :ref:`MQTT Component `. Ultrasonic Timeouts -~~~~~~~~~~~~~~~~~~~ +------------------- The ultrasonic sensor works by sending a small ultrasonic pulse out and then waiting until the pulse arrives back. However, there are cases where no such signal arrives back. This is most commonly caused @@ -77,7 +77,7 @@ To remove ``NAN`` values from the sensor stream, use the ``filter_nan`` :ref:`se See Also -^^^^^^^^ +-------- - :ref:`sensor-filters` - :doc:`template` diff --git a/esphomeyaml/components/sensor/uptime.rst b/esphomeyaml/components/sensor/uptime.rst index 937b85843..0ab0515db 100644 --- a/esphomeyaml/components/sensor/uptime.rst +++ b/esphomeyaml/components/sensor/uptime.rst @@ -18,3 +18,10 @@ Configuration variables: See :ref:`sensor-default_filter`. - **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas. - All other options from :ref:`Sensor ` and :ref:`MQTT Component `. + +See Also +-------- + +- :ref:`sensor-filters` +- :doc:`API Reference ` +- `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/xiaomi_miflora.rst b/esphomeyaml/components/sensor/xiaomi_miflora.rst index aaba7a64f..e49391c91 100644 --- a/esphomeyaml/components/sensor/xiaomi_miflora.rst +++ b/esphomeyaml/components/sensor/xiaomi_miflora.rst @@ -31,7 +31,7 @@ sends out a BLE broadcast. name: "Xiaomi MiFlora Battery Level" Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **mac_address** (**Required**, MAC Address): The MAC address of the Xiaomi MiFlora device. - **temperature** (*Optional*): The information for the temperature sensor. @@ -66,7 +66,7 @@ Configuration variables: Setting Up Devices -~~~~~~~~~~~~~~~~~~ +------------------ To set up Xiaomi MiFlora devices you first need to find their MAC Address so that esphomelib can identify them. So first, create a simple configuration without any ``xiaomi_miflora`` entries like so: @@ -89,10 +89,11 @@ in the configuration example at the top. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/esp32_ble_tracker` - :doc:`/esphomeyaml/components/sensor/xiaomi_mijia` - :doc:`/esphomeyaml/components/sensor/index` - :doc:`API Reference ` +- `OpenMQTTGateway `__ by `@1technophile `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/sensor/xiaomi_mijia.rst b/esphomeyaml/components/sensor/xiaomi_mijia.rst index e1dfa3491..dcfc59f8b 100644 --- a/esphomeyaml/components/sensor/xiaomi_mijia.rst +++ b/esphomeyaml/components/sensor/xiaomi_mijia.rst @@ -32,7 +32,7 @@ sends out a BLE broadcast. name: "Xiaomi MiJia Battery Level" Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **mac_address** (**Required**, MAC Address): The MAC address of the Xiaomi MiJia device. - **temperature** (**Required**): The information for the temperature sensor. @@ -55,7 +55,7 @@ Configuration variables: Setting Up Devices -~~~~~~~~~~~~~~~~~~ +------------------ To set up Xiaomi MiJia devices you first need to find their MAC Address so that esphomelib can identify them. So first, create a simple configuration without any ``xiaomi_mijia`` entries like so: @@ -79,10 +79,12 @@ in the configuration example at the top. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/esp32_ble_tracker` - :doc:`/esphomeyaml/components/sensor/xiaomi_miflora` - :doc:`/esphomeyaml/components/sensor/index` - :doc:`API Reference ` +- `Xiaomi Mijia BLE protocl `__ by `@mspider65 `__ +- `OpenMQTTGateway `__ by `@1technophile `__ - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/spi.rst b/esphomeyaml/components/spi.rst index e3f5f9b93..0deead6de 100644 --- a/esphomeyaml/components/spi.rst +++ b/esphomeyaml/components/spi.rst @@ -30,7 +30,7 @@ rarely be necessary, as the SPI bus can be shared by the devices). miso_pin: GPIO23 Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **clk_pin** (**Required**, :ref:`Pin Schema `): The pin used for the clock line of the SPI bus. - **mosi_pin** (*Optional*, :ref:`Pin Schema `): The pin used for the mosi line of the SPI bus. diff --git a/esphomeyaml/components/switch/gpio.rst b/esphomeyaml/components/switch/gpio.rst index a52d70a99..73a1e8d3e 100644 --- a/esphomeyaml/components/switch/gpio.rst +++ b/esphomeyaml/components/switch/gpio.rst @@ -18,7 +18,7 @@ through this platform. name: "Living Room Dehumidifier" Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **pin** (**Required**, :ref:`Pin Schema `): The GPIO pin to use for the switch. @@ -42,7 +42,7 @@ Configuration variables: name: "Living Room Dehumidifier" See Also -^^^^^^^^ +-------- - :doc:`index` - :doc:`/esphomeyaml/components/output/gpio` diff --git a/esphomeyaml/components/switch/index.rst b/esphomeyaml/components/switch/index.rst index bcb59880d..518a6695f 100644 --- a/esphomeyaml/components/switch/index.rst +++ b/esphomeyaml/components/switch/index.rst @@ -29,7 +29,7 @@ Configuration variables: .. _switch-toggle_action: ``switch.toggle`` Action -^^^^^^^^^^^^^^^^^^^^^^^^ +************************ This action toggles a switch with the given ID when executed. @@ -43,7 +43,7 @@ This action toggles a switch with the given ID when executed. .. _switch-turn_on_action: ``switch.turn_on`` Action -^^^^^^^^^^^^^^^^^^^^^^^^^ +************************* This action turns a switch with the given ID on when executed. @@ -57,7 +57,7 @@ This action turns a switch with the given ID on when executed. .. _switch-turn_off_action: ``switch.turn_off`` Action -^^^^^^^^^^^^^^^^^^^^^^^^^^ +************************** This action turns a switch with the given ID off when executed. @@ -69,7 +69,7 @@ This action turns a switch with the given ID off when executed. id: relay_1 lambda calls -"""""""""""" +************ From :ref:`lambdas `, you can call several methods on all covers to do some advanced stuff (see the full :doc:`API Reference ` for more info). @@ -106,7 +106,7 @@ advanced stuff (see the full :doc:`API Reference ` for more in id(my_switch).write_state(!id(my_switch).state); See Also -^^^^^^^^ +-------- - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/switch/output.rst b/esphomeyaml/components/switch/output.rst index 9aec6115d..5fb059ff4 100644 --- a/esphomeyaml/components/switch/output.rst +++ b/esphomeyaml/components/switch/output.rst @@ -22,7 +22,7 @@ The ``output`` switch platform allows you to use any output component as a switc output: 'generic_out' Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **output** (**Required**, :ref:`config-id`): The ID of the output component to use. - **name** (**Required**, string): The name for the switch. @@ -30,7 +30,7 @@ Configuration variables: - All other options from :ref:`Switch ` and :ref:`MQTT Component `. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/output/index` - :doc:`API Reference ` diff --git a/esphomeyaml/components/switch/remote_transmitter.rst b/esphomeyaml/components/switch/remote_transmitter.rst index b9c94bc4c..c81427004 100644 --- a/esphomeyaml/components/switch/remote_transmitter.rst +++ b/esphomeyaml/components/switch/remote_transmitter.rst @@ -28,7 +28,7 @@ Use cases include, but are not limited to, infrared remotes, 433MHz signals and repeat: 25 Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **name** (**Required**, string): The name for the switch. - The remote code, see :ref:`remote_transmitter-codes`. Only one @@ -43,10 +43,27 @@ Configuration variables: - **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. - All other options from :ref:`Switch ` and :ref:`MQTT Component `. +.. note:: + + For the Sonoff RF Bridge you can use `this 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. + .. _remote_transmitter-codes: Remote Codes -~~~~~~~~~~~~ +------------ Supported remote codes: @@ -164,7 +181,7 @@ Configuration variables: .. _finding_remote_codes: Finding Remote Codes -~~~~~~~~~~~~~~~~~~~~ +-------------------- Each remote transmitter uses a different protocol to send its information. So to replicate an infrared or 433MHz remote you will first need to "learn" these codes. You will first need to hook up a receiver and sniff the codes @@ -185,7 +202,7 @@ And then activate the remote control you want to have in esphomelib. you will se Example log output for a 433MHz proprietary remote control. Raw Remote Codes ----------------- +**************** If esphomelib has a decoder set up for the code, it will spit out the decoded code in the logs. In this case, it's a proprietary protocol which would be difficult to reverse engineer. Fortunately, we can just @@ -221,7 +238,7 @@ Note that you don't need to include the leading ``32519`` here, as it denotes a a transmission. RCSwitch Remote Codes ---------------------- +********************* Starting with version 1.8.0 esphomelib can also recognize a bunch of 433MHz RF codes directly using `RCSwitch's `__ remote protocol. If you have RF code dumping enabled for the receiver, you will then see log outputs like this one: @@ -324,10 +341,12 @@ Configuration options for the custom variant: See Also -~~~~~~~~ +-------- - :doc:`index` - :doc:`/esphomeyaml/components/remote_transmitter` - :doc:`/esphomeyaml/components/remote_receiver` +- `RCSwitch `__ by `Suat Özgür `__ +- `IRRemoteESP8266 `__ by `Mark Szabo-Simon `__ - :doc:`API Reference ` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/components/switch/restart.rst b/esphomeyaml/components/switch/restart.rst index 6581d7341..ec0f4edea 100644 --- a/esphomeyaml/components/switch/restart.rst +++ b/esphomeyaml/components/switch/restart.rst @@ -16,14 +16,14 @@ through Home Assistant. name: "Living Room Restart" Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **name** (**Required**, string): The name for the switch. - **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. - All other options from :ref:`Switch ` and :ref:`MQTT Component `. See Also -^^^^^^^^ +-------- - :doc:`shutdown` - :doc:`template` diff --git a/esphomeyaml/components/switch/shutdown.rst b/esphomeyaml/components/switch/shutdown.rst index 43cd00b98..3c70a1dfd 100644 --- a/esphomeyaml/components/switch/shutdown.rst +++ b/esphomeyaml/components/switch/shutdown.rst @@ -18,14 +18,14 @@ pressing the reset button or restarting the power supply. name: "Living Room Shutdown" Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **name** (**Required**, string): The name for the switch. - **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. - All other options from :ref:`Switch ` and :ref:`MQTT Component `. See Also -^^^^^^^^ +-------- - :doc:`restart` - :doc:`template` diff --git a/esphomeyaml/components/switch/template.rst b/esphomeyaml/components/switch/template.rst index 1de5bd443..893682f59 100644 --- a/esphomeyaml/components/switch/template.rst +++ b/esphomeyaml/components/switch/template.rst @@ -33,7 +33,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 switch. - **lambda** (*Optional*, :ref:`lambda `): @@ -55,7 +55,7 @@ Configuration variables: the turn on/off actions for you. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/guides/automations` - :doc:`/esphomeyaml/components/switch/index` diff --git a/esphomeyaml/components/switch/uart.rst b/esphomeyaml/components/switch/uart.rst index 26e4c7096..9242bfbe0 100644 --- a/esphomeyaml/components/switch/uart.rst +++ b/esphomeyaml/components/switch/uart.rst @@ -20,7 +20,7 @@ The ``uart`` switch platform allows you to send a pre-defined sequence of bytes data: [0xDE, 0xAD, 0xBE, 0xEF] Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **data** (**Required**, string or list of bytes): The data to send via UART. Either an ASCII string or a list of bytes. @@ -30,7 +30,7 @@ Configuration variables: - All other options from :ref:`Switch ` and :ref:`MQTT Component `. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/uart` - :doc:`API Reference ` diff --git a/esphomeyaml/components/uart.rst b/esphomeyaml/components/uart.rst index 2479c8c2e..b40a39956 100644 --- a/esphomeyaml/components/uart.rst +++ b/esphomeyaml/components/uart.rst @@ -37,7 +37,7 @@ In some cases only **TX** or **RX** exists as the device at the other end only a Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **baud_rate** (**Required**, int): The baud rate of the UART bus. - **tx_pin** (*Optional*, :ref:`config-pin`): The pin to send data to from the ESP's perspective. diff --git a/esphomeyaml/components/web_server.rst b/esphomeyaml/components/web_server.rst index 23fb2a02a..28a036ce0 100644 --- a/esphomeyaml/components/web_server.rst +++ b/esphomeyaml/components/web_server.rst @@ -26,7 +26,7 @@ interface are hosted by esphomelib.com. If you want to use your own service, use port: 80 Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **port** (*Optional*, int): The port the web server should open its socket on. - **css_url** (*Optional*, url): The URL that should be used for the CSS stylesheet. Defaults diff --git a/esphomeyaml/components/wifi.rst b/esphomeyaml/components/wifi.rst index edaf93b0a..2ea291a32 100644 --- a/esphomeyaml/components/wifi.rst +++ b/esphomeyaml/components/wifi.rst @@ -22,7 +22,7 @@ dramatically improve connection times. subnet: 255.255.255.0 Configuration variables: -~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------ - **ssid** (*Optional*, string): The name (or `service set identifier `__) @@ -59,7 +59,7 @@ Configuration variables: - **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. Access Point Mode -~~~~~~~~~~~~~~~~~ +----------------- Since version 1.3, esphomelib has an optional "Access Point Mode". If you include ``ap:`` in your wifi configuration, esphomelib will automatically set up an access point that you diff --git a/esphomeyaml/cookbook/bruh.rst b/esphomeyaml/cookbook/bruh.rst index 606e66b2c..6f832c5ab 100644 --- a/esphomeyaml/cookbook/bruh.rst +++ b/esphomeyaml/cookbook/bruh.rst @@ -74,7 +74,7 @@ configuration file 😀 See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/devices/nodemcu_esp8266` - :doc:`pir` diff --git a/esphomeyaml/cookbook/dual-r2-cover.rst b/esphomeyaml/cookbook/dual-r2-cover.rst index f19a30164..9bde694f4 100644 --- a/esphomeyaml/cookbook/dual-r2-cover.rst +++ b/esphomeyaml/cookbook/dual-r2-cover.rst @@ -113,7 +113,7 @@ Of the four main components (button sensor, 2 relays switches and the cover), on optimistic: true See Also -~~~~~~~~ +-------- - :doc:`/esphomeyaml/guides/automations` - :doc:`/esphomeyaml/components/cover/template` diff --git a/esphomeyaml/cookbook/garage-door.rst b/esphomeyaml/cookbook/garage-door.rst index a1d8d4ec1..5a2e4afff 100644 --- a/esphomeyaml/cookbook/garage-door.rst +++ b/esphomeyaml/cookbook/garage-door.rst @@ -47,7 +47,7 @@ for a short period of time, the close/open action begins. optimistic: true See Also -~~~~~~~~ +-------- - :doc:`/esphomeyaml/guides/automations` - :doc:`/esphomeyaml/components/cover/template` diff --git a/esphomeyaml/cookbook/pir.rst b/esphomeyaml/cookbook/pir.rst index 5d383cb40..9f0aec716 100644 --- a/esphomeyaml/cookbook/pir.rst +++ b/esphomeyaml/cookbook/pir.rst @@ -53,7 +53,7 @@ set a ``device_class`` so that Home Assistant uses a nice icon for the binary se :width: 60.0% See Also -^^^^^^^^ +-------- - `Awesome article explaining how PIR Sensors work `__. - :doc:`/esphomeyaml/components/binary_sensor/gpio` diff --git a/esphomeyaml/cookbook/relay.rst b/esphomeyaml/cookbook/relay.rst index 6ddb28b70..46736e412 100644 --- a/esphomeyaml/cookbook/relay.rst +++ b/esphomeyaml/cookbook/relay.rst @@ -35,7 +35,7 @@ To use a relay with esphomelib, use a :doc:`GPIO Switch See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/switch/gpio` - :doc:`/esphomeyaml/components/output/gpio` diff --git a/esphomeyaml/cookbook/temt6000.rst b/esphomeyaml/cookbook/temt6000.rst index 18f52694e..48f1f5aa8 100644 --- a/esphomeyaml/cookbook/temt6000.rst +++ b/esphomeyaml/cookbook/temt6000.rst @@ -35,7 +35,7 @@ and convert those voltage measurements to illuminance values in lux using a form to ``3.3V`` Formula Explanation: -^^^^^^^^^^^^^^^^^^^^ +-------------------- To get the illuminance in lux, we first need to convert the measured voltage to the current flowing across the TEMT6000 sensor. This current is also equal to the current @@ -60,7 +60,7 @@ correlates to 1 lx in the illuminance. to divide the analog voltage by a constant value. See Also -^^^^^^^^ +-------- - :doc:`/esphomeyaml/components/sensor/adc` - `TEMT6000 datasheet `__ diff --git a/esphomeyaml/devices/esp32.rst b/esphomeyaml/devices/esp32.rst index c7b8d4dbe..02f67d1ea 100644 --- a/esphomeyaml/devices/esp32.rst +++ b/esphomeyaml/devices/esp32.rst @@ -43,7 +43,7 @@ Some notes about the pins on the ESP32: pin: GPIO23 See Also -^^^^^^^^ +-------- - :doc:`nodemcu_esp32` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/devices/esp8266.rst b/esphomeyaml/devices/esp8266.rst index 18455b57d..c9c6a7d06 100644 --- a/esphomeyaml/devices/esp8266.rst +++ b/esphomeyaml/devices/esp8266.rst @@ -43,7 +43,7 @@ Some notes on the pins: pin: GPIO17 See Also -^^^^^^^^ +-------- - :doc:`nodemcu_esp8266` - `Edit this page on GitHub `__ diff --git a/esphomeyaml/devices/nodemcu_esp32.rst b/esphomeyaml/devices/nodemcu_esp32.rst index dee0d1b42..27e135829 100644 --- a/esphomeyaml/devices/nodemcu_esp32.rst +++ b/esphomeyaml/devices/nodemcu_esp32.rst @@ -53,7 +53,7 @@ Note that in certain conditions you *can* use the pins marked as ``INTERNAL`` in pin: GPIO23 See Also -~~~~~~~~ +-------- - :doc:`esp32` - :doc:`nodemcu_esp8266` diff --git a/esphomeyaml/devices/nodemcu_esp8266.rst b/esphomeyaml/devices/nodemcu_esp8266.rst index 437e37013..027d456ba 100644 --- a/esphomeyaml/devices/nodemcu_esp8266.rst +++ b/esphomeyaml/devices/nodemcu_esp8266.rst @@ -64,7 +64,7 @@ Note that in certain conditions you *can* use the pins marked as ``INTERNAL`` in pin: D0 See Also -^^^^^^^^ +-------- - :doc:`esp8266` - :doc:`nodemcu_esp32` diff --git a/esphomeyaml/devices/sonoff.rst b/esphomeyaml/devices/sonoff.rst index ef8ef191b..15aa21a76 100644 --- a/esphomeyaml/devices/sonoff.rst +++ b/esphomeyaml/devices/sonoff.rst @@ -22,7 +22,7 @@ This list has been compiled from the Sonoff Tasmota pin source file which can be https://github.com/arendst/Sonoff-Tasmota/blob/development/sonoff/sonoff_template.h ❤️ Sonoff RF -^^^^^^^^^ +--------- .. table:: :class: no-center @@ -45,7 +45,7 @@ Sonoff RF Sonoff SV -^^^^^^^^^ +--------- .. table:: :class: no-center @@ -72,7 +72,7 @@ Sonoff SV Sonoff TH -^^^^^^^^^ +--------- .. table:: :class: no-center @@ -95,7 +95,7 @@ Sonoff TH Slampher -^^^^^^^^ +-------- .. table:: :class: no-center @@ -114,7 +114,7 @@ Slampher Sonoff Touch -^^^^^^^^^^^^ +------------ .. table:: :class: no-center @@ -133,7 +133,7 @@ Sonoff Touch Sonoff LED -^^^^^^^^^^ +---------- .. table:: :class: no-center @@ -156,7 +156,7 @@ Sonoff LED Sonoff T1, Sonoff T2, Sonoff T3 -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +------------------------------- .. table:: :class: no-center @@ -185,7 +185,7 @@ Sonoff T1, Sonoff T2, Sonoff T3 Arilux LC01 -^^^^^^^^^^^ +----------- .. table:: :class: no-center @@ -210,7 +210,7 @@ Arilux LC01 Arilux LC11 -^^^^^^^^^^^ +----------- .. table:: :class: no-center @@ -239,7 +239,7 @@ Arilux LC11 Arilux LC06 -^^^^^^^^^^^ +----------- .. table:: :class: no-center @@ -262,7 +262,7 @@ Arilux LC06 Sonoff Dual R2 -^^^^^^^^^^^^^^ +-------------- .. table:: :class: no-center @@ -287,7 +287,7 @@ Sonoff Dual R2 Sonoff S31 -^^^^^^^^^^ +---------- .. table:: :class: no-center @@ -307,7 +307,7 @@ Sonoff S31 ================================================== ================================================== See Also -^^^^^^^^ +-------- - :doc:`sonoff_s20` - :doc:`sonoff_4ch` diff --git a/esphomeyaml/devices/sonoff_4ch.rst b/esphomeyaml/devices/sonoff_4ch.rst index b52608565..6e92cae0f 100644 --- a/esphomeyaml/devices/sonoff_4ch.rst +++ b/esphomeyaml/devices/sonoff_4ch.rst @@ -50,7 +50,7 @@ Have everything? Great! Then you can start. Step 1: Opening up the Sonoff 4CH -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +--------------------------------- The first step is to open up the Sonoff 4CH. Note that you do not have to run the original firmware supplied with the Sonoff 4CH before doing this step. @@ -80,7 +80,7 @@ The chip we're interested in here is the "big" one encased in an aluminium cover firmware. Step 2: Connecting UART -~~~~~~~~~~~~~~~~~~~~~~~ +----------------------- Now we need our computer to somehow establish a data connection to the board. For this we will have to connect the four wires on the UART to USB bridge to the UART pins of the Sonoff 4Ch. @@ -110,7 +110,7 @@ When you're done, it should look something like this: .. _sonoff_4ch-creating_firmware: Step 3: Creating Firmware -~~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------- The Sonoff 4CH is based on the ``ESP8266`` platform (technically it's the ``ESP8285``, but for our purposes they're the same) and is a subtype of the ``esp01_1m`` board. @@ -154,7 +154,7 @@ pre-compile the firmware. uploading, you can also try uploading this file directly with other tools. Step 4: Uploading Firmware -~~~~~~~~~~~~~~~~~~~~~~~~~~ +-------------------------- In order to upload the firmware, you're first going to need to get the chip into a flash mode, otherwise the device will start up without accepting any firmware flash attempts. To do this, while the device is UART @@ -191,7 +191,7 @@ If above step does, however, not work, here are some steps that can help: the two pins and put it into flash mode again. Step 5: Adding the Button, Relay and LEDs -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +----------------------------------------- Now we would like the 4CH to actually do something, not just connect to WiFi and pretty much sit idle. @@ -320,7 +320,7 @@ of course have to add them to groups if you have a ``default_view`` set): :width: 75.0% Step 6: Finishing Up -~~~~~~~~~~~~~~~~~~~~ +-------------------- If you're sure everything is done with the 4CH and have double checked there's nothing that could cause a short in the case, you can put the front cover with the button on the base again and screw everything together. @@ -331,7 +331,7 @@ connect it. Happy hacking! See Also -~~~~~~~~ +---------- - :doc:`sonoff` - :doc:`sonoff_s20` diff --git a/esphomeyaml/devices/sonoff_basic.rst b/esphomeyaml/devices/sonoff_basic.rst index 6fe1fad33..3e40d7283 100644 --- a/esphomeyaml/devices/sonoff_basic.rst +++ b/esphomeyaml/devices/sonoff_basic.rst @@ -22,7 +22,7 @@ pretty similar. web interface. Sample configuration -~~~~~~~~~~~~~~~~~~~~ +-------------------- The Sonoff Basic is based on the ``ESP8266`` platform and is a subtype of the ``esp01_1m`` board. With this information, you can also step through the esphomeyaml wizard (``esphomeyaml sonoff_basic.yaml wizard``) @@ -121,7 +121,7 @@ Or run the upload command if your device is connected to the serial interface: esphomeyaml sonoff_basic.yaml run See Also -~~~~~~~~ +---------- - :doc:`sonoff` - :doc:`sonoff_4ch` diff --git a/esphomeyaml/devices/sonoff_s20.rst b/esphomeyaml/devices/sonoff_s20.rst index c5bcaf106..a552e9061 100644 --- a/esphomeyaml/devices/sonoff_s20.rst +++ b/esphomeyaml/devices/sonoff_s20.rst @@ -50,7 +50,7 @@ Have everything? Great! Then you can start. Step 1: Opening up the Sonoff S20 -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +--------------------------------- The first step is to open up the Sonoff S20. Note that you do not have to run the original firmware supplied with the Sonoff S20 before doing this step. @@ -76,7 +76,7 @@ After that, you should be able to remove the front cover and should be greeted b :width: 75.0% Step 2: Connecting UART -~~~~~~~~~~~~~~~~~~~~~~~ +----------------------- We're interested in the main part of the S20 with the green PCB. On the bottom of the PCB, you will find four unpopulated holes. These pins have the UART interface used to flash firmwares onto the device @@ -112,7 +112,7 @@ It's best to just use a multimeter and double check if it's unclear. .. _sonoff_s20-creating-firmware: Step 3: Creating Firmware -~~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------- The Sonoff S20 is based on the ``ESP8266`` platform and is a subtype of the ``esp01_1m`` board. With this information, you can step through the esphomeyaml wizard (``esphomeyaml sonoff_s20.yaml wizard``), @@ -155,7 +155,7 @@ pre-compile the firmware. uploading, you can also try uploading this file directly with other tools. Step 4: Uploading Firmware -~~~~~~~~~~~~~~~~~~~~~~~~~~ +-------------------------- In order to upload the firmware, you're first going to need to get the chip into a flash mode, otherwise the device will start up without accepting any firmware flash attempts. To do this, while the device is UART @@ -187,7 +187,7 @@ If above step does, however, not work, here are some steps that can help: the two pins and put it into flash mode again. Step 5: Adding the Button, Relay and LEDs -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +----------------------------------------- Now we would like the S20 to actually do something, not just connect to WiFi and pretty much sit idle. @@ -308,7 +308,7 @@ of course have to add them to groups if you have a ``default_view`` set): :width: 75.0% Step 6: Finishing Up -~~~~~~~~~~~~~~~~~~~~ +-------------------- Now you're pretty much done with setting up the Sonoff S20. The only steps left are to remove any cables within the housing and make sure everyhing in there is clean. If, for @@ -329,7 +329,7 @@ plug it into the socket. Happy hacking! See Also -~~~~~~~~ +-------- - :doc:`sonoff` - :doc:`sonoff_4ch` diff --git a/esphomeyaml/display.csv b/esphomeyaml/display.csv index 3535bdf72..aa5062fb2 100644 --- a/esphomeyaml/display.csv +++ b/esphomeyaml/display.csv @@ -2,6 +2,7 @@ Display Core, components/display/index, folder-open.svg GPIO LCD, components/display/lcd_gpio, lcd.jpg PCF8574 LCD, components/display/lcd_pcf8574, lcd.jpg MAX7219, components/display/max7219, max7219.jpg +Nextion, components/display/nextion, nextion.jpg SSD1306 I2C, components/display/ssd1306_i2c, ssd1306.jpg SSD1306 SPI, components/display/ssd1306_spi, ssd1306.jpg Waveshare E-Paper, components/display/waveshare_epaper, waveshare_epaper.jpg diff --git a/esphomeyaml/guides/changelog.rst b/esphomeyaml/guides/changelog.rst index 280790069..e7694e620 100644 --- a/esphomeyaml/guides/changelog.rst +++ b/esphomeyaml/guides/changelog.rst @@ -1,6 +1,129 @@ Changelog ========= +Version 1.8.0 +------------- + +================================================== ================================================== ================================================== +|SPI Bus|_ |UART Bus|_ |Time|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`SPI Bus`_ `UART Bus`_ `Time`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|Waveshare E-Paper|_ |Nextion|_ |SSD1306|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`Waveshare E-Paper`_ `Nextion`_ `SSD1306`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|MAX7219|_ |LCD Display|_ |Uptime Sensor|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`MAX7219`_ `LCD Display`_ `Uptime Sensor`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|RCSwitch Integration|_ |PN532|_ |RDM6300|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`RCSwitch Integration`_ `PN532`_ `RDM6300`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|BLE RSSI|_ |Xiaomi MiFlora|_ |Xiaomi MiJia|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`BLE RSSI`_ `Xiaomi MiFlora`_ `Xiaomi MiJia`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|HMC5883L|_ |HX711|_ |HLW8012|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`HMC5883L`_ `HX711`_ `HLW8012`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|BMP280|_ |INA219|_ |INA3221|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`BMP280`_ `INA219`_ `INA3221`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|MH-Z19|_ |MS5611|_ |TCS34725|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`MH-Z19`_ `MS5611`_ `TCS34725`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|RGBWW Light|_ |Cold+Warm White Light|_ |Light Effect|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`RGBWW Light`_ `Cold+Warm White Light`_ `Light Effect`_ +================================================== ================================================== ================================================== + +.. |SPI Bus| image:: /esphomeyaml/images/spi.svg + :class: component-image +.. _SPI Bus: /esphomeyaml/components/spi.html +.. |UART Bus| image:: /esphomeyaml/images/uart.svg + :class: component-image +.. _UART Bus: /esphomeyaml/components/uart.html +.. |Time| image:: /esphomeyaml/images/clock-outline.svg + :class: component-image +.. _Time: /esphomeyaml/components/time.html +.. |Waveshare E-Paper| image:: /esphomeyaml/images/waveshare_epaper.jpg + :class: component-image +.. _Waveshare E-Paper: /esphomeyaml/components/display/waveshare_epaper.html +.. |Nextion| image:: /esphomeyaml/images/nextion.jpg + :class: component-image +.. _Nextion: /esphomeyaml/components/display/nextion.html +.. |SSD1306| image:: /esphomeyaml/images/ssd1306.jpg + :class: component-image +.. _SSD1306: /esphomeyaml/components/display/ssd1306_i2c.html +.. |MAX7219| image:: /esphomeyaml/images/max7219.jpg + :class: component-image +.. _MAX7219: /esphomeyaml/components/display/max7219.html +.. |LCD Display| image:: /esphomeyaml/images/lcd.jpg + :class: component-image +.. _LCD Display: /esphomeyaml/components/display/lcd_gpio.html +.. |Uptime Sensor| image:: /esphomeyaml/images/timer.svg + :class: component-image +.. _Uptime Sensor: /esphomeyaml/components/sensor/uptime.html +.. |RCSwitch Integration| image:: /esphomeyaml/images/remote.svg + :class: component-image +.. _RCSwitch Integration: /esphomeyaml/components/remote_transmitter.html +.. |PN532| image:: /esphomeyaml/images/pn532.jpg + :class: component-image +.. _PN532: /esphomeyaml/components/pn532.html +.. |RDM6300| image:: /esphomeyaml/images/rdm6300.jpg + :class: component-image +.. _RDM6300: /esphomeyaml/components/rdm6300.html +.. |BLE RSSI| image:: /esphomeyaml/images/bluetooth.svg + :class: component-image +.. _BLE RSSI: /esphomeyaml/components/sensor/ble_rssi.html +.. |Xiaomi MiFlora| image:: /esphomeyaml/images/xiaomi_miflora.jpg + :class: component-image +.. _Xiaomi MiFlora: /esphomeyaml/components/sensor/xiaomi_miflora.html +.. |Xiaomi MiJia| image:: /esphomeyaml/images/xiaomi_mijia.jpg + :class: component-image +.. _Xiaomi MiJia: /esphomeyaml/components/sensor/xiaomi_mijia.html +.. |HMC5883L| image:: /esphomeyaml/images/hmc5883l.jpg + :class: component-image +.. _HMC5883L: /esphomeyaml/components/sensor/hmc5883l.html +.. |HX711| image:: /esphomeyaml/images/hx711.jpg + :class: component-image +.. _HX711: /esphomeyaml/components/sensor/hx711.html +.. |HLW8012| image:: /esphomeyaml/images/hlw8012.svg + :class: component-image +.. _HLW8012: /esphomeyaml/components/sensor/hlw8012.html +.. |BMP280| image:: /esphomeyaml/images/bmp280.jpg + :class: component-image +.. _BMP280: /esphomeyaml/components/sensor/bmp280.html +.. |INA219| image:: /esphomeyaml/images/ina219.jpg + :class: component-image +.. _INA219: /esphomeyaml/components/sensor/ina219.html +.. |INA3221| image:: /esphomeyaml/images/ina3221.jpg + :class: component-image +.. _INA3221: /esphomeyaml/components/sensor/ina3221.html +.. |MH-Z19| image:: /esphomeyaml/images/mhz19.jpg + :class: component-image +.. _MH-Z19: /esphomeyaml/components/sensor/mhz19.html +.. |MS5611| image:: /esphomeyaml/images/ms5611.jpg + :class: component-image +.. _MS5611: /esphomeyaml/components/sensor/ms5611.html +.. |TCS34725| image:: /esphomeyaml/images/tcs34725.jpg + :class: component-image +.. _TCS34725: /esphomeyaml/components/sensor/tcs34725.html +.. |RGBWW Light| image:: /esphomeyaml/images/rgbw.png + :class: component-image +.. _RGBWW Light: /esphomeyaml/components/light/rgbww.html +.. |Cold+Warm White Light| image:: /esphomeyaml/images/brightness-medium.svg + :class: component-image +.. _Cold+Warm White Light: /esphomeyaml/components/light/cwww.html +.. |Light Effect| image:: /esphomeyaml/images/creation.svg + :class: component-image +.. _Light Effect: /esphomeyaml/components/light/index.html + Version 1.7.0 ------------- diff --git a/esphomeyaml/guides/configuration-types.rst b/esphomeyaml/guides/configuration-types.rst index 3051522ba..1c5488133 100644 --- a/esphomeyaml/guides/configuration-types.rst +++ b/esphomeyaml/guides/configuration-types.rst @@ -133,6 +133,10 @@ There are several ways of doing this. See below examples to see how you can spec hours: 3 days: 0 + # for all 'update_interval' options, also + update_interval: never # never update + update_interval: 0ms # update in every loop() iteration + See Also ~~~~~~~~ diff --git a/esphomeyaml/guides/faq.rst b/esphomeyaml/guides/faq.rst index 0e213b643..6a1cc13e6 100644 --- a/esphomeyaml/guides/faq.rst +++ b/esphomeyaml/guides/faq.rst @@ -178,56 +178,21 @@ Devices that will (hopefully) be supported soon: Devices/Sensors that I've bought and will be supported at some point (ordered by priority): -- 433MHz Transmitter Component -- PN532 NFC Board -- INA219/INA3221 Current Sensor - GP2Y10 Dust Sensor -- TCS34725 RGB Light Sensor - APDS-9960 RGB Gesture Sensor - MCP2301 16-Channel I/O Expander -- MH-Z19 CO^2 Sensor -- HMC5883L Compass Sensor -- SPI E-Ink Display Module -- 8-Segment Display -- I^2C LCD Display (4 rows, 20 characters) -- I^2C/SPI SSD1306 OLED Display -- Nextion TFT LCD Display - MLX90614 Infrared Thermometer -- MS5611 Pressure Sensor - PCF8591 ADC - OV2640 Camera - L298N H-Bridge Motor Driver - A4988 Stepper Motor Driver -- MQ-2 Gas Sensor Other features that I'm working on: -- ESP32 IR/433MHz Receiver -- Pulse Counter for the ESP8266 (using interrupts) - Multiple WiFi Networks to connect to -- Improve "Restart due to WiFi/MQTT disconnect" logic and make the timeouts more configurable - Color Temperature for Lights -- Status LED -- More FastLED effects -- Support for displays (like LCD/OLED/E-Ink displays) - Cameras (probably through ArduCAM) - -Devices which are supported, but not tested yet. I'm still waiting for these to arrive from China: - -- ADS1115 Voltage Sensor -- TSL2561 Brightness Sensor -- HDC1080 Temperature+Humidity Sensor -- SHT31-D Temperature+Humidity Sensor -- BME280 -- BME680 - -Devices that are technically already supported, but for which guides will be created soon-ish: - -- Sonoff Basic -- Sonoff Basic RF -- Soil Moisture Sensor - Anything missing? I'd be happy to chat about more integrations over on the `discord channel `__ - no guarantees that everything will be supported though! diff --git a/esphomeyaml/images/creation.svg b/esphomeyaml/images/creation.svg new file mode 100644 index 000000000..329ce48e6 --- /dev/null +++ b/esphomeyaml/images/creation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/esphomeyaml/images/hdc1080.jpg b/esphomeyaml/images/hdc1080.jpg new file mode 100644 index 000000000..a793da228 Binary files /dev/null and b/esphomeyaml/images/hdc1080.jpg differ diff --git a/esphomeyaml/images/hlw8012.svg b/esphomeyaml/images/hlw8012.svg new file mode 100644 index 000000000..e9fe5469c --- /dev/null +++ b/esphomeyaml/images/hlw8012.svg @@ -0,0 +1,36 @@ + +image/svg+xmlHLW8012 + \ No newline at end of file diff --git a/esphomeyaml/images/hmc5883l.jpg b/esphomeyaml/images/hmc5883l.jpg new file mode 100644 index 000000000..643914984 Binary files /dev/null and b/esphomeyaml/images/hmc5883l.jpg differ diff --git a/esphomeyaml/images/nextion.jpg b/esphomeyaml/images/nextion.jpg new file mode 100644 index 000000000..500eb0ac3 Binary files /dev/null and b/esphomeyaml/images/nextion.jpg differ diff --git a/esphomeyaml/index.rst b/esphomeyaml/index.rst index 8b8753c04..db37d051b 100644 --- a/esphomeyaml/index.rst +++ b/esphomeyaml/index.rst @@ -212,33 +212,37 @@ Sensor Components -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- `Duty Cycle`_ `ESP32 Hall Sensor`_ `HDC1080`_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -|HX711|_ |INA219|_ |INA3221|_ +|HLW8012|_ |HMC5883L|_ |HX711|_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -`HX711`_ `INA219`_ `INA3221`_ +`HLW8012`_ `HMC5883L`_ `HX711`_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -|HTU21D|_ |MAX6675|_ |MH-Z19|_ +|INA219|_ |INA3221|_ |HTU21D|_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -`HTU21D`_ `MAX6675`_ `MH-Z19`_ +`INA219`_ `INA3221`_ `HTU21D`_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -|MPU6050|_ |MS5611|_ |Pulse Counter|_ +|MAX6675|_ |MH-Z19|_ |MPU6050|_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -`MPU6050`_ `MS5611`_ `Pulse Counter`_ +`MAX6675`_ `MH-Z19`_ `MPU6050`_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -|Rotary Encoder|_ |SHT3X-D|_ |TCS34725|_ +|MS5611|_ |Pulse Counter|_ |Rotary Encoder|_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -`Rotary Encoder`_ `SHT3X-D`_ `TCS34725`_ +`MS5611`_ `Pulse Counter`_ `Rotary Encoder`_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -|Template Sensor|_ |TSL2561|_ |Ultrasonic Sensor|_ +|SHT3X-D|_ |TCS34725|_ |Template Sensor|_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -`Template Sensor`_ `TSL2561`_ `Ultrasonic Sensor`_ +`SHT3X-D`_ `TCS34725`_ `Template Sensor`_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -|Uptime Sensor|_ |WiFi Signal Strength|_ |Xiaomi MiFlora|_ +|TSL2561|_ |Ultrasonic Sensor|_ |Uptime Sensor|_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -`Uptime Sensor`_ `WiFi Signal Strength`_ `Xiaomi MiFlora`_ +`TSL2561`_ `Ultrasonic Sensor`_ `Uptime Sensor`_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -|Xiaomi MiJia|_ |Custom Sensor|_ +|WiFi Signal Strength|_ |Xiaomi MiFlora|_ |Xiaomi MiJia|_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -`Xiaomi MiJia`_ `Custom Sensor`_ +`WiFi Signal Strength`_ `Xiaomi MiFlora`_ `Xiaomi MiJia`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|Custom Sensor|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`Custom Sensor`_ ================================================== ================================================== ================================================== .. |Sensor Core| image:: /esphomeyaml/images/folder-open.svg @@ -286,6 +290,12 @@ Sensor Components .. |HDC1080| image:: /esphomeyaml/images/hdc1080.jpg :class: component-image .. _HDC1080: /esphomeyaml/components/sensor/hdc1080.html +.. |HLW8012| image:: /esphomeyaml/images/hlw8012.svg + :class: component-image +.. _HLW8012: /esphomeyaml/components/sensor/hlw8012.html +.. |HMC5883L| image:: /esphomeyaml/images/hmc5883l.jpg + :class: component-image +.. _HMC5883L: /esphomeyaml/components/sensor/hmc5883l.html .. |HX711| image:: /esphomeyaml/images/hx711.jpg :class: component-image .. _HX711: /esphomeyaml/components/sensor/hx711.html @@ -360,13 +370,17 @@ Binary Sensor Components -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- `Binary Sensor Core`_ `GPIO`_ `Status`_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -|ESP32 BLE Device|_ |ESP32 Touch Pad|_ |Template Binary Sensor|_ +|ESP32 BLE Device|_ |ESP32 Touch Pad|_ |Nextion Touch|_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -`ESP32 BLE Device`_ `ESP32 Touch Pad`_ `Template Binary Sensor`_ +`ESP32 BLE Device`_ `ESP32 Touch Pad`_ `Nextion Touch`_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -|Remote Receiver|_ |PN532 Tag|_ |RDM6300 Tag|_ +|Template Binary Sensor|_ |Remote Receiver|_ |PN532 Tag|_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -`Remote Receiver`_ `PN532 Tag`_ `RDM6300 Tag`_ +`Template Binary Sensor`_ `Remote Receiver`_ `PN532 Tag`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|RDM6300 Tag|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`RDM6300 Tag`_ ================================================== ================================================== ================================================== .. |Binary Sensor Core| image:: /esphomeyaml/images/folder-open.svg @@ -384,6 +398,9 @@ Binary Sensor Components .. |ESP32 Touch Pad| image:: /esphomeyaml/images/touch.svg :class: component-image .. _ESP32 Touch Pad: /esphomeyaml/components/binary_sensor/esp32_touch.html +.. |Nextion Touch| image:: /esphomeyaml/images/nextion.jpg + :class: component-image +.. _Nextion Touch: /esphomeyaml/components/binary_sensor/nextion.html .. |Template Binary Sensor| image:: /esphomeyaml/images/description.svg :class: component-image .. _Template Binary Sensor: /esphomeyaml/components/binary_sensor/template.html @@ -431,19 +448,19 @@ Output Components Light Components ---------------- -============================== ============================== ============================== -|Light Core|_ |Binary Light|_ |Monochromatic Light|_ ------------------------------- ------------------------------ ------------------------------ -`Light Core`_ `Binary Light`_ `Monochromatic Light`_ ------------------------------- ------------------------------ ------------------------------ -|RGB Light|_ |RGBW Light|_ |FastLED Clockless Light|_ ------------------------------- ------------------------------ ------------------------------ -`RGB Light`_ `RGBW Light`_ `FastLED Clockless Light`_ ------------------------------- ------------------------------ ------------------------------ -|FastLED SPI Light|_ ------------------------------- ------------------------------ ------------------------------ -`FastLED SPI Light`_ -============================== ============================== ============================== +================================================== ================================================== ================================================== +|Light Core|_ |Binary Light|_ |Monochromatic Light|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`Light Core`_ `Binary Light`_ `Monochromatic Light`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|Cold+Warm White Light|_ |RGB Light|_ |RGBW Light|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`Cold+Warm White Light`_ `RGB Light`_ `RGBW Light`_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +|RGBWW Light|_ |FastLED Clockless Light|_ |FastLED SPI Light|_ +-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- +`RGBWW Light`_ `FastLED Clockless Light`_ `FastLED SPI Light`_ +================================================== ================================================== ================================================== .. |Light Core| image:: /esphomeyaml/images/folder-open.svg :class: component-image @@ -454,12 +471,18 @@ Light Components .. |Monochromatic Light| image:: /esphomeyaml/images/brightness-medium.svg :class: component-image .. _Monochromatic Light: /esphomeyaml/components/light/monochromatic.html +.. |Cold+Warm White Light| image:: /esphomeyaml/images/brightness-medium.svg + :class: component-image +.. _Cold+Warm White Light: /esphomeyaml/components/light/cwww.html .. |RGB Light| image:: /esphomeyaml/images/rgb.png :class: component-image .. _RGB Light: /esphomeyaml/components/light/rgb.html .. |RGBW Light| image:: /esphomeyaml/images/rgbw.png :class: component-image .. _RGBW Light: /esphomeyaml/components/light/rgbw.html +.. |RGBWW Light| image:: /esphomeyaml/images/rgbw.png + :class: component-image +.. _RGBWW Light: /esphomeyaml/components/light/rgbww.html .. |FastLED Clockless Light| image:: /esphomeyaml/images/color_lens.svg :class: component-image .. _FastLED Clockless Light: /esphomeyaml/components/light/fastled_clockless.html @@ -542,13 +565,13 @@ Display Components -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- `Display Core`_ `GPIO LCD`_ `PCF8574 LCD`_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -|MAX7219|_ |SSD1306 I2C|_ |SSD1306 SPI|_ +|MAX7219|_ |Nextion|_ |SSD1306 I2C|_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -`MAX7219`_ `SSD1306 I2C`_ `SSD1306 SPI`_ +`MAX7219`_ `Nextion`_ `SSD1306 I2C`_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -|Waveshare E-Paper|_ +|SSD1306 SPI|_ |Waveshare E-Paper|_ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -`Waveshare E-Paper`_ +`SSD1306 SPI`_ `Waveshare E-Paper`_ ================================================== ================================================== ================================================== .. |Display Core| image:: /esphomeyaml/images/folder-open.svg @@ -563,6 +586,9 @@ Display Components .. |MAX7219| image:: /esphomeyaml/images/max7219.jpg :class: component-image .. _MAX7219: /esphomeyaml/components/display/max7219.html +.. |Nextion| image:: /esphomeyaml/images/nextion.jpg + :class: component-image +.. _Nextion: /esphomeyaml/components/display/nextion.html .. |SSD1306 I2C| image:: /esphomeyaml/images/ssd1306.jpg :class: component-image .. _SSD1306 I2C: /esphomeyaml/components/display/ssd1306_i2c.html diff --git a/esphomeyaml/light.csv b/esphomeyaml/light.csv index 8cab11be4..2bd93f9ad 100644 --- a/esphomeyaml/light.csv +++ b/esphomeyaml/light.csv @@ -1,7 +1,9 @@ Light Core, components/light/index, folder-open.svg Binary Light, components/light/binary, lightbulb.svg Monochromatic Light, components/light/monochromatic, brightness-medium.svg +Cold+Warm White Light, components/light/cwww, brightness-medium.svg RGB Light, components/light/rgb, rgb.png RGBW Light, components/light/rgbw, rgbw.png +RGBWW Light, components/light/rgbww, rgbw.png FastLED Clockless Light, components/light/fastled_clockless, color_lens.svg FastLED SPI Light, components/light/fastled_spi, color_lens.svg diff --git a/esphomeyaml/sensor.csv b/esphomeyaml/sensor.csv index 8e1708e08..07d51a4b6 100644 --- a/esphomeyaml/sensor.csv +++ b/esphomeyaml/sensor.csv @@ -13,6 +13,8 @@ DHT12, components/sensor/dht12, dht12.jpg Duty Cycle, components/sensor/duty_cycle, percent.svg ESP32 Hall Sensor, components/sensor/esp32_hall, magnet.svg HDC1080, components/sensor/hdc1080, hdc1080.jpg +HLW8012, components/sensor/hlw8012, hlw8012.svg +HMC5883L, components/sensor/hmc5883l, hmc5883l.jpg HX711, components/sensor/hx711, hx711.jpg INA219, components/sensor/ina219, ina219.jpg INA3221, components/sensor/ina3221, ina3221.jpg diff --git a/esphomeyaml/v1.8.0.csv b/esphomeyaml/v1.8.0.csv new file mode 100644 index 000000000..5ca814ead --- /dev/null +++ b/esphomeyaml/v1.8.0.csv @@ -0,0 +1,36 @@ +SPI Bus, components/spi, spi.svg +UART Bus, components/uart, uart.svg +RTC Time, components/time, clock-outline.svg + +Waveshare E-Paper, components/display/waveshare_epaper, waveshare_epaper.jpg +Nextion, components/display/nextion, nextion.jpg +SSD1306, components/display/ssd1306_i2c, ssd1306.jpg + +MAX7219, components/display/max7219, max7219.jpg +LCD Display, components/display/lcd_gpio, lcd.jpg +Uptime Sensor, components/sensor/uptime, timer.svg + +RCSwitch Integration, components/remote_transmitter, remote.svg +PN532, components/pn532, pn532.jpg +RDM6300, components/rdm6300, rdm6300.jpg + +BLE RSSI, components/sensor/ble_rssi, bluetooth.svg +Xiaomi MiFlora, components/sensor/xiaomi_miflora, xiaomi_miflora.jpg +Xiaomi MiJia, components/sensor/xiaomi_mijia, xiaomi_mijia.jpg + + +HMC5883L, components/sensor/hmc5883l, hmc5883l.jpg +HX711, components/sensor/hx711, hx711.jpg +HLW8012, components/sensor/hlw8012, hlw8012.svg + +BMP280, components/sensor/bmp280, bmp280.jpg +INA219, components/sensor/ina219, ina219.jpg +INA3221, components/sensor/ina3221, ina3221.jpg + +MH-Z19, components/sensor/mhz19, mhz19.jpg +MS5611, components/sensor/ms5611, ms5611.jpg +TCS34725, components/sensor/tcs34725, tcs34725.jpg + +RGBWW Light, components/light/rgbww, rgbw.png +Cold+Warm White Light, components/light/cwww, brightness-medium.svg +Light Effects, components/light/index, creation.svg diff --git a/table-generator.py b/table-generator.py index 69f31d5cc..000f5990e 100644 --- a/table-generator.py +++ b/table-generator.py @@ -7,6 +7,8 @@ items = [] data = list(csv.reader(open(sys.argv[1], 'r'))) for row in data: + if not row: + continue name, page, image = row items.append({ 'name': name.strip(),