Merge branch 'current' into next

This commit is contained in:
Jesse Hills 2021-03-22 17:13:27 +13:00
commit 5bb554f9e7
No known key found for this signature in database
GPG Key ID: BEAAE804EFD8E83A
73 changed files with 1212 additions and 126 deletions

View File

@ -1,5 +1,5 @@
ESPHOME_PATH = ../esphome
ESPHOME_REF = dev
ESPHOME_REF = v1.16.2
.PHONY: html html-strict cleanhtml deploy help webserver Makefile netlify netlify-api api netlify-dependencies svg2png copy-svg2png

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 KiB

View File

@ -1 +1 @@
1.17.0-dev
1.17.0-dev

View File

@ -2,7 +2,7 @@ Changelog
=========
.. redirect::
:url: /changelog/v1.15.0.html
:url: /changelog/v1.16.0.html
.. toctree::
:glob:

389
changelog/v1.16.0.rst Normal file
View File

@ -0,0 +1,389 @@
Changelog - Version 1.16.0 - February 3, 2021
===============================================
.. seo::
:description: Changelog for ESPHome version 1.16.0.
:image: /_static/changelog-1.16.0.png
:author: Otto Winter
:author_twitter: @OttoWinter_
.. imgtable::
:columns: 5
TMP102, components/sensor/tmp102, tmp102.jpg
MCP9808, components/sensor/mcp9808, mcp9808.jpg
RC522, components/binary_sensor/rc522, rc522.jpg
H-bridge Light, components/light/hbridge, brightness-medium.svg
ILI9341, components/display/ili9341, ili9341.jpg
Teleinfo, components/sensor/teleinfo, teleinfo.jpg
EZO sensor circuits, components/sensor/ezo, ezo-ph-circuit.png
SSD1322, components/display/ssd1322, ssd1322.jpg
SSD1327, components/display/ssd1327, ssd1327.jpg
SSD1331, components/display/ssd1331, ssd1331.jpg
ST7735, components/display/st7735, st7735.jpg
MCP23SXX I/O Expander - SPI Bus, components/mcp23Sxx, mcp230xx.svg
CAN Bus, components/canbus, canbus.svg
Inkplate 6, components/display/Inkplate, Inkplate.jpg
Hello, hello. Jesse Hills (:ghuser:`jesserockz`) here. Yet another new name doing the next release.
Hopefully from this point forward, we are looking at releasing monthly on the first Wednesday of each month,
we got the idea from Home Assistant! Thanks guys!
There are a few new components in this release, but there was a lot of bugfixing and improvements overall and
we have a lot of PRs to go through for new features for next months release.
Thank you to all contributors, bug reporters and patrons! Without you this project would not be possible!
Until next month.
New Features
------------
- esphome: Enable reverse display of the Max7219 digit :esphomepr:`1234` by :ghuser:`rspaargaren` (new-feature)
- esphome: Pulse_counter measure total pulses :esphomepr:`1173` by :ghuser:`FrankBakkerNl` (new-feature)
- esphome: Support I2C transactions with combined reads and writes :esphomepr:`996` by :ghuser:`la7dja` (new-feature)
New Integrations
----------------
- esphome: Added tmp102 temperature sensor support :esphomepr:`929` by :ghuser:`timsavage` (new-integration)
- esphome: Add MCP9808 temperature sensor :esphomepr:`1169` by :ghuser:`k7hpn` (new-integration)
- esphome: Add rc522 :esphomepr:`1298` by :ghuser:`glmnet` (new-integration)
- esphome: Pn532 upgrades :esphomepr:`1302` by :ghuser:`jesserockz` (breaking-change) (new-integration)
- esphome: Add support for ATC_MiThermometer :esphomepr:`1291` by :ghuser:`ahpohl` (new-integration)
- esphome: Hbridge christmas light :esphomepr:`1251` by :ghuser:`DotNetDann` (new-integration)
- esphome: add Ili9341 display :esphomepr:`1233` by :ghuser:`Valcob` (new-integration)
- esphome: components: teleinfo: electrical counter information. :esphomepr:`1108` by :ghuser:`0hax` (new-integration)
- esphome: add support for EZO sensor circuits :esphomepr:`1239` by :ghuser:`ssieb` (new-integration)
- esphome: Add climate.hitachi_ac344 :esphomepr:`1336` by :ghuser:`honomoa` (new-integration)
- esphome: SSD1331 display support :esphomepr:`1244` by :ghuser:`kbx81` (new-integration)
- esphome: New display ST7735 :esphomepr:`1066` by :ghuser:`SenexCrenshaw` (new-integration)
- esphome: MCP23SXX I/O Expander - SPI :esphomepr:`1068` by :ghuser:`SenexCrenshaw` (new-integration)
- esphome: Add GIF Animation Support :esphomepr:`1378` by :ghuser:`Syndlex` (new-integration)
- esphome: Canbus + MCP2515 including ExtID support :esphomepr:`1384` by :ghuser:`danielschramm` (new-integration)
- esphome: Add full SSD1327 display support :esphomepr:`1406` by :ghuser:`kbx81` (new-integration)
- esphome: SSD1322 display support :esphomepr:`1405` by :ghuser:`kbx81` (new-integration)
- esphome: DS1307 real time clock component :esphomepr:`1441` by :ghuser:`badbadc0ffee` (cherry-picked) (new-integration)
- esphome: Add rc522 i2c :esphomepr:`1432` by :ghuser:`glmnet` (cherry-picked) (new-integration)
- esphome: Add NDEF reading and writing to PN532 :esphomepr:`1351` by :ghuser:`jesserockz` (cherry-picked) (new-integration)
- esphome: Inkplate 6 support for ESPHome :esphomepr:`1283` by :ghuser:`davidzovko` (cherry-picked) (new-integration)
- esphome: Support for MHO-C401 (fix) :esphomepr:`1486` by :ghuser:`nikito7` (cherry-picked) (new-integration)
Breaking Changes
----------------
- esphome: Replace CENTER_LEFT with TOP_LEFT to match other printf function :esphomepr:`1295` by :ghuser:`TheZoker` (breaking-change)
- esphome: Float output: Fix min_power and max_power adjusting when output is inverted :esphomepr:`1250` by :ghuser:`dubit0` (breaking-change)
- esphome: Pn532 upgrades :esphomepr:`1302` by :ghuser:`jesserockz` (breaking-change) (new-integration)
- esphome: Updated Mcp3008 to support reference_voltage and voltage_sampler::VoltageSampler :esphomepr:`1387` by :ghuser:`SenexCrenshaw` (breaking-change) (cherry-picked)
Beta Fixes
----------
- esphome: fix safe_mode :esphomepr:`1421` by :ghuser:`alexyao2015` (cherry-picked)
- esphome: DS1307 real time clock component :esphomepr:`1441` by :ghuser:`badbadc0ffee` (cherry-picked) (new-integration)
- docs: DS1307 real time clock component :docspr:`910` by :ghuser:`badbadc0ffee` (cherry-picked)
- esphome: Add encode_uint32 method, similar to encode_uint16 :esphomepr:`1427` by :ghuser:`e28eta` (cherry-picked)
- esphome: Rotary Encoder: Don't call callbacks in the isr :esphomepr:`1456` by :ghuser:`mknjc` (cherry-picked)
- esphome: API: copy the data to send into the tcp internal buffer :esphomepr:`1455` by :ghuser:`mknjc` (cherry-picked)
- esphome: Revert esptool to 2.8 :esphomepr:`1460` by :ghuser:`glmnet` (cherry-picked)
- esphome: Whirlpool ac :esphomepr:`1467` by :ghuser:`mmanza` (cherry-picked)
- esphome: Bump pytest-mock from 3.3.1 to 3.5.1 :esphomepr:`1458` by :ghuser:`dependabot[bot]` (cherry-picked)
- esphome: Add rc522 i2c :esphomepr:`1432` by :ghuser:`glmnet` (cherry-picked) (new-integration)
- docs: add rc522 i2c config variant :docspr:`933` by :ghuser:`glmnet` (cherry-picked)
- esphome: make time components polling components :esphomepr:`1443` by :ghuser:`badbadc0ffee` (cherry-picked)
- esphome: Updated Mcp3008 to support reference_voltage and voltage_sampler::VoltageSampler :esphomepr:`1387` by :ghuser:`SenexCrenshaw` (breaking-change) (cherry-picked)
- docs: Updated Mcp3008 to support reference_voltage and voltage_sampler::VoltageSampler :docspr:`874` by :ghuser:`SenexCrenshaw` (cherry-picked)
- esphome: Add NDEF reading and writing to PN532 :esphomepr:`1351` by :ghuser:`jesserockz` (cherry-picked) (new-integration)
- docs: Add docs for pn532 NDEF functionality :docspr:`936` by :ghuser:`jesserockz` (cherry-picked)
- esphome: Inkplate 6 support for ESPHome :esphomepr:`1283` by :ghuser:`davidzovko` (cherry-picked) (new-integration)
- docs: Adding Inkplate 6 docs :docspr:`778` by :ghuser:`nitko12` (cherry-picked)
- esphome: time sync notification :esphomepr:`1442` by :ghuser:`badbadc0ffee` (cherry-picked)
- docs: update time (sync) documentation :docspr:`924` by :ghuser:`badbadc0ffee` (cherry-picked)
- esphome: rename read/write to read/time/write_time :esphomepr:`1468` by :ghuser:`badbadc0ffee` (cherry-picked)
- esphome: Improve ccs811 precision :esphomepr:`1428` by :ghuser:`TheNetAdmin` (cherry-picked)
- esphome: make fade_to*, lighten, and darken const :esphomepr:`1450` by :ghuser:`toelke` (cherry-picked)
- esphome: SPI wasnt being disabled after display update :esphomepr:`1493` by :ghuser:`SenexCrenshaw` (cherry-picked)
- esphome: Add support for string-type Tuya datapoints :esphomepr:`1488` by :ghuser:`pauln` (cherry-picked)
- esphome: Add healthcheck :esphomepr:`1492` by :ghuser:`Klarstein` (cherry-picked)
- esphome: Support for MHO-C401 (fix) :esphomepr:`1486` by :ghuser:`nikito7` (cherry-picked) (new-integration)
- docs: Add MHO-C401 :docspr:`957` by :ghuser:`nikito7` (cherry-picked)
- esphome: Allow SCD30 sensors to be optional :esphomepr:`1502` by :ghuser:`jesserockz` (cherry-picked)
- docs: Update scd30 docs to show sensors are optional :docspr:`970` by :ghuser:`jesserockz` (cherry-picked)
- esphome: fix esp8266 remote_transmitter using incorrect timings :esphomepr:`1465` by :ghuser:`hcoohb` (cherry-picked)
- esphome: rc522 increased retry loop count :esphomepr:`1506` by :ghuser:`glmnet` (cherry-picked)
Release 1.16.1 - February 14
----------------------------
- esphome: Fix PN532 SPI communication :esphomepr:`1511` by :ghuser:`jesserockz`
- esphome: Update Dockerfile :esphomepr:`1517` by :ghuser:`Klarstein`
- esphome: Fixed transfer_byte to write_byte for 8266 :esphomepr:`1529` by :ghuser:`SenexCrenshaw`
- esphome: Added Energy sensor to hlw8012 :esphomepr:`1198` by :ghuser:`FrankBakkerNl` (new-feature)
- docs: Added Energy sensor to hlw8012 :docspr:`707` by :ghuser:`FrankBakkerNl`
- esphome: MCP230xx open drain interrupt pins :esphomepr:`1243` by :ghuser:`kbx81`
- docs: MCP230xx open drain interrupt pins :docspr:`728` by :ghuser:`kbx81`
Release 1.16.2 - February 20
----------------------------
- docs: Incomplete sentence :docspr:`1004` by :ghuser:`jkmaxwell`
- esphome: auto_detect check was backwards :esphomepr:`1536` by :ghuser:`SenexCrenshaw`
- docs: Make explicit examples for splitting and joining using partitions :docspr:`1008` by :ghuser:`jesserockz`
- docs: Title for Connecting your device to Home Assistant :docspr:`1013` by :ghuser:`jesserockz`
- esphome: Added Waveshare 2.90inch V2 e-ink display :esphomepr:`1538` by :ghuser:`K-r-i-s-t-i-a-n`
- docs: Added documentation for Waveshare 2.90inch V2 e-ink display :docspr:`1010` by :ghuser:`K-r-i-s-t-i-a-n`
- esphome: Add reverse_enable for max7219 :esphomepr:`1489` by :ghuser:`ssieb`
- docs: Add reverse_enable for max7219 :docspr:`983` by :ghuser:`ssieb`
- esphome: Fix safe mode ota flashing under certain configurations :esphomepr:`1534` by :ghuser:`jesserockz`
All changes
-----------
- docs: Update bang_bang doc, changelog fix :docspr:`667` by :ghuser:`kbx81`
- esphome: Update cryptography requirement from <3,>=2.0.0 to >=2.0.0,<4 :esphomepr:`1206` by :ghuser:`dependabot[bot]`
- esphome: fix dashboard select drop down :esphomepr:`1205` by :ghuser:`glmnet`
- docs: New prometheus configuration :docspr:`713`
- esphome: Cleanup web server prometheus integration :esphomepr:`1192`
- esphome: Remove overview job from CI :esphomepr:`1216`
- esphome: Bump pytest from 5.4.3 to 6.0.0 :esphomepr:`1220` by :ghuser:`dependabot[bot]`
- esphome: Fix ci-custom.py const.py ordered check and improve code :esphomepr:`1222`
- esphome: Add hyphen to supported name characters :esphomepr:`1223` by :ghuser:`ianleeder`
- docs: Add hyphen to supported name characters :docspr:`719` by :ghuser:`ianleeder`
- esphome: Bump protobuf from 3.12.2 to 3.12.4 :esphomepr:`1230` by :ghuser:`dependabot[bot]`
- esphome: Clean up ALLOWED_CHARS :esphomepr:`1235` by :ghuser:`ianleeder`
- esphome: Bump pytest from 6.0.0 to 6.0.1 :esphomepr:`1236` by :ghuser:`dependabot[bot]`
- esphome: Bump pytest-mock from 3.2.0 to 3.3.1 :esphomepr:`1263` by :ghuser:`dependabot[bot]`
- esphome: Bump protobuf from 3.12.4 to 3.13.0 :esphomepr:`1254` by :ghuser:`dependabot[bot]`
- docs: Update diy.rst :docspr:`760` by :ghuser:`kquinsland`
- esphome: Bump pylint from 2.5.3 to 2.6.0 :esphomepr:`1262` by :ghuser:`dependabot[bot]`
- esphome: Bump pytest from 6.0.1 to 6.0.2 :esphomepr:`1280` by :ghuser:`dependabot[bot]`
- esphome: Bump platformio from 4.3.4 to 5.0.1 :esphomepr:`1275` by :ghuser:`dependabot[bot]`
- esphome: Update max31855.cpp :esphomepr:`1273` by :ghuser:`EmbeddedDevver`
- esphome: Add Fan and Swing Support to fujitsu-general Component :esphomepr:`1287` by :ghuser:`kpelzel`
- esphome: Replace CENTER_LEFT with TOP_LEFT to match other printf function :esphomepr:`1295` by :ghuser:`TheZoker` (breaking-change)
- esphome: Enable reverse display of the Max7219 digit :esphomepr:`1234` by :ghuser:`rspaargaren` (new-feature)
- docs: update Max7219 digit with reverse option :docspr:`726` by :ghuser:`rspaargaren`
- esphome: Bump paho-mqtt from 1.5.0 to 1.5.1 :esphomepr:`1297` by :ghuser:`dependabot[bot]`
- esphome: Bump pytest-cov from 2.10.0 to 2.10.1 :esphomepr:`1253` by :ghuser:`dependabot[bot]`
- esphome: CI - Don't fast fail testing so results are not hidden in matrix builds :esphomepr:`1286` by :ghuser:`jesserockz`
- esphome: Support Daikin horizontal swing in climate_ir :esphomepr:`1247` by :ghuser:`buxtronix`
- esphome: Table row wasn't closed :esphomepr:`1310` by :ghuser:`Ivo-tje`
- esphome: Typo in the pm2.5 grid :esphomepr:`1311` by :ghuser:`jamesgao`
- esphome: Float output: Fix min_power and max_power adjusting when output is inverted :esphomepr:`1250` by :ghuser:`dubit0` (breaking-change)
- esphome: Add new time.has_time condition :esphomepr:`1255` by :ghuser:`ashmckenzie`
- docs: Add time.has_time documentation :docspr:`782` by :ghuser:`ashmckenzie`
- esphome: handle windows filenames :esphomepr:`1307` by :ghuser:`glmnet`
- esphome: Bump flake8 from 3.8.3 to 3.8.4 :esphomepr:`1319` by :ghuser:`dependabot[bot]`
- esphome: Bump pytest from 6.0.2 to 6.1.1 :esphomepr:`1320` by :ghuser:`dependabot[bot]`
- esphome: Bump colorlog from 4.2.1 to 4.4.0 :esphomepr:`1323` by :ghuser:`dependabot[bot]`
- esphome: Add LYWSD02 battery sensor :esphomepr:`1334` by :ghuser:`Alex9779`
- docs: add battery sensor for lywsd02 :docspr:`821` by :ghuser:`sermayoral`
- docs: Small typo fixes for Sonoff T1 UK 3 Gang :docspr:`815` by :ghuser:`r15ch13`
- esphome: Added tmp102 temperature sensor support :esphomepr:`929` by :ghuser:`timsavage` (new-integration)
- docs: Added tmp102 Temperature sensor docs :docspr:`451` by :ghuser:`timsavage`
- esphome: Add MCP9808 temperature sensor :esphomepr:`1169` by :ghuser:`k7hpn` (new-integration)
- docs: Add documentation for MCP9808 sensor :docspr:`691` by :ghuser:`k7hpn`
- esphome: Add rc522 :esphomepr:`1298` by :ghuser:`glmnet` (new-integration)
- docs: add rc522 docs :docspr:`810` by :ghuser:`glmnet`
- esphome: Add new codeowners :esphomepr:`1335` by :ghuser:`jesserockz`
- esphome: Pn532 upgrades :esphomepr:`1302` by :ghuser:`jesserockz` (breaking-change) (new-integration)
- docs: Update PN532 docs to add I2C :docspr:`798` by :ghuser:`jesserockz`
- esphome: Fixed CLIMATE_SWING_HORIZONTAL typo :esphomepr:`1340` by :ghuser:`rob-deutsch`
- esphome: add illuminance for xiaomi_mjyd02yla :esphomepr:`1299` by :ghuser:`al-one`
- docs: add illuminance for xiaomi_mjyd02yla :docspr:`779` by :ghuser:`al-one`
- esphome: Add support for WPA2-EAP enterprise WiFi to ESP8266s. :esphomepr:`1332` by :ghuser:`tomtom5152`
- docs: Update enterprise authentication docs to indicate support for ESP8266s :docspr:`814` by :ghuser:`tomtom5152`
- esphome: Pulse_counter measure total pulses :esphomepr:`1173` by :ghuser:`FrankBakkerNl` (new-feature)
- docs: Added docs for pulse_counter total :docspr:`705` by :ghuser:`FrankBakkerNl`
- esphome: Add on_clockwise and on_anticlockwise triggers to rotary encoder :esphomepr:`1330` by :ghuser:`jesserockz`
- docs: Add docs for rotary encoder on_clockwise and on_anticlockwise triggers :docspr:`807` by :ghuser:`jesserockz`
- esphome: FastLED: Add YAML option for data rate :esphomepr:`1338` by :ghuser:`youknow0`
- docs: FastLED: Add docs for new YAML option data_rate :docspr:`824` by :ghuser:`youknow0`
- esphome: [Image] add dither option for image processing :esphomepr:`1317` by :ghuser:`zhujunsan`
- docs: [Image] add dither option for image processing :docspr:`796` by :ghuser:`zhujunsan`
- esphome: Update actions to move away from set-env :esphomepr:`1349` by :ghuser:`jesserockz`
- esphome: Move CONF_CONTRAST to const.py :esphomepr:`1352` by :ghuser:`jesserockz`
- esphome: Bump platformio from 5.0.1 to 5.0.2 :esphomepr:`1355` by :ghuser:`dependabot[bot]`
- docs: Fix connection typo in FAQ :docspr:`831` by :ghuser:`KTibow`
- docs: Add TuyaMCU sample config for WF-DS01 :docspr:`829` by :ghuser:`davet2001`
- docs: Link to Winsen ZE08-CH2O custom component :docspr:`833` by :ghuser:`cretep`
- esphome: Adds support for RF Bridge advanced codes :esphomepr:`1246` by :ghuser:`jesserockz`
- docs: Update RF Bridge documentation for advanced codes :docspr:`731` by :ghuser:`jesserockz`
- esphome: Add contrast option to PCD8544 :esphomepr:`1348` by :ghuser:`dzervas`
- docs: Add contrast option docs to PCD8544 :docspr:`834` by :ghuser:`dzervas`
- esphome: Add support for ATC_MiThermometer :esphomepr:`1291` by :ghuser:`ahpohl` (new-integration)
- docs: Add support for ATC_MiThermometer, update bindkey generation procedure :docspr:`777` by :ghuser:`ahpohl`
- esphome: Bump pytest from 6.1.1 to 6.1.2 :esphomepr:`1342` by :ghuser:`dependabot[bot]`
- esphome: Bump voluptuous from 0.11.7 to 0.12.0 :esphomepr:`1296` by :ghuser:`dependabot[bot]`
- esphome: Bump pytz from 2020.1 to 2020.4 :esphomepr:`1354` by :ghuser:`dependabot[bot]`
- esphome: Add a datapoint to sync the Tuya MCU minimum brightness :esphomepr:`1347` by :ghuser:`cprussin`
- docs: Document tuya dimmer min_value_datapoint :docspr:`832` by :ghuser:`cprussin`
- esphome: Support I2C transactions with combined reads and writes :esphomepr:`996` by :ghuser:`la7dja` (new-feature)
- esphome: Hbridge christmas light :esphomepr:`1251` by :ghuser:`DotNetDann` (new-integration)
- docs: Hbridge christmas light :docspr:`733` by :ghuser:`DotNetDann`
- docs: Add a note about INPUT_PULLUP :docspr:`830` by :ghuser:`wodor`
- docs: Update waveshare_epaper.rst :docspr:`813` by :ghuser:`thedexboy`
- docs: added warning to waveshare 2.7 inch display :docspr:`818` by :ghuser:`damanti-me`
- docs: Update to I2C docs to explain I2C daisy chaining :docspr:`812` by :ghuser:`the-impaler`
- docs: I2c text update :docspr:`839` by :ghuser:`jesserockz`
- esphome: add Ili9341 display :esphomepr:`1233` by :ghuser:`Valcob` (new-integration)
- esphome: Correcting Hertz symbol :esphomepr:`1364` by :ghuser:`robdejonge`
- docs: remove use_custom_code :docspr:`841` by :ghuser:`glmnet`
- esphome: Bump colorlog from 4.4.0 to 4.6.2 :esphomepr:`1367` by :ghuser:`dependabot[bot]`
- esphome: Add support for Tuya MCU 0x1C (obtain local time) :esphomepr:`1344` by :ghuser:`Yarikx`
- docs: Specify clock to be used in Tuya MCU :docspr:`827` by :ghuser:`Yarikx`
- esphome: Separate Tuya climate temperature_multiplier to current/target multiplier :esphomepr:`1345` by :ghuser:`Yarikx`
- docs: Add separate current/target Tuya Climate multipliers :docspr:`828` by :ghuser:`Yarikx`
- esphome: Add bounds check for X :esphomepr:`1371` by :ghuser:`ssieb`
- esphome: scd30: Allow setting ambient pressure compensation :esphomepr:`1365` by :ghuser:`matoxp`
- docs: scd30: Add missing configuration variables :docspr:`842` by :ghuser:`matoxp`
- esphome: components: teleinfo: electrical counter information. :esphomepr:`1108` by :ghuser:`0hax` (new-integration)
- docs: Teleinfo :docspr:`666` by :ghuser:`0hax`
- esphome: Adding ADE7953 irq_pin :esphomepr:`1359` by :ghuser:`djwmarcx`
- docs: Adding ADE7953 irq_pin :docspr:`848` by :ghuser:`djwmarcx`
- docs: Fix MCP23008 example :docspr:`845` by :ghuser:`djtef`
- esphome: add support for EZO sensor circuits :esphomepr:`1239` by :ghuser:`ssieb` (new-integration)
- docs: add docs for new EZO sensor circuits :docspr:`727` by :ghuser:`ssieb`
- esphome: Bump platformio from 5.0.2 to 5.0.3 :esphomepr:`1372` by :ghuser:`dependabot[bot]`
- docs: Add Hitachi AC344 IR Climate documentation :docspr:`822` by :ghuser:`honomoa`
- esphome: Add climate.hitachi_ac344 :esphomepr:`1336` by :ghuser:`honomoa` (new-integration)
- esphome: add CODEOWNER for new ezo component :esphomepr:`1379` by :ghuser:`ssieb`
- esphome: SSD1331 display support :esphomepr:`1244` by :ghuser:`kbx81` (new-integration)
- docs: Add SSD1331 docs :docspr:`729` by :ghuser:`kbx81`
- esphome: Add kbx81 to CODEOWNERS :esphomepr:`1380` by :ghuser:`kbx81`
- esphome: Added 332 color conversion and RGB/BGR/GRB formats :esphomepr:`1381` by :ghuser:`SenexCrenshaw`
- esphome: Fixed logger broken by colorama :esphomepr:`1385` by :ghuser:`Anonym-tsk`
- esphome: Formatted test yaml files :esphomepr:`1382` by :ghuser:`SenexCrenshaw`
- docs: Updated link to ble_monitor (previous mitemp_bt) :docspr:`849` by :ghuser:`Ernst79`
- docs: Fix ac dimmer example code :docspr:`852` by :ghuser:`rradar`
- docs: DIY: Add Blogpost for SP501E as WS2812 LED Controller :docspr:`854` by :ghuser:`margau`
- docs: Replace Hass.io :docspr:`853` by :ghuser:`fabaff`
- docs: Update deep_sleep.rst :docspr:`850` by :ghuser:`anekinloewe`
- docs: Adding IAQ board in cookbook section :docspr:`844` by :ghuser:`nkitanov`
- esphome: New display ST7735 :esphomepr:`1066` by :ghuser:`SenexCrenshaw` (new-integration)
- docs: Fix broken YAML in MQTT on_json_message example :docspr:`620` by :ghuser:`napieraj`
- esphome: Configurable OTA Safe Mode :esphomepr:`1393` by :ghuser:`alexyao2015`
- docs: Update docs for Configurable OTA Safe Mode :docspr:`859` by :ghuser:`alexyao2015`
- docs: Update ethernet.rst :docspr:`863` by :ghuser:`adezerega`
- esphome: Add option to suppress embedded MCU updates on certain datapoints :esphomepr:`1396` by :ghuser:`stubs12`
- docs: Documentation for tuya ignore_mcu_update_on_datapoints setting :docspr:`868` by :ghuser:`stubs12`
- esphome: scd30: Allow setting temperature offset :esphomepr:`1400` by :ghuser:`matoxp`
- docs: scd30: Document temperature_offset setting :docspr:`864` by :ghuser:`matoxp`
- esphome: fix HTTP Request reusing connections with different hosts :esphomepr:`1383` by :ghuser:`Anonym-tsk`
- docs: Ili9341 doc update :docspr:`870` by :ghuser:`kbx81`
- esphome: MCP23SXX I/O Expander - SPI :esphomepr:`1068` by :ghuser:`SenexCrenshaw` (new-integration)
- docs: MCP23S08-Docs :docspr:`613` by :ghuser:`SenexCrenshaw`
- esphome: Bump pyserial from 3.4 to 3.5 :esphomepr:`1394` by :ghuser:`dependabot[bot]`
- esphome: Fix Tuya initialisation regression :esphomepr:`1408` by :ghuser:`rmounce`
- docs: Update max31856.rst :docspr:`883` by :ghuser:`emuehlstein`
- docs: Fix one of the commens in code block :docspr:`881` by :ghuser:`HepoH3`
- docs: Update wifi.rst :docspr:`873` by :ghuser:`Pack3tL0ss`
- docs: Update mirabella-genio-bulb.rst :docspr:`857` by :ghuser:`kalebzettl`
- docs: Update teckin sb50 entry as they cannot be flashed anymore :docspr:`878` by :ghuser:`justyns`
- docs: Change all instances of travis to github actions :docspr:`860` by :ghuser:`alexyao2015`
- docs: Improve obtaining bind key :docspr:`843` by :ghuser:`abelmatser`
- docs: Add clarification about "update_interval" to SDS011 sensor documentation :docspr:`770` by :ghuser:`maurice-schleussinger`
- docs: Cookbook: Light Strip :docspr:`805` by :ghuser:`lein1013`
- docs: Optimize images :docspr:`799` by :ghuser:`JeffResc`
- docs: Add troubleshooting help with light partition :docspr:`851` by :ghuser:`TheLastGimbus`
- docs: Update bang_bang.rst :docspr:`524` by :ghuser:`xheronimo`
- docs: Fixed docs to match xiaomi rename :docspr:`606` by :ghuser:`WoLpH`
- docs: add another example without MQTT :docspr:`573` by :ghuser:`adonno`
- docs: Show example of calling HA script :docspr:`688` by :ghuser:`glmnet`
- docs: Update pulse_counter.rst :docspr:`689` by :ghuser:`neographikal`
- docs: More descriptive information for noobs :docspr:`658` by :ghuser:`haryadoon`
- esphome: Run task for VS Code :esphomepr:`1361` by :ghuser:`gitolicious`
- docs: esp32_dac.rst - Add light component to example :docspr:`885` by :ghuser:`ferbar`
- docs: Update ethernet.rst :docspr:`887` by :ghuser:`dziobson`
- docs: Adding gif animation docs :docspr:`856` by :ghuser:`Syndlex`
- esphome: Add GIF Animation Support :esphomepr:`1378` by :ghuser:`Syndlex` (new-integration)
- docs: Update diy.rst :docspr:`888` by :ghuser:`pieterbrink123`
- esphome: Bump tornado from 6.0.4 to 6.1 :esphomepr:`1353` by :ghuser:`dependabot[bot]`
- esphome: Fix mDNS webserver port and expose prometheus service :esphomepr:`1389` by :ghuser:`richardweinberger`
- esphome: Bump esptool from 2.8 to 3.0 :esphomepr:`1357` by :ghuser:`dependabot[bot]`
- docs: Update diy.rst :docspr:`891` by :ghuser:`lairsdragon`
- docs: Update sim800l.rst :docspr:`893` by :ghuser:`tyomikh`
- docs: docs: necessary registration of node in HA :docspr:`741` by :ghuser:`torwag`
- docs: display: st7789v: Set GPIO0 as INPUT_PULLUP :docspr:`759` by :ghuser:`kylemanna`
- docs: clarify VCC, wrt #1452 :docspr:`753` by :ghuser:`pille`
- docs: Update docs about MQTT lambdas :docspr:`809` by :ghuser:`matikij`
- docs: Add manual for Sonoff T3 EU 3 Gang :docspr:`816` by :ghuser:`r15ch13`
- docs: Add get_setup_priority() to Custom sensor docs :docspr:`819` by :ghuser:`mjkl-gh`
- docs: Change on_message topics into a yaml list for deep_sleep docs :docspr:`867` by :ghuser:`mrrsm`
- docs: Update pzem Example configuration entry (bad stop bit) :docspr:`872` by :ghuser:`Francis-labo`
- docs: Update next from current 20201221 :docspr:`894` by :ghuser:`jesserockz`
- docs: Update sonof_basic.rst - incorrect example :docspr:`892` by :ghuser:`bvansambeek`
- docs: Update apds9960.rst :docspr:`895` by :ghuser:`DrRob`
- esphome: Canbus + MCP2515 including ExtID support :esphomepr:`1384` by :ghuser:`danielschramm` (new-integration)
- docs: Canbus + MCP2515 :docspr:`823` by :ghuser:`danielschramm`
- esphome: Add "ESPHOME_NOGITIGNORE" env var to prevent .gitignore creation :esphomepr:`1425` by :ghuser:`acshef`
- esphome: Add full SSD1327 display support :esphomepr:`1406` by :ghuser:`kbx81` (new-integration)
- docs: Add SSD1327 display docs :docspr:`875` by :ghuser:`kbx81`
- esphome: SSD1322 display support :esphomepr:`1405` by :ghuser:`kbx81` (new-integration)
- docs: Add SSD1322 doc :docspr:`869` by :ghuser:`kbx81`
- esphome: Expose port 6052 to make reverse proxy work :esphomepr:`1437` by :ghuser:`Klarstein`
- esphome: rc_switch: Fix Sync signal sent after the code :esphomepr:`1426` by :ghuser:`M95D`
- docs: added slow mode and detach time to servo :docspr:`896` by :ghuser:`andreashergert1984`
- esphome: added slow mode and detach time to servo :esphomepr:`1413` by :ghuser:`andreashergert1984`
- esphome: Bump pytz from 2020.4 to 2020.5 :esphomepr:`1430` by :ghuser:`dependabot[bot]`
- esphome: Bump pytest from 6.1.2 to 6.2.1 :esphomepr:`1422` by :ghuser:`dependabot[bot]`
- docs: Update diy.rst :docspr:`913` by :ghuser:`mikosoft83`
- docs: Add note about default settings in remote transmitter :docspr:`901` by :ghuser:`darthsebulba04`
- docs: st7735 Docs :docspr:`608` by :ghuser:`SenexCrenshaw`
- esphome: Bump platformio from 5.0.3 to 5.0.4 :esphomepr:`1444` by :ghuser:`dependabot[bot]`
- esphome: Fix SN74HC595 with optional OE pin :esphomepr:`1454` by :ghuser:`rradar`
- esphome: Fix stepper half half step mode :esphomepr:`1397` by :ghuser:`Fractal147`
- esphome: fix safe_mode :esphomepr:`1421` by :ghuser:`alexyao2015` (cherry-picked)
- esphome: DS1307 real time clock component :esphomepr:`1441` by :ghuser:`badbadc0ffee` (cherry-picked) (new-integration)
- docs: DS1307 real time clock component :docspr:`910` by :ghuser:`badbadc0ffee` (cherry-picked)
- esphome: Add encode_uint32 method, similar to encode_uint16 :esphomepr:`1427` by :ghuser:`e28eta` (cherry-picked)
- esphome: Rotary Encoder: Don't call callbacks in the isr :esphomepr:`1456` by :ghuser:`mknjc` (cherry-picked)
- esphome: API: copy the data to send into the tcp internal buffer :esphomepr:`1455` by :ghuser:`mknjc` (cherry-picked)
- esphome: Revert esptool to 2.8 :esphomepr:`1460` by :ghuser:`glmnet` (cherry-picked)
- docs: fixed duplicate id in example for dac output :docspr:`909` by :ghuser:`dmannock`
- docs: Add example for human readable uptime sensor :docspr:`923` by :ghuser:`fredrike`
- docs: Update diy.rst :docspr:`922` by :ghuser:`omarghader`
- docs: Spelling and grammar fixes :docspr:`928` by :ghuser:`scop`
- docs: Fix duplicated "on_ble" in on_ble_service_data_advertise heading :docspr:`927` by :ghuser:`scop`
- docs: Add hint for swapped data and clock pin :docspr:`914` by :ghuser:`DirkHeinke`
- docs: Update nextion.rst :docspr:`912` by :ghuser:`wernight`
- docs: Update mirabella-genio-bulb.rst to show potential use of GPIO14 instead of GPIO13 for specific monochromatic dimmable globes :docspr:`911` by :ghuser:`imeekle`
- esphome: Whirlpool ac :esphomepr:`1467` by :ghuser:`mmanza` (cherry-picked)
- esphome: Bump pytest-mock from 3.3.1 to 3.5.1 :esphomepr:`1458` by :ghuser:`dependabot[bot]` (cherry-picked)
- esphome: Add rc522 i2c :esphomepr:`1432` by :ghuser:`glmnet` (cherry-picked) (new-integration)
- docs: add rc522 i2c config variant :docspr:`933` by :ghuser:`glmnet` (cherry-picked)
- esphome: make time components polling components :esphomepr:`1443` by :ghuser:`badbadc0ffee` (cherry-picked)
- docs: add cli link :docspr:`937` by :ghuser:`glmnet`
- esphome: Updated Mcp3008 to support reference_voltage and voltage_sampler::VoltageSampler :esphomepr:`1387` by :ghuser:`SenexCrenshaw` (breaking-change) (cherry-picked)
- docs: Updated Mcp3008 to support reference_voltage and voltage_sampler::VoltageSampler :docspr:`874` by :ghuser:`SenexCrenshaw` (cherry-picked)
- docs: cli.rst add --help :docspr:`939` by :ghuser:`foxsam21`
- esphome: Add NDEF reading and writing to PN532 :esphomepr:`1351` by :ghuser:`jesserockz` (cherry-picked) (new-integration)
- docs: Add docs for pn532 NDEF functionality :docspr:`936` by :ghuser:`jesserockz` (cherry-picked)
- esphome: Inkplate 6 support for ESPHome :esphomepr:`1283` by :ghuser:`davidzovko` (cherry-picked) (new-integration)
- docs: Adding Inkplate 6 docs :docspr:`778` by :ghuser:`nitko12` (cherry-picked)
- esphome: time sync notification :esphomepr:`1442` by :ghuser:`badbadc0ffee` (cherry-picked)
- docs: update time (sync) documentation :docspr:`924` by :ghuser:`badbadc0ffee` (cherry-picked)
- esphome: rename read/write to read/time/write_time :esphomepr:`1468` by :ghuser:`badbadc0ffee` (cherry-picked)
- docs: Add directions for handling text strings :docspr:`955` by :ghuser:`poldim`
- esphome: Improve ccs811 precision :esphomepr:`1428` by :ghuser:`TheNetAdmin` (cherry-picked)
- esphome: make fade_to*, lighten, and darken const :esphomepr:`1450` by :ghuser:`toelke` (cherry-picked)
- docs: fix typo 5062 => 6052 :docspr:`956` by :ghuser:`Scarbous`
- docs: Fix of typo in documentation of SPS30 :docspr:`954` by :ghuser:`teffcz`
- docs: Remove reference to measuring humidity :docspr:`953` by :ghuser:`tomlut`
- docs: Fix human-readable uptime example so it compiles :docspr:`949` by :ghuser:`oddsockmachine`
- esphome: SPI wasnt being disabled after display update :esphomepr:`1493` by :ghuser:`SenexCrenshaw` (cherry-picked)
- esphome: Add support for string-type Tuya datapoints :esphomepr:`1488` by :ghuser:`pauln` (cherry-picked)
- esphome: Add healthcheck :esphomepr:`1492` by :ghuser:`Klarstein` (cherry-picked)
- docs: Add link to baseboard thermostat by rjmurph2241 :docspr:`958` by :ghuser:`rjmurph2241`
- docs: Document color_temp :docspr:`951` by :ghuser:`alexyao2015`
- docs: Update tuya.rst :docspr:`950` by :ghuser:`ricovangenugten`
- docs: Minor uptime docs fixes :docspr:`948` by :ghuser:`foxsam21`
- esphome: Support for MHO-C401 (fix) :esphomepr:`1486` by :ghuser:`nikito7` (cherry-picked) (new-integration)
- docs: Update image type for st7789 display :docspr:`945` by :ghuser:`gerard33`
- docs: Add MHO-C401 :docspr:`957` by :ghuser:`nikito7` (cherry-picked)
- esphome: Allow SCD30 sensors to be optional :esphomepr:`1502` by :ghuser:`jesserockz` (cherry-picked)
- docs: Update scd30 docs to show sensors are optional :docspr:`970` by :ghuser:`jesserockz` (cherry-picked)
- esphome: fix esp8266 remote_transmitter using incorrect timings :esphomepr:`1465` by :ghuser:`hcoohb` (cherry-picked)
- esphome: rc522 increased retry loop count :esphomepr:`1506` by :ghuser:`glmnet` (cherry-picked)

View File

@ -75,7 +75,7 @@ Configuration options:
- **variables** (*Optional*, mapping): Optional variables that can be used in the ``data_template``.
Values are :ref:`lambdas <config-lambda>` and will be evaluated before sending the request.
Data structures are not possible, but you can create an script in Home Assistant and call with all
Data structures are not possible, but you can create a script in Home Assistant and call with all
the parameters in plain format.
.. code-block:: yaml

View File

@ -70,6 +70,7 @@ Configuration variables:
- **name** (*Optional*, string): The name for the binary sensor.
- **mpr121_id** (*Optional*, :ref:`config-id`): The ID of the MPR121 defined above. Useful for multiple MPR121's on the I²C bus
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- **channel** (**Required**, integer): The channel number at the MPR121 the touchkey is connected to.
- **touch_threshold** (*Optional*, integer): A per-channel override of the global touch_threshold value. If not specified, uses the global value.

View File

@ -76,7 +76,6 @@ an RFID tag is currently detected by the RC522.
i2c:
rc522_i2c:
cs_pin: GPIO2
binary_sensor:
- platform: rc522

View File

@ -124,7 +124,7 @@ is automatically calculated.
But this also means you **have to set the setpoint** of the climate controller to a value the
device can reach. For example if the temperature of a room is to be controlled, the setpoint needs
to be a bit of the ambient temperature. If the ambient temperature is 20°C, the setpoint of the
to be above the ambient temperature. If the ambient temperature is 20°C, the setpoint of the
climate device should be set to at least ~24°C so that an oscillation can be induced.
4. Set an appropriate setpoint (see above).

View File

@ -96,7 +96,7 @@ Configuration options:
-----------------------------
This action prevents the given deep sleep component from entering deep sleep.
Useful for
Useful for keeping the ESP active during data transfer or OTA updating (See note below for more information).
.. code-block:: yaml

View File

@ -20,7 +20,7 @@ in your configuration.
Overview
--------
The module can be powered by the 3.3V output of an NodeMCU. For communication you can connect only
The module can be powered by the 3.3V output of a NodeMCU. For communication you can connect only
the ``tx_pin`` of the ``uart`` bus to the module's ``RX`` but if you need feedback of playback active
you will also need to connect the ``rx_pin`` to the module's ``TX``.
For best quality audio a powered stereo speaker can be connected to the modules ``DAC_R``,

View File

@ -0,0 +1,277 @@
Inkplate 6
==========
.. seo::
:description: Instructions for setting up Inkplate E-Paper displays in ESPHome.
:image: Inkplate.jpg
All-in-one e-paper display ``Inkplate 6``
Inkplate 6 is a powerful, Wi-Fi enabled ESP32 based six-inch e-paper display recycled from a Kindle e-reader. Its main feature is simplicity.
Learn more at `Inkplate's website <https://inkplate.io/>`__
.. figure:: images/Inkplate.jpg
:align: center
:width: 75.0%
Inkplate 6
.. code-block:: yaml
# Example minimal configuration entry
mcp23017:
- id: mcp23017_hub
address: 0x20
display:
- platform: inkplate6
id: inkplate_display
greyscale: false
partial_updating: false
update_interval: 60s
ckv_pin: 32
sph_pin: 33
gmod_pin:
mcp23017: mcp23017_hub
number: 1
gpio0_enable_pin:
mcp23017: mcp23017_hub
number: 8
oe_pin:
mcp23017: mcp23017_hub
number: 0
spv_pin:
mcp23017: mcp23017_hub
number: 2
powerup_pin:
mcp23017: mcp23017_hub
number: 4
wakeup_pin:
mcp23017: mcp23017_hub
number: 3
vcom_pin:
mcp23017: mcp23017_hub
number: 5
.. warning::
When using the Inkplate epaper module, the GPIO pin numbers above *cannot be changed* as they are
hardwired within the module/PCB.
.. warning::
Inkplate module cannot perform partial update if 3 bit mode is on.
It just ignores the function call in that case.
Configuration variables
***********************
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
- **greyscale** (*Optional*, boolean): Makes the screen display 3 bit colors. Defaults to ``False``
- **partial_updating** (*Optional*, boolean): Makes the screen update partially, which is faster, but leaves burnin. Defaults to ``False``
- **full_update_every** (*Optional*, int): When partial updating is enabled, forces a full screen update after chosen number of updates. Defaults to ``10``
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the display.
See :ref:`display-engine` for more information.
- **update_interval** (*Optional*, :ref:`config-time`): The interval to re-draw the screen. Defaults to ``5s``.
- **pages** (*Optional*, list): Show pages instead of a single lambda. See :ref:`display-pages`.
- **ckv_pin** (**Required**, :ref:`config-pin`): The CKV pin for the Inkplate display.
- **gmod_pin** (**Required**, :ref:`config-pin`): The GMOD pin for the Inkplate display.
- **gpio0_enable_pin** (**Required**, :ref:`config-pin`): The GPIO0 Enable pin for the Inkplate display.
- **oe_pin** (**Required**, :ref:`config-pin`): The OE pin for the Inkplate display.
- **powerup_pin** (**Required**, :ref:`config-pin`): The Powerup pin for the Inkplate display.
- **sph_pin** (**Required**, :ref:`config-pin`): The SPH pin for the Inkplate display.
- **spv_pin** (**Required**, :ref:`config-pin`): The SPV pin for the Inkplate display.
- **vcom_pin** (**Required**, :ref:`config-pin`): The VCOM pin for the Inkplate display.
- **cl_pin** (*Optional*, :ref:`config-pin`): The CL pin for the Inkplate display.
Defaults to GPIO0.
- **le_pin** (*Optional*, :ref:`config-pin`): The LE pin for the Inkplate display.
Defaults to GPIO2.
- **display_data_0_pin** (*Optional*, :ref:`config-pin`): The Data 0 pin for the Inkplate display.
Defaults to GPIO4.
- **display_data_1_pin** (*Optional*, :ref:`config-pin`): The Data 1 pin for the Inkplate display.
Defaults to GPIO5.
- **display_data_2_pin** (*Optional*, :ref:`config-pin`): The Data 2 pin for the Inkplate display.
Defaults to GPIO18.
- **display_data_3_pin** (*Optional*, :ref:`config-pin`): The Data 3 pin for the Inkplate display.
Defaults to GPIO19.
- **display_data_4_pin** (*Optional*, :ref:`config-pin`): The Data 4 pin for the Inkplate display.
Defaults to GPIO23.
- **display_data_5_pin** (*Optional*, :ref:`config-pin`): The Data 5 pin for the Inkplate display.
Defaults to GPIO25.
- **display_data_6_pin** (*Optional*, :ref:`config-pin`): The Data 6 pin for the Inkplate display.
Defaults to GPIO26.
- **display_data_7_pin** (*Optional*, :ref:`config-pin`): The Data 7 pin for the Inkplate display.
Defaults to GPIO27.
Complete example
****************
The following is a complete example YAML configuration that does a few things beyond the usual
Wi-Fi, API, and OTA configuration.
.. code-block:: yaml
# Example configuration entry
esphome:
name: inkplate
platform: ESP32
board: esp-wrover-kit
logger:
wifi:
ssid: <YOUR WIFI SSID>
password: <YOUR WIFI PASSWORD>
ap:
ssid: Inkplate-AP
password: '12345678'
captive_portal:
ota:
api:
switch:
- platform: restart
name: "Inkplate Reboot"
id: reboot
- platform: gpio
id: battery_read_mosfet
pin:
mcp23017: mcp23017_hub
number: 9
inverted: true
- platform: template
name: "Inkplate Greyscale mode"
lambda: return id(inkplate_display).get_greyscale();
turn_on_action:
- lambda: id(inkplate_display).set_greyscale(true);
turn_off_action:
- lambda: id(inkplate_display).set_greyscale(false);
- platform: template
name: "Inkplate Partial Updating"
lambda: return id(inkplate_display).get_partial_updating();
turn_on_action:
- lambda: id(inkplate_display).set_partial_updating(true);
turn_off_action:
- lambda: id(inkplate_display).set_partial_updating(false);
sensor:
- platform: adc
id: battery_voltage
update_interval: never
attenuation: 11db
pin: 35
- platform: template
name: "Inkplate Battery Voltage"
lambda: |-
id(battery_read_mosfet).turn_on();
delay(1);
float adc = id(battery_voltage).sample();
id(battery_read_mosfet).turn_off();
return adc;
filters:
- multiply: 2
i2c:
mcp23017:
- id: mcp23017_hub
address: 0x20
binary_sensor:
- platform: status
name: "Inkplate Status"
id: system_status
- platform: gpio
name: "Inkplate Touch Pad 1"
pin:
mcp23017: mcp23017_hub
number: 10
- platform: gpio
name: "Inkplate Touch Pad 2"
pin:
mcp23017: mcp23017_hub
number: 11
- platform: gpio
name: "Inkplate Touch Pad 3"
pin:
mcp23017: mcp23017_hub
number: 12
time:
- platform: sntp
id: esptime
font:
- file: "Helvetica.ttf"
id: helvetica_96
size: 96
- file: "Helvetica.ttf"
id: helvetica_48
size: 48
display:
- platform: inkplate6
id: inkplate_display
greyscale: false
partial_updating: false
update_interval: 60s
ckv_pin: 32
sph_pin: 33
gmod_pin:
mcp23017: mcp23017_hub
number: 1
gpio0_enable_pin:
mcp23017: mcp23017_hub
number: 8
oe_pin:
mcp23017: mcp23017_hub
number: 0
spv_pin:
mcp23017: mcp23017_hub
number: 2
powerup_pin:
mcp23017: mcp23017_hub
number: 4
wakeup_pin:
mcp23017: mcp23017_hub
number: 3
vcom_pin:
mcp23017: mcp23017_hub
number: 5
lambda: |-
it.fill(COLOR_ON);
it.print(100, 100, id(helvetica_48), COLOR_OFF, TextAlign::TOP_LEFT, "ESPHome");
it.strftime(400, 300, id(helvetica_48), COLOR_OFF, TextAlign::CENTER, "%Y-%m-%d", id(esptime).now());
it.strftime(400, 400, id(helvetica_96), COLOR_OFF, TextAlign::CENTER, "%H:%M", id(esptime).now());
if (id(system_status).state) {
it.print(700, 100, id(helvetica_48), COLOR_OFF, TextAlign::TOP_RIGHT, "Online");
} else {
it.print(700, 100, id(helvetica_48), COLOR_OFF, TextAlign::TOP_RIGHT, "Offline");
}
See Also
--------
- :doc:`index`
- `Arduino Inkplate 6 library <https://github.com/e-radionicacom/Inkplate-6-Arduino-library>`__ by `E-radionica.com <https://e-radionica.com/>`__
- :ghedit:`Edit`

View File

@ -277,7 +277,16 @@ arguments after the format string in the right order.
// %% - literal % sign
it.printf(0, 0, id(my_font), "Temperature: %.1f°C, Humidity: %.1f%%", id(temperature).state, id(humidity).state);
To display a text string from a ``text_sensor``, append ``.c_str()`` to the end of your variable.
.. code-block:: yaml
display:
- platform: ...
# ...
lambda: |-
it.printf(0, 0, id(my_font), "Text to follow: %s", id(template_text).state.c_str());
The last printf tip for use in displays I will discuss here is how to display binary sensor values. You
*could* of course just check the state with an ``if`` statement as the first few lines in the example below, but if
you want to be efficient you can use an *inline if* too. With the ``%s`` print specifier you can tell it to

View File

@ -15,7 +15,7 @@ The ``lcd_pcf8574`` display platform allows you to use standard character-based
with ESPHome. This integration is only for LCD displays that display individual characters on a screen (usually 16-20 columns
and 2-4 rows), and not for LCD displays that can control each pixel individually.
This version of the LCD integration is for LCD displays with an PCF8574 connected to all the data pins. This has
This version of the LCD integration is for LCD displays with a PCF8574 connected to all the data pins. This has
the benefit that you only need to connect two data wires to the ESP instead of the 6 or 10 with the :ref:`lcd-gpio`.
As the communication with the :ref:`I²C Bus <i2c>`, you need to have an ``i2c:`` section in your configuration.

View File

@ -104,7 +104,7 @@ This is roughly the code used to display the MAX7219 pictured in the image.
Scrolling
*********
By default the MAX7219Digit display has scroll enabled. The paramaters can be set in the YAML file.
By default the MAX7219Digit display has scroll enabled. The parameters can be set in the YAML file.
They can also be changed in the Lambda by adding the following command:
.. code-block:: cpp

View File

@ -83,6 +83,7 @@ See Also
--------
- :doc:`index`
- :doc:`/components/binary_sensor/nextion`
- :apiref:`nextion/nextion.h`
- `Simple Nextion Library <https://github.com/bborncr/nextion>`__ by `Bentley Born <https://github.com/bborncr>`__
- `Official Nextion Library <https://github.com/itead/ITEADLIB_Arduino_Nextion>`__ by `iTead <https://www.itead.cc/>`__

View File

@ -28,18 +28,18 @@ There are numerous board types out there. Some initialize differently as well. T
# Example configuration entry
display:
- platform: st7735
model: "INITR_18BLACKTAB"
reset_pin: D4
cs_pin: D1
dc_pin: D2
rotation: 0
device_width: 128
device_height: 160
col_start: 0
row_start: 0
eight_bit_color: true
update_interval: 5s
- platform: st7735
model: "INITR_18BLACKTAB"
reset_pin: D4
cs_pin: D1
dc_pin: D2
rotation: 0
devicewidth: 128
deviceheight: 160
colstart: 0
rowstart: 0
eightbitcolor: true
update_interval: 5s
Configuration variables:
************************
@ -68,7 +68,7 @@ Models:
- INITR_GREENTAB
- INITR_REDTAB
- INITR_BLACKTAB
- INITR_MIN_I160X80
- INITR_MINI160X80
- INITR_18BLACKTAB
- INITR_18REDTAB

View File

@ -85,7 +85,7 @@ To use colors in your lambada:
display:
...
lambda: |-
it.rectangle(0, 0, it.get_width(), it.get_height(), id(my_red);
it.rectangle(0, 0, it.get_width(), it.get_height(), id(my_red));
To bring in color images:
@ -120,7 +120,7 @@ Wi-Fi, API, and OTA configuration. It defines:
- time, for display...on the display
- the SPI configuration for communicating with the display
- the display component itself, for use on the TTGO module
- a lambada which paints the screen as shown in the picture above:
- a lambda which paints the screen as shown in the picture above:
- blue borders, with a sort of "title bar" along the top
- "ESPHome" in yellow in the top left corner
@ -130,7 +130,7 @@ Wi-Fi, API, and OTA configuration. It defines:
To use this example, you need only to provide the font file, "Helvetica.ttf" (or update it to
a font of your choosing) and an image file, "image.png" (it may also be a ".jpg"). Place these
into the same directory as the YAML configuration file itself. Comment/Uncomment/Modify the
appropriate lines of C code in the lambada to hide or show the image or text as you wish.
appropriate lines of C code in the lambda to hide or show the image or text as you wish.
.. code-block:: yaml
@ -222,7 +222,7 @@ appropriate lines of C code in the lambada to hide or show the image or text as
- file: "image.png"
id: my_image
resize: 200x200
type: RGB565
type: RGB24
time:
- platform: homeassistant

View File

@ -13,7 +13,7 @@ The ``tm1637`` display platform allows you to use the popular TM1637 7-segment d
TM1637 7-Segment Display.
The module can be powered with 5v or with 3.3v too. To display the colon punctiation use the
The module can be powered with 5v or with 3.3v too. To display the colon punctuation use the
``.`` in the colon place. (See clock example below)
@ -48,7 +48,7 @@ Rendering Lambda
The TM1637 has a similar API to the fully fledged :ref:`display-engine`, but it's only a subset as the TM1637
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 TM1637 instance (see API Reference).
as with all other displays. In this case however, ``it`` is a TM1637 instance (see API Reference).
The most basic operation with the TM1637 is wiring a simple number to the screen as in the configuration example
at the top of this page. But even though you're passing in a string (here ``"0123"``), ESPHome converts it

View File

@ -98,7 +98,7 @@ Configuration variables:
full update for all other models.
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the display.
See :ref:`display-engine` for more information.
- **update_interval** (*Optional*, :ref:`config-time`): The interval to re-draw the screen. Defaults to ``10s``.
- **update_interval** (*Optional*, :ref:`config-time`): The interval to re-draw the screen. Defaults to ``10s``, use ``never`` to only manually update the screen via ``component.update``.
- **pages** (*Optional*, list): Show pages instead of a single lambda. See :ref:`display-pages`.
- **spi_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the :ref:`SPI Component <spi>` if you want
to use multiple SPI buses.

View File

@ -284,6 +284,30 @@ Configuration for TTGO-Camera Plus
horizontal_mirror: false
# Image settings
name: My Camera
# ...
Configuration for TTGO-Camera Mini
----------------------------------
.. code-block:: yaml
# Example configuration entry
esp32_camera:
external_clock:
pin: GPIO32
frequency: 20MHz
i2c_pins:
sda: GPIO13
scl: GPIO12
data_pins: [GPIO5, GPIO14, GPIO4, GPIO15, GPIO37, GPIO38, GPIO36, GPIO39]
vsync_pin: GPIO27
href_pin: GPIO25
pixel_clock_pin: GPIO19
# Image settings
name: My Camera
# ...

View File

@ -18,7 +18,7 @@ connecting the wires from each device back to the two I²C pins on the ESP.
.. code-block:: yaml
# Example configuration entry
# Example configuration entry for ESP32
i2c:
sda: 21
scl: 22

View File

@ -5,7 +5,7 @@ Cold White + Warm White Light
:description: Instructions for setting up Cold White + Warm White lights.
:image: brightness-medium.png
The ``cwww`` light platform creates an Cold-White+Warm-White
The ``cwww`` light platform creates a Cold-White+Warm-White
light from 2 :ref:`float output components <output>` (one for each channel). The two
channels will be mixed using the color temperature configuration options.

View File

@ -829,7 +829,7 @@ E1.31 Effect
This effect enables controlling addressable lights using UDP-based
E1.31_ protocol.
JINX_ can be used to control E1.31_ enabled ESPHome.
For Example JINX_ or Hyperion.NG_ could be used to control E1.31_ enabled ESPHome.
.. code-block:: yaml
@ -875,6 +875,7 @@ Configuration variables:
.. _E1.31: https://www.doityourselfchristmas.com/wiki/index.php?title=E1.31_(Streaming-ACN)_Protocol
.. _JINX: http://www.live-leds.de/jinx-v1-3-with-resizable-mainwindow-real-dmx-and-sacne1-31/
.. _Hyperion.NG: https://github.com/hyperion-project/hyperion.ng
Adalight Effect
***************

View File

@ -6,7 +6,7 @@ Neopixelbus Light
:image: color_lens.png
The ``neopixelbus`` light platform allows you to create RGB lights
in ESPHome for a individually addressable lights like NeoPixel or WS2812.
in ESPHome for an individually addressable lights like NeoPixel or WS2812.
It is very similar to the :doc:`fastled` platform.
in fact most addressable lights are supported through both light platforms. The

View File

@ -10,9 +10,10 @@ The ``partition`` light platform allows you to combine multiple addressable ligh
This platform also allows splitting up an addressable lights into multiple segments, so that
segments can be individually controlled.
Similarly, a single light strip can be partitioned into multiple partitions with this integration.
Splitting a single LED strip
----------------------------
If you want to do this, you may run into strange behavior like that the original light entity (e.g., ``fastled_clockless``)
If you want to split a strip, you may run into strange behavior like that the original light entity (e.g., ``fastled_clockless``)
may be conflicting with the partition. For better control over which segments of the strip will overlap each other,
mark the original ``light`` as ``internal: true``.
@ -21,16 +22,54 @@ mark the original ``light`` as ``internal: true``.
# Example configuration entry
light:
- platform: partition
name: "Partition Light"
name: "Partition Light 1"
segments:
# Use first LED from the light with ID light1
# Use first 10 LEDs from the light with ID light1
- id: light1
from: 0
to: 0
# Use 10 leds from light with ID light2 starting 2nd LED
to: 9
- platform: partition
name: "Partition Light 2"
segments:
# Use LEDs 11-20 from the light with ID light1
- id: light1
from: 10
to: 19
# Example for light segment source
- platform: fastled_clockless
id: light1
# You may want (but don't need) this
internal: true
# Other settings
Joining multiple LED strips into one
------------------------------------
.. code-block:: yaml
# Example configuration entry
light:
- platform: partition
name: "Partition Light"
segments:
# Use first 10 LEDs from the light with ID light1
- id: light1
from: 0
to: 9
# Use first 10 LEDs from light with ID light2
# they become LEDs 11-20 in the joined partition
- id: light2
from: 1
to: 10
from: 0
to: 9
# Example for light segment source
- platform: fastled_clockless
id: light1
# You may want (but don't need) this
internal: true
# Other settings
# Example for light segment source
- platform: fastled_clockless

View File

@ -62,7 +62,7 @@ Configuration variables:
Color Interlock
***************
With some LED bulbs, setting the RGB channels to maximum whilst wanting a white light will have a undesired
With some LED bulbs, setting the RGB channels to maximum whilst wanting a white light will have an undesired
hue affect. Additionally, the brightness command may not work as expected depending upon configuration,
leaving users to adjust the white component level separately. For these cases a new configration variable
has been added: color_interlock.

View File

@ -81,8 +81,8 @@ Configuration variables:
change the brightness and would have to toggle the light using the physical buttons.
- **min_value** (*Optional*, int, default 0): The lowest dimmer value allowed. My dimmer had a
minimum of 25 and wouldn't even accept anything lower, but this option is available if necessary.
- **max_value** (*Optional*, int, default 255): The highest dimmer value allowed. My dimmer had a
maximum of 255 which seems like it would be the typical value.
- **max_value** (*Optional*, int, default 255): The highest dimmer value allowed. Most dimmers have a
maximum of 255, but dimmers with a maximum of 1000 can also be found. Try what works best.
- All other options from :ref:`Light <config-light>`.
- At least one of *dimmer_datapoint* or *switch_datapoint* must be provided.

View File

@ -127,7 +127,7 @@ Next, we can manually set the log levels in the configuration like this:
mqtt.client: ERROR
Please note that the global log level determines what log messages are
saved in the binary. So for example a ``INFO`` global log message will
saved in the binary. So for example an ``INFO`` global log message will
purge all ``DEBUG`` log statements from the binary in order to conserve
space. This however means that you cannot set tag-specific log levels
that have a lower severity than the global log level.

View File

@ -7,7 +7,7 @@ OTA Update Component
:keywords: Xiaomi, Mi Flora, BLE, Bluetooth
With the OTA (Over The Air) update component you can upload your
firmware binaries to your node without having to use an USB cable for
firmware binaries to your node without having to use a USB cable for
uploads. ESPHome natively supports this through its ``run`` and
``upload`` helper scripts.

View File

@ -35,7 +35,7 @@ The output level is a percentage of the board supply voltage (VDD_A) - generally
- platform: monochromatic
output: dac_output
gamma_correct: 1.4
id: dac_output
id: mono_light
Configuration variables:

View File

@ -46,7 +46,7 @@ Configuration variables:
decoding process. Defaults to ``25%``.
- **buffer_size** (*Optional*, int): The size of the internal buffer for storing the remote codes. Defaults to ``10kB``
on the ESP32 and ``1kB`` on the ESP8266.
- **memory_blocks** (*Optional*, int): The number of RMT memory blocks used. Only used on ESP32 platfrom. Defaults to
- **memory_blocks** (*Optional*, int): The number of RMT memory blocks used. Only used on ESP32 platform. Defaults to
``3``.
- **filter** (*Optional*, :ref:`time <config-time>`): Filter any pulses that are shorter than this. Useful for removing
glitches from noisy signals. Defaults to ``10us``.

View File

@ -74,6 +74,9 @@ Configuration variables:
- **transmitter_id** (*Optional*, :ref:`config-id`): The remote transmitter to send the
remote code with. Defaults to the first one defined in the configuration.
If you're looking for the same functionality as is default in the ``rpi_rf`` integration in
Home Assistant, you'll want to set the **times** to 10 and the **wait_time** to 0s.
If you're looking for the same functionality as is default in the ``rpi_rf`` integration in
Home Assistant, you'll want to set the **times** to 10 and the **wait_time** to 0s.

View File

@ -112,7 +112,7 @@ Send a raw RF code using this action in automations.
on_...:
then:
- rf_bridge.send_code:
- rf_bridge.send_raw:
raw: AAA5070008001000ABC12355
Configuration options:
@ -159,7 +159,7 @@ Configuration options:
Portisch firmware
-----------------
If you have flashed the secondary MCU with the `"Portisch firmware" <https://github.com/Portisch/RF-Bridge-EFM8BB1>`,
If you have flashed the secondary MCU with the `Portisch firmware <https://github.com/Portisch/RF-Bridge-EFM8BB1>`__,
ESPHome is able to receive the extra protocols that can be decoded as well as activate the other modes supported.

View File

@ -60,7 +60,7 @@ Sensor
The ``ads1115`` sensor allows you to use your ADS1115 sigma-delta ADC
sensors (`datasheet <http://www.ti.com/lit/ds/symlink/ads1115.pdf>`__, `Adafruit`_) with ESPHome.
First, setup a :ref:`ADS1115 Hub <ads1115-component>` for your ADS1115 sensor and then use this
First, setup an :ref:`ADS1115 Hub <ads1115-component>` for your ADS1115 sensor and then use this
sensor platform to create individual sensors that will report the
voltage to Home Assistant.

View File

@ -32,7 +32,7 @@ your configuration for this sensor to work.
update_interval: 60s
By default the **measurement_time** is set to ``69`` which will result into measurements up
to 54612.5 lx for this sensor. For low-light situtations consider to choose a higer
to 54612.5 lx for this sensor. For low-light situtations consider to choose a higher
measurement_time up to ``254`` which will result in a maximum measurement range up to 14835 lx.
For sunny scenes (for example outdoors with sunlight) use lower values down to ``31`` which will
give you the maximum measurement range up to 121556 lx.
@ -44,7 +44,7 @@ Configuration variables:
- **address** (*Optional*, int): Manually specify the I²C address of the sensor.
Defaults to ``0x23`` (address if address pin is pulled low). If the address pin is pulled high,
the address is ``0x5C``.
- **measurement_time** (*Optional*, int): Manually specifiy the measurement time between ``31``
- **measurement_time** (*Optional*, int): Manually specify the measurement time between ``31``
and ``254``. Defaults to ``69``.
- **resolution** (*Optional*, string): The resolution of the sensor in lx. One of ``4.0``,
``1.0``, ``0.5``. Defaults to ``0.5`` (the maximum resolution).

View File

@ -111,4 +111,5 @@ See Also
- :doc:`bmp085`
- :apiref:`bme680/bme680.h`
- `BME680 Sensor API <https://github.com/BoschSensortec/BME680_driver>`__ by `Bosch Sensortec <https://www.bosch-sensortec.com/>`__
- `Custom BME680 component with indoor air quality sensor <https://github.com/trvrnrth/esphome-bsec-bme680>`__
- :ghedit:`Edit`

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@ -150,7 +150,7 @@ Where HARDWARE can be any of:
extern const float HARDWARE;
/// For components that import data from directly connected sensors like DHT.
extern const float DATA;
/// Alias for DATA (here for compatability reasons)
/// Alias for DATA (here for compatibility reasons)
extern const float HARDWARE_LATE;
/// For components that use data from sensors like displays
extern const float PROCESSOR;

View File

@ -67,7 +67,6 @@ If you want just the scaled value you can use the read_data function
name: Freezer Temperature
Configuration variables:
- **id** (**Required**, :ref:`config-id`): The id to use for this MCP3008 component.
- **cs_pin** (**Required**, int): The SPI cable select pin to use

View File

@ -1,8 +1,8 @@
SCD30 CO₂, Temperature and Relative Humidty Sensor
==================================================
SCD30 CO₂, Temperature and Relative Humidity Sensor
===================================================
.. seo::
:description: Instructions for setting up SCD30 CO₂ Temperature and Relative Humidty Sensor
:description: Instructions for setting up SCD30 CO₂ Temperature and Relative Humidity Sensor
:image: scd30.jpg
The ``scd30`` sensor platform allows you to use your Sensiron SCD30 CO₂

View File

@ -118,7 +118,7 @@ Wiring:
-------
The sensor has a 5 pin JST ZHR type connector, with a 1.5mm pitch. (`Matching connector housing <https://octopart.com/zhr-5-jst-279203>`__, `datasheet <http://www.farnell.com/datasheets/1393424.pdf>`__)
To force the force the sensor into I²C mode, the SEL pin (Interface Select pin no.5) should be shorted to ground (pin no.4)
To force the sensor into I²C mode, the SEL pin (Interface Select pin no.5) should be shorted to ground (pin no.4)
.. figure:: images/sps30-wiring.png
:align: center

View File

@ -6,7 +6,7 @@ TMP117 Temperature Sensor
:image: tmp117.jpg
:keywords: TMP117
The TMP117 Temperature+Humidity sensor allows you to use your TMP117
The TMP117 Temperature sensor allows you to use your TMP117
(`datasheet <https://www.ti.com/lit/ds/symlink/tmp117.pdf>`__,
`sparkfun <https://www.sparkfun.com/products/15805>`__)
sensors with ESPHome.

View File

@ -23,6 +23,45 @@ Configuration variables:
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
Human readable sensor
---------------------
The sensor reports uptime in seconds which is good for automations
but is hard to read for humans, this example creates a text sensor
with human readable output.
.. code-block:: yaml
# Example configuration entry
text_sensor:
- platform: template
name: Uptime Human Readable
id: uptime_human
icon: mdi:clock-start
sensor:
- platform: uptime
name: Uptime Sensor
id: uptime_sensor
update_interval: 60s
on_raw_value:
then:
- text_sensor.template.publish:
id: uptime_human
state: !lambda |-
int seconds = round(id(uptime_sensor).raw_state);
int days = seconds / (24 * 3600);
seconds = seconds % (24 * 3600);
int hours = seconds / 3600;
seconds = seconds % 3600;
int minutes = seconds / 60;
seconds = seconds % 60;
return (
(days ? String(days) + "d " : "") +
(hours ? String(hours) + "h " : "") +
(minutes ? String(minutes) + "m " : "") +
(String(seconds) + "s")
).c_str();
See Also
--------

View File

@ -23,7 +23,7 @@ monitors with ESPHome.
:align: center
:width: 80.0%
ZyAura ZGm053U connection diagram (1 - empty, 2 - clock, 3 - data, 4 - GND).
ZyAura ZGm053U connection diagram (1 - empty, 2 - clock, 3 - data, 4 - GND). In some other models the clock and data pins are swapped.
.. code-block:: yaml

View File

@ -14,7 +14,7 @@ SPI is a very common high-speed protocol for a lot of devices. The SPI bus usual
share this line. Sometimes also called ``SCK``.
- **CS** (chip select): Is used to tell the receiving device when it should listen for data. Each device has
an individual CS line. Sometimes also called ``SS``. If the SPI bus has a single device, its CS pin
can somtimes be connected to ground to tell it that it is allways selected.
can sometimes be connected to ground to tell it that it is always selected.
- **MOSI** (also DIN): Is used to send data from the master (the ESP) to the receiving device. All devices on the bus can
share this line.
- **MISO** (also DOUT): Is used to receive data. All devices on the bus can

View File

@ -2,7 +2,7 @@ Arduino Port Expander
=====================
.. seo::
:description: Instructions on using an Arduino board, like the Pro Mini for expanding ports of a ESPHome node
:description: Instructions on using an Arduino board, like the Pro Mini for expanding ports of an ESPHome node
:image: arduino_pro_mini.jpg
:keywords: Arduino port expander extender ESPHome

View File

@ -129,7 +129,7 @@ Note your ``address`` and ``model`` might be different, use the scan option to f
Rendering
---------
- Alignment of text can use different reference points, for example ``TOP_RIGHT`` or ``BASELINE_LEFT``, which all are defined in :apiref:`display/display.h`.
- Alignment of text can use different reference points, for example ``TOP_RIGHT`` or ``BASELINE_LEFT``, which all are defined in :apiref:`display/display_buffer.h`.
- The property ``has_state()`` on a sensor is useful as it can take some seconds to get the data from Home Assistant and you may not want to display ``Nan``
- Refer to the rendering engine :ref:`display-engine` for more features (it can draw lines and circles too!)

View File

@ -14,7 +14,7 @@ This configuration will expose a :doc:`/components/light/binary` and a :doc:`/co
To get this working in ESPHome you first need to create a :doc:`/components/output/custom` to control the iFan02.
Create a ifan02.h file:
Create an ifan02.h file:
.. code-block:: c++

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

View File

@ -11,7 +11,7 @@ Compared to a dashboard screen the infostrip can only communicate the informatio
- color (e.g., red = error/warning, orange = waring, green = ok, blue = active)
- intensity (off, scaled brightness)
- mode (continous vs. flashing, flashing or strobe is not recommened)
- mode (continuous vs. flashing, flashing or strobe is not recommend)
- light position on stripe
.. figure:: images/infostrip-detail.jpg

View File

@ -0,0 +1,160 @@
IWOOLE Table Lamp
===================================
.. seo::
:description: Instructions for flashing and configuring IWOOLE Table Lamps.
The IWOOLE Table Lamp is a RGBW lamp normally configured using the Tuya Smart App.
It is available from various retailers online or directly from `iwoole.com <https://www.iwoole.com/product/category/wifi-smart-table-lamp/>`__.
.. figure:: images/iwoole_rgbw_table_lamp.png
:align: center
:width: 50.0%
1. Device overview
==================
.. note::
The following information relates to the desk model depicted above. A free-standing version and a desk version with a longer arm are available. They are likely to share the same internals and configuration, but I can not be certain.
My device had no external markings at all.
The device is a basic 4-channel PWM RGBW light in a simple elegant housing.
The LEDs are not individually addressable.
No other sensors, outputs or status LEDs are available.
The MOSFETs for the different color channels are connected as follows:
- GPIO04: White
- GPIO12: Green
- GPIO13: Blue
- GPIO14: Red
1.1 Internal markings
----------------------
.. figure:: images/iwoole_rgbw_table_lamp_internal_1.jpg
:align: center
:width: 40.0%
.. figure:: images/iwoole_rgbw_table_lamp_internal_2.jpg
:align: center
:width: 40.0%
.. figure:: images/iwoole_rgbw_table_lamp_internal_3.jpg
:align: center
:width: 40.0%
2. ESPHome configuration
========================
Since there is only one RGBW light to configure the .yaml file is fairly straightforward.
Alternatively, you could configure each channel as a separate light if desired.
I prefer to use the :ref:`color-interlock <rgbw_color_interlock>` option along with the configuration below.
2.1 Example configuration
-------------------------
.. code-block:: yaml
esphome:
name: "IWOOLE Table Lamp"
#ESP type is ESP8266EX with 1MB flash
platform: ESP8266
board: esp01_1m
# Insert wifi and api configuration here
# Configuration for IWOOLE PWM light
light:
- platform: rgbw
name: "Light"
red: output_red
green: output_green
blue: output_blue
white: output_white
output:
- platform: esp8266_pwm
id: output_red
pin: GPIO14
- platform: esp8266_pwm
id: output_green
pin: GPIO12
- platform: esp8266_pwm
id: output_blue
pin: GPIO13
- platform: esp8266_pwm
id: output_white
pin: GPIO4
3. Flashing
===========
There are two ways to get ESPHome onto this device.
For both ways you will need to get the binary file with ESPHome's software by compiling your configuration and then downloading the binary.
3.1 Tuya-convert
----------------
.. note::
According to `blakadder.com <https://templates.blakadder.com/iwoole_table_lamp.html>`__ recent versions of this device can't be flashed via this method anymore.
The first device I bought could be flashed using Tuya-convert. However, I still wanted to try and flash it via serial to see if it was possible. I messed this up and had to buy a new unit. This new unit could not be flashed using Tuya-convert.
Unfortunately it looks like new devices are being shipped with new firmware preloaded.
If the device has older firmware but is connected to the Tuya Smart app, it might upgrade and lose it's ability to be flashed.
For instructions on how to actually flash using `Tuya-convert <https://github.com/ct-Open-Source/tuya-convert>`__ please see the linked GitHub page.
To get this device into flashing mode, from off, switch it on-off-on-off-on.
Load the Tasmota binary when prompted, and you can upload the ESPHome firmware from there.
3.2 Serial connection
---------------------
.. warning::
The circuit inside will be exposed to mains voltage. Do not connect your device to the mains when flashing. Flashing this device via a serial connection will involve precarious soldering and cutting through insulating heat-shrink tubing which will have to be replaced.
If you are uncomfortable with this, or are not confident around mains voltage, do not attempt to do this! Using the Tuya-convert method is preferred.
1. Disconnect the device from mains voltage!
2. Open the device. The plastic and aluminum halves can be separated by twisting the plastic part counter-clockwise. If you're okay with a few scuffs you can also use a screwdriver (or a spudger) to separate the two halves.
3. Remove the two screws holding the round plate with the LEDs. It is connected to the main PCB with a little cable. Make note of the orientation of this connection to ensure you reconnect it correctly later.
4. Carefully remove the heat-shrink tubing around the two main PCBs.
5. Like any ESP device, to flash this chip using serial you'll need 3V3, GND, RX, TX and GPIO0
.. figure:: images/iwoole_rgbw_table_lamp_connections_top.jpg
:align: left
:width: 60.0%
There are pads available for 3V3 and GPIO0 on the back. I have tried to find easier solder points on the front, marked in the image above.
Be aware that the pin labeled VCC does not carry 3V3, but 24V DC. If, for any reason, you wanted to connect any other sensor or component, the exposed pin for GPIO5 can be used, in addition to RX (GPIO3) and TX (GPIO1).
.. figure:: images/iwoole_rgbw_table_lamp_connections_bottom.jpg
:align: left
:width: 60.0%
I have made the following connections, I used the pad for GPIO0 because I did not know of the other connection point yet.
.. figure:: images/iwoole_rgbw_table_lamp_wires_top.jpg
:align: left
:width: 60.0%
.. figure:: images/iwoole_rgbw_table_lamp_wires_bottom.jpg
:align: left
:width: 60.0%
6. Flash the chip as you would with any other, using `ESPHome-Flasher <https://github.com/esphome/esphome-flasher>`__ or any other tool of your choosing. While this is not meant as a tutorial on flashing ESP chips, some general hints:
- Always double-check your connections, and don't change any when the ESP is powered. I fried one of these mood lights this way.
- Ensure GPIO0 is connected to ground to get the device into programming mode, but also don't forget to disconnect this when you expect the device to start in normal mode.
- When working with a breadboard, an FTDI adapter and jumper wires, it is very easy for something to become disconnected. Try to use as few wires as possible.
7. Re-apply some heat-shrink tubing or cover the PCBs in electrical tape. Make sure none of the traces or solder joints are exposed anymore. Re-connect the LEDs (see cable orientation in one of the images above).
8. Screw down the plate with LEDs and close the device.
See Also
========
- :doc:`/components/light/index`
- :doc:`/components/light/rgbw`
- :doc:`/components/output/index`
- :doc:`/components/output/esp8266_pwm`
- :ghedit:`Edit`

View File

@ -120,7 +120,7 @@ Thanks to the `existing work <https://github.com/arendst/Sonoff-tasmota/wiki/Mir
3.1 Monochromatic Bulbs
***********************
So the brightness of the bulb can be controlled we use the ``esp8266_pwm`` output component connected to the light component using the id configuration
The brightness of the bulb can be controlled using the ``esp8266_pwm`` output component connected to the light component using the id configuration
variable ``output_component1``.
.. code-block:: yaml
@ -152,7 +152,9 @@ variable ``output_component1``.
output:
- platform: esp8266_pwm
id: output_component1
# May need to use GPIO14 instead for certain globes
pin: GPIO13
3.2 Cold + Warm White Bulbs
***************************

View File

@ -49,8 +49,10 @@ With this you can use automations or lambda to set switch or sensor states.
void loop() override {
const int max_line_length = 80;
static char buffer[max_line_length];
if (available() && readline(read(), buffer, max_line_length) > 0) {
publish_state(buffer);
while (available()) {
if(readline(read(), buffer, max_line_length) > 0) {
publish_state(buffer);
}
}
}
};
@ -90,7 +92,7 @@ Example usage
Here is an example switch using the uart text sensor to set switch state.
Here we use interval to request status from the device. The reponse will be stored in uart text sensor.
Here we use interval to request status from the device. The response will be stored in uart text sensor.
Then the switch uses the text sensor state to set its own state.
.. code-block:: yaml

View File

@ -48,7 +48,7 @@ interface.
For this guide you will need:
- Sonoff T1 UK 3 Gang 😉
- An USB to UART Bridge for flashing the device. These can be bought on Amazon for less than 5 dollars.
- A USB to UART Bridge for flashing the device. These can be bought on Amazon for less than 5 dollars.
Note that the bridge *must* be 3.3V compatible. Otherwise you will destroy your Sonoff.
- Jumper wires to connect the UART bridge to the header pins and to connect GPIO0 to the Ground.
- Computer running ESPHome or Hass.io add-on.

View File

@ -44,7 +44,7 @@ interface.
For this guide you will need:
- Sonoff T3 EU 3 Gang 😉
- An USB to UART Bridge for flashing the device. These can be bought on Amazon for less than 5 dollars.
- A USB to UART Bridge for flashing the device. These can be bought on Amazon for less than 5 dollars.
Note that the bridge *must* be 3.3V compatible. Otherwise you will destroy your Sonoff.
- Jumper wires to connect the UART bridge to the header pins and to connect GPIO0 to the Ground.
- Computer running ESPHome or the Home Assistant ESPHome add-on.

View File

@ -800,7 +800,7 @@ using script modes ``single`` and ``restart`` respectively.
- light.turn_off: hallway_light
...
on_...: # can be called from diffrent wall switches
on_...: # can be called from different wall switches
- script.execute: hallway_light_script
Sometimes you'll also need a timer which does not perform any action, that is ok too, just

View File

@ -20,7 +20,18 @@ ESPHome's command line interface always has the following format
.. code-block:: console
esphome livingroom.yaml kitchen.yaml run
esphome livingroom.yaml kitchen.yaml run
``--help`` Option
--------------------
.. option:: -h|--help
Output possible <commands> and [arguments].
Note: you can also use ``--help`` for any command to get arguments specific to that command.
.. code-block:: console
esphome <some_command> --help
``--verbose`` Option
--------------------
@ -207,5 +218,30 @@ through a graphical user interface.
If set, opens the dashboard UI in a browser once the server is up and running.
``logs`` Command
---------------------
.. program:: esphome logs
The ``esphome <CONFIG> logs`` command validates the configuration and shows all logs.
.. option:: --topic TOPIC
Manually set the topic to subscribe to.
.. option:: --username USERNAME
Manually set the username.
.. option:: --password PASSWORD
Manually set the password.
.. option:: --client-id CLIENT_ID
Manually set the client id.
.. option:: --serial-port SERIAL_PORT
Manually specify a serial port to use. For example ``/dev/cu.SLAB_USBtoUART``.

View File

@ -225,7 +225,7 @@ Build
docker run --rm -v "${PWD}/":/data/esphomedocs -p 8000:8000 -it esphome/esphome-docs
With ``PWD`` refering to the root of the ``esphome-docs`` git repository. Then go to ``<CONTAINER_IP>:8000`` in your browser.
With ``PWD`` referring to the root of the ``esphome-docs`` git repository. Then go to ``<CONTAINER_IP>:8000`` in your browser.
This way, you don't have to install the dependencies to build the documentation.

View File

@ -22,6 +22,7 @@ unless it's truly exceptional, etc.
Blog Posts & Videos
-------------------
- `Build a cheap air quality sensor <https://www.pieterbrinkman.com/2021/02/03/build-a-cheap-air-quality-meter-using-esphome-home-assistant-and-a-particulate-matter-sensor/>`__ by `Pieter <http://www.pieterbrinkman.com>`__
- `Collecting Temperature Data from ELA Bluetooth Puck with ESPHome <https://blog.weinreich.org/posts/2020/2020-12-14-esphome-ble-ela/>`__ by `lairsdragon <https://www.weinreich.org/>`__
- `Make your fireplace smart (blog series) <http://www.pieterbrinkman.com/category/home-automation/make-your-bellfire-fireplace-smart/>`__ by `Pieter <http://www.pieterbrinkman.com>`__
- `Ultrasonic Salt Level Sensor <https://adonno.com/salt-level-sensor/>`__ by `Adonno <https://adonno.com>`__
@ -43,6 +44,9 @@ Blog Posts & Videos
- `Washing machine phases detector (Sonoff Pow R2) <https://github.com/Gio-dot/Washing-Machine-Sonoff-Pow-R2-Esphome>`__ by `Gio-dot <https://github.com/Gio-dot>`__
- `Sonoff L1 LED Strip <https://emorydunn.com/blog/2020/08/10/sonoff-l1-home-assistant/>`__ by :ghuser:`emorydunn`
- `ESPHome for SP501E LED Controller <https://margau.net/posts/2020-11-21-2h-led-hack/>`__ by `margau <https://margau.net>`__
- `4$ Xiaomi mijia thermometer LYWSD03MMC + ESP32 + ESPhome <https://omarghader.github.io/how-to-monitor-your-home-temperature-with-esp32-and-xiaomi-mijia-using-esphome/>`__ by `Omar GHADER <https://omarghader.github.io/post>`__
- `Baseboard (Line Voltage) Thermostat from Smart Switch <https://github.com/rjmurph2241/baseboard-heating-thermostat>`__ by :ghuser:`rjmurph2241`
- `Office Doorbell <https://github.com/shish/esphome-projects/blob/master/office-doorbell.md>`__ by :ghuser:`shish`
Custom Components & Code
------------------------
@ -77,7 +81,7 @@ Custom Components & Code
Sample Configurations
---------------------
- `esphome-configs.io <https://esphome-configs.io/>`__ by :ghuser:`jonathanadams`
- `esphome-devices.com <https://www.esphome-devices.com/>`__ by :ghuser:`jonathanadams`
- `Ultrasonic Sensor for detecting if car in Garage <https://gist.github.com/Snipercaine/f3908a051fd79e6d7d7b765152666c2a>`__ by `DrZzs <http://drzzs.com/>`__
- `Sonoff POW R2 Washing Machine Sensor <https://gist.github.com/frenck/1b4f0ea98f1f6d86d597c2d9636636db>`__ by `Frenck <https://frenck.dev>`__
- `Sonoff iFan02 Custom Output Example <https://gist.github.com/quazzie/09ee3ef2c419ecbcf979a7410062481b>`__ by :ghuser:`quazzie`

View File

@ -260,7 +260,7 @@ Command reference:
# Warning: this command is currently not working with Docker on MacOS. (see note below)
docker run --rm -v "${PWD}":/config --net=host -it esphome/esphome
# Start dashboard on port 5062 (MacOS specific command)
# Start dashboard on port 6052 (MacOS specific command)
docker run --rm -p 6052:6052 -e ESPHOME_DASHBOARD_USE_PING=true -v "${PWD}":/config -it esphome/esphome
# Setup a bash alias:

View File

@ -187,6 +187,7 @@ After that, you will be able to access the dashboard through ``localhost:6052``.
See Also
--------
- :doc:`cli`
- :doc:`ESPHome index </index>`
- :doc:`getting_started_hassio`
- :ghedit:`Edit`

View File

@ -103,6 +103,9 @@ to the configuration like this:
In above example, we're simply adding a switch that's called "Living Room Dehumidifier" (could control
anything really, for example lights) and is connected to the pin ``GPIO5``.
Connecting your device to Home Assistant
----------------------------------------
Now when you go to the Home Assistant "Integrations" screen (under "Configuration" panel), you
should see the ESPHome device show up in the discovered section (although this can take up to 5 minutes).
Alternatively, you can manually add the device by clicking "CONFIGURE" on the ESPHome integration

View File

@ -94,53 +94,61 @@ that have made it into the `ESPHome organization's <https://github.com/esphome>`
Author & Main Developer
***********************
- `Otto Winter (@OttoWinter) <https://github.com/OttoWinter>`__ - 2352 contributions
- `Otto Winter (@OttoWinter) <https://github.com/OttoWinter>`__ - 2356 contributions
Contributors
************
(in alphabetical order)
- `0hax (@0hax) <https://github.com/0hax>`__ - 2 contributions
- `0hax (@0hax) <https://github.com/0hax>`__ - 4 contributions
- `2016for (@2016for) <https://github.com/2016for>`__ - 1 contribution
- `Pavel Golovin (@31337Ghost) <https://github.com/31337Ghost>`__ - 2 contributions
- `David Martin (@3ative) <https://github.com/3ative>`__ - 1 contribution
- `Aalian Khan (@AalianKhan) <https://github.com/AalianKhan>`__ - 5 contributions
- `Abel Matser (@abelmatser) <https://github.com/abelmatser>`__ - 1 contribution
- `Abílio Costa (@abmantis) <https://github.com/abmantis>`__ - 3 contributions
- `acshef (@acshef) <https://github.com/acshef>`__ - 1 contribution
- `adamgreg (@adamgreg) <https://github.com/adamgreg>`__ - 1 contribution
- `Attila Darazs (@adarazs) <https://github.com/adarazs>`__ - 2 contributions
- `adezerega (@adezerega) <https://github.com/adezerega>`__ - 1 contribution
- `Andrea Donno (@adonno) <https://github.com/adonno>`__ - 1 contribution
- `Adrian Cuzman (@adriancuzman) <https://github.com/adriancuzman>`__ - 2 contributions
- `Johan Bloemberg (@aequitas) <https://github.com/aequitas>`__ - 6 contributions
- `Anders (@ahd71) <https://github.com/ahd71>`__ - 1 contribution
- `Alexander Pohl (@ahpohl) <https://github.com/ahpohl>`__ - 2 contributions
- `Alexander Pohl (@ahpohl) <https://github.com/ahpohl>`__ - 4 contributions
- `Airy André (@airy10) <https://github.com/airy10>`__ - 1 contribution
- `akoivist (@akoivist) <https://github.com/akoivist>`__ - 1 contribution
- `Andrej Komelj (@akomelj) <https://github.com/akomelj>`__ - 3 contributions
- `Alexander Leisentritt (@Alex9779) <https://github.com/Alex9779>`__ - 9 contributions
- `Alone (@al-one) <https://github.com/al-one>`__ - 2 contributions
- `Alexander Leisentritt (@Alex9779) <https://github.com/Alex9779>`__ - 10 contributions
- `Alexandre Danault (@AlexDanault) <https://github.com/AlexDanault>`__ - 1 contribution
- `Alex Mekkering (@AlexMekkering) <https://github.com/AlexMekkering>`__ - 3 contributions
- `Alex (@alexyao2015) <https://github.com/alexyao2015>`__ - 5 contributions
- `Amish Vishwakarma (@amishv) <https://github.com/amishv>`__ - 3 contributions
- `András Bíró (@andrasbiro) <https://github.com/andrasbiro>`__ - 1 contribution
- `Andreas Hergert (@andreashergert1984) <https://github.com/andreashergert1984>`__ - 2 contributions
- `Andrzej (@andriej) <https://github.com/andriej>`__ - 1 contribution
- `Andreas (@anduchs) <https://github.com/anduchs>`__ - 1 contribution
- `anekinloewe (@anekinloewe) <https://github.com/anekinloewe>`__ - 1 contribution
- `ankycooper (@ankycooper) <https://github.com/ankycooper>`__ - 1 contribution
- `Nikolay Vasilchuk (@Anonym-tsk) <https://github.com/Anonym-tsk>`__ - 33 contributions
- `Nikolay Vasilchuk (@Anonym-tsk) <https://github.com/Anonym-tsk>`__ - 35 contributions
- `Adriaan Peeters (@apeeters) <https://github.com/apeeters>`__ - 4 contributions
- `Darius Ratkevičius (@aphex008) <https://github.com/aphex008>`__ - 1 contribution
- `Ash McKenzie (@ashmckenzie) <https://github.com/ashmckenzie>`__ - 1 contribution
- `Ash McKenzie (@ashmckenzie) <https://github.com/ashmckenzie>`__ - 2 contributions
- `Pavel Pletenev (@ASMfreaK) <https://github.com/ASMfreaK>`__ - 1 contribution
- `Achilleas Pipinellis (@axilleas) <https://github.com/axilleas>`__ - 1 contribution
- `Kamil Trzciński (@ayufan) <https://github.com/ayufan>`__ - 7 contributions
- `Nicholas Peters (@Azimath) <https://github.com/Azimath>`__ - 2 contributions
- `Florian Mösch (@badbadc0ffee) <https://github.com/badbadc0ffee>`__ - 4 contributions
- `Florian Mösch (@badbadc0ffee) <https://github.com/badbadc0ffee>`__ - 10 contributions
- `balk77 (@balk77) <https://github.com/balk77>`__ - 2 contributions
- `Paulus Schoutsen (@balloob) <https://github.com/balloob>`__ - 41 contributions
- `Andrew Zaborowski (@balrog-kun) <https://github.com/balrog-kun>`__ - 7 contributions
- `Andrew Zaborowski (@balrog-kun) <https://github.com/balrog-kun>`__ - 8 contributions
- `Rutger Nijhuis (@BananaPukeh) <https://github.com/BananaPukeh>`__ - 1 contribution
- `J. Nick Koston (@bdraco) <https://github.com/bdraco>`__ - 1 contribution
- `J. Nick Koston (@bdraco) <https://github.com/bdraco>`__ - 2 contributions
- `Ben Suffolk (@bensuffolk) <https://github.com/bensuffolk>`__ - 1 contribution
- `Bierchermuesli (@Bierchermuesli) <https://github.com/Bierchermuesli>`__ - 1 contribution
- `Jim Ekman (@blejdfist) <https://github.com/blejdfist>`__ - 3 contributions
- `Jim Ekman (@blejdfist) <https://github.com/blejdfist>`__ - 4 contributions
- `Mauricio Bonani (@bonanitech) <https://github.com/bonanitech>`__ - 1 contribution
- `Patrik Hermansson (@bphermansson) <https://github.com/bphermansson>`__ - 1 contribution
- `Bram Kragten (@bramkragten) <https://github.com/bramkragten>`__ - 2 contributions
@ -148,6 +156,7 @@ Contributors
- `Brian Hanifin (@brianhanifin) <https://github.com/brianhanifin>`__ - 1 contribution
- `brianrjones69 (@brianrjones69) <https://github.com/brianrjones69>`__ - 1 contribution
- `buxtronix (@buxtronix) <https://github.com/buxtronix>`__ - 7 contributions
- `bvansambeek (@bvansambeek) <https://github.com/bvansambeek>`__ - 1 contribution
- `bwente (@bwente) <https://github.com/bwente>`__ - 1 contribution
- `Carlos Gustavo Sarmiento (@carlos-sarmiento) <https://github.com/carlos-sarmiento>`__ - 4 contributions
- `Carlos Garcia Saura (@CarlosGS) <https://github.com/CarlosGS>`__ - 1 contribution
@ -159,37 +168,50 @@ Contributors
- `James Crook (@cooljimy84) <https://github.com/cooljimy84>`__ - 1 contribution
- `Corban Mailloux (@corbanmailloux) <https://github.com/corbanmailloux>`__ - 5 contributions
- `Dmitry Berezovsky (@corvis) <https://github.com/corvis>`__ - 2 contributions
- `Connor Prussin (@cprussin) <https://github.com/cprussin>`__ - 2 contributions
- `cretep (@cretep) <https://github.com/cretep>`__ - 1 contribution
- `cryptelli (@cryptelli) <https://github.com/cryptelli>`__ - 3 contributions
- `Chris Talkington (@ctalkington) <https://github.com/ctalkington>`__ - 1 contribution
- `Alex Solomaha (@CyanoFresh) <https://github.com/CyanoFresh>`__ - 1 contribution
- `Luar Roji (@cyberplant) <https://github.com/cyberplant>`__ - 2 contributions
- `Dale Higgs (@dale3h) <https://github.com/dale3h>`__ - 1 contribution
- `damanti-me (@damanti-me) <https://github.com/damanti-me>`__ - 1 contribution
- `damanti-me (@damanti-me) <https://github.com/damanti-me>`__ - 2 contributions
- `Daniel Bjørnbakk (@danibjor) <https://github.com/danibjor>`__ - 1 contribution
- `Daniel Kucera (@danielkucera) <https://github.com/danielkucera>`__ - 1 contribution
- `Danny Sauer (@dannysauer) <https://github.com/dannysauer>`__ - 1 contribution
- `Daniel Schramm (@danielschramm) <https://github.com/danielschramm>`__ - 2 contributions
- `Chris (@darthsebulba04) <https://github.com/darthsebulba04>`__ - 1 contribution
- `DAVe3283 (@DAVe3283) <https://github.com/DAVe3283>`__ - 3 contributions
- `Dave Richer (@davericher) <https://github.com/davericher>`__ - 3 contributions
- `Dave T (@davet2001) <https://github.com/davet2001>`__ - 1 contribution
- `Dave Wongillies (@davewongillies) <https://github.com/davewongillies>`__ - 1 contribution
- `David De Sloovere (@DavidDeSloovere) <https://github.com/DavidDeSloovere>`__ - 3 contributions
- `David Beitey (@davidjb) <https://github.com/davidjb>`__ - 1 contribution
- `David Zovko (@davidzovko) <https://github.com/davidzovko>`__ - 1 contribution
- `Debashish Sahu (@debsahu) <https://github.com/debsahu>`__ - 1 contribution
- `declanshanaghy (@declanshanaghy) <https://github.com/declanshanaghy>`__ - 3 contributions
- `deftdawg (@deftdawg) <https://github.com/deftdawg>`__ - 1 contribution
- `Rsan (@deltazerorsan) <https://github.com/deltazerorsan>`__ - 1 contribution
- `Mickaël Le Baillif (@demikl) <https://github.com/demikl>`__ - 2 contributions
- `dependabot[bot] (@dependabot[bot]) <https://github.com/dependabot[bot]>`__ - 26 contributions
- `Mickaël Le Baillif (@demikl) <https://github.com/demikl>`__ - 3 contributions
- `dependabot[bot] (@dependabot[bot]) <https://github.com/dependabot[bot]>`__ - 43 contributions
- `Destix (@Destix) <https://github.com/Destix>`__ - 1 contribution
- `Alain Turbide (@Dilbert66) <https://github.com/Dilbert66>`__ - 2 contributions
- `Mark (@Diramu) <https://github.com/Diramu>`__ - 1 contribution
- `Dirk Heinke (@DirkHeinke) <https://github.com/DirkHeinke>`__ - 1 contribution
- `Dirk Jahnke (@dirkj) <https://github.com/dirkj>`__ - 1 contribution
- `djtef (@djtef) <https://github.com/djtef>`__ - 1 contribution
- `Marcos Pérez Ferro (@djwmarcx) <https://github.com/djwmarcx>`__ - 2 contributions
- `Dan Mannock (@dmannock) <https://github.com/dmannock>`__ - 1 contribution
- `dmkif (@dmkif) <https://github.com/dmkif>`__ - 1 contribution
- `Jiang Sheng (@doskoi) <https://github.com/doskoi>`__ - 1 contribution
- `Robert Schütz (@dotlambda) <https://github.com/dotlambda>`__ - 3 contributions
- `Daniel Hyles (@DotNetDann) <https://github.com/DotNetDann>`__ - 2 contributions
- `Daniel Hyles (@DotNetDann) <https://github.com/DotNetDann>`__ - 4 contributions
- `dr-oblivium (@dr-oblivium) <https://github.com/dr-oblivium>`__ - 2 contributions
- `Drew Perttula (@drewp) <https://github.com/drewp>`__ - 2 contributions
- `DrRob (@DrRob) <https://github.com/DrRob>`__ - 1 contribution
- `dubit0 (@dubit0) <https://github.com/dubit0>`__ - 1 contribution
- `Dimitris Zervas (@dzervas) <https://github.com/dzervas>`__ - 2 contributions
- `dziobson (@dziobson) <https://github.com/dziobson>`__ - 1 contribution
- `Dan Jackson (@e28eta) <https://github.com/e28eta>`__ - 1 contribution
- `Ermanno Baschiera (@ebaschiera) <https://github.com/ebaschiera>`__ - 1 contribution
- `Niclas Larsson (@edge90) <https://github.com/edge90>`__ - 1 contribution
- `Eenoo (@Eenoo) <https://github.com/Eenoo>`__ - 1 contribution
@ -199,23 +221,29 @@ Contributors
- `EmbeddedDevver (@EmbeddedDevver) <https://github.com/EmbeddedDevver>`__ - 1 contribution
- `EmmanuelLM (@EmmanuelLM) <https://github.com/EmmanuelLM>`__ - 1 contribution
- `Emory Dunn (@emorydunn) <https://github.com/emorydunn>`__ - 1 contribution
- `Eric Muehlstein (@emuehlstein) <https://github.com/emuehlstein>`__ - 1 contribution
- `Anders Persson (@emwap) <https://github.com/emwap>`__ - 4 contributions
- `Nico Weichbrodt (@envy) <https://github.com/envy>`__ - 1 contribution
- `Evan Petousis (@epetousis) <https://github.com/epetousis>`__ - 1 contribution
- `Wilhelm Erasmus (@erasmuswill) <https://github.com/erasmuswill>`__ - 1 contribution
- `erazor666 (@erazor666) <https://github.com/erazor666>`__ - 1 contribution
- `Eric Hiller (@erichiller) <https://github.com/erichiller>`__ - 1 contribution
- `Ernst Klamer (@Ernst79) <https://github.com/Ernst79>`__ - 1 contribution
- `escoand (@escoand) <https://github.com/escoand>`__ - 7 contributions
- `esphomebot (@esphomebot) <https://github.com/esphomebot>`__ - 4 contributions
- `esphomebot (@esphomebot) <https://github.com/esphomebot>`__ - 15 contributions
- `Evan Coleman (@evandcoleman) <https://github.com/evandcoleman>`__ - 3 contributions
- `Malte Franken (@exxamalte) <https://github.com/exxamalte>`__ - 2 contributions
- `Fabian Affolter (@fabaff) <https://github.com/fabaff>`__ - 24 contributions
- `Fabian Affolter (@fabaff) <https://github.com/fabaff>`__ - 29 contributions
- `C W (@fake-name) <https://github.com/fake-name>`__ - 2 contributions
- `Christian Ferbar (@ferbar) <https://github.com/ferbar>`__ - 1 contribution
- `Christian Ferbar (@ferbar) <https://github.com/ferbar>`__ - 2 contributions
- `fkirill (@fkirill) <https://github.com/fkirill>`__ - 1 contribution
- `foxsam21 (@foxsam21) <https://github.com/foxsam21>`__ - 2 contributions
- `Fractal147 (@Fractal147) <https://github.com/Fractal147>`__ - 1 contribution
- `Francis-labo (@Francis-labo) <https://github.com/Francis-labo>`__ - 1 contribution
- `Francisk0 (@Francisk0) <https://github.com/Francisk0>`__ - 1 contribution
- `Frank Bakker (@FrankBakkerNl) <https://github.com/FrankBakkerNl>`__ - 1 contribution
- `Frank Bakker (@FrankBakkerNl) <https://github.com/FrankBakkerNl>`__ - 5 contributions
- `Frankster-NL (@Frankster-NL) <https://github.com/Frankster-NL>`__ - 1 contribution
- `Fredrik Erlandsson (@fredrike) <https://github.com/fredrike>`__ - 1 contribution
- `Fredrik Erlandsson (@fredrike) <https://github.com/fredrike>`__ - 2 contributions
- `Evgeny (@freekode) <https://github.com/freekode>`__ - 8 contributions
- `Brett McKenzie (@freerangeeggs) <https://github.com/freerangeeggs>`__ - 1 contribution
- `Fritz Mueller (@fritzm) <https://github.com/fritzm>`__ - 1 contribution
@ -223,14 +251,15 @@ Contributors
- `mr G1K (@G1K) <https://github.com/G1K>`__ - 2 contributions
- `galagaking (@galagaking) <https://github.com/galagaking>`__ - 1 contribution
- `Geoff Davis (@geoffdavis) <https://github.com/geoffdavis>`__ - 2 contributions
- `Gerard (@gerard33) <https://github.com/gerard33>`__ - 1 contribution
- `Gerard (@gerard33) <https://github.com/gerard33>`__ - 2 contributions
- `Giovanni (@Gio-dot) <https://github.com/Gio-dot>`__ - 2 contributions
- `gitolicious (@gitolicious) <https://github.com/gitolicious>`__ - 15 contributions
- `gitolicious (@gitolicious) <https://github.com/gitolicious>`__ - 16 contributions
- `The Gitter Badger (@gitter-badger) <https://github.com/gitter-badger>`__ - 1 contribution
- `Guillermo Ruffino (@glmnet) <https://github.com/glmnet>`__ - 171 contributions
- `Guillermo Ruffino (@glmnet) <https://github.com/glmnet>`__ - 202 contributions
- `Giorgos Logiotatidis (@glogiotatidis) <https://github.com/glogiotatidis>`__ - 1 contribution
- `Germain Masse (@gmasse) <https://github.com/gmasse>`__ - 2 contributions
- `Jelle Raaijmakers (@GMTA) <https://github.com/GMTA>`__ - 1 contribution
- `gordon-zhao (@gordon-zhao) <https://github.com/gordon-zhao>`__ - 1 contribution
- `Antoine GRÉA (@grea09) <https://github.com/grea09>`__ - 4 contributions
- `Guillaume DELVIT (@guiguid) <https://github.com/guiguid>`__ - 1 contribution
- `guptamp (@guptamp) <https://github.com/guptamp>`__ - 1 contribution
@ -238,13 +267,18 @@ Contributors
- `h0-- (@h0--) <https://github.com/h0-->`__ - 1 contribution
- `Boris Hajduk (@hajdbo) <https://github.com/hajdbo>`__ - 4 contributions
- `Gavin Mogan (@halkeye) <https://github.com/halkeye>`__ - 1 contribution
- `Charles Thompson (@haryadoon) <https://github.com/haryadoon>`__ - 1 contribution
- `hcoohb (@hcoohb) <https://github.com/hcoohb>`__ - 1 contribution
- `Héctor Giménez (@hectorgimenez) <https://github.com/hectorgimenez>`__ - 2 contributions
- `Jimmy Hedman (@HeMan) <https://github.com/HeMan>`__ - 5 contributions
- `HepoH3 (@HepoH3) <https://github.com/HepoH3>`__ - 1 contribution
- `Hamish Moffatt (@hmoffatt) <https://github.com/hmoffatt>`__ - 1 contribution
- `Ian Leeder (@ianleeder) <https://github.com/ianleeder>`__ - 2 contributions
- `MoA (@honomoa) <https://github.com/honomoa>`__ - 2 contributions
- `Ian Leeder (@ianleeder) <https://github.com/ianleeder>`__ - 3 contributions
- `icarome (@icarome) <https://github.com/icarome>`__ - 1 contribution
- `igg (@igg) <https://github.com/igg>`__ - 5 contributions
- `ikatkov (@ikatkov) <https://github.com/ikatkov>`__ - 1 contribution
- `Michael (@imeekle) <https://github.com/imeekle>`__ - 1 contribution
- `Lorenzo Ortiz (@Infinitte) <https://github.com/Infinitte>`__ - 1 contribution
- `Ivan Shvedunov (@ivan4th) <https://github.com/ivan4th>`__ - 1 contribution
- `Ivan Kravets (@ivankravets) <https://github.com/ivankravets>`__ - 1 contribution
@ -256,9 +290,11 @@ Contributors
- `JbLb (@jblb) <https://github.com/jblb>`__ - 1 contribution
- `Joshua Dadswell (@jdads1) <https://github.com/jdads1>`__ - 1 contribution
- `jeff-h (@jeff-h) <https://github.com/jeff-h>`__ - 2 contributions
- `Jeff Rescignano (@JeffResc) <https://github.com/JeffResc>`__ - 10 contributions
- `Jesse Hills (@jesserockz) <https://github.com/jesserockz>`__ - 44 contributions
- `Jeff Rescignano (@JeffResc) <https://github.com/JeffResc>`__ - 11 contributions
- `Jesse Hills (@jesserockz) <https://github.com/jesserockz>`__ - 119 contributions
- `Jérémy JOURDIN (@JJK801) <https://github.com/JJK801>`__ - 1 contribution
- `Jonathan Jefferies (@jjok) <https://github.com/jjok>`__ - 1 contribution
- `Justin Maxwell (@jkmaxwell) <https://github.com/jkmaxwell>`__ - 1 contribution
- `Jeppe Ladefoged (@jladefoged) <https://github.com/jladefoged>`__ - 2 contributions
- `Jonathan Martens (@jmartens) <https://github.com/jmartens>`__ - 1 contribution
- `Johan van der Kuijl (@johanvanderkuijl) <https://github.com/johanvanderkuijl>`__ - 1 contribution
@ -270,27 +306,39 @@ Contributors
- `Joppy (@JoppyFurr) <https://github.com/JoppyFurr>`__ - 2 contributions
- `junnikokuki (@junnikokuki) <https://github.com/junnikokuki>`__ - 1 contribution
- `Justahobby01 (@Justahobby01) <https://github.com/Justahobby01>`__ - 1 contribution
- `Justin Gerhardt (@justin-gerhardt) <https://github.com/justin-gerhardt>`__ - 1 contribution
- `Justyn Shull (@justyns) <https://github.com/justyns>`__ - 1 contribution
- `Jasper van der Neut - Stulen (@jvanderneutstulen) <https://github.com/jvanderneutstulen>`__ - 2 contributions
- `João Vitor M. Roma (@jvmr1) <https://github.com/jvmr1>`__ - 1 contribution
- `Jack Wozny (@jwozny) <https://github.com/jwozny>`__ - 1 contribution
- `Kris (@K-r-i-s-t-i-a-n) <https://github.com/K-r-i-s-t-i-a-n>`__ - 1 contribution
- `Harald Nagel (@k7hpn) <https://github.com/k7hpn>`__ - 2 contributions
- `kalebzettl (@kalebzettl) <https://github.com/kalebzettl>`__ - 1 contribution
- `Krasimir Nedelchev (@kaykayehnn) <https://github.com/kaykayehnn>`__ - 1 contribution
- `kbouchard111 (@kbouchard111) <https://github.com/kbouchard111>`__ - 1 contribution
- `Keith Burzinski (@kbx81) <https://github.com/kbx81>`__ - 15 contributions
- `Keith Burzinski (@kbx81) <https://github.com/kbx81>`__ - 26 contributions
- `Robert Kiss (@kepten) <https://github.com/kepten>`__ - 2 contributions
- `Kevin O'Rourke (@kevinior) <https://github.com/kevinior>`__ - 1 contribution
- `kimonm (@kimonm) <https://github.com/kimonm>`__ - 1 contribution
- `Klaas Schoute (@klaasnicolaas) <https://github.com/klaasnicolaas>`__ - 1 contribution
- `Klarstein (@Klarstein) <https://github.com/Klarstein>`__ - 3 contributions
- `Kevin Lewis (@kll) <https://github.com/kll>`__ - 1 contribution
- `korellas (@korellas) <https://github.com/korellas>`__ - 1 contribution
- `Kevin Pelzel (@kpelzel) <https://github.com/kpelzel>`__ - 1 contribution
- `Karl Q. (@kquinsland) <https://github.com/kquinsland>`__ - 1 contribution
- `krahabb (@krahabb) <https://github.com/krahabb>`__ - 2 contributions
- `krikk (@krikk) <https://github.com/krikk>`__ - 1 contribution
- `KristopherMackowiak (@KristopherMackowiak) <https://github.com/KristopherMackowiak>`__ - 1 contribution
- `kroimon (@kroimon) <https://github.com/kroimon>`__ - 2 contributions
- `Kendell R (@KTibow) <https://github.com/KTibow>`__ - 1 contribution
- `Kendell R (@KTibow) <https://github.com/KTibow>`__ - 2 contributions
- `kvvoff (@kvvoff) <https://github.com/kvvoff>`__ - 1 contribution
- `Ken Davidson (@kwdavidson) <https://github.com/kwdavidson>`__ - 1 contribution
- `Kyle Manna (@kylemanna) <https://github.com/kylemanna>`__ - 1 contribution
- `la7dja (@la7dja) <https://github.com/la7dja>`__ - 1 contribution
- `Stefan Lässer (@Laess3r) <https://github.com/Laess3r>`__ - 1 contribution
- `Steffen Weinreich (@lairsdragon) <https://github.com/lairsdragon>`__ - 1 contribution
- `Fredrik Lindqvist (@Landrash) <https://github.com/Landrash>`__ - 1 contribution
- `lein1013 (@lein1013) <https://github.com/lein1013>`__ - 1 contribution
- `Lazar Obradovic (@lobradov) <https://github.com/lobradov>`__ - 4 contributions
- `Joakim Sørensen (@ludeeus) <https://github.com/ludeeus>`__ - 11 contributions
- `Lukas Klass (@LukasK13) <https://github.com/LukasK13>`__ - 1 contribution
@ -298,12 +346,14 @@ Contributors
- `Luke Fitzgerald (@lwfitzgerald) <https://github.com/lwfitzgerald>`__ - 1 contribution
- `Lewis Juggins (@lwis) <https://github.com/lwis>`__ - 1 contribution
- `Michael Klamminger (@m1ch) <https://github.com/m1ch>`__ - 1 contribution
- `M95D (@M95D) <https://github.com/M95D>`__ - 1 contribution
- `Marc-Antoine Courteau (@macourteau) <https://github.com/macourteau>`__ - 1 contribution
- `magnus (@magnusja) <https://github.com/magnusja>`__ - 1 contribution
- `Magnus Øverli (@magnusoverli) <https://github.com/magnusoverli>`__ - 1 contribution
- `Major Péter (@majorpeter) <https://github.com/majorpeter>`__ - 2 contributions
- `Marcel van der Veldt (@marcelveldt) <https://github.com/marcelveldt>`__ - 2 contributions
- `Marvin Gaube (@margau) <https://github.com/margau>`__ - 3 contributions
- `marecabo (@marecabo) <https://github.com/marecabo>`__ - 2 contributions
- `Marvin Gaube (@margau) <https://github.com/margau>`__ - 4 contributions
- `Martynas Griškonis (@Margriko) <https://github.com/Margriko>`__ - 1 contribution
- `Mario (@mario-tux) <https://github.com/mario-tux>`__ - 3 contributions
- `Matthew Harrold (@marrold) <https://github.com/marrold>`__ - 1 contribution
@ -311,21 +361,30 @@ Contributors
- `Martin Hjelmare (@MartinHjelmare) <https://github.com/MartinHjelmare>`__ - 1 contribution
- `MartinWelsch (@MartinWelsch) <https://github.com/MartinWelsch>`__ - 1 contribution
- `MasterTim17 (@MasterTim17) <https://github.com/MasterTim17>`__ - 1 contribution
- `matikij (@matikij) <https://github.com/matikij>`__ - 1 contribution
- `Michel Marti (@matoxp) <https://github.com/matoxp>`__ - 4 contributions
- `Maurice Schleußinger (@maurice-schleussinger) <https://github.com/maurice-schleussinger>`__ - 1 contribution
- `mbo18 (@mbo18) <https://github.com/mbo18>`__ - 1 contribution
- `Joseph Mearman (@Mearman) <https://github.com/Mearman>`__ - 1 contribution
- `Mechotronic (@Mechotronic) <https://github.com/Mechotronic>`__ - 1 contribution
- `MeIchthys (@meichthys) <https://github.com/meichthys>`__ - 1 contribution
- `meijerwynand (@meijerwynand) <https://github.com/meijerwynand>`__ - 2 contributions
- `Marco (@Melkor82) <https://github.com/Melkor82>`__ - 2 contributions
- `mhentschke (@mhentschke) <https://github.com/mhentschke>`__ - 1 contribution
- `micw (@micw) <https://github.com/micw>`__ - 1 contribution
- `Pauline Middelink (@middelink) <https://github.com/middelink>`__ - 2 contributions
- `mikosoft83 (@mikosoft83) <https://github.com/mikosoft83>`__ - 1 contribution
- `Matthew Edwards (@mje-nz) <https://github.com/mje-nz>`__ - 1 contribution
- `Maarten (@mjkl-gh) <https://github.com/mjkl-gh>`__ - 1 contribution
- `mjoshd (@mjoshd) <https://github.com/mjoshd>`__ - 2 contributions
- `mknjc (@mknjc) <https://github.com/mknjc>`__ - 2 contributions
- `mmanza (@mmanza) <https://github.com/mmanza>`__ - 1 contribution
- `mnaz (@mnaz) <https://github.com/mnaz>`__ - 1 contribution
- `Michael Nieß (@mniess) <https://github.com/mniess>`__ - 1 contribution
- `Matt N. (@mnoorenberghe) <https://github.com/mnoorenberghe>`__ - 1 contribution
- `morph027 (@morph027) <https://github.com/morph027>`__ - 1 contribution
- `Matthew Pettitt (@mpettitt) <https://github.com/mpettitt>`__ - 1 contribution
- `Ryan Matthews (@mrrsm) <https://github.com/mrrsm>`__ - 1 contribution
- `MrZetor (@MrZetor) <https://github.com/MrZetor>`__ - 1 contribution
- `mtl010957 (@mtl010957) <https://github.com/mtl010957>`__ - 9 contributions
- `Michiel van Turnhout (@mvturnho) <https://github.com/mvturnho>`__ - 15 contributions
@ -333,37 +392,44 @@ Contributors
- `Niels Ulrik Andersen (@myplacedk) <https://github.com/myplacedk>`__ - 1 contribution
- `Kevin Uhlir (@n0bel) <https://github.com/n0bel>`__ - 1 contribution
- `Erik Näsström (@Naesstrom) <https://github.com/Naesstrom>`__ - 1 contribution
- `Oskar Napieraj (@napieraj) <https://github.com/napieraj>`__ - 6 contributions
- `Oskar Napieraj (@napieraj) <https://github.com/napieraj>`__ - 7 contributions
- `Bergont Nicolas (@nbergont) <https://github.com/nbergont>`__ - 1 contribution
- `Nebula (@nebula-it) <https://github.com/nebula-it>`__ - 1 contribution
- `nepozs (@nepozs) <https://github.com/nepozs>`__ - 1 contribution
- `nickrout (@nickrout) <https://github.com/nickrout>`__ - 1 contribution
- `Nick Whyte (@nickw444) <https://github.com/nickw444>`__ - 3 contributions
- `nicuh (@nicuh) <https://github.com/nicuh>`__ - 1 contribution
- `nikito7 (@nikito7) <https://github.com/nikito7>`__ - 2 contributions
- `Zvonimir Haramustek (@nitko12) <https://github.com/nitko12>`__ - 1 contribution
- `Nikolay Kitanov (@nkitanov) <https://github.com/nkitanov>`__ - 1 contribution
- `nldroid (@nldroid) <https://github.com/nldroid>`__ - 2 contributions
- `Alex (@nnmalex) <https://github.com/nnmalex>`__ - 1 contribution
- `ffabi (@norges) <https://github.com/norges>`__ - 2 contributions
- `Greg Johnson (@notgwj) <https://github.com/notgwj>`__ - 1 contribution
- `Nuno Sousa (@nunofgs) <https://github.com/nunofgs>`__ - 1 contribution
- `Chris Nussbaum (@nuttytree) <https://github.com/nuttytree>`__ - 1 contribution
- `Chris Nussbaum (@nuttytree) <https://github.com/nuttytree>`__ - 2 contributions
- `Dave Walker (@oddsockmachine) <https://github.com/oddsockmachine>`__ - 1 contribution
- `Olivér Falvai (@ofalvai) <https://github.com/ofalvai>`__ - 1 contribution
- `Omar Ghader (@omarghader) <https://github.com/omarghader>`__ - 1 contribution
- `Oncleben31 (@oncleben31) <https://github.com/oncleben31>`__ - 1 contribution
- `Oscar Bolmsten (@oscar-b) <https://github.com/oscar-b>`__ - 4 contributions
- `Pack3tL0ss (@Pack3tL0ss) <https://github.com/Pack3tL0ss>`__ - 1 contribution
- `Panuruj Khambanonda (PK) (@panuruj) <https://github.com/panuruj>`__ - 2 contributions
- `Paul Deen (@PaulAntonDeen) <https://github.com/PaulAntonDeen>`__ - 2 contributions
- `Paul Nicholls (@pauln) <https://github.com/pauln>`__ - 3 contributions
- `Paul Nicholls (@pauln) <https://github.com/pauln>`__ - 4 contributions
- `Bartłomiej Biernacki (@pax0r) <https://github.com/pax0r>`__ - 2 contributions
- `peq123 (@peq123) <https://github.com/peq123>`__ - 2 contributions
- `per1234 (@per1234) <https://github.com/per1234>`__ - 2 contributions
- `perjury (@perjury) <https://github.com/perjury>`__ - 1 contribution
- `Philip Rosenberg-Watt (@PhilRW) <https://github.com/PhilRW>`__ - 1 contribution
- `phjr (@phjr) <https://github.com/phjr>`__ - 2 contributions
- `pille (@pille) <https://github.com/pille>`__ - 1 contribution
- `pieterbrink123 (@pieterbrink123) <https://github.com/pieterbrink123>`__ - 1 contribution
- `pille (@pille) <https://github.com/pille>`__ - 2 contributions
- `pixiandreas (@pixiandreas) <https://github.com/pixiandreas>`__ - 1 contribution
- `Peter Kuehne (@pkuehne) <https://github.com/pkuehne>`__ - 5 contributions
- `Plácido Revilla (@placidorevilla) <https://github.com/placidorevilla>`__ - 2 contributions
- `Marcus Kempe (@plopp) <https://github.com/plopp>`__ - 1 contribution
- `DK (@poldim) <https://github.com/poldim>`__ - 1 contribution
- `DK (@poldim) <https://github.com/poldim>`__ - 2 contributions
- `Iván Povedano (@pove) <https://github.com/pove>`__ - 1 contribution
- `Peter Stuifzand (@pstuifzand) <https://github.com/pstuifzand>`__ - 1 contribution
- `Peter Tatrai (@ptatrai) <https://github.com/ptatrai>`__ - 1 contribution
@ -372,32 +438,40 @@ Contributors
- `Tommy Jonsson (@quazzie) <https://github.com/quazzie>`__ - 2 contributions
- `Quinn Hosler (@quinnhosler) <https://github.com/quinnhosler>`__ - 1 contribution
- `r-jordan (@r-jordan) <https://github.com/r-jordan>`__ - 1 contribution
- `Richard Kuhnt (@r15ch13) <https://github.com/r15ch13>`__ - 2 contributions
- `Pär Stålberg (@rabbadab) <https://github.com/rabbadab>`__ - 1 contribution
- `Florian Ragwitz (@rafl) <https://github.com/rafl>`__ - 1 contribution
- `Robert Cambridge (@rcambrj) <https://github.com/rcambrj>`__ - 1 contribution
- `Ronald Dehuysser (@rdehuyss) <https://github.com/rdehuyss>`__ - 1 contribution
- `Alex Reid (@reidprojects) <https://github.com/reidprojects>`__ - 2 contributions
- `richardweinberger (@richardweinberger) <https://github.com/richardweinberger>`__ - 1 contribution
- `Rich Foley (@RichFoley) <https://github.com/RichFoley>`__ - 1 contribution
- `Richard Lewis (@richrd) <https://github.com/richrd>`__ - 3 contributions
- `Rico van Genugten (@ricovangenugten) <https://github.com/ricovangenugten>`__ - 1 contribution
- `rjmurph2241 (@rjmurph2241) <https://github.com/rjmurph2241>`__ - 1 contribution
- `rlowens (@rlowens) <https://github.com/rlowens>`__ - 3 contributions
- `LMR (@rmooreID) <https://github.com/rmooreID>`__ - 1 contribution
- `Ryan Mounce (@rmounce) <https://github.com/rmounce>`__ - 1 contribution
- `rnauber (@rnauber) <https://github.com/rnauber>`__ - 3 contributions
- `Rob Deutsch (@rob-deutsch) <https://github.com/rob-deutsch>`__ - 1 contribution
- `Rob de Jonge (@robdejonge) <https://github.com/robdejonge>`__ - 1 contribution
- `Robin Smidsrød (@robinsmidsrod) <https://github.com/robinsmidsrod>`__ - 2 contributions
- `RockBomber (@RockBomber) <https://github.com/RockBomber>`__ - 1 contribution
- `Jérôme W. (@RomRider) <https://github.com/RomRider>`__ - 1 contribution
- `Robbie Page (@rorpage) <https://github.com/rorpage>`__ - 1 contribution
- `rradar (@rradar) <https://github.com/rradar>`__ - 4 contributions
- `rspaargaren (@rspaargaren) <https://github.com/rspaargaren>`__ - 5 contributions
- `rradar (@rradar) <https://github.com/rradar>`__ - 7 contributions
- `rspaargaren (@rspaargaren) <https://github.com/rspaargaren>`__ - 7 contributions
- `Rubén G. (@rubengargar) <https://github.com/rubengargar>`__ - 1 contribution
- `rudgr (@rudgr) <https://github.com/rudgr>`__ - 1 contribution
- `ryanalden (@ryanalden) <https://github.com/ryanalden>`__ - 2 contributions
- `Ryan Nazaretian (@ryannazaretian) <https://github.com/ryannazaretian>`__ - 1 contribution
- `Sascha (@Scarbous) <https://github.com/Scarbous>`__ - 1 contribution
- `Nils Schulte (@Schnilz) <https://github.com/Schnilz>`__ - 1 contribution
- `Ville Skyttä (@scop) <https://github.com/scop>`__ - 3 contributions
- `Ville Skyttä (@scop) <https://github.com/scop>`__ - 5 contributions
- `sekkr1 (@sekkr1) <https://github.com/sekkr1>`__ - 1 contribution
- `SenexCrenshaw (@SenexCrenshaw) <https://github.com/SenexCrenshaw>`__ - 2 contributions
- `SenexCrenshaw (@SenexCrenshaw) <https://github.com/SenexCrenshaw>`__ - 14 contributions
- `Sergio (@sergio303) <https://github.com/sergio303>`__ - 2 contributions
- `Sergio Mayoral Martínez (@sermayoral) <https://github.com/sermayoral>`__ - 2 contributions
- `Sergio Mayoral Martínez (@sermayoral) <https://github.com/sermayoral>`__ - 3 contributions
- `sethcohn (@sethcohn) <https://github.com/sethcohn>`__ - 1 contribution
- `Emanuele Tessore (@setola) <https://github.com/setola>`__ - 1 contribution
- `Abdelkader Boudih (@seuros) <https://github.com/seuros>`__ - 1 contribution
@ -407,37 +481,48 @@ Contributors
- `SiliconAvatar (@SiliconAvatar) <https://github.com/SiliconAvatar>`__ - 1 contribution
- `sillyfrog (@sillyfrog) <https://github.com/sillyfrog>`__ - 1 contribution
- `Derek Hageman (@Sizurka) <https://github.com/Sizurka>`__ - 2 contributions
- `Stephen Tierney (@sjtrny) <https://github.com/sjtrny>`__ - 1 contribution
- `Niklas Wagner (@Skaronator) <https://github.com/Skaronator>`__ - 9 contributions
- `spattinson (@spattinson) <https://github.com/spattinson>`__ - 1 contribution
- `square99 (@square99) <https://github.com/square99>`__ - 2 contributions
- `Paul Krischer (@SqyD) <https://github.com/SqyD>`__ - 1 contribution
- `sredfern (@sredfern) <https://github.com/sredfern>`__ - 2 contributions
- `srg74 (@srg74) <https://github.com/srg74>`__ - 1 contribution
- `Samuel Sieb (@ssieb) <https://github.com/ssieb>`__ - 10 contributions
- `Samuel Sieb (@ssieb) <https://github.com/ssieb>`__ - 15 contributions
- `stubs12 (@stubs12) <https://github.com/stubs12>`__ - 2 contributions
- `Jordan Vohwinkel (@sublime93) <https://github.com/sublime93>`__ - 1 contribution
- `Marcel Feix (@Syndlex) <https://github.com/Syndlex>`__ - 2 contributions
- `Teemu Mikkonen (@T3m3z) <https://github.com/T3m3z>`__ - 2 contributions
- `Taigar2015 (@Taigar2015) <https://github.com/Taigar2015>`__ - 2 contributions
- `Levente Tamas (@tamisoft) <https://github.com/tamisoft>`__ - 2 contributions
- `TBobsin (@TBobsin) <https://github.com/TBobsin>`__ - 1 contribution
- `Team Super Panda (@teamsuperpanda) <https://github.com/teamsuperpanda>`__ - 1 contribution
- `teffcz (@teffcz) <https://github.com/teffcz>`__ - 1 contribution
- `The Impaler (@the-impaler) <https://github.com/the-impaler>`__ - 1 contribution
- `Nejc (@thedexboy) <https://github.com/thedexboy>`__ - 1 contribution
- `Thomas Eckerstorfer (@TheEggi) <https://github.com/TheEggi>`__ - 5 contributions
- `Spencer Hachmeister (@TheHackmeister) <https://github.com/TheHackmeister>`__ - 1 contribution
- `thejonesyboy (@thejonesyboy) <https://github.com/thejonesyboy>`__ - 1 contribution
- `TheJulianJES (@TheJulianJES) <https://github.com/TheJulianJES>`__ - 3 contributions
- `Jozef Zuzelka (@TheKuko) <https://github.com/TheKuko>`__ - 2 contributions
- `Mateusz Soszyński (@TheLastGimbus) <https://github.com/TheLastGimbus>`__ - 1 contribution
- `Andrew Quested (@thenameiwantedwastaken) <https://github.com/thenameiwantedwastaken>`__ - 1 contribution
- `Florian Gareis (@TheZoker) <https://github.com/TheZoker>`__ - 8 contributions
- `Zixuan Wang (@TheNetAdmin) <https://github.com/TheNetAdmin>`__ - 1 contribution
- `Florian Gareis (@TheZoker) <https://github.com/TheZoker>`__ - 12 contributions
- `Thomas Klingbeil (@thomasklingbeil) <https://github.com/thomasklingbeil>`__ - 3 contributions
- `Andrew Thompson (@thompsa) <https://github.com/thompsa>`__ - 2 contributions
- `thubot (@thubot) <https://github.com/thubot>`__ - 1 contribution
- `tiagofreire-pt (@tiagofreire-pt) <https://github.com/tiagofreire-pt>`__ - 1 contribution
- `Tijs-B (@Tijs-B) <https://github.com/Tijs-B>`__ - 1 contribution
- `Tim P (@timpur) <https://github.com/timpur>`__ - 2 contributions
- `Tim Savage (@timsavage) <https://github.com/timsavage>`__ - 5 contributions
- `Tim Savage (@timsavage) <https://github.com/timsavage>`__ - 7 contributions
- `Philipp Tölke (@toelke) <https://github.com/toelke>`__ - 1 contribution
- `Tom Brien (@TomBrien) <https://github.com/TomBrien>`__ - 1 contribution
- `TomFahey (@TomFahey) <https://github.com/TomFahey>`__ - 2 contributions
- `Tommy Kihlstrøm (@tomludd) <https://github.com/tomludd>`__ - 1 contribution
- `tomlut (@tomlut) <https://github.com/tomlut>`__ - 2 contributions
- `Tom Price (@tomtom5152) <https://github.com/tomtom5152>`__ - 2 contributions
- `tomlut (@tomlut) <https://github.com/tomlut>`__ - 3 contributions
- `Tom Price (@tomtom5152) <https://github.com/tomtom5152>`__ - 4 contributions
- `Torwag (@torwag) <https://github.com/torwag>`__ - 1 contribution
- `Felix Eckhofer (@tribut) <https://github.com/tribut>`__ - 1 contribution
- `Troon (@Troon) <https://github.com/Troon>`__ - 1 contribution
- `truglodite (@truglodite) <https://github.com/truglodite>`__ - 1 contribution
@ -446,8 +531,9 @@ Contributors
- `tubalainen (@tubalainen) <https://github.com/tubalainen>`__ - 3 contributions
- `Tuckie (@Tuckie) <https://github.com/Tuckie>`__ - 1 contribution
- `Alexey Vlasov (@turbulator) <https://github.com/turbulator>`__ - 1 contribution
- `tyomikh (@tyomikh) <https://github.com/tyomikh>`__ - 1 contribution
- `ukewea (@ukewea) <https://github.com/ukewea>`__ - 1 contribution
- `Vc (@Valcob) <https://github.com/Valcob>`__ - 3 contributions
- `Vc (@Valcob) <https://github.com/Valcob>`__ - 4 contributions
- `Nad (@valordk) <https://github.com/valordk>`__ - 14 contributions
- `Víctor Ferrer García (@vicfergar) <https://github.com/vicfergar>`__ - 1 contribution
- `voibit (@voibit) <https://github.com/voibit>`__ - 2 contributions
@ -456,14 +542,21 @@ Contributors
- `warpzone (@warpzone) <https://github.com/warpzone>`__ - 1 contribution
- `Wauter (@Wauter) <https://github.com/Wauter>`__ - 3 contributions
- `Ian Wells (@wellsi) <https://github.com/wellsi>`__ - 1 contribution
- `Werner Beroux (@wernight) <https://github.com/wernight>`__ - 1 contribution
- `Wilmar den Ouden (@wilmardo) <https://github.com/wilmardo>`__ - 1 contribution
- `Emil Hesslow (@WizKid) <https://github.com/WizKid>`__ - 1 contribution
- `Rick van Hattem (@WoLpH) <https://github.com/WoLpH>`__ - 1 contribution
- `Artur 'Wodor' Wielogorski (@wodor) <https://github.com/wodor>`__ - 1 contribution
- `Rick van Hattem (@WoLpH) <https://github.com/WoLpH>`__ - 2 contributions
- `wutr (@wutr) <https://github.com/wutr>`__ - 1 contribution
- `xheronimo (@xheronimo) <https://github.com/xheronimo>`__ - 1 contribution
- `Yaroslav (@Yarikx) <https://github.com/Yarikx>`__ - 4 contributions
- `Marcin Jaworski (@yawor) <https://github.com/yawor>`__ - 2 contributions
- `Pavel (@yekm) <https://github.com/yekm>`__ - 2 contributions
- `Atsuko Ito (@yottatsa) <https://github.com/yottatsa>`__ - 1 contribution
- `Nico B (@youknow0) <https://github.com/youknow0>`__ - 2 contributions
- `YuanL.Lee (@yuanl) <https://github.com/yuanl>`__ - 1 contribution
- `ZabojnikM (@ZabojnikM) <https://github.com/ZabojnikM>`__ - 1 contribution
- `San (@zhujunsan) <https://github.com/zhujunsan>`__ - 2 contributions
- `Christian Zufferey (@zuzu59) <https://github.com/zuzu59>`__ - 1 contribution
*This page was last updated October 22, 2020.*
*This page was last updated February 20, 2021.*

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -418,6 +418,7 @@ Cookbook
ESP32 Water Leak Detector, cookbook/leak-detector-m5stickC, leak-detector-m5stickC_main_index.jpg
IAQ (Indoor Air Quality) Board, cookbook/iaq_board, iaq_board2.jpg
Custom UART Text Sensor, cookbook/uart_text_sensor, language-cpp.svg
IWOOLE Table Lamp, cookbook/iwoole_rgbw_table_lamp, iwoole_rgbw_table_lamp.png
Do you have other awesome automations or cool setups? Please feel free to add them to the
documentation for others to copy. See :doc:`Contributing </guides/contributing>`.

View File

@ -156,7 +156,9 @@ the state of a light, send a GET request to ``/light/<id>``, for example ``light
- **b**: The blue channel of this light. From 0 to 255.
- **effect**: The currently active effect, only if the light supports effects.
- **white_value**: The white value of RGBW lights. From 0 to 255.
- **white_value**: The white value of RGBW lights. From 0 to 255. Only if the light supports white value.
- **color_temp**: The color temperature of the RGBWW light. Between minimum mireds and maximum mireds of the light.
Only if the light support color temperature.
Setting light state can happen through three POST method calls: ``turn_on``, ``turn_off`` and ``toggle``.
Turn on and off have additional URL encoded parameters that can be used to set other properties. For example