mirror of
https://github.com/esphome/esphome-docs.git
synced 2024-12-26 17:27:47 +01:00
commit
fcd7e12169
2
Doxygen
2
Doxygen
@ -38,7 +38,7 @@ PROJECT_NAME = "ESPHome"
|
||||
# could be handy for archiving the generated documentation or if some version
|
||||
# control system is used.
|
||||
|
||||
PROJECT_NUMBER = 2023.3.2
|
||||
PROJECT_NUMBER = 2023.4.0
|
||||
|
||||
# Using the PROJECT_BRIEF tag one can provide an optional one line description
|
||||
# for a project that appears at the top of each page and should give viewer a
|
||||
|
2
Makefile
2
Makefile
@ -1,5 +1,5 @@
|
||||
ESPHOME_PATH = ../esphome
|
||||
ESPHOME_REF = 2023.3.2
|
||||
ESPHOME_REF = 2023.4.0
|
||||
|
||||
.PHONY: html html-strict cleanhtml deploy help live-html Makefile netlify netlify-api api netlify-dependencies svg2png copy-svg2png minify
|
||||
|
||||
|
BIN
_static/changelog-2023.4.0.png
Normal file
BIN
_static/changelog-2023.4.0.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 50 KiB |
@ -1 +1 @@
|
||||
2023.3.2
|
||||
2023.4.0
|
241
changelog/2023.4.0.rst
Normal file
241
changelog/2023.4.0.rst
Normal file
@ -0,0 +1,241 @@
|
||||
ESPHome 2023.4.0 - 19th April 2023
|
||||
==================================
|
||||
|
||||
.. seo::
|
||||
:description: Changelog for ESPHome 2023.4.0.
|
||||
:image: /_static/changelog-2023.4.0.png
|
||||
:author: Jesse Hills
|
||||
:author_twitter: @jesserockz
|
||||
|
||||
.. imgtable::
|
||||
:columns: 3
|
||||
|
||||
Voice Assistant, components/voice_assistant, voice-assistant.svg
|
||||
Microphone Core, components/microphone/index, microphone.svg
|
||||
I2S Microphone, components/microphone/i2s_audio, i2s_audio.svg
|
||||
MMC5603, components/sensor/mmc5603, mmc5603.jpg
|
||||
KSZ8081 Ethernet, components/ethernet, ethernet.svg
|
||||
|
||||
|
||||
Voice Assistant
|
||||
---------------
|
||||
|
||||
This year is the Year of the Voice for Home Assistant, and ESPHome is charging ahead with this in mind.
|
||||
We've added a new :doc:`/components/voice_assistant` component that allows you to use ESPHome devices as an input
|
||||
for `assist <https://www.home-assistant.io/docs/assist/>`__ in Home Assistant.
|
||||
|
||||
With this also comes preliminary :doc:`microphone </components/microphone/index>` support, which has been built in a way that multiple
|
||||
components, like ``voice_assistant`` can request start / stop of the microphone and get the data. We
|
||||
hope this leads to more interesting use cases for the microphone in the future.
|
||||
|
||||
Home Assistant is hosting a live stream all about the Year of the Voice - Chapter 2.
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/Tk-pnm7FY7c"
|
||||
title="YouTube video player" frameborder="0"
|
||||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
||||
allowfullscreen>
|
||||
</iframe>
|
||||
|
||||
|
||||
Keith joins Nabu Casa
|
||||
---------------------
|
||||
|
||||
Nabu Casa is pleased to annouce that long time contributor Keith Burzinski (:ghuser:`kbx81`) is joining the
|
||||
team as a full time developer to help out on ESPHome.
|
||||
|
||||
Breaking Changes
|
||||
----------------
|
||||
|
||||
I²S Media Player
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
With the introduction of the :doc:`/components/microphone/i2s_audio`, the media player platform has some
|
||||
required breaking changes to the YAML configuration. This involves moving the ``i2s_lrclk_pin`` and
|
||||
``i2s_bclk_pin`` to a new :doc:`/components/i2s_audio` component.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
# Before
|
||||
media_player:
|
||||
- platform: i2s_audio
|
||||
name: ESPHome I2S Media Player
|
||||
dac_type: external
|
||||
i2s_lrclk_pin: GPIO33
|
||||
i2s_bclk_pin: GPIO19
|
||||
i2s_dout_pin: GPIO22
|
||||
mode: mono
|
||||
|
||||
# After
|
||||
i2s_audio:
|
||||
i2s_lrclk_pin: GPIO33
|
||||
i2s_bclk_pin: GPIO19
|
||||
|
||||
media_player:
|
||||
- platform: i2s_audio
|
||||
name: ESPHome I2S Media Player
|
||||
dac_type: external
|
||||
i2s_dout_pin: GPIO22
|
||||
mode: mono
|
||||
|
||||
Default restore mode for Switches, Fans and Lights
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The default ``restore_mode`` for switches, fans and lights has been changed
|
||||
from ``RESTORE_DEFAULT_OFF`` to ``ALWAYS_OFF`` with the intention that restoring values
|
||||
from flash should be manually specified by a user if desired in their YAML configuration.
|
||||
|
||||
Number ``step``
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
The ``number`` components have always internally set a ``step`` required in config,
|
||||
but allowed it to be not specified at all. This caused issues on the Home Assistant side
|
||||
of things. This is only a breaking change for external components that have a ``number`` platform.
|
||||
|
||||
UART ids
|
||||
^^^^^^^^
|
||||
|
||||
Due to ``uart0`` / ``uart1`` / ``uart2`` being defined in some of the platform code ESPHome uses,
|
||||
ESPHome will now disallow these ids from being used in the config. You can simply change them to
|
||||
``uart_0`` to continue using.
|
||||
|
||||
Full list of changes
|
||||
--------------------
|
||||
|
||||
New Components
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
- Added in mmc5603 code :esphomepr:`4175` by :ghuser:`benhoff` (new-integration)
|
||||
- Add push to talk voice assistant :esphomepr:`4648` by :ghuser:`jesserockz` (new-integration)
|
||||
|
||||
Breaking Changes
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
- Disallow uart0/1/2 as ids in config :esphomepr:`4446` by :ghuser:`jesserockz` (breaking-change)
|
||||
- Require step to be set when calling register_number :esphomepr:`4622` by :ghuser:`jesserockz` (breaking-change)
|
||||
- Fix restore :esphomepr:`4655` by :ghuser:`spacemanspiff2007` (breaking-change)
|
||||
|
||||
Beta Changes
|
||||
^^^^^^^^^^^^
|
||||
|
||||
- debug component, allow without debug logging :esphomepr:`4685` by :ghuser:`jesserockz`
|
||||
- Fixed dns2 for ethernet :esphomepr:`4698` by :ghuser:`HeMan`
|
||||
- Add timeout to i2c write error logs :esphomepr:`4697` by :ghuser:`Szewcson`
|
||||
- Add event triggers to voice_assistant :esphomepr:`4699` by :ghuser:`jesserockz`
|
||||
- Call on_error if no api client connected that handles voice :esphomepr:`4709` by :ghuser:`jesserockz`
|
||||
- Add ethernet powerdown (fixes esphome/issues#4420) :esphomepr:`4706` by :ghuser:`tracestep`
|
||||
- Bump arduino platform version to 5.3.0 :esphomepr:`4713` by :ghuser:`jesserockz`
|
||||
|
||||
All changes
|
||||
^^^^^^^^^^^
|
||||
|
||||
- Mark unique_id() virtual method as deprecated :esphomepr:`4538` by :ghuser:`oxan`
|
||||
- Drop deprecated entity property base methods :esphomepr:`4539` by :ghuser:`oxan`
|
||||
- Format test files :esphomepr:`4541` by :ghuser:`jesserockz`
|
||||
- EntityBase: Icon string can stay in flash. :esphomepr:`4566` by :ghuser:`Fabian-Schmidt`
|
||||
- Update the delta filter to be able to take a percentage change :esphomepr:`4391` by :ghuser:`TrentHouliston`
|
||||
- Added missing PM_1_0 and PM_10_0 for PMS5003T and PMS5003ST :esphomepr:`4560` by :ghuser:`genestealer`
|
||||
- Add an option to force SPI into software mode :esphomepr:`4556` by :ghuser:`wupeka`
|
||||
- allow using a binary output for the status led :esphomepr:`4532` by :ghuser:`ssieb`
|
||||
- Add option flip_x :esphomepr:`4555` by :ghuser:`rafal83`
|
||||
- Bump aioesphomeapi from 13.5.0 to 13.5.1 :esphomepr:`4572` by :ghuser:`dependabot[bot]`
|
||||
- Verbose output of define. :esphomepr:`4576` by :ghuser:`Fabian-Schmidt`
|
||||
- Add support for ESP32 CAM 3MP and 5MP resolutions and arbitrary camera clock. :esphomepr:`4580` by :ghuser:`peterhalicky`
|
||||
- Add a simple 'skip_initial' filter :esphomepr:`4582` by :ghuser:`sybrenstuvel`
|
||||
- Fix outdated filter string in platformio_api :esphomepr:`4587` by :ghuser:`LordMike`
|
||||
- Split test3.yaml :esphomepr:`4591` by :ghuser:`jesserockz`
|
||||
- Disallow uart0/1/2 as ids in config :esphomepr:`4446` by :ghuser:`jesserockz` (breaking-change)
|
||||
- Upgrade clang-format to v13 :esphomepr:`4535` by :ghuser:`oxan`
|
||||
- B/W support for GooDisplay GDEY029T94 (as used on Adafruit MagTag) :esphomepr:`4222` by :ghuser:`AaronJackson`
|
||||
- Fix negative sqrt root in ct_clamp_sensor.cpp :esphomepr:`4236` by :ghuser:`jerome992`
|
||||
- Wrap ipv6 code a bit more :esphomepr:`4574` by :ghuser:`jesserockz`
|
||||
- Remove EntityBase from sprinkler :esphomepr:`4606` by :ghuser:`jesserockz`
|
||||
- Fix wrong port multiplexer name in dump GPIO function of sx1509 :esphomepr:`4592` by :ghuser:`skaldo`
|
||||
- Bump zeroconf from 0.47.3 to 0.47.4 :esphomepr:`4597` by :ghuser:`dependabot[bot]`
|
||||
- Bump pytest-asyncio from 0.20.3 to 0.21.0 :esphomepr:`4599` by :ghuser:`dependabot[bot]`
|
||||
- Limit range on filter time period for remote_receiver :esphomepr:`4604` by :ghuser:`RoboMagus`
|
||||
- add select_schema to select component :esphomepr:`4545` by :ghuser:`regevbr`
|
||||
- Add ability to clear the gatt cache :esphomepr:`4621` by :ghuser:`bdraco`
|
||||
- Bump actions/stale from 7 to 8 :esphomepr:`4615` by :ghuser:`dependabot[bot]`
|
||||
- Require step to be set when calling register_number :esphomepr:`4622` by :ghuser:`jesserockz` (breaking-change)
|
||||
- Lower range of CONF_FREQUENCY :esphomepr:`4619` by :ghuser:`berendhaan`
|
||||
- Allow entity names to be set to None :esphomepr:`4607` by :ghuser:`jesserockz`
|
||||
- Fix platform restriction for bme680_bsec :esphomepr:`4616` by :ghuser:`jesserockz`
|
||||
- Fix EzoCommandType enum :esphomepr:`4593` by :ghuser:`alfredopironti`
|
||||
- `EntityBase` Name can stay in flash. :esphomepr:`4594` by :ghuser:`Fabian-Schmidt`
|
||||
- feat: Add support to unsubscribe from BLE advertisements :esphomepr:`4620` by :ghuser:`richardhopton`
|
||||
- EntityBase: Move ObjectId to Flash :esphomepr:`4569` by :ghuser:`Fabian-Schmidt`
|
||||
- Add workflow to sync device classes with HA dev :esphomepr:`4629` by :ghuser:`jesserockz`
|
||||
- Synchronise Device Classes from Home Assistant :esphomepr:`4633` by :ghuser:`github-actions[bot]`
|
||||
- Remove AUTO_LOAD from as3935 :esphomepr:`4630` by :ghuser:`jesserockz`
|
||||
- Add ifdef to new bt proxy unsubscribe :esphomepr:`4634` by :ghuser:`jesserockz`
|
||||
- add bluetooth mac address in dump_config() :esphomepr:`4628` by :ghuser:`felixlungu`
|
||||
- Binary map bugfixes :esphomepr:`4636` by :ghuser:`kahrendt`
|
||||
- entity_base avoid padding bytes. :esphomepr:`4637` by :ghuser:`Fabian-Schmidt`
|
||||
- Avoid sensor padding. :esphomepr:`4638` by :ghuser:`Fabian-Schmidt`
|
||||
- Support advanced UART customization :esphomepr:`4465` by :ghuser:`Fabian-Schmidt`
|
||||
- Log calibration results at level INFO :esphomepr:`4240` by :ghuser:`Duckle29`
|
||||
- Number step not optional :esphomepr:`4649` by :ghuser:`RoboMagus`
|
||||
- VSCode / devcontainer updates :esphomepr:`4647` by :ghuser:`jesserockz`
|
||||
- Retry PN532_COMMAND_VERSION_DATA on setup() (fixes esphome/issues#3823) :esphomepr:`4651` by :ghuser:`tracestep`
|
||||
- Bump pylint from 2.16.4 to 2.17.2 :esphomepr:`4650` by :ghuser:`dependabot[bot]`
|
||||
- Bump black from 23.1.0 to 23.3.0 :esphomepr:`4635` by :ghuser:`dependabot[bot]`
|
||||
- Added in mmc5603 code :esphomepr:`4175` by :ghuser:`benhoff` (new-integration)
|
||||
- fix compilation with latest esp-idf :esphomepr:`4671` by :ghuser:`Mic92`
|
||||
- Bump zeroconf from 0.47.4 to 0.56.0 :esphomepr:`4674` by :ghuser:`dependabot[bot]`
|
||||
- Bump pytest from 7.2.2 to 7.3.0 :esphomepr:`4673` by :ghuser:`dependabot[bot]`
|
||||
- Add push to talk voice assistant :esphomepr:`4648` by :ghuser:`jesserockz` (new-integration)
|
||||
- Fix ESP32 SPI hardware assignment in Arduino fw :esphomepr:`4669` by :ghuser:`kbx81`
|
||||
- Fix some NFC/PN532 crashes :esphomepr:`4678` by :ghuser:`kbx81`
|
||||
- Add support for SSD1306 72x40 displays :esphomepr:`4659` by :ghuser:`johnsto`
|
||||
- Fix pin schema for i2s microphone :esphomepr:`4680` by :ghuser:`jesserockz`
|
||||
- Fix BedJet setup priority [fixes esphome/issues#3807] :esphomepr:`4677` by :ghuser:`jhansche`
|
||||
- Add always trigger stop :esphomepr:`4249` by :ghuser:`X-Ryl669`
|
||||
- Fix graph limits for negative values and other corner cases :esphomepr:`4253` by :ghuser:`unhold`
|
||||
- Fix cut-off on 2.13" waveshare/ttgo epaper displays :esphomepr:`4255` by :ghuser:`unhold`
|
||||
- [Ethernet] Add PHY KSZ8081 support :esphomepr:`4668` by :ghuser:`Fabian-Schmidt`
|
||||
- Fix restore :esphomepr:`4655` by :ghuser:`spacemanspiff2007` (breaking-change)
|
||||
- debug component, allow without debug logging :esphomepr:`4685` by :ghuser:`jesserockz`
|
||||
- Fixed dns2 for ethernet :esphomepr:`4698` by :ghuser:`HeMan`
|
||||
- Add timeout to i2c write error logs :esphomepr:`4697` by :ghuser:`Szewcson`
|
||||
- Add event triggers to voice_assistant :esphomepr:`4699` by :ghuser:`jesserockz`
|
||||
- Call on_error if no api client connected that handles voice :esphomepr:`4709` by :ghuser:`jesserockz`
|
||||
- Add ethernet powerdown (fixes esphome/issues#4420) :esphomepr:`4706` by :ghuser:`tracestep`
|
||||
- Bump arduino platform version to 5.3.0 :esphomepr:`4713` by :ghuser:`jesserockz`
|
||||
|
||||
Past Changelogs
|
||||
---------------
|
||||
|
||||
- :doc:`2023.3.0`
|
||||
- :doc:`2023.2.0`
|
||||
- :doc:`2022.12.0`
|
||||
- :doc:`2022.11.0`
|
||||
- :doc:`2022.10.0`
|
||||
- :doc:`2022.9.0`
|
||||
- :doc:`2022.8.0`
|
||||
- :doc:`2022.6.0`
|
||||
- :doc:`2022.5.0`
|
||||
- :doc:`2022.4.0`
|
||||
- :doc:`2022.3.0`
|
||||
- :doc:`2022.2.0`
|
||||
- :doc:`2022.1.0`
|
||||
- :doc:`2021.12.0`
|
||||
- :doc:`2021.11.0`
|
||||
- :doc:`2021.10.0`
|
||||
- :doc:`2021.9.0`
|
||||
- :doc:`2021.8.0`
|
||||
- :doc:`v1.20.0`
|
||||
- :doc:`v1.19.0`
|
||||
- :doc:`v1.18.0`
|
||||
- :doc:`v1.17.0`
|
||||
- :doc:`v1.16.0`
|
||||
- :doc:`v1.15.0`
|
||||
- :doc:`v1.14.0`
|
||||
- :doc:`v1.13.0`
|
||||
- :doc:`v1.12.0`
|
||||
- :doc:`v1.11.0`
|
||||
- :doc:`v1.10.0`
|
||||
- :doc:`v1.9.0`
|
||||
- :doc:`v1.8.0`
|
||||
- :doc:`v1.7.0`
|
@ -2,7 +2,7 @@ Changelog
|
||||
=========
|
||||
|
||||
.. redirect::
|
||||
:url: /changelog/2023.3.0.html
|
||||
:url: /changelog/2023.4.0.html
|
||||
|
||||
.. toctree::
|
||||
:glob:
|
||||
|
@ -27,6 +27,13 @@ you can always override it.
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name for the binary sensor.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the binary sensor to use that name, you can set ``name: None``.
|
||||
|
||||
- **device_class** (*Optional*, string): The device class for the
|
||||
sensor. See https://developers.home-assistant.io/docs/core/entity/binary-sensor/#available-device-classes
|
||||
for a list of available options.
|
||||
|
@ -41,6 +41,12 @@ All buttons in ESPHome have a name and an optional icon.
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name for the button.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the button to use that name, you can set ``name: None``.
|
||||
|
||||
- **icon** (*Optional*, icon): Manually set the icon to use for the button in the frontend.
|
||||
- **internal** (*Optional*, boolean): Mark this component as internal. Internal components will
|
||||
not be exposed to the frontend (like Home Assistant). Only specifying an ``id`` without
|
||||
|
@ -33,6 +33,13 @@ All climate platforms in ESPHome inherit from the climate configuration schema.
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name of the climate device.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the climate to use that name, you can set ``name: None``.
|
||||
|
||||
- **icon** (*Optional*, icon): Manually set the icon to use for the climate device in the frontend.
|
||||
- **visual** (*Optional*): Visual settings for the climate device - these do not
|
||||
affect operation and are solely for controlling how the climate device shows up in the
|
||||
|
@ -28,6 +28,13 @@ All cover config schemas inherit from this schema - you can set these keys for c
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name for the cover.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the cover to use that name, you can set ``name: None``.
|
||||
|
||||
- **device_class** (*Optional*, string): The device class for the
|
||||
sensor. See https://www.home-assistant.io/components/cover/ for a list of available options.
|
||||
- **icon** (*Optional*, icon): Manually set the icon to use for the cover in the frontend.
|
||||
|
@ -52,6 +52,13 @@ Configuration variables:
|
||||
detectors. In this configuration the ``stop_action`` is not performed when the open or close
|
||||
time is completed and if the cover is commanded to open or close the corresponding actions
|
||||
will be performed without checking current state. Defaults to ``false``.
|
||||
- **manual_control** (*Optional*, boolean): For covers with manual external controls. With this
|
||||
configuration if the cover is commanded to open or close the corresponding actions will be
|
||||
performed even if the current state fully open or fully closed matches desired state, then
|
||||
``stop_action`` will be called after the full duration of the action elapses.
|
||||
The current state will then be relearned upon completion.
|
||||
It's recommended to set ``assumed_state`` to true so the cover control button aren't disabled
|
||||
in the interface. Defaults to ``false``.
|
||||
- **assumed_state** (*Optional*, boolean): Whether the true state of the cover is not known.
|
||||
This will make the Home Assistant frontend show buttons for both OPEN and CLOSE actions, instead
|
||||
of hiding or disabling one of them. Defaults to ``true``.
|
||||
|
@ -68,6 +68,7 @@ Configuration variables:
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
|
||||
- **num_chip_lines** (*Optional*, int): Number of lines if you want to use the displays in Multiline Mode. Defaults to ``1`` Example: https://github.com/esphome/esphome/pull/1622#issue-836179156
|
||||
- **chip_lines_style** (*Optional*): How are the lines in Multiline Mode connected? Possible values are ``zigzag`` and ``snake``. Defaults to ``snake``
|
||||
- **flip_x** (*Optional*, boolean): Flip the horizontal axis on the screen. Defaults to ``false``.
|
||||
|
||||
.. _display-max7219digit_lambda:
|
||||
|
||||
|
@ -51,6 +51,7 @@ Configuration variables:
|
||||
- ``SSD1306 128x32`` - SSD1306 with 128 columns and 32 rows
|
||||
- ``SSD1306 128x64``
|
||||
- ``SSD1306 96x16``
|
||||
- ``SSD1306 72x40``
|
||||
- ``SSD1306 64x48``
|
||||
- ``SH1106 128x32``
|
||||
- ``SH1106 128x64``
|
||||
@ -130,6 +131,7 @@ Configuration variables:
|
||||
- ``SSD1306 128x32`` (SSD1306 with 128 columns and 32 rows)
|
||||
- ``SSD1306 128x64``
|
||||
- ``SSD1306 96x16``
|
||||
- ``SSD1306 72x40``
|
||||
- ``SSD1306 64x48``
|
||||
- ``SH1106 128x32``
|
||||
- ``SH1106 128x64``
|
||||
|
@ -97,6 +97,7 @@ Configuration variables:
|
||||
- ``7.50inV2`` - Can't use with an ESP8266 as it runs out of RAM
|
||||
- ``7.50inV2alt`` (alternative version to the above ``7.50inV2``)
|
||||
- ``7.50in-hd-b`` - Can't use with an ESP8266 as it runs out of RAM
|
||||
- ``gdey029t94`` - GooDisplay GDEY029T94, as used on the AdaFruit MagTag
|
||||
|
||||
- **busy_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The BUSY pin. Defaults to not connected.
|
||||
- **reset_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The RESET pin. Defaults to not connected.
|
||||
|
@ -53,8 +53,8 @@ Connection Options:
|
||||
- **external_clock** (**Required**): The configuration of the external clock to drive the camera.
|
||||
|
||||
- **pin** (**Required**, pin): The pin the external clock line is connected to.
|
||||
- **frequency** (*Optional*, float): The frequency of the external clock, must be either 20MHz
|
||||
or 10MHz. Defaults to ``20MHz``.
|
||||
- **frequency** (*Optional*, float): The frequency of the external clock, must be between 10
|
||||
and 20MHz. Defaults to ``20MHz``.
|
||||
|
||||
- **i2c_pins** (**Required**): The I²C control pins of the camera.
|
||||
|
||||
@ -90,6 +90,15 @@ Image Settings:
|
||||
- ``1024x768`` (XGA)
|
||||
- ``1280x1024`` (SXGA)
|
||||
- ``1600x1200`` (UXGA)
|
||||
- ``1920x1080`` (FHD)
|
||||
- ``720x1280`` (Portrait HD)
|
||||
- ``864x1536`` (Portrait 3MP)
|
||||
- ``2048x1536`` (QXGA)
|
||||
- ``2560x1440`` (QHD)
|
||||
- ``2560x1600`` (WQXGA)
|
||||
- ``1080x1920`` (Portrait FHD)
|
||||
- ``2560x1920`` (QSXGA)
|
||||
|
||||
|
||||
- **jpeg_quality** (*Optional*, int): The JPEG quality that the camera should encode images with.
|
||||
From 10 (best) to 63 (worst). Defaults to ``10``.
|
||||
|
@ -40,6 +40,7 @@ Configuration variables:
|
||||
- ``DP83848``
|
||||
- ``IP101``
|
||||
- ``JL1101``
|
||||
- ``KSZ8081``
|
||||
|
||||
- **mdc_pin** (**Required**, :ref:`config-pin`): The MDC pin of the board.
|
||||
Usually this is ``GPIO23``.
|
||||
|
@ -27,15 +27,21 @@ Base Fan Configuration
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name of the fan.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the fan to use that name, you can set ``name: None``.
|
||||
|
||||
- **icon** (*Optional*, icon): Manually set the icon to use for the fan in the frontend.
|
||||
- **restore_mode** (*Optional*): Control how the fan attempts to restore state on boot.
|
||||
|
||||
- ``NO_RESTORE`` - Don't restore any state.
|
||||
- ``RESTORE_DEFAULT_OFF`` - Attempt to restore state and default to OFF if not possible to restore (default).
|
||||
- ``RESTORE_DEFAULT_OFF`` - Attempt to restore state and default to OFF if not possible to restore.
|
||||
- ``RESTORE_DEFAULT_ON`` - Attempt to restore state and default to ON.
|
||||
- ``RESTORE_INVERTED_DEFAULT_OFF`` - Attempt to restore state inverted from the previous state and default to OFF.
|
||||
- ``RESTORE_INVERTED_DEFAULT_ON`` - Attempt to restore state inverted from the previous state and default to ON.
|
||||
- ``ALWAYS_OFF`` - Always initialize the fan as OFF on bootup.
|
||||
- ``ALWAYS_OFF`` (Default) - Always initialize the fan as OFF on bootup.
|
||||
- ``ALWAYS_ON`` - Always initialize the fan as ON on bootup.
|
||||
|
||||
- **internal** (*Optional*, boolean): Mark this component as internal. Internal components will
|
||||
|
29
components/i2s_audio.rst
Normal file
29
components/i2s_audio.rst
Normal file
@ -0,0 +1,29 @@
|
||||
I²S Audio Component
|
||||
===================
|
||||
|
||||
.. seo::
|
||||
:description: Instructions for setting up I²S based devices in ESPHome.
|
||||
:image: i2s_audio.svg
|
||||
|
||||
The ``i2s_audio`` component allows for sending and receiving audio via I²S.
|
||||
This component only works on ESP32 based chips.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
i2s_audio:
|
||||
i2s_lrclk_pin: GPIO33
|
||||
i2s_bclk_pin: GPIO19
|
||||
|
||||
Configuration variables:
|
||||
------------------------
|
||||
|
||||
- **i2s_lrclk_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The GPIO pin to use for the I²S LRCLK (Word Select or Left/Right Clock) signal.
|
||||
- **i2s_bclk_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The GPIO pin to use for the I²S BCLK (Bit Clock) signal.
|
||||
|
||||
See also
|
||||
--------
|
||||
|
||||
- :doc:`microphone/i2s_audio`
|
||||
- :doc:`media_player/i2s_audio`
|
||||
- :ghedit:`Edit`
|
@ -23,5 +23,6 @@ Components
|
||||
lock/index
|
||||
display_menu/index
|
||||
media_player/index
|
||||
microphone/index
|
||||
time/index
|
||||
*
|
||||
|
@ -26,6 +26,13 @@ All light configuration schemas inherit these options.
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name of the light.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the light to use that name, you can set ``name: None``.
|
||||
|
||||
- **icon** (*Optional*, icon): Manually set the icon to use for the light in the frontend.
|
||||
- **effects** (*Optional*, list): A list of :ref:`light effects <light-effects>` to use for this light.
|
||||
- **gamma_correct** (*Optional*, float): Apply a `gamma correction
|
||||
@ -39,13 +46,13 @@ Configuration variables:
|
||||
For restoring on ESP8266s, also see ``esp8266_restore_from_flash`` in the
|
||||
:doc:`esphome section </components/esphome>`.
|
||||
|
||||
- ``RESTORE_DEFAULT_OFF`` (Default) - Attempt to restore state and default to OFF if not possible to restore.
|
||||
- ``RESTORE_DEFAULT_OFF`` - Attempt to restore state and default to OFF if not possible to restore.
|
||||
- ``RESTORE_DEFAULT_ON`` - Attempt to restore state and default to ON.
|
||||
- ``RESTORE_INVERTED_DEFAULT_OFF`` - Attempt to restore state inverted from the previous state and default to OFF.
|
||||
- ``RESTORE_INVERTED_DEFAULT_ON`` - Attempt to restore state inverted from the previous state and default to ON.
|
||||
- ``RESTORE_AND_OFF`` - Attempt to restore state but initialize the light as OFF.
|
||||
- ``RESTORE_AND_ON`` - Attempt to restore state but initialize the light as ON.
|
||||
- ``ALWAYS_OFF`` - Always initialize the light as OFF on bootup.
|
||||
- ``ALWAYS_OFF`` (Default) - Always initialize the light as OFF on bootup.
|
||||
- ``ALWAYS_ON`` - Always initialize the light as ON on bootup.
|
||||
|
||||
- **on_turn_on** (*Optional*, :ref:`Action <config-action>`): An automation to perform
|
||||
|
@ -8,6 +8,7 @@ Status LED Light
|
||||
The ``status_led`` light platform allows to share a single LED for indicating the status of
|
||||
the device (when on error/warning state) or as binary light (when on OK state).
|
||||
This is useful for devices with only one LED available.
|
||||
You can also use a binary :ref:`output`.
|
||||
|
||||
It provides the combined functionality of :doc:`status_led component </components/status_led>` and a
|
||||
:doc:`binary light component </components/light/binary>` over a single shared GPIO led.
|
||||
@ -33,9 +34,10 @@ When the device is in OK state, the LED will be restored to the state of the ``b
|
||||
Configuration variables:
|
||||
------------------------
|
||||
|
||||
- **name** (**Required**, string): The name of the light.
|
||||
- **pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The GPIO pin to operate the LED on.
|
||||
- **name** (*Optional*, string): The name of the light.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
|
||||
- **pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The GPIO pin to operate the LED on.
|
||||
- **output** (*Optional*, :ref:`config-id`): The id of the binary :ref:`output` to use for this light.
|
||||
- **effects** (*Optional*, list): A list of :ref:`light effects <light-effects>` to use for this light, though binary lights
|
||||
only support very few of them.
|
||||
- All other options from :ref:`Light <config-light>`.
|
||||
|
@ -6,7 +6,7 @@ Lock Component
|
||||
:image: folder-open.svg
|
||||
|
||||
The ``lock`` domain includes all platforms that should function like a lock
|
||||
with lock/unlock actions.
|
||||
with lock/unlock actions.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -26,6 +26,12 @@ Base Lock Configuration
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name of the lock.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the lock to use that name, you can set ``name: None``.
|
||||
|
||||
- **icon** (*Optional*, icon): Manually set the icon to use for the
|
||||
lock in the frontend.
|
||||
- **internal** (*Optional*, boolean): Mark this component as internal. Internal components will
|
||||
|
@ -2,11 +2,11 @@ I2S Audio Media Player
|
||||
======================
|
||||
|
||||
.. seo::
|
||||
:description: Instructions for setting up I2S based media players in ESPHome.
|
||||
:description: Instructions for setting up I²S based media players in ESPHome.
|
||||
:image: i2s_audio.svg
|
||||
|
||||
The ``i2s_audio`` media player platform allows you to play media from webservers and web streams
|
||||
via the I2S bus. This platform only works on ESP32 based chips.
|
||||
via the :doc:`/components/i2s_audio`. This platform only works on ESP32 based chips.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
@ -15,9 +15,7 @@ via the I2S bus. This platform only works on ESP32 based chips.
|
||||
- platform: i2s_audio
|
||||
name: ESPHome I2S Media Player
|
||||
dac_type: external
|
||||
i2s_lrclk_pin: GPIO33
|
||||
i2s_dout_pin: GPIO22
|
||||
i2s_bclk_pin: GPIO19
|
||||
mode: mono
|
||||
|
||||
Configuration variables:
|
||||
@ -33,10 +31,8 @@ Configuration variables:
|
||||
External DAC
|
||||
************
|
||||
|
||||
- **i2s_lrclk_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The GPIO pin to use for the I2S LRCLK (Word Select or Left/Right Clock) signal.
|
||||
- **i2s_dout_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The GPIO pin to use for the I2S DOUT (Data Out) signal.
|
||||
- **i2s_bclk_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The GPIO pin to use for the I2S BCLK (Bit Clock) signal.
|
||||
- **mode** (*Optional*, string): The mode of the I2S bus. Can be ``mono`` or ``stereo``. Defaults to ``mono``.
|
||||
- **i2s_dout_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The GPIO pin to use for the I²S DOUT (Data Out) signal.
|
||||
- **mode** (*Optional*, string): The mode of the I²S bus. Can be ``mono`` or ``stereo``. Defaults to ``mono``.
|
||||
|
||||
For best results, keep the wires as short as possible.
|
||||
|
||||
|
@ -26,6 +26,12 @@ Base Media Player Configuration
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name of the media player.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the media player to use that name, you can set ``name: None``.
|
||||
|
||||
- **icon** (*Optional*, icon): Manually set the icon to use for the
|
||||
media player in the frontend.
|
||||
- **internal** (*Optional*, boolean): Mark this component as internal. Internal components will
|
||||
|
29
components/microphone/i2s_audio.rst
Normal file
29
components/microphone/i2s_audio.rst
Normal file
@ -0,0 +1,29 @@
|
||||
I²S Audio Microphone
|
||||
====================
|
||||
|
||||
.. seo::
|
||||
:description: Instructions for setting up I²S based microphones in ESPHome.
|
||||
:image: i2s_audio.svg
|
||||
|
||||
The ``i2s_audio`` microphone platform allows you to receive audio via the the
|
||||
:doc:`/components/i2s_audio`. This platform only works on ESP32 based chips.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
microphone:
|
||||
- platform: i2s_audio
|
||||
i2s_din_pin: GPIO23
|
||||
|
||||
Configuration variables:
|
||||
------------------------
|
||||
|
||||
- **i2s_din_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The GPIO pin to use for the I²S DIN (Data In) signal.
|
||||
|
||||
- All other options from :ref:`Microphone <config-microphone>`
|
||||
|
||||
See also
|
||||
--------
|
||||
|
||||
- :doc:`index`
|
||||
- :ghedit:`Edit`
|
109
components/microphone/index.rst
Normal file
109
components/microphone/index.rst
Normal file
@ -0,0 +1,109 @@
|
||||
Microphone Components
|
||||
=====================
|
||||
|
||||
.. seo::
|
||||
:description: Instructions for setting up microphones in ESPHome.
|
||||
:image: folder-open.svg
|
||||
|
||||
The ``microphone`` domain contains common functionality shared across the
|
||||
microphone platforms.
|
||||
|
||||
.. _config-microphone:
|
||||
|
||||
Base Microphone Configuration
|
||||
-----------------------------
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **on_data** (*Optional*, :ref:`Automation <automation>`): An automation to
|
||||
perform when new data is received.
|
||||
|
||||
.. _microphone-actions:
|
||||
|
||||
Microphone Actions
|
||||
------------------
|
||||
|
||||
All ``microphone`` actions can be used without specifying an ``id`` if you have only one ``microphone`` in
|
||||
your configuration YAML.
|
||||
|
||||
Configuration variables:
|
||||
|
||||
**id** (*Optional*, :ref:`config-id`): The microphone to control. Defaults to the only one in YAML.
|
||||
|
||||
|
||||
.. _microphone-capture:
|
||||
|
||||
``microphone.capture`` Action
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This action will start capturing audio data from the microphone. The data will be passed to any components listening
|
||||
and will be available in the ``on_data`` trigger.
|
||||
|
||||
.. _microphone-stop_capture:
|
||||
|
||||
``microphone.stop_capture`` Action
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This action will stop capturing audio data from the microphone.
|
||||
|
||||
|
||||
.. _microphone-triggers:
|
||||
|
||||
Microphone Triggers
|
||||
-------------------
|
||||
|
||||
.. _microphone-on_data:
|
||||
|
||||
``microphone.on_data`` Trigger
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This trigger will fire when new data is received from the microphone.
|
||||
The data is available as a ``std::vector<uint8_t>`` in the variable ``x``.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
microphone:
|
||||
- platform: ...
|
||||
on_data:
|
||||
- logger.log:
|
||||
format: "Received %d bytes"
|
||||
args: ['x.size()']
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **id** (*Optional*, :ref:`config-id`): The microphone to check. Defaults to the only one in YAML.
|
||||
|
||||
|
||||
.. _microphone-conditions:
|
||||
|
||||
Microphone Conditions
|
||||
---------------------
|
||||
|
||||
All ``microphone`` conditions can be used without specifying an ``id`` if you have only one ``microphone`` in
|
||||
your configuration YAML.
|
||||
|
||||
Configuration variables:
|
||||
|
||||
**id** (*Optional*, :ref:`config-id`): The microphone to check. Defaults to the only one in YAML.
|
||||
|
||||
.. _microphone-is_capturing:
|
||||
|
||||
``microphone.is_capturing`` Condition
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This condition will check if the microphone is currently capturing audio data.
|
||||
|
||||
|
||||
Platforms
|
||||
---------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:glob:
|
||||
|
||||
*
|
||||
|
||||
See Also
|
||||
--------
|
||||
|
||||
- :ghedit:`Edit`
|
@ -31,6 +31,12 @@ All numbers in ESPHome have a name and an optional icon.
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name for the number.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the number to use that name, you can set ``name: None``.
|
||||
|
||||
- **icon** (*Optional*, icon): Manually set the icon to use for the number in the frontend.
|
||||
- **internal** (*Optional*, boolean): Mark this component as internal. Internal components will
|
||||
not be exposed to the frontend (like Home Assistant). Only specifying an ``id`` without
|
||||
|
@ -31,6 +31,12 @@ All selects in ESPHome have a name and an optional icon.
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name for the select.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the select to use that name, you can set ``name: None``.
|
||||
|
||||
- **icon** (*Optional*, icon): Manually set the icon to use for the select in the frontend.
|
||||
- **internal** (*Optional*, boolean): Mark this component as internal. Internal components will
|
||||
not be exposed to the frontend (like Home Assistant). Only specifying an ``id`` without
|
||||
@ -334,8 +340,8 @@ advanced stuff (see the full API Reference for more info).
|
||||
if (id(my_select).has_index(index)) {
|
||||
ESP_LOGI("main", "Select has index offset %d", index);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
@ -347,13 +353,13 @@ Setting up three options and set component state to selected option value.
|
||||
- platform: template
|
||||
name: Mode
|
||||
id: mode
|
||||
options:
|
||||
options:
|
||||
- "Option1"
|
||||
- "Option2"
|
||||
- "Option3"
|
||||
initial_option: "OFF"
|
||||
optimistic: true
|
||||
set_action:
|
||||
set_action:
|
||||
- logger.log:
|
||||
format: "Chosen option: %s"
|
||||
args: ["x.c_str()"]
|
||||
|
@ -40,6 +40,12 @@ Configuration variables:
|
||||
|
||||
- **id** (*Optional*, string): Manually specify the ID for code generation. At least one of **id** and **name** must be specified.
|
||||
- **name** (*Optional*, string): The name for the sensor. At least one of **id** and **name** must be specified.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the sensor to use that name, you can set ``name: None``.
|
||||
|
||||
- **unit_of_measurement** (*Optional*, string): Manually set the unit
|
||||
of measurement the sensor should advertise its values with. This does
|
||||
not actually do any maths (conversion between units).
|
||||
@ -406,6 +412,21 @@ Configuration variables:
|
||||
published. With this parameter you can specify when the very first value is to be sent.
|
||||
Defaults to ``1``.
|
||||
|
||||
``skip_initial``
|
||||
****************
|
||||
|
||||
A simple skip filter; `skip_initial: N` skips the first `N` sensor readings and passes on the
|
||||
rest. This can be used when the sensor needs a few readings to 'warm up'. After the initial
|
||||
readings have been skipped, this filter does nothing.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
- platform: wifi_signal
|
||||
# ...
|
||||
filters:
|
||||
- skip_initial: 3
|
||||
|
||||
``throttle``
|
||||
************
|
||||
|
||||
@ -456,11 +477,28 @@ values.
|
||||
``delta``
|
||||
*********
|
||||
|
||||
This filter stores the last value passed through this filter and only
|
||||
passes incoming values through if the absolute difference is greater than the configured
|
||||
value. For example if a value of 1.0 first comes in, it's passed on. If the delta filter
|
||||
is configured with a value of 5, it will now not pass on an incoming value of 2.0, only values
|
||||
that are at least 6.0 big or -4.0.
|
||||
This filter stores the last value passed through this filter and only passes incoming values through
|
||||
if incoming value is sufficiently different from the previously passed one.
|
||||
This difference can be calculated in two ways an absolute difference or a percentage difference.
|
||||
|
||||
If a number is specified, it will be used as the absolute difference required.
|
||||
For example if the filter were configured with a value of 2 and the last value passed through was 10,
|
||||
only values greater than 12 or less than 8 would be passed through.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
filters:
|
||||
- delta: 2.0
|
||||
|
||||
If a percentage is specified a percentage of the last value will be used as the required difference.
|
||||
For example if the filter were configured with a value of 20% and the last value passed through was 10,
|
||||
only values greater than 12 or less than 8 would be passed through.
|
||||
However, if the last value passed through was 100 only values greater than 120 or less than 80 would be passed through.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
filters:
|
||||
- delta: 20%
|
||||
|
||||
``or``
|
||||
******
|
||||
@ -643,7 +681,7 @@ From :ref:`lambdas <config-lambda>`, you can call several methods on all sensors
|
||||
advanced stuff (see the full API Reference for more info).
|
||||
|
||||
- ``publish_state()``: Manually cause the sensor to push out a value. It will then
|
||||
be processed by the sensor filters, and once filtered will propagate though ESPHome and though the API to Home Assistant or out via MQTT if configured.
|
||||
be processed by the sensor filters, and once filtered will propagate though ESPHome and though the API to Home Assistant or out via MQTT if configured.
|
||||
|
||||
.. code-block:: cpp
|
||||
|
||||
|
63
components/sensor/mmc5063.rst
Normal file
63
components/sensor/mmc5063.rst
Normal file
@ -0,0 +1,63 @@
|
||||
.. _mmc5603:
|
||||
|
||||
MMC5603 Magnetometer
|
||||
=====================
|
||||
|
||||
.. seo::
|
||||
:description: Instructions for setting up MMC5693 IMU compass sensors.
|
||||
:image: mmc5603.jpg
|
||||
:keywords: MMC5603
|
||||
|
||||
The ``mmc5603`` allows you to use your MMC5603 triple-axis magnetometers
|
||||
(`datasheet <https://cdn-learn.adafruit.com/assets/assets/000/113/957/original/MMC5603NJ_RevB_7-12-18.pdf?1659554945>`__,
|
||||
`Adafruit`_) with ESPHome. The :ref:`I²C Bus <i2c>` is required to be set up in your configuration
|
||||
for this sensor to work.
|
||||
|
||||
.. figure:: ../../images/mmc5603.jpg
|
||||
:align: center
|
||||
:width: 30.0%
|
||||
|
||||
MMC5603 Magnetometer.
|
||||
|
||||
.. _Adafruit: https://www.adafruit.com/product/5579
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
sensor:
|
||||
- platform: MMC5603
|
||||
address: 0x30
|
||||
field_strength_x:
|
||||
name: "MMC5603 Field Strength X"
|
||||
field_strength_y:
|
||||
name: "MMC5603 Field Strength Y"
|
||||
field_strength_z:
|
||||
name: "MMC5603 Field Strength Z"
|
||||
heading:
|
||||
name: "MMC5603 Heading"
|
||||
update_interval: 60s
|
||||
|
||||
Configuration variables:
|
||||
------------------------
|
||||
|
||||
- **address** (*Optional*, int): Manually specify the I²C address of the sensor. Defaults to ``0x1E``.
|
||||
- **field_strength_x** (*Optional*): The field strength in microtesla along the X-Axis. All options from
|
||||
:ref:`Sensor <config-sensor>`.
|
||||
- **field_strength_y** (*Optional*): The field strength in microtesla along the Y-Axis. All options from
|
||||
:ref:`Sensor <config-sensor>`.
|
||||
- **field_strength_z** (*Optional*): The field strength in microtesla along the Z-Axis. All options from
|
||||
:ref:`Sensor <config-sensor>`.
|
||||
- **heading** (*Optional*): The heading of the sensor in degrees. All options from
|
||||
:ref:`Sensor <config-sensor>`.
|
||||
- **update_interval** (*Optional*, :ref:`config-time`): The interval to check the sensor. Defaults to ``60s``.
|
||||
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
|
||||
|
||||
|
||||
See Also
|
||||
--------
|
||||
|
||||
- :ref:`sensor-filters`
|
||||
- :doc:`template`
|
||||
- :apiref:`mmc5603/mmc5603.h`
|
||||
- :ghedit:`Edit`
|
@ -5,7 +5,7 @@ PMSX003 Particulate Matter Sensor
|
||||
:description: Instructions for setting up PMSX003 Particulate matter sensors
|
||||
:image: pmsx003.svg
|
||||
|
||||
The ``pmsx003`` sensor platform allows you to use your PMS5003, PMS7003, ... particulate matter
|
||||
The ``pmsx003`` sensor platform allows you to use your Plantower PMS5003, PMS7003, ... laser based particulate matter sensors
|
||||
(`datasheet <http://www.aqmd.gov/docs/default-source/aq-spec/resources-page/plantower-pms5003-manual_v2-3.pdf>`__)
|
||||
sensors with ESPHome.
|
||||
|
||||
@ -18,9 +18,16 @@ value:
|
||||
|
||||
- ``PMSX003`` for generic PMS5003, PMS7003, ...; these sensors support ``pm_1_0``, ``pm_2_5`` and ``pm_10_0`` output.
|
||||
- ``PMS5003S`` for PMS5003S. These support ``pm_1_0``, ``pm_2_5`` and ``pm_10_0`` and ``formaldehyde``.
|
||||
- ``PMS5003T`` for PMS5003T. These support ``pm_2_5``, ``temperature`` and ``humidity``.
|
||||
- ``PMS5003T`` for PMS5003T. These support ``pm_1_0``, ``pm_2_5`` and ``pm_10_0``, ``temperature`` and ``humidity``.
|
||||
- ``PMS5003ST`` for PMS5003ST. These support ``pm_2_5``, ``temperature``, ``humidity`` and ``formaldehyde``.
|
||||
|
||||
Sensor Longevity
|
||||
------------------------
|
||||
The laser diode inside the PMSX003 has a lifetime of about 8000 hours, nearly one year.
|
||||
|
||||
If you wish to use the optional ``update_interval`` ensure you have a ``tx_pin`` set in the UART configuration and connected to the RECEIVE/RX pin
|
||||
(may also be called the TX pin, depending on the model) of the PMS. Setting ``update_interval`` to 120 seconds or higher may help extend the life span of the sensor.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
@ -38,34 +45,34 @@ value:
|
||||
name: "Particulate Matter <2.5µm Concentration"
|
||||
pm_10_0:
|
||||
name: "Particulate Matter <10.0µm Concentration"
|
||||
update_interval: 60000ms
|
||||
update_interval: 120s
|
||||
|
||||
Configuration variables:
|
||||
------------------------
|
||||
|
||||
- **pm_1_0_std** (*Optional*): Use the concentration of particulates of size less than 1.0µm in µg per cubic meter at standard particle
|
||||
- **pm_1_0_std** (*Optional*): Use the concentration of particulates of size less than 1.0µm in µg per cubic meter at standard particle.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **pm_2_5_std** (*Optional*): Use the concentration of particulates of size less than 2.5µm in µg per cubic meter at standard particle
|
||||
- **pm_2_5_std** (*Optional*): Use the concentration of particulates of size less than 2.5µm in µg per cubic meter at standard particle.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **pm_10_0_std** (*Optional*): Use the concentration of particulates of size less than 10.0µm in µg per cubic meter at standard particle
|
||||
- **pm_10_0_std** (*Optional*): Use the concentration of particulates of size less than 10.0µm in µg per cubic meter at standard particle.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **pm_1_0** (*Optional*): Use the concentration of particulates of size less than 1.0µm in µg per cubic meter under atmospheric environment
|
||||
- **pm_1_0** (*Optional*): Use the concentration of particulates of size less than 1.0µm in µg per cubic meter under atmospheric environment.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **pm_2_5** (*Optional*): Use the concentration of particulates of size less than 2.5µm in µg per cubic meter under atmospheric environment
|
||||
- **pm_2_5** (*Optional*): Use the concentration of particulates of size less than 2.5µm in µg per cubic meter under atmospheric environment.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **pm_10_0** (*Optional*): Use the concentration of particulates of size less than 10.0µm in µg per cubic meter under atmospheric environment
|
||||
- **pm_10_0** (*Optional*): Use the concentration of particulates of size less than 10.0µm in µg per cubic meter under atmospheric environment.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **pm_0_3um** (*Optional*): Use the number of particles with diameter beyond 0.3um in 0.1L of air
|
||||
- **pm_0_3um** (*Optional*): Use the number of particles with diameter beyond 0.3um in 0.1L of air.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **pm_0_5um** (*Optional*): Use the number of particles with diameter beyond 0.5um in 0.1L of air
|
||||
- **pm_0_5um** (*Optional*): Use the number of particles with diameter beyond 0.5um in 0.1L of air.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **pm_1_0um** (*Optional*): Use the number of particles with diameter beyond 1.0um in 0.1L of air
|
||||
- **pm_1_0um** (*Optional*): Use the number of particles with diameter beyond 1.0um in 0.1L of air.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **pm_2_5um** (*Optional*): Use the number of particles with diameter beyond 2.5um in 0.1L of air
|
||||
- **pm_2_5um** (*Optional*): Use the number of particles with diameter beyond 2.5um in 0.1L of air.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **pm_5_0um** (*Optional*): Use the number of particles with diameter beyond 5.0um in 0.1L of air
|
||||
- **pm_5_0um** (*Optional*): Use the number of particles with diameter beyond 5.0um in 0.1L of air. Not supported by the ``PMS5003T`` type sensors.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **pm_10_0um** (*Optional*): Use the number of particles with diameter beyond 10.0um in 0.1L of air
|
||||
- **pm_10_0um** (*Optional*): Use the number of particles with diameter beyond 10.0um in 0.1L of air. Not supported by the ``PMS5003T`` type sensors.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
- **temperature** (*Optional*): Use the temperature value in °C for the ``PMS5003T`` and ``PMS5003ST`` type sensors.
|
||||
All options from :ref:`Sensor <config-sensor>`.
|
||||
|
@ -41,6 +41,7 @@ Configuration variables:
|
||||
- **clk_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The pin used for the clock line of the SPI bus.
|
||||
- **mosi_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The pin used for the MOSI line of the SPI bus.
|
||||
- **miso_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The pin used for the MISO line of the SPI bus.
|
||||
- **force_sw** (*Optional*, boolean): Whether software implementation should be used even if hardware one is available.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID for this SPI hub if you need multiple SPI hubs.
|
||||
|
||||
See Also
|
||||
|
@ -23,6 +23,12 @@ Base Switch Configuration
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name of the switch.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the switch to use that name, you can set ``name: None``.
|
||||
|
||||
- **icon** (*Optional*, icon): Manually set the icon to use for the
|
||||
sensor in the frontend.
|
||||
- **inverted** (*Optional*, boolean): Whether to invert the binary
|
||||
@ -41,11 +47,11 @@ Configuration variables:
|
||||
- ``RESTORE_DEFAULT_ON`` - Attempt to restore state and default to ON.
|
||||
- ``RESTORE_INVERTED_DEFAULT_OFF`` - Attempt to restore state inverted from the previous state and default to OFF.
|
||||
- ``RESTORE_INVERTED_DEFAULT_ON`` - Attempt to restore state inverted from the previous state and default to ON.
|
||||
- ``ALWAYS_OFF`` - Always initialize the switch as OFF on bootup.
|
||||
- ``ALWAYS_OFF`` (Default) - Always initialize the switch as OFF on bootup.
|
||||
- ``ALWAYS_ON`` - Always initialize the switch as ON on bootup.
|
||||
- ``DISABLED`` - Does nothing and leaves it up to the downstream platform component to decide. For example, the component could read hardware and determine the state, or have a specific configuration option to regulate initial state.
|
||||
- ``DISABLED`` - Does nothing and leaves it up to the downstream platform component to decide. For example, the component could read hardware and determine the state, or have a specific configuration option to regulate initial state.
|
||||
|
||||
Unless a specific platform defines another default value, the default is ``RESTORE_DEFAULT_OFF``.
|
||||
Unless a specific platform defines another default value, the default is ``ALWAYS_OFF``.
|
||||
|
||||
- **on_turn_on** (*Optional*, :ref:`Action <config-action>`): An automation to perform
|
||||
when the switch is turned on. See :ref:`switch-on_turn_on_off_trigger`.
|
||||
|
@ -25,6 +25,12 @@ Base Text Sensor Configuration
|
||||
Configuration variables:
|
||||
|
||||
- **name** (**Required**, string): The name for the sensor.
|
||||
|
||||
.. note::
|
||||
|
||||
If you have a :ref:`friendly_name <esphome-configuration_variables>` set for your device and
|
||||
you want the text sensor to use that name, you can set ``name: None``.
|
||||
|
||||
- **icon** (*Optional*, icon): Manually set the icon to use for the sensor in the frontend.
|
||||
- **internal** (*Optional*, boolean): Mark this component as internal. Internal components will
|
||||
not be exposed to the frontend (like Home Assistant). Only specifying an ``id`` without
|
||||
@ -145,7 +151,7 @@ The arguments are a list of substitutions, each in the form ``TO_FIND -> REPLACE
|
||||
``map``
|
||||
*******
|
||||
|
||||
Lookup the current value of the text sensor in a list, and return the matching item if found.
|
||||
Lookup the current value of the text sensor in a list, and return the matching item if found.
|
||||
Does not change the value of the text sensor if the current value wasn't found.
|
||||
|
||||
|
||||
|
79
components/voice_assistant.rst
Normal file
79
components/voice_assistant.rst
Normal file
@ -0,0 +1,79 @@
|
||||
Voice Assistant
|
||||
===============
|
||||
|
||||
.. seo::
|
||||
:description: Instructions for setting up a Voice Assistant in ESPHome.
|
||||
:image: voice-assistant.svg
|
||||
|
||||
ESPHome devices with a microphone are able to stream the audio to Home Assistant and be processed there by `assist <https://www.home-assistant.io/docs/assist/>`__.
|
||||
|
||||
.. note::
|
||||
|
||||
Voice Assistant requires Home Assistant 2023.5 or later.
|
||||
|
||||
Configuration:
|
||||
--------------
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
microphone:
|
||||
- platform: ...
|
||||
id: mic_id
|
||||
|
||||
voice_assistant:
|
||||
microphone: mic_id
|
||||
|
||||
- **microphone** (**Required**, :ref:`config-id`): The microphone to use for input.
|
||||
- **on_start** (*Optional*, :ref:`Automation <automation>`): An automation to
|
||||
perform when the voice assistant starts listening.
|
||||
- **on_end** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
when the voice assistant is finished all tasks.
|
||||
- **on_stt_end** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
when the voice assistant has finished speech-to-text. The resulting text is
|
||||
available to automations as the variable ``x``.
|
||||
- **on_tts_start** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
when the voice assistant has started text-to-speech. The text to be spoken is
|
||||
available to automations as the variable ``x``.
|
||||
- **on_tts_end** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
when the voice assistant has finished text-to-speech. A URL containing the audio response
|
||||
is available to automations as the variable ``x``.
|
||||
- **on_error** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
when the voice assistant has encountered an error. The error code and message are available to
|
||||
automations as the variables ``code`` and ``message``.
|
||||
|
||||
.. _voice_assistant-actions:
|
||||
|
||||
Voice Assistant Actions
|
||||
-----------------------
|
||||
|
||||
The following actions are available for use in automations:
|
||||
|
||||
- ``voice_assistant.start`` - Start listening for voice commands.
|
||||
- ``voice_assistant.stop`` - Stop listening for voice commands.
|
||||
|
||||
|
||||
Push to Talk
|
||||
------------
|
||||
|
||||
Here is an example offering Push to Talk with a :doc:`/components/binary_sensor/index`.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
voice_assistant:
|
||||
microphone: mic_id
|
||||
|
||||
binary_sensor:
|
||||
- platform: gpio
|
||||
pin: ...
|
||||
on_press:
|
||||
- voice_assistant.start:
|
||||
on_release:
|
||||
- voice_assistant.stop:
|
||||
|
||||
|
||||
See Also
|
||||
--------
|
||||
|
||||
- :doc:`microphone/index`
|
||||
- :apiref:`voice_assistant/voice_assistant.h`
|
||||
- :ghedit:`Edit`
|
4
conf.py
4
conf.py
@ -67,9 +67,9 @@ author = "ESPHome"
|
||||
# built documents.
|
||||
#
|
||||
# The short X.Y version.
|
||||
version = "2023.3"
|
||||
version = "2023.4"
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = "2023.3.2"
|
||||
release = "2023.4.0"
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
|
@ -16,6 +16,7 @@ Contributors
|
||||
|
||||
(in alphabetical order)
|
||||
|
||||
- `007hacky007 (@007hacky007) <https://github.com/007hacky007>`__
|
||||
- `0hax (@0hax) <https://github.com/0hax>`__
|
||||
- `0x0a11c0de (@0x0a11c0de) <https://github.com/0x0a11c0de>`__
|
||||
- `Denis Bodor (aka Lefinnois) (@0xDRRB) <https://github.com/0xDRRB>`__
|
||||
@ -26,10 +27,12 @@ Contributors
|
||||
- `Alessandro Campolo (@a13ssandr0) <https://github.com/a13ssandr0>`__
|
||||
- `Aalian Khan (@AalianKhan) <https://github.com/AalianKhan>`__
|
||||
- `Adam Liddell (@aaliddell) <https://github.com/aaliddell>`__
|
||||
- `Aaron Gamble (@aarongamble) <https://github.com/aarongamble>`__
|
||||
- `Aaron S. Jackson (@AaronJackson) <https://github.com/AaronJackson>`__
|
||||
- `Abel Matser (@abelmatser) <https://github.com/abelmatser>`__
|
||||
- `Abílio Costa (@abmantis) <https://github.com/abmantis>`__
|
||||
- `Antonio (@acarvajalperez) <https://github.com/acarvajalperez>`__
|
||||
- `Avula Chandra Kiran Reddy (@ackr-8) <https://github.com/ackr-8>`__
|
||||
- `Zhenyu Wu (@Adam5Wu) <https://github.com/Adam5Wu>`__
|
||||
- `Chris Byrne (@adapt0) <https://github.com/adapt0>`__
|
||||
- `Attila Darazs (@adarazs) <https://github.com/adarazs>`__
|
||||
@ -41,9 +44,12 @@ Contributors
|
||||
- `Stefan Agner (@agners) <https://github.com/agners>`__
|
||||
- `Anders (@ahd71) <https://github.com/ahd71>`__
|
||||
- `Alexander Pohl (@ahpohl) <https://github.com/ahpohl>`__
|
||||
- `aidbish (@aidbish) <https://github.com/aidbish>`__
|
||||
- `Airy André (@airy10) <https://github.com/airy10>`__
|
||||
- `Airyzz (@Airyzz) <https://github.com/Airyzz>`__
|
||||
- `Adam Jacques (@ajacques) <https://github.com/ajacques>`__
|
||||
- `Andrej Friesen (@ajfriesen) <https://github.com/ajfriesen>`__
|
||||
- `akennerly (@akennerly) <https://github.com/akennerly>`__
|
||||
- `akoivist (@akoivist) <https://github.com/akoivist>`__
|
||||
- `Andrej Komelj (@akomelj) <https://github.com/akomelj>`__
|
||||
- `Alex Konradi (@akonradi) <https://github.com/akonradi>`__
|
||||
@ -58,13 +64,17 @@ Contributors
|
||||
- `Alex Iribarren (@alexiri) <https://github.com/alexiri>`__
|
||||
- `Alex Mekkering (@AlexMekkering) <https://github.com/AlexMekkering>`__
|
||||
- `Alex (@alexyao2015) <https://github.com/alexyao2015>`__
|
||||
- `Alfredo (@alfredopironti) <https://github.com/alfredopironti>`__
|
||||
- `Andreas Mandel (@amandel) <https://github.com/amandel>`__
|
||||
- `Amish Vishwakarma (@amishv) <https://github.com/amishv>`__
|
||||
- `Amit Keret (@amitkeret) <https://github.com/amitkeret>`__
|
||||
- `Jason Nader (@ammgws) <https://github.com/ammgws>`__
|
||||
- `Branden Cash (@ammmze) <https://github.com/ammmze>`__
|
||||
- `Alexander Momchilov (@amomchilov) <https://github.com/amomchilov>`__
|
||||
- `anatoly-savchenkov (@anatoly-savchenkov) <https://github.com/anatoly-savchenkov>`__
|
||||
- `andig (@andig) <https://github.com/andig>`__
|
||||
- `Andi Egli (@andilge) <https://github.com/andilge>`__
|
||||
- `Kieren (@ando023) <https://github.com/ando023>`__
|
||||
- `András Bíró (@andrasbiro) <https://github.com/andrasbiro>`__
|
||||
- `Andreas Hergert (@andreashergert1984) <https://github.com/andreashergert1984>`__
|
||||
- `Andrew J.Swan (@andrewjswan) <https://github.com/andrewjswan>`__
|
||||
@ -73,14 +83,17 @@ Contributors
|
||||
- `Andrzej (@andriej) <https://github.com/andriej>`__
|
||||
- `Andreas (@anduchs) <https://github.com/anduchs>`__
|
||||
- `Andy2No (@Andy2No) <https://github.com/Andy2No>`__
|
||||
- `AndyRPH (@AndyRPH) <https://github.com/AndyRPH>`__
|
||||
- `Vegetto (@angelnu) <https://github.com/angelnu>`__
|
||||
- `Sergey Anisimov (@anisimovsergey) <https://github.com/anisimovsergey>`__
|
||||
- `Nikolay Vasilchuk (@Anonym-tsk) <https://github.com/Anonym-tsk>`__
|
||||
- `Anthony Keane (@anthonykeane) <https://github.com/anthonykeane>`__
|
||||
- `Rémi K. (@antibill51) <https://github.com/antibill51>`__
|
||||
- `Antonio Fiol (@antonio-fiol) <https://github.com/antonio-fiol>`__
|
||||
- `Adriaan Peeters (@apeeters) <https://github.com/apeeters>`__
|
||||
- `apendley (@apendley) <https://github.com/apendley>`__
|
||||
- `Darius Ratkevičius (@aphex008) <https://github.com/aphex008>`__
|
||||
- `aquaticus (@aquaticus) <https://github.com/aquaticus>`__
|
||||
- `Andy Allsopp (@arallsopp) <https://github.com/arallsopp>`__
|
||||
- `arantius (@arantius) <https://github.com/arantius>`__
|
||||
- `arturo182 (@arturo182) <https://github.com/arturo182>`__
|
||||
@ -88,33 +101,45 @@ Contributors
|
||||
- `Arya (@Arya11111) <https://github.com/Arya11111>`__
|
||||
- `Borys Pierov (@ashald) <https://github.com/ashald>`__
|
||||
- `Ash McKenzie (@ashmckenzie) <https://github.com/ashmckenzie>`__
|
||||
- `ashp8i (@ashp8i) <https://github.com/ashp8i>`__
|
||||
- `Ashton Kemerling (@AshtonKem) <https://github.com/AshtonKem>`__
|
||||
- `杨成锴 (@asjdf) <https://github.com/asjdf>`__
|
||||
- `Pavel Pletenev (@ASMfreaK) <https://github.com/ASMfreaK>`__
|
||||
- `Andreas Soehlke (@asoehlke) <https://github.com/asoehlke>`__
|
||||
- `Mike Dunston (@atanisoft) <https://github.com/atanisoft>`__
|
||||
- `Glenn Morrison (@atomicpapa) <https://github.com/atomicpapa>`__
|
||||
- `Alexander Turlov (@aturlov) <https://github.com/aturlov>`__
|
||||
- `aus (@aus) <https://github.com/aus>`__
|
||||
- `AustinMorris (@AustinMorris) <https://github.com/AustinMorris>`__
|
||||
- `Avirsaam (@Avirsaam) <https://github.com/Avirsaam>`__
|
||||
- `Arsène von Wyss (@avonwyss) <https://github.com/avonwyss>`__
|
||||
- `Andrew Weddle (@aweddle2) <https://github.com/aweddle2>`__
|
||||
- `Achilleas Pipinellis (@axilleas) <https://github.com/axilleas>`__
|
||||
- `Kamil Trzciński (@ayufan) <https://github.com/ayufan>`__
|
||||
- `Nicholas Peters (@Azimath) <https://github.com/Azimath>`__
|
||||
- `Daniel (@azrael783) <https://github.com/azrael783>`__
|
||||
- `B48D81EFCC (@B48D81EFCC) <https://github.com/B48D81EFCC>`__
|
||||
- `Florian Mösch (@badbadc0ffee) <https://github.com/badbadc0ffee>`__
|
||||
- `Baden (@baden03) <https://github.com/baden03>`__
|
||||
- `Marco Tombesi (@baggior) <https://github.com/baggior>`__
|
||||
- `balk77 (@balk77) <https://github.com/balk77>`__
|
||||
- `Paulus Schoutsen (@balloob) <https://github.com/balloob>`__
|
||||
- `Andrew Zaborowski (@balrog-kun) <https://github.com/balrog-kun>`__
|
||||
- `BarryMar (@BarryMar) <https://github.com/BarryMar>`__
|
||||
- `bartoszpierzchlewicz (@bartoszpierzchlewicz) <https://github.com/bartoszpierzchlewicz>`__
|
||||
- `BartoszPierzchlewiczMacrix (@BartoszPierzchlewiczMacrix) <https://github.com/BartoszPierzchlewiczMacrix>`__
|
||||
- `Bascht74 (@Bascht74) <https://github.com/Bascht74>`__
|
||||
- `Viktr (@BbIKTOP) <https://github.com/BbIKTOP>`__
|
||||
- `J. Nick Koston (@bdraco) <https://github.com/bdraco>`__
|
||||
- `Maxim Ocheretianko (@bearpawmaxim) <https://github.com/bearpawmaxim>`__
|
||||
- `beaudeanadams (@beaudeanadams) <https://github.com/beaudeanadams>`__
|
||||
- `Benjamin Freeman (@Beetix) <https://github.com/Beetix>`__
|
||||
- `beikeland (@beikeland) <https://github.com/beikeland>`__
|
||||
- `Ben-Schwabe (@Ben-Schwabe) <https://github.com/Ben-Schwabe>`__
|
||||
- `Ben Hoff (@benhoff) <https://github.com/benhoff>`__
|
||||
- `Benno Pütz (@bennop) <https://github.com/bennop>`__
|
||||
- `Benoit3 (@Benoit3) <https://github.com/Benoit3>`__
|
||||
- `Ben Shaner (@bens545) <https://github.com/bens545>`__
|
||||
- `Ben Suffolk (@bensuffolk) <https://github.com/bensuffolk>`__
|
||||
- `Berend Haan (@berendhaan) <https://github.com/berendhaan>`__
|
||||
- `Arturo Casal (@berfenger) <https://github.com/berfenger>`__
|
||||
@ -122,22 +147,29 @@ Contributors
|
||||
- `Bert Hertogen (@berthertogen) <https://github.com/berthertogen>`__
|
||||
- `Ivan Bessarabov (@bessarabov) <https://github.com/bessarabov>`__
|
||||
- `Brandon (@bgulla) <https://github.com/bgulla>`__
|
||||
- `Benedikt Hübschen (@bhuebschen) <https://github.com/bhuebschen>`__
|
||||
- `Bierchermuesli (@Bierchermuesli) <https://github.com/Bierchermuesli>`__
|
||||
- `Bill Church (@billchurch) <https://github.com/billchurch>`__
|
||||
- `Brian Kaufman (@bkaufx) <https://github.com/bkaufx>`__
|
||||
- `JDavid (@blackhack) <https://github.com/blackhack>`__
|
||||
- `blakadder (@blakadder) <https://github.com/blakadder>`__
|
||||
- `Branimir Lambov (@blambov) <https://github.com/blambov>`__
|
||||
- `bleeisme (@bleeisme) <https://github.com/bleeisme>`__
|
||||
- `Jim Ekman (@blejdfist) <https://github.com/blejdfist>`__
|
||||
- `Scott Smith (@blurfl) <https://github.com/blurfl>`__
|
||||
- `Bob (@Bmooij) <https://github.com/Bmooij>`__
|
||||
- `Benjamin Klotz (@bnw) <https://github.com/bnw>`__
|
||||
- `Bob Kersten (@bobkersten) <https://github.com/bobkersten>`__
|
||||
- `Bodmer (@Bodmer) <https://github.com/Bodmer>`__
|
||||
- `Anthony Todd (@bohregard) <https://github.com/bohregard>`__
|
||||
- `Bomaker (@Bomaker) <https://github.com/Bomaker>`__
|
||||
- `Mauricio Bonani (@bonanitech) <https://github.com/bonanitech>`__
|
||||
- `Casey Olson (@bookcasey) <https://github.com/bookcasey>`__
|
||||
- `Borja Burgos (@borjaburgos) <https://github.com/borjaburgos>`__
|
||||
- `BoukeHaarsma23 (@BoukeHaarsma23) <https://github.com/BoukeHaarsma23>`__
|
||||
- `brambo123 (@brambo123) <https://github.com/brambo123>`__
|
||||
- `Bram Kragten (@bramkragten) <https://github.com/bramkragten>`__
|
||||
- `Brandan Cotton (@Brando47) <https://github.com/Brando47>`__
|
||||
- `Brad Davidson (@brandond) <https://github.com/brandond>`__
|
||||
- `Daniel H Brown (@brauhausdc) <https://github.com/brauhausdc>`__
|
||||
- `Jens Bretschneider (@breti) <https://github.com/breti>`__
|
||||
@ -147,36 +179,52 @@ Contributors
|
||||
- `brianrjones69 (@brianrjones69) <https://github.com/brianrjones69>`__
|
||||
- `Ben Brooks (@brooksben11) <https://github.com/brooksben11>`__
|
||||
- `buddydvd (@buddydvd) <https://github.com/buddydvd>`__
|
||||
- `Matt Burke (@burkemw3) <https://github.com/burkemw3>`__
|
||||
- `Jon Little (@burundiocibu) <https://github.com/burundiocibu>`__
|
||||
- `buxtronix (@buxtronix) <https://github.com/buxtronix>`__
|
||||
- `bvansambeek (@bvansambeek) <https://github.com/bvansambeek>`__
|
||||
- `c0ffeeca7 (@c0ffeeca7) <https://github.com/c0ffeeca7>`__
|
||||
- `Captain Haddock (@ca-haddock) <https://github.com/ca-haddock>`__
|
||||
- `Cal Howard (@calhoward) <https://github.com/calhoward>`__
|
||||
- `callacomp (@callacomp) <https://github.com/callacomp>`__
|
||||
- `Callum Gare (@callumgare) <https://github.com/callumgare>`__
|
||||
- `Carlos Gustavo Sarmiento (@carlos-sarmiento) <https://github.com/carlos-sarmiento>`__
|
||||
- `Carlos Garcia Saura (@CarlosGS) <https://github.com/CarlosGS>`__
|
||||
- `Carlos Ruiz (@CarlosRDomin) <https://github.com/CarlosRDomin>`__
|
||||
- `carlywarly (@carlywarly) <https://github.com/carlywarly>`__
|
||||
- `carstenschroeder (@carstenschroeder) <https://github.com/carstenschroeder>`__
|
||||
- `Valentin Ochs (@Cat-Ion) <https://github.com/Cat-Ion>`__
|
||||
- `Stroe Andrei Catalin (@catalin2402) <https://github.com/catalin2402>`__
|
||||
- `cbialobos (@cbialobos) <https://github.com/cbialobos>`__
|
||||
- `Cameron Bulock (@cbulock) <https://github.com/cbulock>`__
|
||||
- `Ciprian Constantinescu (@cciprian5) <https://github.com/cciprian5>`__
|
||||
- `cdmonk (@cdmonk) <https://github.com/cdmonk>`__
|
||||
- `ceaswaran (@ceaswaran) <https://github.com/ceaswaran>`__
|
||||
- `Cellie (@CelliesProjects) <https://github.com/CelliesProjects>`__
|
||||
- `Chris Feenstra (@cfeenstra1024) <https://github.com/cfeenstra1024>`__
|
||||
- `cg089 (@cg089) <https://github.com/cg089>`__
|
||||
- `Kostas Chatzikokolakis (@chatziko) <https://github.com/chatziko>`__
|
||||
- `Audric Schiltknecht (@chemicalstorm) <https://github.com/chemicalstorm>`__
|
||||
- `chris-jennings (@chris-jennings) <https://github.com/chris-jennings>`__
|
||||
- `Chris (@chrismaki) <https://github.com/chrismaki>`__
|
||||
- `Christoph Wagner (@Christoph-Wagner) <https://github.com/Christoph-Wagner>`__
|
||||
- `Christian Taedcke (@chrta) <https://github.com/chrta>`__
|
||||
- `Pavel Skuratovich (@Chupaka) <https://github.com/Chupaka>`__
|
||||
- `Chris Johnson (@ciband) <https://github.com/ciband>`__
|
||||
- `CircuitGuy (@CircuitGuy) <https://github.com/CircuitGuy>`__
|
||||
- `John (@CircuitSetup) <https://github.com/CircuitSetup>`__
|
||||
- `Colby Rome (@cisasteelersfan) <https://github.com/cisasteelersfan>`__
|
||||
- `Chris Debenham (@cjd) <https://github.com/cjd>`__
|
||||
- `Chester (@clowrey) <https://github.com/clowrey>`__
|
||||
- `Colin McCambridge (@cmccambridge) <https://github.com/cmccambridge>`__
|
||||
- `Clifford Roche (@cmroche) <https://github.com/cmroche>`__
|
||||
- `Casey Burnett (@codeangler) <https://github.com/codeangler>`__
|
||||
- `CODeRUS (@CODeRUS) <https://github.com/CODeRUS>`__
|
||||
- `Alex Miller (@Codex-) <https://github.com/Codex->`__
|
||||
- `Cody James (@codyjamestechnical) <https://github.com/codyjamestechnical>`__
|
||||
- `Ashton Lafferty (@cogneato) <https://github.com/cogneato>`__
|
||||
- `Colin Leroy-Mira (@colinleroy) <https://github.com/colinleroy>`__
|
||||
- `Max (@coltoncat) <https://github.com/coltoncat>`__
|
||||
- `Conclusio (@Conclusio) <https://github.com/Conclusio>`__
|
||||
- `John Coggeshall (@coogle) <https://github.com/coogle>`__
|
||||
- `James Crook (@cooljimy84) <https://github.com/cooljimy84>`__
|
||||
@ -189,20 +237,28 @@ Contributors
|
||||
- `Connor Prussin (@cprussin) <https://github.com/cprussin>`__
|
||||
- `Corey Rice (@crice009) <https://github.com/crice009>`__
|
||||
- `cryptelli (@cryptelli) <https://github.com/cryptelli>`__
|
||||
- `Christian Schwarzgruber (@cslux) <https://github.com/cslux>`__
|
||||
- `cstaahl (@cstaahl) <https://github.com/cstaahl>`__
|
||||
- `Chris Talkington (@ctalkington) <https://github.com/ctalkington>`__
|
||||
- `Massimo Cetra (@ctrix) <https://github.com/ctrix>`__
|
||||
- `cvwillegen (@cvwillegen) <https://github.com/cvwillegen>`__
|
||||
- `Christoph Wempe (@CWempe) <https://github.com/CWempe>`__
|
||||
- `Steven Webb (@cy1701) <https://github.com/cy1701>`__
|
||||
- `Alex Solomaha (@CyanoFresh) <https://github.com/CyanoFresh>`__
|
||||
- `Luar Roji (@cyberplant) <https://github.com/cyberplant>`__
|
||||
- `Petr Diviš (@czechdude) <https://github.com/czechdude>`__
|
||||
- `Aleš Komárek (@cznewt) <https://github.com/cznewt>`__
|
||||
- `d-rez (@d-rez) <https://github.com/d-rez>`__
|
||||
- `Dale Higgs (@dale3h) <https://github.com/dale3h>`__
|
||||
- `damanti-me (@damanti-me) <https://github.com/damanti-me>`__
|
||||
- `Dan C Williams (@dancwilliams) <https://github.com/dancwilliams>`__
|
||||
- `Daniel Bjørnbakk (@danibjor) <https://github.com/danibjor>`__
|
||||
- `Daniel Kucera (@danielkucera) <https://github.com/danielkucera>`__
|
||||
- `Daniel O'Connor (@DanielO) <https://github.com/DanielO>`__
|
||||
- `Daniel Rheinbay (@danielrheinbay) <https://github.com/danielrheinbay>`__
|
||||
- `Daniel Schramm (@danielschramm) <https://github.com/danielschramm>`__
|
||||
- `Daniel Martin Gonzalez (@danimart1991) <https://github.com/danimart1991>`__
|
||||
- `danlimlu (@danlimlu) <https://github.com/danlimlu>`__
|
||||
- `Chris (@darthsebulba04) <https://github.com/darthsebulba04>`__
|
||||
- `Dan Gentry (@dashdrum) <https://github.com/dashdrum>`__
|
||||
- `Aliasghar Dashkhaneh (@dashkhaneh) <https://github.com/dashkhaneh>`__
|
||||
@ -215,13 +271,16 @@ Contributors
|
||||
- `David De Sloovere (@DavidDeSloovere) <https://github.com/DavidDeSloovere>`__
|
||||
- `David Beitey (@davidjb) <https://github.com/davidjb>`__
|
||||
- `David Newgas (@davidn) <https://github.com/davidn>`__
|
||||
- `David Noyes (@davidnoyes) <https://github.com/davidnoyes>`__
|
||||
- `David Zovko (@davidzovko) <https://github.com/davidzovko>`__
|
||||
- `Davy Landman (@DavyLandman) <https://github.com/DavyLandman>`__
|
||||
- `Dawid Cieszyński (@dawidcieszynski) <https://github.com/dawidcieszynski>`__
|
||||
- `Darren Tucker (@daztucker) <https://github.com/daztucker>`__
|
||||
- `Donovan Baarda (@dbaarda) <https://github.com/dbaarda>`__
|
||||
- `David Buezas (@dbuezas) <https://github.com/dbuezas>`__
|
||||
- `dckiller51 (@dckiller51) <https://github.com/dckiller51>`__
|
||||
- `Daniel Correa Lobato (@dclobato) <https://github.com/dclobato>`__
|
||||
- `DeadEnd (@DeadEnded) <https://github.com/DeadEnded>`__
|
||||
- `Debashish Sahu (@debsahu) <https://github.com/debsahu>`__
|
||||
- `declanshanaghy (@declanshanaghy) <https://github.com/declanshanaghy>`__
|
||||
- `Maximilian (@DeerMaximum) <https://github.com/DeerMaximum>`__
|
||||
@ -237,7 +296,9 @@ Contributors
|
||||
- `Deun Lee (@deunlee) <https://github.com/deunlee>`__
|
||||
- `Develo (@devyte) <https://github.com/devyte>`__
|
||||
- `Dezorian (@Dezorian) <https://github.com/Dezorian>`__
|
||||
- `Damian Gołda (@dgolda) <https://github.com/dgolda>`__
|
||||
- `Dan Halbert (@dhalbert) <https://github.com/dhalbert>`__
|
||||
- `Dustin L. Howett (@DHowett) <https://github.com/DHowett>`__
|
||||
- `Alain Turbide (@Dilbert66) <https://github.com/Dilbert66>`__
|
||||
- `Mark (@Diramu) <https://github.com/Diramu>`__
|
||||
- `Dirk Heinke (@DirkHeinke) <https://github.com/DirkHeinke>`__
|
||||
@ -254,19 +315,24 @@ Contributors
|
||||
- `Dorian Zedler (@dorianim) <https://github.com/dorianim>`__
|
||||
- `Mark Dietzer (@Doridian) <https://github.com/Doridian>`__
|
||||
- `Jiang Sheng (@doskoi) <https://github.com/doskoi>`__
|
||||
- `Artem Sheremet (@dotdoom) <https://github.com/dotdoom>`__
|
||||
- `Robert Schütz (@dotlambda) <https://github.com/dotlambda>`__
|
||||
- `Daniel Hyles (@DotNetDann) <https://github.com/DotNetDann>`__
|
||||
- `dr-oblivium (@dr-oblivium) <https://github.com/dr-oblivium>`__
|
||||
- `Drew Perttula (@drewp) <https://github.com/drewp>`__
|
||||
- `drmpf (@drmpf) <https://github.com/drmpf>`__
|
||||
- `drogfild (@drogfild) <https://github.com/drogfild>`__
|
||||
- `DrRob (@DrRob) <https://github.com/DrRob>`__
|
||||
- `Daniel Müller (@dtmuller) <https://github.com/dtmuller>`__
|
||||
- `Tom Soer (@dtx3k) <https://github.com/dtx3k>`__
|
||||
- `dubit0 (@dubit0) <https://github.com/dubit0>`__
|
||||
- `Mikkel Jeppesen (@Duckle29) <https://github.com/Duckle29>`__
|
||||
- `Sergey V. DUDANOV (@dudanov) <https://github.com/dudanov>`__
|
||||
- `David Girón (@duhow) <https://github.com/duhow>`__
|
||||
- `Duncan Findlay (@duncf) <https://github.com/duncf>`__
|
||||
- `Jannick (@DutchDeffy) <https://github.com/DutchDeffy>`__
|
||||
- `David van der Leij (@dvanderleij) <https://github.com/dvanderleij>`__
|
||||
- `dxta1986 (@dxta1986) <https://github.com/dxta1986>`__
|
||||
- `dyarkovoy (@dyarkovoy) <https://github.com/dyarkovoy>`__
|
||||
- `Janez Troha (@dz0ny) <https://github.com/dz0ny>`__
|
||||
- `Dimitris Zervas (@dzervas) <https://github.com/dzervas>`__
|
||||
@ -279,10 +345,13 @@ Contributors
|
||||
- `Eduardo Pérez (@eduperez) <https://github.com/eduperez>`__
|
||||
- `Eenoo (@Eenoo) <https://github.com/Eenoo>`__
|
||||
- `Eli Fidler (@efidler) <https://github.com/efidler>`__
|
||||
- `egandro (@egandro) <https://github.com/egandro>`__
|
||||
- `Erwin Kooi (@egeltje) <https://github.com/egeltje>`__
|
||||
- `Eike (@ei-ke) <https://github.com/ei-ke>`__
|
||||
- `Elazar Leibovich (@elazarl) <https://github.com/elazarl>`__
|
||||
- `Eli Yu (@elizhyu) <https://github.com/elizhyu>`__
|
||||
- `Elkropac (@Elkropac) <https://github.com/Elkropac>`__
|
||||
- `Elliot Wood (@elliot-wood) <https://github.com/elliot-wood>`__
|
||||
- `Joakim Plate (@elupus) <https://github.com/elupus>`__
|
||||
- `EmbeddedDevver (@EmbeddedDevver) <https://github.com/EmbeddedDevver>`__
|
||||
- `EmmanuelLM (@EmmanuelLM) <https://github.com/EmmanuelLM>`__
|
||||
@ -293,6 +362,7 @@ Contributors
|
||||
- `Bert (@Engelbert) <https://github.com/Engelbert>`__
|
||||
- `Nico Weichbrodt (@envy) <https://github.com/envy>`__
|
||||
- `Evan Petousis (@epetousis) <https://github.com/epetousis>`__
|
||||
- `Josh Gwosdz (@erdii) <https://github.com/erdii>`__
|
||||
- `Eric Coffman (@ericbrian) <https://github.com/ericbrian>`__
|
||||
- `Eric Hiller (@erichiller) <https://github.com/erichiller>`__
|
||||
- `Matt Hamilton (@Eriner) <https://github.com/Eriner>`__
|
||||
@ -307,20 +377,27 @@ Contributors
|
||||
- `Evgeni Golov (@evgeni) <https://github.com/evgeni>`__
|
||||
- `Expaso (@Expaso) <https://github.com/Expaso>`__
|
||||
- `Malte Franken (@exxamalte) <https://github.com/exxamalte>`__
|
||||
- `f0rdprefect (@f0rdprefect) <https://github.com/f0rdprefect>`__
|
||||
- `Fabian Affolter (@fabaff) <https://github.com/fabaff>`__
|
||||
- `Fabian (@Fabian-Schmidt) <https://github.com/Fabian-Schmidt>`__
|
||||
- `Federico Ariel Castagnini (@facastagnini) <https://github.com/facastagnini>`__
|
||||
- `C W (@fake-name) <https://github.com/fake-name>`__
|
||||
- `Florian idB (@fbeek) <https://github.com/fbeek>`__
|
||||
- `Fabian Berthold (@fbrthld) <https://github.com/fbrthld>`__
|
||||
- `felixlungu (@felixlungu) <https://github.com/felixlungu>`__
|
||||
- `Felix Storm (@felixstorm) <https://github.com/felixstorm>`__
|
||||
- `Christian Ferbar (@ferbar) <https://github.com/ferbar>`__
|
||||
- `FeuerSturm (@FeuerSturm) <https://github.com/FeuerSturm>`__
|
||||
- `Florian Golemo (@fgolemo) <https://github.com/fgolemo>`__
|
||||
- `Frank Riley (@fhriley) <https://github.com/fhriley>`__
|
||||
- `finity69x2 (@finity69x2) <https://github.com/finity69x2>`__
|
||||
- `Frédéric Jouault (@fjouault) <https://github.com/fjouault>`__
|
||||
- `Sean Vig (@flacjacket) <https://github.com/flacjacket>`__
|
||||
- `Diego Elio Pettenò (@Flameeyes) <https://github.com/Flameeyes>`__
|
||||
- `Flaviu Tamas (@flaviut) <https://github.com/flaviut>`__
|
||||
- `fluffymadness (@fluffymadness) <https://github.com/fluffymadness>`__
|
||||
- `fluffymonster (@fluffymonster) <https://github.com/fluffymonster>`__
|
||||
- `flyize (@flyize) <https://github.com/flyize>`__
|
||||
- `风飘雨 (@flyrainning) <https://github.com/flyrainning>`__
|
||||
- `Fractal147 (@Fractal147) <https://github.com/Fractal147>`__
|
||||
- `Francis-labo (@Francis-labo) <https://github.com/Francis-labo>`__
|
||||
@ -333,6 +410,7 @@ Contributors
|
||||
- `Evgeny (@freekode) <https://github.com/freekode>`__
|
||||
- `Brett McKenzie (@freerangeeggs) <https://github.com/freerangeeggs>`__
|
||||
- `Franck Nijhof (@frenck) <https://github.com/frenck>`__
|
||||
- `Kenneth Fribert (@fribse) <https://github.com/fribse>`__
|
||||
- `frippe75 (@frippe75) <https://github.com/frippe75>`__
|
||||
- `Fritz Mueller (@fritzm) <https://github.com/fritzm>`__
|
||||
- `Florian Trück (@ftrueck) <https://github.com/ftrueck>`__
|
||||
@ -350,6 +428,8 @@ Contributors
|
||||
- `Gérald Guiony (@gerald-guiony) <https://github.com/gerald-guiony>`__
|
||||
- `Gerard (@gerard33) <https://github.com/gerard33>`__
|
||||
- `Giampiero Baggiani (@giampiero7) <https://github.com/giampiero7>`__
|
||||
- `Gideon Kanikevich (@gid204) <https://github.com/gid204>`__
|
||||
- `Giel Janssens (@gieljnssns) <https://github.com/gieljnssns>`__
|
||||
- `Giovanni (@Gio-dot) <https://github.com/Gio-dot>`__
|
||||
- `GitforZhangXL (@GitforZhangXL) <https://github.com/GitforZhangXL>`__
|
||||
- `github-actions[bot] (@github-actions[bot]) <https://github.com/github-actions[bot]>`__
|
||||
@ -362,45 +442,62 @@ Contributors
|
||||
- `Germain Masse (@gmasse) <https://github.com/gmasse>`__
|
||||
- `Garret Buell (@gmbuell) <https://github.com/gmbuell>`__
|
||||
- `Jelle Raaijmakers (@GMTA) <https://github.com/GMTA>`__
|
||||
- `Go0oSer (@Go0oSer) <https://github.com/Go0oSer>`__
|
||||
- `Gonzalo Paniagua Javier (@gonzalop) <https://github.com/gonzalop>`__
|
||||
- `gordon-zhao (@gordon-zhao) <https://github.com/gordon-zhao>`__
|
||||
- `Gustavo Ambrozio (@gpambrozio) <https://github.com/gpambrozio>`__
|
||||
- `Granville Barker (@granvillebarker) <https://github.com/granvillebarker>`__
|
||||
- `Antoine GRÉA (@grea09) <https://github.com/grea09>`__
|
||||
- `Greg Arnold (@GregJArnold) <https://github.com/GregJArnold>`__
|
||||
- `Greg MacLellan (@gregmac) <https://github.com/gregmac>`__
|
||||
- `Gil Peeters (@grillp) <https://github.com/grillp>`__
|
||||
- `George (@grob6000) <https://github.com/grob6000>`__
|
||||
- `groovejumper (@groovejumper) <https://github.com/groovejumper>`__
|
||||
- `gsexton (@gsexton) <https://github.com/gsexton>`__
|
||||
- `Gabriel Sieben (@gsieben) <https://github.com/gsieben>`__
|
||||
- `Jadson Santos (@gtjadsonsantos) <https://github.com/gtjadsonsantos>`__
|
||||
- `guardmedia (@guardmedia) <https://github.com/guardmedia>`__
|
||||
- `Guillaume DELVIT (@guiguid) <https://github.com/guiguid>`__
|
||||
- `guillempages (@guillempages) <https://github.com/guillempages>`__
|
||||
- `Guyohms (@Guyohms) <https://github.com/Guyohms>`__
|
||||
- `Gilles van den Hoven (@gvdhoven) <https://github.com/gvdhoven>`__
|
||||
- `h0jeZvgoxFepBQ2C (@h0jeZvgoxFepBQ2C) <https://github.com/h0jeZvgoxFepBQ2C>`__
|
||||
- `h3ndrik (@h3ndrik) <https://github.com/h3ndrik>`__
|
||||
- `Andi (@h4de5) <https://github.com/h4de5>`__
|
||||
- `haade (@haade-administrator) <https://github.com/haade-administrator>`__
|
||||
- `Peter van Dijk (@Habbie) <https://github.com/Habbie>`__
|
||||
- `Hagai Shatz (@hagai-shatz) <https://github.com/hagai-shatz>`__
|
||||
- `Boris Hajduk (@hajdbo) <https://github.com/hajdbo>`__
|
||||
- `Gavin Mogan (@halkeye) <https://github.com/halkeye>`__
|
||||
- `Charles (@hallard) <https://github.com/hallard>`__
|
||||
- `Alex Griffith (@halomademeapc) <https://github.com/halomademeapc>`__
|
||||
- `Aniket (@HandyHat) <https://github.com/HandyHat>`__
|
||||
- `Charles Thompson (@haryadoon) <https://github.com/haryadoon>`__
|
||||
- `Ha Thach (@hathach) <https://github.com/hathach>`__
|
||||
- `hcoohb (@hcoohb) <https://github.com/hcoohb>`__
|
||||
- `Héctor Giménez (@hectorgimenez) <https://github.com/hectorgimenez>`__
|
||||
- `Jimmy Hedman (@HeMan) <https://github.com/HeMan>`__
|
||||
- `Hemi03 (@Hemi03) <https://github.com/Hemi03>`__
|
||||
- `HepoH3 (@HepoH3) <https://github.com/HepoH3>`__
|
||||
- `Hermann Kraus (@herm) <https://github.com/herm>`__
|
||||
- `Herr Frei (@herrfrei) <https://github.com/herrfrei>`__
|
||||
- `highground88 (@highground88) <https://github.com/highground88>`__
|
||||
- `Hamish Moffatt (@hmoffatt) <https://github.com/hmoffatt>`__
|
||||
- `Marcel Hoppe (@hobbypunk90) <https://github.com/hobbypunk90>`__
|
||||
- `MoA (@honomoa) <https://github.com/honomoa>`__
|
||||
- `Hopperpop (@Hopperpop) <https://github.com/Hopperpop>`__
|
||||
- `Yang Hau (@howjmay) <https://github.com/howjmay>`__
|
||||
- `hpineapples (@hpineapples) <https://github.com/hpineapples>`__
|
||||
- `Antonio Vanegas (@hpsaturn) <https://github.com/hpsaturn>`__
|
||||
- `hreintke (@hreintke) <https://github.com/hreintke>`__
|
||||
- `Jan Hubík (@hubikj) <https://github.com/hubikj>`__
|
||||
- `Huub Eikens (@huubeikens) <https://github.com/huubeikens>`__
|
||||
- `Steve Rodgers (@hwstar) <https://github.com/hwstar>`__
|
||||
- `hificat (@hzkincony) <https://github.com/hzkincony>`__
|
||||
- `Arjan Filius (@iafilius) <https://github.com/iafilius>`__
|
||||
- `Iain Hay (@IainPHay) <https://github.com/IainPHay>`__
|
||||
- `Adrián Panella (@ianchi) <https://github.com/ianchi>`__
|
||||
- `Ian Anderson (@ianderso) <https://github.com/ianderso>`__
|
||||
- `Ian Leeder (@ianleeder) <https://github.com/ianleeder>`__
|
||||
- `Jan Pobořil (@iBobik) <https://github.com/iBobik>`__
|
||||
- `igg (@igg) <https://github.com/igg>`__
|
||||
@ -408,28 +505,38 @@ Contributors
|
||||
- `Petko Bordjukov (@ignisf) <https://github.com/ignisf>`__
|
||||
- `ikatkov (@ikatkov) <https://github.com/ikatkov>`__
|
||||
- `iKK001 (@iKK001) <https://github.com/iKK001>`__
|
||||
- `ilium007 (@ilium007) <https://github.com/ilium007>`__
|
||||
- `imgbot[bot] (@imgbot[bot]) <https://github.com/imgbot[bot]>`__
|
||||
- `ImSorryButWho (@ImSorryButWho) <https://github.com/ImSorryButWho>`__
|
||||
- `Dom (@Ing-Dom) <https://github.com/Ing-Dom>`__
|
||||
- `Ingo Becker (@ingobecker) <https://github.com/ingobecker>`__
|
||||
- `Ingurum (@Ingurum) <https://github.com/Ingurum>`__
|
||||
- `IoT-devices LLC (@iotdevicesdev) <https://github.com/iotdevicesdev>`__
|
||||
- `Ivo Roefs (@ironirc) <https://github.com/ironirc>`__
|
||||
- `irtimaled (@irtimaled) <https://github.com/irtimaled>`__
|
||||
- `Ingo Theiss (@itn3rd77) <https://github.com/itn3rd77>`__
|
||||
- `Ivan Shvedunov (@ivan4th) <https://github.com/ivan4th>`__
|
||||
- `Ivan Kravets (@ivankravets) <https://github.com/ivankravets>`__
|
||||
- `Ivan Lisenkov (@ivlis) <https://github.com/ivlis>`__
|
||||
- `Ivo-tje (@Ivo-tje) <https://github.com/Ivo-tje>`__
|
||||
- `J0RD4N300 (@J0RD4N300) <https://github.com/J0RD4N300>`__
|
||||
- `Fredrik Gustafsson (@jagheterfredrik) <https://github.com/jagheterfredrik>`__
|
||||
- `Jan Harkes (@jaharkes) <https://github.com/jaharkes>`__
|
||||
- `Jake Shirley (@JakeShirley) <https://github.com/JakeShirley>`__
|
||||
- `Jakob Reiter (@jakommo) <https://github.com/jakommo>`__
|
||||
- `James Braid (@jamesbraid) <https://github.com/jamesbraid>`__
|
||||
- `James Duke (@jamesduke) <https://github.com/jamesduke>`__
|
||||
- `James Gao (@jamesgao) <https://github.com/jamesgao>`__
|
||||
- `James Hirka (@jameshirka) <https://github.com/jameshirka>`__
|
||||
- `James Lakin (@jamesorlakin) <https://github.com/jamesorlakin>`__
|
||||
- `James Swift (@JamesSwift) <https://github.com/JamesSwift>`__
|
||||
- `Jason (@jamman9000) <https://github.com/jamman9000>`__
|
||||
- `Juraj Andrássy (@JAndrassy) <https://github.com/JAndrassy>`__
|
||||
- `Delio Castillo (@jangeador) <https://github.com/jangeador>`__
|
||||
- `Jan Grewe (@jangrewe) <https://github.com/jangrewe>`__
|
||||
- `János Rusiczki (@janosrusiczki) <https://github.com/janosrusiczki>`__
|
||||
- `Jan Pieper (@janpieper) <https://github.com/janpieper>`__
|
||||
- `Jared Ring (@jaredring) <https://github.com/jaredring>`__
|
||||
- `Jarek.P (@JaroslawPrzybyl) <https://github.com/JaroslawPrzybyl>`__
|
||||
- `Jason-nz (@Jason-nz) <https://github.com/Jason-nz>`__
|
||||
- `Jason2866 (@Jason2866) <https://github.com/Jason2866>`__
|
||||
@ -450,6 +557,7 @@ Contributors
|
||||
- `Jeff Rescignano (@JeffResc) <https://github.com/JeffResc>`__
|
||||
- `Jej (@jej) <https://github.com/jej>`__
|
||||
- `Jens-Christian Skibakk (@jenscski) <https://github.com/jenscski>`__
|
||||
- `Jeremy Willans (@jeremywillans) <https://github.com/jeremywillans>`__
|
||||
- `Jeroen (@jeroen85) <https://github.com/jeroen85>`__
|
||||
- `Jérôme Laban (@jeromelaban) <https://github.com/jeromelaban>`__
|
||||
- `Jesse Hills (@jesserockz) <https://github.com/jesserockz>`__
|
||||
@ -458,6 +566,7 @@ Contributors
|
||||
- `Jan Pieter Waagmeester (@jieter) <https://github.com/jieter>`__
|
||||
- `Jim Bauwens (@jimbauwens) <https://github.com/jimbauwens>`__
|
||||
- `jimtng (@jimtng) <https://github.com/jimtng>`__
|
||||
- `jivesinger (@jivesinger) <https://github.com/jivesinger>`__
|
||||
- `Jérémy JOURDIN (@JJK801) <https://github.com/JJK801>`__
|
||||
- `Jonathan Jefferies (@jjok) <https://github.com/jjok>`__
|
||||
- `John K. Luebs (@jkl1337) <https://github.com/jkl1337>`__
|
||||
@ -465,14 +574,18 @@ Contributors
|
||||
- `Jeppe Ladefoged (@jladefoged) <https://github.com/jladefoged>`__
|
||||
- `Jean-Luc Béchennec (@jlbirccyn) <https://github.com/jlbirccyn>`__
|
||||
- `Jonas De Kegel (@jlsjonas) <https://github.com/jlsjonas>`__
|
||||
- `Jeff Anderson (@jman203) <https://github.com/jman203>`__
|
||||
- `Jonathan Martens (@jmartens) <https://github.com/jmartens>`__
|
||||
- `jmichiel (@jmichiel) <https://github.com/jmichiel>`__
|
||||
- `Jonathas Barbosa (@jnthas) <https://github.com/jnthas>`__
|
||||
- `Joe Gross (@joegross) <https://github.com/joegross>`__
|
||||
- `Johan van der Kuijl (@johanvanderkuijl) <https://github.com/johanvanderkuijl>`__
|
||||
- `Johboh (@Johboh) <https://github.com/Johboh>`__
|
||||
- `John Britton (@johndbritton) <https://github.com/johndbritton>`__
|
||||
- `John Erik Halse (@johnerikhalse) <https://github.com/johnerikhalse>`__
|
||||
- `John Moxley (@johnmoxley) <https://github.com/johnmoxley>`__
|
||||
- `Dave Johnston (@johnsto) <https://github.com/johnsto>`__
|
||||
- `joiboi (@joiboi) <https://github.com/joiboi>`__
|
||||
- `JonasEr (@JonasEr) <https://github.com/JonasEr>`__
|
||||
- `Jonathan Adams (@jonathanadams) <https://github.com/jonathanadams>`__
|
||||
- `Jonathan Treffler (@JonathanTreffler) <https://github.com/JonathanTreffler>`__
|
||||
@ -481,10 +594,12 @@ Contributors
|
||||
- `Joppy (@JoppyFurr) <https://github.com/JoppyFurr>`__
|
||||
- `Jared Sanson (@jorticus) <https://github.com/jorticus>`__
|
||||
- `Joshua Spence (@joshuaspence) <https://github.com/joshuaspence>`__
|
||||
- `joskfg (@joskfg) <https://github.com/joskfg>`__
|
||||
- `Joscha Wagner (@jowgn) <https://github.com/jowgn>`__
|
||||
- `Javier Peletier (@jpeletier) <https://github.com/jpeletier>`__
|
||||
- `jsuanet (@jsuanet) <https://github.com/jsuanet>`__
|
||||
- `James Szalay (@jtszalay) <https://github.com/jtszalay>`__
|
||||
- `Jules-R (@Jules-R) <https://github.com/Jules-R>`__
|
||||
- `Julie Koubová (@juliekoubova) <https://github.com/juliekoubova>`__
|
||||
- `Justahobby01 (@Justahobby01) <https://github.com/Justahobby01>`__
|
||||
- `Mike Ryan (@justfalter) <https://github.com/justfalter>`__
|
||||
@ -495,10 +610,12 @@ Contributors
|
||||
- `Jack Wozny (@jwozny) <https://github.com/jwozny>`__
|
||||
- `Jozef Zuzelka (@jzlka) <https://github.com/jzlka>`__
|
||||
- `Kris (@K-r-i-s-t-i-a-n) <https://github.com/K-r-i-s-t-i-a-n>`__
|
||||
- `k0rtina (@k0rtina) <https://github.com/k0rtina>`__
|
||||
- `Harald Nagel (@k7hpn) <https://github.com/k7hpn>`__
|
||||
- `kaegi (@kaegi) <https://github.com/kaegi>`__
|
||||
- `kahrendt (@kahrendt) <https://github.com/kahrendt>`__
|
||||
- `Kamahat (@kamahat) <https://github.com/kamahat>`__
|
||||
- `Karl0ss (@karl0ss) <https://github.com/karl0ss>`__
|
||||
- `Karol Zlot (@karolzlot) <https://github.com/karolzlot>`__
|
||||
- `Kattni (@kattni) <https://github.com/kattni>`__
|
||||
- `Krasimir Nedelchev (@kaykayehnn) <https://github.com/kaykayehnn>`__
|
||||
@ -506,17 +623,25 @@ Contributors
|
||||
- `Keilin Bickar (@kbickar) <https://github.com/kbickar>`__
|
||||
- `Keith Burzinski (@kbx81) <https://github.com/kbx81>`__
|
||||
- `Ken Piper (@Kealper) <https://github.com/Kealper>`__
|
||||
- `Robert Kiss (@kepten) <https://github.com/kepten>`__
|
||||
- `Kelvie Wong (@kelvie) <https://github.com/kelvie>`__
|
||||
- `Kenny Stier (@KennyStier) <https://github.com/KennyStier>`__
|
||||
- `kernelpanic85 (@kernelpanic85) <https://github.com/kernelpanic85>`__
|
||||
- `Kevin O'Rourke (@kevinior) <https://github.com/kevinior>`__
|
||||
- `kevlar10 (@kevlar10) <https://github.com/kevlar10>`__
|
||||
- `kfulko (@kfulko) <https://github.com/kfulko>`__
|
||||
- `Kai Gerken (@KG3RK3N) <https://github.com/KG3RK3N>`__
|
||||
- `kghandi (@kghandi) <https://github.com/kghandi>`__
|
||||
- `Khoi Hoang (@khoih-prog) <https://github.com/khoih-prog>`__
|
||||
- `Kilowatt (@Kilowatt-W) <https://github.com/Kilowatt-W>`__
|
||||
- `Ed (@kixtarter) <https://github.com/kixtarter>`__
|
||||
- `Kurt Kellner (@kkellner) <https://github.com/kkellner>`__
|
||||
- `Klaas Schoute (@klaasnicolaas) <https://github.com/klaasnicolaas>`__
|
||||
- `Klarstein (@Klarstein) <https://github.com/Klarstein>`__
|
||||
- `Marcus Klein (@kleini) <https://github.com/kleini>`__
|
||||
- `Kevin Lewis (@kll) <https://github.com/kll>`__
|
||||
- `KNXBroker (@KNXBroker) <https://github.com/KNXBroker>`__
|
||||
- `Koen Vervloesem (@koenvervloesem) <https://github.com/koenvervloesem>`__
|
||||
- `kokangit (@kokangit) <https://github.com/kokangit>`__
|
||||
- `Petr Vraník (@konikvranik) <https://github.com/konikvranik>`__
|
||||
- `Kevin Pelzel (@kpelzel) <https://github.com/kpelzel>`__
|
||||
- `Karl Q. (@kquinsland) <https://github.com/kquinsland>`__
|
||||
@ -524,24 +649,26 @@ Contributors
|
||||
- `KristopherMackowiak (@KristopherMackowiak) <https://github.com/KristopherMackowiak>`__
|
||||
- `kroimon (@kroimon) <https://github.com/kroimon>`__
|
||||
- `krunkel (@krunkel) <https://github.com/krunkel>`__
|
||||
- `kryptonitecb3 (@kryptonitecb3) <https://github.com/kryptonitecb3>`__
|
||||
- `Kendell R (@KTibow) <https://github.com/KTibow>`__
|
||||
- `Kuba Szczodrzyński (@kuba2k2) <https://github.com/kuba2k2>`__
|
||||
- `Jakub Šimo (@kubik369) <https://github.com/kubik369>`__
|
||||
- `Mark Kuchel (@kuchel77) <https://github.com/kuchel77>`__
|
||||
- `Ken Davidson (@kwdavidson) <https://github.com/kwdavidson>`__
|
||||
- `Kyle Hendricks (@kylehendricks) <https://github.com/kylehendricks>`__
|
||||
- `Kyle Manna (@kylemanna) <https://github.com/kylemanna>`__
|
||||
- `Kyle Hill (@kylhill) <https://github.com/kylhill>`__
|
||||
- `Kalashnikov Ilya (@l1bbcsg) <https://github.com/l1bbcsg>`__
|
||||
- `Limor "Ladyada" Fried (@ladyada) <https://github.com/ladyada>`__
|
||||
- `Lakshantha Dissanayake (@lakshanthad) <https://github.com/lakshanthad>`__
|
||||
- `Luca Adrian L (@lal12) <https://github.com/lal12>`__
|
||||
- `Fredrik Lindqvist (@Landrash) <https://github.com/Landrash>`__
|
||||
- `Lawrie George (@lawriege) <https://github.com/lawriege>`__
|
||||
- `Laszlo Gazdag (@lazlyhu) <https://github.com/lazlyhu>`__
|
||||
- `Ludovic BOUÉ (@lboue) <https://github.com/lboue>`__
|
||||
- `lcavalli (@lcavalli) <https://github.com/lcavalli>`__
|
||||
- `Craig Fletcher (@leakypixel) <https://github.com/leakypixel>`__
|
||||
- `Dominik Wagenknecht (@LeDominik) <https://github.com/LeDominik>`__
|
||||
- `Benny de Leeuw (@leeuwte) <https://github.com/leeuwte>`__
|
||||
- `Leonardo La Rocca (@leoli51) <https://github.com/leoli51>`__
|
||||
- `Lerosen (@Lerosen) <https://github.com/Lerosen>`__
|
||||
- `Leo Winter (@LeoWinterDE) <https://github.com/LeoWinterDE>`__
|
||||
- `Leon Loopik (@Lewn) <https://github.com/Lewn>`__
|
||||
- `Luca Gugelmann (@lgugelmann) <https://github.com/lgugelmann>`__
|
||||
- `Lubos Horacek (@lhoracek) <https://github.com/lhoracek>`__
|
||||
@ -549,6 +676,7 @@ Contributors
|
||||
- `lillborje71 (@lillborje71) <https://github.com/lillborje71>`__
|
||||
- `lingex (@lingex) <https://github.com/lingex>`__
|
||||
- `lkomurcu (@lkomurcu) <https://github.com/lkomurcu>`__
|
||||
- `loadrunner42 (@loadrunner42) <https://github.com/loadrunner42>`__
|
||||
- `Lazar Obradovic (@lobradov) <https://github.com/lobradov>`__
|
||||
- `Barry Loong (@loongyh) <https://github.com/loongyh>`__
|
||||
- `Michael Bisbjerg (@LordMike) <https://github.com/LordMike>`__
|
||||
@ -556,6 +684,9 @@ Contributors
|
||||
- `Joakim Sørensen (@ludeeus) <https://github.com/ludeeus>`__
|
||||
- `ludrao (@ludrao) <https://github.com/ludrao>`__
|
||||
- `Lukas Klass (@LukasK13) <https://github.com/LukasK13>`__
|
||||
- `Łukasz Świtaj (@lukaszswitaj) <https://github.com/lukaszswitaj>`__
|
||||
- `Luke (@Lukeskaiwalker) <https://github.com/Lukeskaiwalker>`__
|
||||
- `Jayden (@lukyjay) <https://github.com/lukyjay>`__
|
||||
- `Lumpusz (@Lumpusz) <https://github.com/Lumpusz>`__
|
||||
- `Ohad Lutzky (@lutzky) <https://github.com/lutzky>`__
|
||||
- `Luke Fitzgerald (@lwfitzgerald) <https://github.com/lwfitzgerald>`__
|
||||
@ -565,24 +696,31 @@ Contributors
|
||||
- `Marc-Antoine Courteau (@macourteau) <https://github.com/macourteau>`__
|
||||
- `Massimiliano Ravelli (@madron) <https://github.com/madron>`__
|
||||
- `Alexandre-Jacques St-Jacques (@Maelstrom96) <https://github.com/Maelstrom96>`__
|
||||
- `Scott Cappellani (@maeneak) <https://github.com/maeneak>`__
|
||||
- `Magnus Nordlander (@magnusnordlander) <https://github.com/magnusnordlander>`__
|
||||
- `majbthrd (@majbthrd) <https://github.com/majbthrd>`__
|
||||
- `Major Péter (@majorpeter) <https://github.com/majorpeter>`__
|
||||
- `Kasper Malfroid (@malfroid) <https://github.com/malfroid>`__
|
||||
- `Malle355 (@Malle355) <https://github.com/Malle355>`__
|
||||
- `raymonder jin (@mamil) <https://github.com/mamil>`__
|
||||
- `Manuel Díez (@manutenfruits) <https://github.com/manutenfruits>`__
|
||||
- `marcelolcosta (@marcelolcosta) <https://github.com/marcelolcosta>`__
|
||||
- `Marcel van der Veldt (@marcelveldt) <https://github.com/marcelveldt>`__
|
||||
- `Marc (@MarcHagen) <https://github.com/MarcHagen>`__
|
||||
- `marcinkowalczyk (@marcinkowalczyk) <https://github.com/marcinkowalczyk>`__
|
||||
- `Marcio Granzotto Rodrigues (@marciogranzotto) <https://github.com/marciogranzotto>`__
|
||||
- `marecabo (@marecabo) <https://github.com/marecabo>`__
|
||||
- `Ben Marengo (@marengaz) <https://github.com/marengaz>`__
|
||||
- `Marvin Gaube (@margau) <https://github.com/margau>`__
|
||||
- `maringeph (@maringeph) <https://github.com/maringeph>`__
|
||||
- `Mario (@mario-tux) <https://github.com/mario-tux>`__
|
||||
- `Mark Schabacker (@markschabacker) <https://github.com/markschabacker>`__
|
||||
- `Marek Marczykowski-Górecki (@marmarek) <https://github.com/marmarek>`__
|
||||
- `marsjan155 (@marsjan155) <https://github.com/marsjan155>`__
|
||||
- `Martin (@martgras) <https://github.com/martgras>`__
|
||||
- `Martin Hjelmare (@MartinHjelmare) <https://github.com/MartinHjelmare>`__
|
||||
- `MartinWelsch (@MartinWelsch) <https://github.com/MartinWelsch>`__
|
||||
- `M-A (@maruel) <https://github.com/maruel>`__
|
||||
- `MasterTim17 (@MasterTim17) <https://github.com/MasterTim17>`__
|
||||
- `Christopher Masto (@masto) <https://github.com/masto>`__
|
||||
- `Mat931 (@Mat931) <https://github.com/Mat931>`__
|
||||
@ -595,28 +733,38 @@ Contributors
|
||||
- `Matus Ivanecky (@maty535) <https://github.com/maty535>`__
|
||||
- `Maximilian Gerhardt (@maxgerhardt) <https://github.com/maxgerhardt>`__
|
||||
- `mbo18 (@mbo18) <https://github.com/mbo18>`__
|
||||
- `mcmuller (@mcmuller) <https://github.com/mcmuller>`__
|
||||
- `Miguel Diaz Gonçalves (@mdiazgoncalves) <https://github.com/mdiazgoncalves>`__
|
||||
- `Matthew Donoughe (@mdonoughe) <https://github.com/mdonoughe>`__
|
||||
- `Me No Dev (@me-no-dev) <https://github.com/me-no-dev>`__
|
||||
- `Alexandr Zarubkin (@me21) <https://github.com/me21>`__
|
||||
- `Joseph Mearman (@Mearman) <https://github.com/Mearman>`__
|
||||
- `mechanarchy (@mechanarchy) <https://github.com/mechanarchy>`__
|
||||
- `Bas (@Mechazawa) <https://github.com/Mechazawa>`__
|
||||
- `megabitdragon (@megabitdragon) <https://github.com/megabitdragon>`__
|
||||
- `meijerwynand (@meijerwynand) <https://github.com/meijerwynand>`__
|
||||
- `Marco (@Melkor82) <https://github.com/Melkor82>`__
|
||||
- `Merlin Schumacher (@merlinschumacher) <https://github.com/merlinschumacher>`__
|
||||
- `Martin Flasskamp (@MFlasskamp) <https://github.com/MFlasskamp>`__
|
||||
- `Michael Gorven (@mgorven) <https://github.com/mgorven>`__
|
||||
- `Jörg Thalheim (@Mic92) <https://github.com/Mic92>`__
|
||||
- `Michael Muré (@MichaelMure) <https://github.com/MichaelMure>`__
|
||||
- `Micha Nordmann (@Michanord) <https://github.com/Michanord>`__
|
||||
- `Michel Munzert (@michelde) <https://github.com/michelde>`__
|
||||
- `Pauline Middelink (@middelink) <https://github.com/middelink>`__
|
||||
- `Mike_Went (@MikeWent) <https://github.com/MikeWent>`__
|
||||
- `Mikko Tervala (@MikkoTervala) <https://github.com/MikkoTervala>`__
|
||||
- `MiKuBB (@MiKuBB) <https://github.com/MiKuBB>`__
|
||||
- `André Klitzing (@misery) <https://github.com/misery>`__
|
||||
- `Tomasz (@Misiu) <https://github.com/Misiu>`__
|
||||
- `mjbogusz (@mjbogusz) <https://github.com/mjbogusz>`__
|
||||
- `Matthew Garrett (@mjg59) <https://github.com/mjg59>`__
|
||||
- `Morton Jonuschat (@mjonuschat) <https://github.com/mjonuschat>`__
|
||||
- `mjoshd (@mjoshd) <https://github.com/mjoshd>`__
|
||||
- `Matt Kaatman (@mkaatman) <https://github.com/mkaatman>`__
|
||||
- `Marcel Karger (@mkar1984) <https://github.com/mkar1984>`__
|
||||
- `mknjc (@mknjc) <https://github.com/mknjc>`__
|
||||
- `Matthew Kosmoski (@mkosmo) <https://github.com/mkosmo>`__
|
||||
- `Maurice Makaay (@mmakaay) <https://github.com/mmakaay>`__
|
||||
- `mmanza (@mmanza) <https://github.com/mmanza>`__
|
||||
- `mnltake (@mnltake) <https://github.com/mnltake>`__
|
||||
@ -628,6 +776,8 @@ Contributors
|
||||
- `Morgan Robertson (@mrgnr) <https://github.com/mrgnr>`__
|
||||
- `Mariusz Kryński (@mrk-its) <https://github.com/mrk-its>`__
|
||||
- `Michael Davidson (@MrMDavidson) <https://github.com/MrMDavidson>`__
|
||||
- `Murray Scott (@mscottco) <https://github.com/mscottco>`__
|
||||
- `MSe-5-14 (@MSe-5-14) <https://github.com/MSe-5-14>`__
|
||||
- `mtl010957 (@mtl010957) <https://github.com/mtl010957>`__
|
||||
- `mulcmu (@mulcmu) <https://github.com/mulcmu>`__
|
||||
- `Martin Murray (@murrayma) <https://github.com/murrayma>`__
|
||||
@ -642,6 +792,7 @@ Contributors
|
||||
- `Erik Näsström (@Naesstrom) <https://github.com/Naesstrom>`__
|
||||
- `H. Árkosi Róbert (@nagyrobi) <https://github.com/nagyrobi>`__
|
||||
- `Viktor Nagy (@nagyv) <https://github.com/nagyv>`__
|
||||
- `NanoSector (@NanoSector) <https://github.com/NanoSector>`__
|
||||
- `Oskar Napieraj (@napieraj) <https://github.com/napieraj>`__
|
||||
- `Nate Lust (@natelust) <https://github.com/natelust>`__
|
||||
- `ueno (@nayuta-ueno) <https://github.com/nayuta-ueno>`__
|
||||
@ -654,24 +805,31 @@ Contributors
|
||||
- `Nick B. (@NickB1) <https://github.com/NickB1>`__
|
||||
- `nickrout (@nickrout) <https://github.com/nickrout>`__
|
||||
- `Nick Whyte (@nickw444) <https://github.com/nickw444>`__
|
||||
- `Nicky Ivy (@nickyivyca) <https://github.com/nickyivyca>`__
|
||||
- `NP v/d Spek (@nielsnl68) <https://github.com/nielsnl68>`__
|
||||
- `Niels Zeilemaker (@NielsZeilemaker) <https://github.com/NielsZeilemaker>`__
|
||||
- `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>`__
|
||||
- `Nixspers (@Nixspers) <https://github.com/Nixspers>`__
|
||||
- `Dennis (@Nizzle) <https://github.com/Nizzle>`__
|
||||
- `nldroid (@nldroid) <https://github.com/nldroid>`__
|
||||
- `Niccolò Maggioni (@nmaggioni) <https://github.com/nmaggioni>`__
|
||||
- `nmeachen (@nmeachen) <https://github.com/nmeachen>`__
|
||||
- `Jan Sandbrink (@NobodysNightmare) <https://github.com/NobodysNightmare>`__
|
||||
- `Álvaro Fernández Rojas (@Noltari) <https://github.com/Noltari>`__
|
||||
- `Łukasz Śliwiński (@nonameplum) <https://github.com/nonameplum>`__
|
||||
- `Greg Johnson (@notgwj) <https://github.com/notgwj>`__
|
||||
- `nouser2013 (@nouser2013) <https://github.com/nouser2013>`__
|
||||
- `Nick (@ntompson) <https://github.com/ntompson>`__
|
||||
- `Stephen Edgar (@ntwb) <https://github.com/ntwb>`__
|
||||
- `Stanislav Meduna (@numo68) <https://github.com/numo68>`__
|
||||
- `Nuno Sousa (@nunofgs) <https://github.com/nunofgs>`__
|
||||
- `Maksym Lunin (@nut-code-monkey) <https://github.com/nut-code-monkey>`__
|
||||
- `Chris Nussbaum (@nuttytree) <https://github.com/nuttytree>`__
|
||||
- `Michał Sochoń (@nvtkaszpir) <https://github.com/nvtkaszpir>`__
|
||||
- `Nathaniel Wesley Filardo (@nwf) <https://github.com/nwf>`__
|
||||
- `obrain17 (@obrain17) <https://github.com/obrain17>`__
|
||||
- `Ockert Marais (@OckertM) <https://github.com/OckertM>`__
|
||||
@ -679,12 +837,14 @@ Contributors
|
||||
- `Andrey Ganzevich (@odya) <https://github.com/odya>`__
|
||||
- `ogatatsu (@ogatatsu) <https://github.com/ogatatsu>`__
|
||||
- `Oğuzhan Başer (@oguzhanbaser) <https://github.com/oguzhanbaser>`__
|
||||
- `OkhammahkO (@OkhammahkO) <https://github.com/OkhammahkO>`__
|
||||
- `Omar Ghader (@omarghader) <https://github.com/omarghader>`__
|
||||
- `Ömer Şiar Baysal (@omersiar) <https://github.com/omersiar>`__
|
||||
- `optimusprimespace (@optimusprimespace) <https://github.com/optimusprimespace>`__
|
||||
- `Oscar Bolmsten (@oscar-b) <https://github.com/oscar-b>`__
|
||||
- `Otamay (@Otamay) <https://github.com/Otamay>`__
|
||||
- `Otto Winter (@OttoWinter) <https://github.com/OttoWinter>`__
|
||||
- `Maxime Dufour (@outscale-mdr) <https://github.com/outscale-mdr>`__
|
||||
- `Ben Owen (@owenb321) <https://github.com/owenb321>`__
|
||||
- `Oxan van Leeuwen (@oxan) <https://github.com/oxan>`__
|
||||
- `Pablo Clemente Maseda (@paclema) <https://github.com/paclema>`__
|
||||
@ -698,21 +858,30 @@ Contributors
|
||||
- `Paul Nicholls (@pauln) <https://github.com/pauln>`__
|
||||
- `Bartłomiej Biernacki (@pax0r) <https://github.com/pax0r>`__
|
||||
- `Paul Doidge (@pdoidge) <https://github.com/pdoidge>`__
|
||||
- `peddamat (@peddamat) <https://github.com/peddamat>`__
|
||||
- `pedjas (@pedjas) <https://github.com/pedjas>`__
|
||||
- `pedrobsm (@pedrobsm) <https://github.com/pedrobsm>`__
|
||||
- `per1234 (@per1234) <https://github.com/per1234>`__
|
||||
- `David (@perldj) <https://github.com/perldj>`__
|
||||
- `Peter Valkov (@peter-valkov) <https://github.com/peter-valkov>`__
|
||||
- `Peter Galantha (@peterg79) <https://github.com/peterg79>`__
|
||||
- `Peter Halicky (@peterhalicky) <https://github.com/peterhalicky>`__
|
||||
- `Philippe Delodder (@phdelodder) <https://github.com/phdelodder>`__
|
||||
- `philbowers (@philbowers) <https://github.com/philbowers>`__
|
||||
- `Philippe FOUQUET (@Philippe12) <https://github.com/Philippe12>`__
|
||||
- `Philip Rosenberg-Watt (@PhilRW) <https://github.com/PhilRW>`__
|
||||
- `pieterbrink123 (@pieterbrink123) <https://github.com/pieterbrink123>`__
|
||||
- `Piotr Kubiak (@piotr-kubiak) <https://github.com/piotr-kubiak>`__
|
||||
- `Peter Kuehne (@pkuehne) <https://github.com/pkuehne>`__
|
||||
- `Plácido Revilla (@placidorevilla) <https://github.com/placidorevilla>`__
|
||||
- `Marcus Kempe (@plopp) <https://github.com/plopp>`__
|
||||
- `Jan Pluskal (@pluskal) <https://github.com/pluskal>`__
|
||||
- `DK (@poldim) <https://github.com/poldim>`__
|
||||
- `poloswiss (@poloswiss) <https://github.com/poloswiss>`__
|
||||
- `Pontus Oldberg (@PontusO) <https://github.com/PontusO>`__
|
||||
- `poptix (@poptix) <https://github.com/poptix>`__
|
||||
- `Iván Povedano (@pove) <https://github.com/pove>`__
|
||||
- `Peter Provost (@PProvost) <https://github.com/PProvost>`__
|
||||
- `probonopd (@probonopd) <https://github.com/probonopd>`__
|
||||
- `Mike Lynch (@Prow7) <https://github.com/Prow7>`__
|
||||
- `Peter Tatrai (@ptatrai) <https://github.com/ptatrai>`__
|
||||
@ -722,6 +891,7 @@ Contributors
|
||||
- `Alex (@pxe-la) <https://github.com/pxe-la>`__
|
||||
- `[pʲɵs] (@pyos) <https://github.com/pyos>`__
|
||||
- `Qc (@qc24) <https://github.com/qc24>`__
|
||||
- `Quinn Casey (@qcasey) <https://github.com/qcasey>`__
|
||||
- `Karol Zlot (@qqgg231) <https://github.com/qqgg231>`__
|
||||
- `Tommy Jonsson (@quazzie) <https://github.com/quazzie>`__
|
||||
- `Quentin Smith (@quentinmit) <https://github.com/quentinmit>`__
|
||||
@ -735,14 +905,21 @@ Contributors
|
||||
- `Florian Ragwitz (@rafl) <https://github.com/rafl>`__
|
||||
- `Rai-Rai (@Rai-Rai) <https://github.com/Rai-Rai>`__
|
||||
- `randomllama (@randomllama) <https://github.com/randomllama>`__
|
||||
- `Marc Seeger (@rb2k) <https://github.com/rb2k>`__
|
||||
- `rbaron (@rbaron) <https://github.com/rbaron>`__
|
||||
- `Robert Cambridge (@rcambrj) <https://github.com/rcambrj>`__
|
||||
- `Rebbe Pod (@RebbePod) <https://github.com/RebbePod>`__
|
||||
- `reddn (@reddn) <https://github.com/reddn>`__
|
||||
- `Alex (@redwngsrul) <https://github.com/redwngsrul>`__
|
||||
- `Refferic (@Refferic) <https://github.com/Refferic>`__
|
||||
- `Regev Brody (@regevbr) <https://github.com/regevbr>`__
|
||||
- `Alex Reid (@reidprojects) <https://github.com/reidprojects>`__
|
||||
- `RenierM26 (@RenierM26) <https://github.com/RenierM26>`__
|
||||
- `Reuben (@reubn) <https://github.com/reubn>`__
|
||||
- `Robin Pronk (@rfpronk) <https://github.com/rfpronk>`__
|
||||
- `Robert Gabrielson (@rgabrielson11) <https://github.com/rgabrielson11>`__
|
||||
- `Rafael Goes (@rgriffogoes) <https://github.com/rgriffogoes>`__
|
||||
- `rheinz (@rheinz) <https://github.com/rheinz>`__
|
||||
- `richardhopton (@richardhopton) <https://github.com/richardhopton>`__
|
||||
- `Richard Klingler (@richardklingler) <https://github.com/richardklingler>`__
|
||||
- `Richard Lewis (@richrd) <https://github.com/richrd>`__
|
||||
@ -750,47 +927,60 @@ Contributors
|
||||
- `rjlexx (@rjlexx) <https://github.com/rjlexx>`__
|
||||
- `René Klomp (@rklomp) <https://github.com/rklomp>`__
|
||||
- `rlowens (@rlowens) <https://github.com/rlowens>`__
|
||||
- `LMR (@rmooreID) <https://github.com/rmooreID>`__
|
||||
- `Ryan Mounce (@rmounce) <https://github.com/rmounce>`__
|
||||
- `rnauber (@rnauber) <https://github.com/rnauber>`__
|
||||
- `Rob Deutsch (@rob-deutsch) <https://github.com/rob-deutsch>`__
|
||||
- `Rob de Jonge (@robdejonge) <https://github.com/robdejonge>`__
|
||||
- `Robert Alfaro (@robert-alfaro) <https://github.com/robert-alfaro>`__
|
||||
- `Rob Gridley (@robgridley) <https://github.com/robgridley>`__
|
||||
- `Robin Smidsrød (@robinsmidsrod) <https://github.com/robinsmidsrod>`__
|
||||
- `Robinson1999 (@Robinson1999) <https://github.com/Robinson1999>`__
|
||||
- `RoboMagus (@RoboMagus) <https://github.com/RoboMagus>`__
|
||||
- `Roi Tagar (@roitagar) <https://github.com/roitagar>`__
|
||||
- `Roeland Lutters (@Roeland54) <https://github.com/Roeland54>`__
|
||||
- `RoganDawes (@RoganDawes) <https://github.com/RoganDawes>`__
|
||||
- `Jérôme W. (@RomRider) <https://github.com/RomRider>`__
|
||||
- `roscoegray (@roscoegray) <https://github.com/roscoegray>`__
|
||||
- `rotarykite (@rotarykite) <https://github.com/rotarykite>`__
|
||||
- `Bob Perciaccante (@rperciaccante) <https://github.com/rperciaccante>`__
|
||||
- `rradar (@rradar) <https://github.com/rradar>`__
|
||||
- `rspaargaren (@rspaargaren) <https://github.com/rspaargaren>`__
|
||||
- `rsumner (@rsumner) <https://github.com/rsumner>`__
|
||||
- `Ruben De Smet (@rubdos) <https://github.com/rubdos>`__
|
||||
- `@RubenKelevra (@RubenKelevra) <https://github.com/RubenKelevra>`__
|
||||
- `RubyBailey (@RubyBailey) <https://github.com/RubyBailey>`__
|
||||
- `Rus Ti (@Rusti-gotrage) <https://github.com/Rusti-gotrage>`__
|
||||
- `rweather (@rweather) <https://github.com/rweather>`__
|
||||
- `Ryan Lang (@ryan-lang) <https://github.com/ryan-lang>`__
|
||||
- `ryanalden (@ryanalden) <https://github.com/ryanalden>`__
|
||||
- `Lukas Bachschwell (@s00500) <https://github.com/s00500>`__
|
||||
- `Sabesto (@Sabesto) <https://github.com/Sabesto>`__
|
||||
- `Jan Čermák (@sairon) <https://github.com/sairon>`__
|
||||
- `Sam Turner (@samturner3) <https://github.com/samturner3>`__
|
||||
- `Sender (@sanderlv) <https://github.com/sanderlv>`__
|
||||
- `sascha lammers (@sascha432) <https://github.com/sascha432>`__
|
||||
- `sbur83 (@sbur83) <https://github.com/sbur83>`__
|
||||
- `Søren Christian Aarup (@scaarup) <https://github.com/scaarup>`__
|
||||
- `Matthew Schinckel (@schinckel) <https://github.com/schinckel>`__
|
||||
- `Nils Schulte (@Schnilz) <https://github.com/Schnilz>`__
|
||||
- `Wolle (@schreibfaul1) <https://github.com/schreibfaul1>`__
|
||||
- `Ville Skyttä (@scop) <https://github.com/scop>`__
|
||||
- `Jeremy Pack (@scriptengine) <https://github.com/scriptengine>`__
|
||||
- `Sean True (@seantrue) <https://github.com/seantrue>`__
|
||||
- `sebcaps (@sebcaps) <https://github.com/sebcaps>`__
|
||||
- `Stefan Seyfried (@seife) <https://github.com/seife>`__
|
||||
- `SenexCrenshaw (@SenexCrenshaw) <https://github.com/SenexCrenshaw>`__
|
||||
- `Jason Sepinsky (@Sepinsky) <https://github.com/Sepinsky>`__
|
||||
- `Sergey Popov (@Sergey-SRG) <https://github.com/Sergey-SRG>`__
|
||||
- `Sergio Mayoral Martínez (@sermayoral) <https://github.com/sermayoral>`__
|
||||
- `Seth Girvan (@sethgirvan) <https://github.com/sethgirvan>`__
|
||||
- `Emanuele Tessore (@setola) <https://github.com/setola>`__
|
||||
- `Abdelkader Boudih (@seuros) <https://github.com/seuros>`__
|
||||
- `SharkSharp (@SharkSharp) <https://github.com/SharkSharp>`__
|
||||
- `Sebastiaan (@SharkWipf) <https://github.com/SharkWipf>`__
|
||||
- `Fabio Todaro (@SharpEdgeMarshall) <https://github.com/SharpEdgeMarshall>`__
|
||||
- `ShellAddicted (@ShellAddicted) <https://github.com/ShellAddicted>`__
|
||||
- `sherbang (@sherbang) <https://github.com/sherbang>`__
|
||||
- `Shish (@shish) <https://github.com/shish>`__
|
||||
- `signix (@signix) <https://github.com/signix>`__
|
||||
- `SiliconAvatar (@SiliconAvatar) <https://github.com/SiliconAvatar>`__
|
||||
- `Mark Lopez (@Silvenga) <https://github.com/Silvenga>`__
|
||||
- `Francisco J. Solis (@sisco0) <https://github.com/sisco0>`__
|
||||
- `Derek Hageman (@Sizurka) <https://github.com/Sizurka>`__
|
||||
- `Stephen Tierney (@sjtrny) <https://github.com/sjtrny>`__
|
||||
@ -804,6 +994,8 @@ Contributors
|
||||
- `Sourabh Jaiswal (@sourabhjaiswal) <https://github.com/sourabhjaiswal>`__
|
||||
- `Philip Allgaier (@spacegaier) <https://github.com/spacegaier>`__
|
||||
- `spacemanspiff2007 (@spacemanspiff2007) <https://github.com/spacemanspiff2007>`__
|
||||
- `sparkydave1981 (@sparkydave1981) <https://github.com/sparkydave1981>`__
|
||||
- `spattinson (@spattinson) <https://github.com/spattinson>`__
|
||||
- `Sean Brogan (@spbrogan) <https://github.com/spbrogan>`__
|
||||
- `Spegs21 (@Spegs21) <https://github.com/Spegs21>`__
|
||||
- `Eric Lind (@sperly) <https://github.com/sperly>`__
|
||||
@ -812,49 +1004,73 @@ Contributors
|
||||
- `Stanislav Habich (@standahabich) <https://github.com/standahabich>`__
|
||||
- `stegm (@stegm) <https://github.com/stegm>`__
|
||||
- `Stewart (@stewiem2000) <https://github.com/stewiem2000>`__
|
||||
- `sthorley (@sthorley) <https://github.com/sthorley>`__
|
||||
- `sticilface (@sticilface) <https://github.com/sticilface>`__
|
||||
- `Stijn Tintel (@stintel) <https://github.com/stintel>`__
|
||||
- `Mathias Stock (@Stock-M) <https://github.com/Stock-M>`__
|
||||
- `Strixx76 (@Strixx76) <https://github.com/Strixx76>`__
|
||||
- `stubs12 (@stubs12) <https://github.com/stubs12>`__
|
||||
- `Jordan Vohwinkel (@sublime93) <https://github.com/sublime93>`__
|
||||
- `sud33p (@sud33p) <https://github.com/sud33p>`__
|
||||
- `sumirati (@sumirati) <https://github.com/sumirati>`__
|
||||
- `swifty99 (@swifty99) <https://github.com/swifty99>`__
|
||||
- `Jan Gutowski (@Switch123456789) <https://github.com/Switch123456789>`__
|
||||
- `Sybren A. Stüvel (@sybrenstuvel) <https://github.com/sybrenstuvel>`__
|
||||
- `synco (@synco) <https://github.com/synco>`__
|
||||
- `Marcel Feix (@Syndlex) <https://github.com/Syndlex>`__
|
||||
- `Suryandaru Triandana (@syndtr) <https://github.com/syndtr>`__
|
||||
- `SyXavier (@SyXavier) <https://github.com/SyXavier>`__
|
||||
- `Peter (@szpeter80) <https://github.com/szpeter80>`__
|
||||
- `Taigar2015 (@Taigar2015) <https://github.com/Taigar2015>`__
|
||||
- `Stefan Dragnev (@tailsu) <https://github.com/tailsu>`__
|
||||
- `Levente Tamas (@tamisoft) <https://github.com/tamisoft>`__
|
||||
- `Aleksandr Oleinikov (@tannisroot) <https://github.com/tannisroot>`__
|
||||
- `tantive (@tantive) <https://github.com/tantive>`__
|
||||
- `Ryan Hoffman (@tekmaven) <https://github.com/tekmaven>`__
|
||||
- `testbughub (@testbughub) <https://github.com/testbughub>`__
|
||||
- `Greg Lincoln (@tetious) <https://github.com/tetious>`__
|
||||
- `Terry Hardie (@thardie) <https://github.com/thardie>`__
|
||||
- `The-Paran0id-Andr0id (@The-Paran0id-Andr0id) <https://github.com/The-Paran0id-Andr0id>`__
|
||||
- `Nejc (@thedexboy) <https://github.com/thedexboy>`__
|
||||
- `Thomas Eckerstorfer (@TheEggi) <https://github.com/TheEggi>`__
|
||||
- `Theexternaldisk (@Theexternaldisk) <https://github.com/Theexternaldisk>`__
|
||||
- `Martijn van der Pol (@TheFes) <https://github.com/TheFes>`__
|
||||
- `TheGroundZero (@TheGroundZero) <https://github.com/TheGroundZero>`__
|
||||
- `thejonesyboy (@thejonesyboy) <https://github.com/thejonesyboy>`__
|
||||
- `TheJulianJES (@TheJulianJES) <https://github.com/TheJulianJES>`__
|
||||
- `Zixuan Wang (@TheNetAdmin) <https://github.com/TheNetAdmin>`__
|
||||
- `Dominik Bruhn (@theomega) <https://github.com/theomega>`__
|
||||
- `Brian Levinsen (@therealeldaria) <https://github.com/therealeldaria>`__
|
||||
- `Steve Scott (@thewishy) <https://github.com/thewishy>`__
|
||||
- `Florian Gareis (@TheZoker) <https://github.com/TheZoker>`__
|
||||
- `Thibault Maekelbergh (@thibmaek) <https://github.com/thibmaek>`__
|
||||
- `Matt (@ThisIsTheOnlyUsernameAvailable) <https://github.com/ThisIsTheOnlyUsernameAvailable>`__
|
||||
- `Thomas Heiser (@thomasheiser85) <https://github.com/thomasheiser85>`__
|
||||
- `Andrew Thompson (@thompsa) <https://github.com/thompsa>`__
|
||||
- `John (@thorrak) <https://github.com/thorrak>`__
|
||||
- `Thomas Langewouters (@thouters) <https://github.com/thouters>`__
|
||||
- `Transylvania High Tech (@thtro) <https://github.com/thtro>`__
|
||||
- `Thunderbiscuits (@Thunderbiscuits) <https://github.com/Thunderbiscuits>`__
|
||||
- `tiagofreire-pt (@tiagofreire-pt) <https://github.com/tiagofreire-pt>`__
|
||||
- `Tijs-B (@Tijs-B) <https://github.com/Tijs-B>`__
|
||||
- `Tim Laurence (@timdaman) <https://github.com/timdaman>`__
|
||||
- `Aidan Timson (@timmo001) <https://github.com/timmo001>`__
|
||||
- `Tim Savage (@timsavage) <https://github.com/timsavage>`__
|
||||
- `Tinkerfish (@tinkerfish) <https://github.com/tinkerfish>`__
|
||||
- `TJ Horner (@tjhorner) <https://github.com/tjhorner>`__
|
||||
- `Christian (@Tntdruid) <https://github.com/Tntdruid>`__
|
||||
- `Philipp Tölke (@toelke) <https://github.com/toelke>`__
|
||||
- `tomaszduda23 (@tomaszduda23) <https://github.com/tomaszduda23>`__
|
||||
- `Tom Brien (@TomBrien) <https://github.com/TomBrien>`__
|
||||
- `Tom Hartogs (@TomHartogs) <https://github.com/TomHartogs>`__
|
||||
- `tomlut (@tomlut) <https://github.com/tomlut>`__
|
||||
- `tomle (@tomole444) <https://github.com/tomole444>`__
|
||||
- `Tom Price (@tomtom5152) <https://github.com/tomtom5152>`__
|
||||
- `David Kiliani (@torfbolt) <https://github.com/torfbolt>`__
|
||||
- `tracestep (@tracestep) <https://github.com/tracestep>`__
|
||||
- `Felix Eckhofer (@tribut) <https://github.com/tribut>`__
|
||||
- `Trick van Staveren (@trickv) <https://github.com/trickv>`__
|
||||
- `TripitakaBC (@TripitakaBC) <https://github.com/TripitakaBC>`__
|
||||
- `Tobias (@tripplet) <https://github.com/tripplet>`__
|
||||
- `Tyler Bules (@Troublebrewing) <https://github.com/Troublebrewing>`__
|
||||
- `Olli Salonen (@trsqr) <https://github.com/trsqr>`__
|
||||
@ -865,17 +1081,25 @@ Contributors
|
||||
- `tubalainen (@tubalainen) <https://github.com/tubalainen>`__
|
||||
- `tube0013 (@tube0013) <https://github.com/tube0013>`__
|
||||
- `Alexey Vlasov (@turbulator) <https://github.com/turbulator>`__
|
||||
- `tvan0076 (@tvan0076) <https://github.com/tvan0076>`__
|
||||
- `Thorsten von Eicken (@tve) <https://github.com/tve>`__
|
||||
- `Ubi de Feo (@ubidefeo) <https://github.com/ubidefeo>`__
|
||||
- `ulic75 (@ulic75) <https://github.com/ulic75>`__
|
||||
- `unhold (@unhold) <https://github.com/unhold>`__
|
||||
- `Aaron Mildenstein (@untergeek) <https://github.com/untergeek>`__
|
||||
- `uPesy Electronics (@uPesy) <https://github.com/uPesy>`__
|
||||
- `UT2UH (@UT2UH) <https://github.com/UT2UH>`__
|
||||
- `Vc (@Valcob) <https://github.com/Valcob>`__
|
||||
- `Nad (@valordk) <https://github.com/valordk>`__
|
||||
- `Veli Veromann (@velijv) <https://github.com/velijv>`__
|
||||
- `André Lademann (@vergissberlin) <https://github.com/vergissberlin>`__
|
||||
- `Austin (@vidplace7) <https://github.com/vidplace7>`__
|
||||
- `Vincèn (@vincegre) <https://github.com/vincegre>`__
|
||||
- `Virage Laboratories (@viragelabs) <https://github.com/viragelabs>`__
|
||||
- `VitaliyKurokhtin (@VitaliyKurokhtin) <https://github.com/VitaliyKurokhtin>`__
|
||||
- `Xuming Feng (@voicevon) <https://github.com/voicevon>`__
|
||||
- `vt-vaio (@vt-vaio) <https://github.com/vt-vaio>`__
|
||||
- `vtechun (@vtechun) <https://github.com/vtechun>`__
|
||||
- `vxider (@Vxider) <https://github.com/Vxider>`__
|
||||
- `Wai Weng (@waiweng83) <https://github.com/waiweng83>`__
|
||||
- `WallyCZ (@WallyCZ) <https://github.com/WallyCZ>`__
|
||||
@ -886,6 +1110,7 @@ Contributors
|
||||
- `Ian Wells (@wellsi) <https://github.com/wellsi>`__
|
||||
- `wifwucite (@wifwucite) <https://github.com/wifwucite>`__
|
||||
- `wilberforce (@wilberforce) <https://github.com/wilberforce>`__
|
||||
- `Wingman3434 (@Wingman3434) <https://github.com/Wingman3434>`__
|
||||
- `Emil Hesslow (@WizKid) <https://github.com/WizKid>`__
|
||||
- `WJCarpenter (@wjcarpenter) <https://github.com/wjcarpenter>`__
|
||||
- `Wouter van der Wal (@wjtje) <https://github.com/wjtje>`__
|
||||
@ -895,6 +1120,8 @@ Contributors
|
||||
- `Sven Serlier (@wrt54g) <https://github.com/wrt54g>`__
|
||||
- `Wolfgang Tremmel (@wtremmel) <https://github.com/wtremmel>`__
|
||||
- `wysiwyng (@wysiwyng) <https://github.com/wysiwyng>`__
|
||||
- `Jakob (@XDjackieXD) <https://github.com/XDjackieXD>`__
|
||||
- `Mike Brown (@xenoxaos) <https://github.com/xenoxaos>`__
|
||||
- `WitchKing (@xvil) <https://github.com/xvil>`__
|
||||
- `Yaroslav (@Yarikx) <https://github.com/Yarikx>`__
|
||||
- `Marcin Jaworski (@yawor) <https://github.com/yawor>`__
|
||||
@ -903,10 +1130,13 @@ Contributors
|
||||
- `Yuval Aboulafia (@yuvalabou) <https://github.com/yuvalabou>`__
|
||||
- `Björn Stenberg (@zagor) <https://github.com/zagor>`__
|
||||
- `david reid (@zathras777) <https://github.com/zathras777>`__
|
||||
- `Brynley McDonald (@ZephireNZ) <https://github.com/ZephireNZ>`__
|
||||
- `Geek_cat (@zhzhzhy) <https://github.com/zhzhzhy>`__
|
||||
- `I. Tomita (@ziceva) <https://github.com/ziceva>`__
|
||||
- `Michael Labuschke (@zigman79) <https://github.com/zigman79>`__
|
||||
- `zivillian (@zivillian) <https://github.com/zivillian>`__
|
||||
- `Loïc (@zoic21) <https://github.com/zoic21>`__
|
||||
- `Zack Barett (@zsarnett) <https://github.com/zsarnett>`__
|
||||
- `Christian Zufferey (@zuzu59) <https://github.com/zuzu59>`__
|
||||
|
||||
*This page was last updated March 27, 2023.*
|
||||
*This page was last updated April 20, 2023.*
|
||||
|
1
images/microphone.svg
Normal file
1
images/microphone.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12,2A3,3 0 0,1 15,5V11A3,3 0 0,1 12,14A3,3 0 0,1 9,11V5A3,3 0 0,1 12,2M19,11C19,14.53 16.39,17.44 13,17.93V21H11V17.93C7.61,17.44 5,14.53 5,11H7A5,5 0 0,0 12,16A5,5 0 0,0 17,11H19Z" /></svg>
|
After Width: | Height: | Size: 260 B |
BIN
images/mmc5603.jpg
Normal file
BIN
images/mmc5603.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 17 KiB |
1
images/voice-assistant.svg
Normal file
1
images/voice-assistant.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9,22A1,1 0 0,1 8,21V18H4A2,2 0 0,1 2,16V4C2,2.89 2.9,2 4,2H20A2,2 0 0,1 22,4V16A2,2 0 0,1 20,18H13.9L10.2,21.71C10,21.9 9.75,22 9.5,22V22H9M10,16V19.08L13.08,16H20V4H4V16H10M17,11H15V9H17V11M13,11H11V9H13V11M9,11H7V9H9V11Z" /></svg>
|
After Width: | Height: | Size: 303 B |
22
index.rst
22
index.rst
@ -339,6 +339,7 @@ Magnetic
|
||||
|
||||
ESP32 Hall Sensor, components/sensor/esp32_hall, magnet.svg, ESP internal
|
||||
HMC5883L, components/sensor/hmc5883l, hmc5883l.jpg, 3-Axis magnetometer
|
||||
MMC5603, components/sensor/mmc5603, mmc5603.jpg, 3-Axis magnetometer
|
||||
MLX90393, components/sensor/mlx90393, mlx90393.jpg, 3-Axis magnetometer
|
||||
QMC5883L, components/sensor/qmc5883l, qmc5883l.jpg, 3-Axis magnetometer
|
||||
|
||||
@ -704,6 +705,14 @@ Media Player Components
|
||||
Media Player Core, components/media_player/index, folder-open.svg
|
||||
I2S Audio, components/media_player/i2s_audio, i2s_audio.svg
|
||||
|
||||
Microphone Components
|
||||
---------------------
|
||||
|
||||
.. imgtable::
|
||||
|
||||
Microphone Core, components/microphone/index, microphone.svg
|
||||
I2S Microphone, components/microphone/i2s_audio, i2s_audio.svg
|
||||
|
||||
Time Components
|
||||
---------------
|
||||
|
||||
@ -716,6 +725,17 @@ Time Components
|
||||
DS1307 RTC, components/time/ds1307, clock-outline.svg
|
||||
PCF85063 RTC, components/time/pcf85063, clock-outline.svg
|
||||
|
||||
Home Assistant Companion Components
|
||||
-----------------------------------
|
||||
|
||||
.. imgtable::
|
||||
|
||||
Bluetooth Proxy, components/bluetooth_proxy, bluetooth.svg
|
||||
Voice Assistant, components/voice_assistant, voice-assistant.svg
|
||||
Sensor, components/sensor/homeassistant, home-assistant.svg
|
||||
Text Sensor, components/text_sensor/homeassistant, home-assistant.svg
|
||||
Binary Sensor, components/binary_sensor/homeassistant, home-assistant.svg
|
||||
|
||||
Miscellaneous Components
|
||||
------------------------
|
||||
|
||||
@ -743,6 +763,8 @@ Miscellaneous Components
|
||||
ESP32 Camera, components/esp32_camera, camera.svg
|
||||
ESP32 Camera Web Server, components/esp32_camera_web_server, camera.svg
|
||||
|
||||
I²S Audio, components/i2s_audio, i2s_audio.svg
|
||||
|
||||
Stepper, components/stepper/index, stepper.svg
|
||||
Servo, components/servo, servo.svg
|
||||
Sprinkler, components/sprinkler, sprinkler-variant.svg
|
||||
|
Loading…
Reference in New Issue
Block a user