mirror of
https://github.com/esphome/esphome-docs.git
synced 2025-01-28 22:42:05 +01:00
Merge branch 'current' into next
This commit is contained in:
commit
a0e81502fe
@ -123,6 +123,27 @@ Release 2022.2.3 - February 18
|
||||
|
||||
- Bump platformio from 5.2.4 to 5.2.5 :esphomepr:`3188` by :ghuser:`dependabot[bot]`
|
||||
|
||||
Release 2022.2.4 - February 21
|
||||
------------------------------
|
||||
|
||||
- Publish NAN when dallas conversion failed :esphomepr:`3227` by :ghuser:`OttoWinter`
|
||||
- Fix ESP8266 climate memaccess warning :esphomepr:`3226` by :ghuser:`OttoWinter`
|
||||
- Improve ESP8266 iram usage :esphomepr:`3223` by :ghuser:`OttoWinter`
|
||||
- ESP32-C3 deep sleep fix :esphomepr:`3066` by :ghuser:`Troublebrewing`
|
||||
- Fix lilygo touchscreen rotation :esphomepr:`3221` by :ghuser:`jesserockz`
|
||||
- Fix fatal erroring in addon startup script :esphomepr:`3244` by :ghuser:`jesserockz`
|
||||
|
||||
Release 2022.2.5 - February 23
|
||||
------------------------------
|
||||
|
||||
- Respect ESPHOME_USE_SUBPROCESS in esp32 post_build script :esphomepr:`3246` by :ghuser:`mweinelt`
|
||||
- Fix regression caused by TSL2591 auto gain :esphomepr:`3249` by :ghuser:`Azimath`
|
||||
|
||||
Release 2022.2.6 - March 2
|
||||
--------------------------
|
||||
|
||||
- Only get free memory size from internal :esphomepr:`3259` by :ghuser:`jesserockz`
|
||||
|
||||
Full list of changes
|
||||
--------------------
|
||||
|
||||
|
@ -1,31 +0,0 @@
|
||||
Sonoff NSPanel
|
||||
==============
|
||||
|
||||
.. seo::
|
||||
:description: Instructions for using ESPHome of the Sonoff NSPanel
|
||||
|
||||
The Sonoff NSPanel integration allows ESPHome to control features and functionality of the NSPanel's
|
||||
built in display.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
nspanel:
|
||||
time_id: REPLACEME
|
||||
temperature: temperature_id
|
||||
screen_power_switch: screen_power_switch_id
|
||||
relays:
|
||||
- relay_1_id
|
||||
- relay_2_id
|
||||
|
||||
widgets:
|
||||
- type: scene
|
||||
name: Test
|
||||
on_click:
|
||||
- logger.log: Test Scene tapped
|
||||
|
||||
- type: empty
|
||||
...
|
||||
|
||||
|
||||
Configuration Variables:
|
||||
------------------------
|
@ -32,10 +32,10 @@ which is 19200bps.
|
||||
- homeassistant.event:
|
||||
event: esphome.rf_code_received
|
||||
data:
|
||||
sync: !lambda 'char buffer [10];return itoa(data.sync,buffer,16);'
|
||||
low: !lambda 'char buffer [10];return itoa(data.low,buffer,16);'
|
||||
high: !lambda 'char buffer [10];return itoa(data.high,buffer,16);'
|
||||
code: !lambda 'char buffer [10];return itoa(data.code,buffer,16);'
|
||||
sync: !lambda 'return format_hex(data.sync);'
|
||||
low: !lambda 'return format_hex(data.low);'
|
||||
high: !lambda 'return format_hex(data.high);'
|
||||
code: !lambda 'return format_hex(data.code);'
|
||||
|
||||
Configuration variables:
|
||||
------------------------
|
||||
@ -61,10 +61,10 @@ variables named ``code``, ``sync``, ``high`` and ``low``.
|
||||
- homeassistant.event:
|
||||
event: esphome.rf_code_received
|
||||
data:
|
||||
sync: !lambda 'char buffer [10];return itoa(data.sync,buffer,16);'
|
||||
low: !lambda 'char buffer [10];return itoa(data.low,buffer,16);'
|
||||
high: !lambda 'char buffer [10];return itoa(data.high,buffer,16);'
|
||||
code: !lambda 'char buffer [10];return itoa(data.code,buffer,16);'
|
||||
sync: !lambda 'return format_hex(data.sync);'
|
||||
low: !lambda 'return format_hex(data.low);'
|
||||
high: !lambda 'return format_hex(data.high);'
|
||||
code: !lambda 'return format_hex(data.code);'
|
||||
|
||||
|
||||
.. _rf_bridge-send_code_action:
|
||||
@ -182,8 +182,8 @@ are available inside that lambda under the variables named ``code``, ``protocol`
|
||||
- homeassistant.event:
|
||||
event: esphome.rf_advanced_code_received
|
||||
data:
|
||||
length: !lambda 'char buffer [10];return itoa(data.length,buffer,16);'
|
||||
protocol: !lambda 'char buffer [10];return itoa(data.protocol,buffer,16);'
|
||||
length: !lambda 'return format_hex(data.length);'
|
||||
protocol: !lambda 'return format_hex(data.protocol);'
|
||||
code: !lambda 'return data.code;'
|
||||
|
||||
|
||||
@ -321,7 +321,7 @@ Activate the internal buzzer to make a beep.
|
||||
on_...:
|
||||
then:
|
||||
- rf_bridge.beep:
|
||||
duration: 100
|
||||
duration: 100
|
||||
|
||||
Configuration options:
|
||||
|
||||
@ -335,7 +335,7 @@ Configuration options:
|
||||
.. code-block:: cpp
|
||||
|
||||
id(rf_bridge).beep(100);
|
||||
|
||||
|
||||
Getting started with Home Assistant
|
||||
-----------------------------------
|
||||
|
||||
@ -376,10 +376,10 @@ Home Assistant as events and will also setup a service so you can send codes wit
|
||||
- homeassistant.event:
|
||||
event: esphome.rf_code_received
|
||||
data:
|
||||
sync: !lambda 'char buffer [10];return itoa(data.sync,buffer,16);'
|
||||
low: !lambda 'char buffer [10];return itoa(data.low,buffer,16);'
|
||||
high: !lambda 'char buffer [10];return itoa(data.high,buffer,16);'
|
||||
code: !lambda 'char buffer [10];return itoa(data.code,buffer,16);'
|
||||
sync: !lambda 'return format_hex(data.sync);'
|
||||
low: !lambda 'return format_hex(data.low);'
|
||||
high: !lambda 'return format_hex(data.high);'
|
||||
code: !lambda 'return format_hex(data.code);'
|
||||
|
||||
|
||||
Now your latest received code will be in an event.
|
||||
|
@ -8,7 +8,7 @@ Generic ESP8266
|
||||
|
||||
All ESP8266-based devices are supported by ESPHome. Simply select ``ESP8266`` when
|
||||
the ESPHome wizard asks you for your platform and choose a board type
|
||||
from `this link <https://platformio.org/boards?count=1000&filter%5Bplatform%5D=espressif8266>`__ when the wizard
|
||||
from `this link <https://registry.platformio.org/platforms/platformio/espressif8266/boards>`__ when the wizard
|
||||
asks you for the board type.
|
||||
|
||||
|
||||
|
@ -361,6 +361,11 @@ Packages can also be loaded from a git repository by utilizing the correct confi
|
||||
:ref:`config-substitutions` can be used inside the remote packages which allows users to override
|
||||
them locally with their own subsitution value.
|
||||
|
||||
.. note::
|
||||
|
||||
Remote packages cannot have ``secret`` lookups in them. They should instead make use of substitutions with an
|
||||
optional default in the packaged YAML, which the local device YAML can set using values from the local secrets.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
packages:
|
||||
|
@ -52,6 +52,7 @@ Contributors
|
||||
- `Alex Iribarren (@alexiri) <https://github.com/alexiri>`__
|
||||
- `Alex Mekkering (@AlexMekkering) <https://github.com/AlexMekkering>`__
|
||||
- `Alex (@alexyao2015) <https://github.com/alexyao2015>`__
|
||||
- `alva (@alva-seal) <https://github.com/alva-seal>`__
|
||||
- `Amish Vishwakarma (@amishv) <https://github.com/amishv>`__
|
||||
- `Jason Nader (@ammgws) <https://github.com/ammgws>`__
|
||||
- `anatoly-savchenkov (@anatoly-savchenkov) <https://github.com/anatoly-savchenkov>`__
|
||||
@ -141,6 +142,7 @@ Contributors
|
||||
- `Cougar (@Cougar) <https://github.com/Cougar>`__
|
||||
- `Connor Prussin (@cprussin) <https://github.com/cprussin>`__
|
||||
- `cryptelli (@cryptelli) <https://github.com/cryptelli>`__
|
||||
- `cstaahl (@cstaahl) <https://github.com/cstaahl>`__
|
||||
- `Chris Talkington (@ctalkington) <https://github.com/ctalkington>`__
|
||||
- `cvwillegen (@cvwillegen) <https://github.com/cvwillegen>`__
|
||||
- `cwitting (@cwitting) <https://github.com/cwitting>`__
|
||||
@ -211,6 +213,7 @@ Contributors
|
||||
- `Ermanno Baschiera (@ebaschiera) <https://github.com/ebaschiera>`__
|
||||
- `Robert Resch (@edenhaus) <https://github.com/edenhaus>`__
|
||||
- `Niclas Larsson (@edge90) <https://github.com/edge90>`__
|
||||
- `EdJoPaTo (@EdJoPaTo) <https://github.com/EdJoPaTo>`__
|
||||
- `Eduardo Pérez (@eduperez) <https://github.com/eduperez>`__
|
||||
- `Eenoo (@Eenoo) <https://github.com/Eenoo>`__
|
||||
- `Eli Fidler (@efidler) <https://github.com/efidler>`__
|
||||
@ -322,6 +325,7 @@ Contributors
|
||||
- `Petko Bordjukov (@ignisf) <https://github.com/ignisf>`__
|
||||
- `ikatkov (@ikatkov) <https://github.com/ikatkov>`__
|
||||
- `imgbot[bot] (@imgbot[bot]) <https://github.com/imgbot[bot]>`__
|
||||
- `ImSorryButWho (@ImSorryButWho) <https://github.com/ImSorryButWho>`__
|
||||
- `Lorenzo Ortiz (@Infinitte) <https://github.com/Infinitte>`__
|
||||
- `irtimaled (@irtimaled) <https://github.com/irtimaled>`__
|
||||
- `Ivan Shvedunov (@ivan4th) <https://github.com/ivan4th>`__
|
||||
@ -481,6 +485,7 @@ Contributors
|
||||
- `Michael Gorven (@mgorven) <https://github.com/mgorven>`__
|
||||
- `mhentschke (@mhentschke) <https://github.com/mhentschke>`__
|
||||
- `Michaël Arnauts (@michaelarnauts) <https://github.com/michaelarnauts>`__
|
||||
- `Micha Nordmann (@Michanord) <https://github.com/Michanord>`__
|
||||
- `micronen (@micronen) <https://github.com/micronen>`__
|
||||
- `Pauline Middelink (@middelink) <https://github.com/middelink>`__
|
||||
- `Mikko Tervala (@MikkoTervala) <https://github.com/MikkoTervala>`__
|
||||
@ -532,6 +537,7 @@ Contributors
|
||||
- `Joakim Vindgard (@nigobo) <https://github.com/nigobo>`__
|
||||
- `nikito7 (@nikito7) <https://github.com/nikito7>`__
|
||||
- `niklasweber (@niklasweber) <https://github.com/niklasweber>`__
|
||||
- `Niorix (@Niorix) <https://github.com/Niorix>`__
|
||||
- `Zvonimir Haramustek (@nitko12) <https://github.com/nitko12>`__
|
||||
- `Nikolay Kitanov (@nkitanov) <https://github.com/nkitanov>`__
|
||||
- `nldroid (@nldroid) <https://github.com/nldroid>`__
|
||||
@ -539,7 +545,6 @@ Contributors
|
||||
- `Niccolò Maggioni (@nmaggioni) <https://github.com/nmaggioni>`__
|
||||
- `Jan Sandbrink (@NobodysNightmare) <https://github.com/NobodysNightmare>`__
|
||||
- `Łukasz Śliwiński (@nonameplum) <https://github.com/nonameplum>`__
|
||||
- `ffabi (@norges) <https://github.com/norges>`__
|
||||
- `Greg Johnson (@notgwj) <https://github.com/notgwj>`__
|
||||
- `nouser2013 (@nouser2013) <https://github.com/nouser2013>`__
|
||||
- `Stanislav Meduna (@numo68) <https://github.com/numo68>`__
|
||||
@ -574,6 +579,7 @@ Contributors
|
||||
- `Paul Doidge (@pdoidge) <https://github.com/pdoidge>`__
|
||||
- `peq123 (@peq123) <https://github.com/peq123>`__
|
||||
- `per1234 (@per1234) <https://github.com/per1234>`__
|
||||
- `Peter Valkov (@peter-valkov) <https://github.com/peter-valkov>`__
|
||||
- `Peter Foreman (@peterforeman) <https://github.com/peterforeman>`__
|
||||
- `Peter Remøy Paulsen (@petrepa) <https://github.com/petrepa>`__
|
||||
- `Philip Rosenberg-Watt (@PhilRW) <https://github.com/PhilRW>`__
|
||||
@ -706,6 +712,7 @@ Contributors
|
||||
- `Tempura San (@tempura-san) <https://github.com/tempura-san>`__
|
||||
- `testbughub (@testbughub) <https://github.com/testbughub>`__
|
||||
- `Greg Lincoln (@tetious) <https://github.com/tetious>`__
|
||||
- `Thane Gill (@thanegill) <https://github.com/thanegill>`__
|
||||
- `The Impaler (@the-impaler) <https://github.com/the-impaler>`__
|
||||
- `Nejc (@thedexboy) <https://github.com/thedexboy>`__
|
||||
- `Thomas Eckerstorfer (@TheEggi) <https://github.com/TheEggi>`__
|
||||
@ -744,13 +751,13 @@ Contributors
|
||||
- `Trick van Staveren (@trickv) <https://github.com/trickv>`__
|
||||
- `Tobias (@tripplet) <https://github.com/tripplet>`__
|
||||
- `Troon (@Troon) <https://github.com/Troon>`__
|
||||
- `Tyler Bules (@Troublebrewing) <https://github.com/Troublebrewing>`__
|
||||
- `Olli Salonen (@trsqr) <https://github.com/trsqr>`__
|
||||
- `Trevor North (@trvrnrth) <https://github.com/trvrnrth>`__
|
||||
- `Trygve Laugstøl (@trygvis) <https://github.com/trygvis>`__
|
||||
- `Gediminas Šaltenis (@trylika) <https://github.com/trylika>`__
|
||||
- `Tuan (@tuanpmt) <https://github.com/tuanpmt>`__
|
||||
- `tubalainen (@tubalainen) <https://github.com/tubalainen>`__
|
||||
- `Tuckie (@Tuckie) <https://github.com/Tuckie>`__
|
||||
- `Alexey Vlasov (@turbulator) <https://github.com/turbulator>`__
|
||||
- `Seppel Hardt (@tuxBurner) <https://github.com/tuxBurner>`__
|
||||
- `TVDLoewe (@TVDLoewe) <https://github.com/TVDLoewe>`__
|
||||
@ -798,4 +805,4 @@ Contributors
|
||||
- `Michael Labuschke (@zigman79) <https://github.com/zigman79>`__
|
||||
- `Christian Zufferey (@zuzu59) <https://github.com/zuzu59>`__
|
||||
|
||||
*This page was last updated February 18, 2022.*
|
||||
*This page was last updated March 2, 2022.*
|
||||
|
18
lint.py
18
lint.py
@ -356,8 +356,12 @@ def lint_directive_formatting(fname, content):
|
||||
# Empty line must follow
|
||||
if lines[j]:
|
||||
errors.append(
|
||||
"Directive '{}' is not followed by an empty line. Please insert an "
|
||||
"empty line after {}:{}".format(directive_name, f, j)
|
||||
(
|
||||
j,
|
||||
1,
|
||||
"Directive '{}' is not followed by an empty line. Please insert an "
|
||||
"empty line after {}:{}".format(directive_name, fname, j),
|
||||
)
|
||||
)
|
||||
continue
|
||||
|
||||
@ -374,11 +378,17 @@ def lint_directive_formatting(fname, content):
|
||||
num_indent = num_spaces - base_indentation
|
||||
if j == k and num_indent != 4:
|
||||
errors.append(
|
||||
"Directive '{}' must be indented with 4 spaces, not {}. See "
|
||||
"{}:{}".format(directive_name, num_indent, f, j + 1)
|
||||
(
|
||||
j + 1,
|
||||
num_indent,
|
||||
"Directive '{}' must be indented with 4 spaces, not {}. See "
|
||||
"{}:{}".format(directive_name, num_indent, fname, j + 1),
|
||||
)
|
||||
)
|
||||
break
|
||||
|
||||
return errors
|
||||
|
||||
|
||||
@lint_re_check(
|
||||
r"https://esphome.io/",
|
||||
|
Loading…
Reference in New Issue
Block a user