Skip to content

Commit

Permalink
Merge branch 'next' into gp8211
Browse files Browse the repository at this point in the history
  • Loading branch information
haudamekki authored Oct 19, 2024
2 parents fc3cf1b + 0da104b commit e1ccf8b
Show file tree
Hide file tree
Showing 23 changed files with 638 additions and 322 deletions.
2 changes: 1 addition & 1 deletion Doxygen
Original file line number Diff line number Diff line change
Expand Up @@ -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 = 2024.10.0
PROJECT_NUMBER = 2024.11.0-dev

# 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
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
ESPHOME_PATH = ../esphome
ESPHOME_REF = 2024.10.0
ESPHOME_REF = dev
PAGEFIND_VERSION=1.1.0
PAGEFIND=pagefind
NET_PAGEFIND=../pagefindbin/pagefind
Expand Down
1 change: 1 addition & 0 deletions _redirects
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,4 @@

/ready-made/projects /projects/ 301
/components/images /components/image 301
/components/display/qspi_amoled.html /components/display/qspi_dbi.html 301
2 changes: 1 addition & 1 deletion _static/version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2024.10.0
2024.11.0-dev
22 changes: 15 additions & 7 deletions automations/actions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,11 @@ turns on a light for 5 seconds. Otherwise, the light is turned off immediately.
Configuration variables:

- **condition** (**Required**, :ref:`Condition <config-condition>`): The condition to check to determine which branch to take.
At least one of ``condition``, ``all`` or ``any`` must be provided.

- **condition** (*Optional*, :ref:`Condition <config-condition>`): The condition to check to determine which branch to take. If this is configured with a list of conditions then they must all be true for the condition to be true.
- **all** (*Optional*, :ref:`Condition <config-condition>`): Takes a list of conditions, all of which must be true (and is therefore equivalent to ``condition``.)
- **any** (*Optional*, :ref:`Condition <config-condition>`): Takes a list of conditions; if at least one is true, the condition will be true.
- **then** (*Optional*, :ref:`Action <config-action>`): The action to perform if the condition evaluates to true.
Defaults to doing nothing.
- **else** (*Optional*, :ref:`Action <config-action>`): The action to perform if the condition evaluates to false.
Expand Down Expand Up @@ -406,14 +410,17 @@ Common Conditions
"Conditions" provide a way for your device to take an action only when a specific (set of) condition(s) is satisfied.

.. _and_condition:
.. _all_condition:
.. _or_condition:
.. _any_condition:
.. _xor_condition:
.. _not_condition:

``and`` / ``or`` / ``xor`` / ``not`` Condition
**********************************************
``and`` / ``all`` / ``or`` / ``any`` / ``xor`` / ``not`` Condition
******************************************************************

Check a combination of conditions
Check a combination of conditions. ``all`` is a synonym for ``and``, and ``any`` is a synonym for ``or``.
``all`` and ``any`` may also be used directly in place of ``condition``.

.. code-block:: yaml
Expand All @@ -428,9 +435,10 @@ Check a combination of conditions
# ...
- if:
condition:
not:
binary_sensor.is_off: some_binary_sensor
any:
- not:
binary_sensor.is_off: some_binary_sensor
- binary_sensor.is_on: some_other_sensor
.. _for_condition:

Expand Down
2 changes: 1 addition & 1 deletion automations/all_actions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@
- **senseair:** ``abc_disable``, ``abc_enable``, ``abc_get_period``, ``background_calibration``, ``background_calibration_result``
- **servo:** ``detach``, ``write``
- **sim800l:** ``connect``, ``dial``, ``disconnect``, ``send_sms``, ``send_ussd``
- **speaker:** ``play``, ``stop``
- **speaker:** ``play``, ``stop``, ``finish``, ``volume_set``
- **sprinkler:** ``clear_queued_valves``, ``next_valve``, ``pause``, ``previous_valve``, ``queue_valve``, ``resume``, ``resume_or_start_full_cycle``, ``set_divider``, ``set_multiplier``, ``set_repeat``, ``set_valve_run_duration``, ``shutdown``, ``start_from_queue``, ``start_full_cycle``, ``start_single_valve``
- **sps30:** ``start_fan_autoclean``
- **stepper:** ``report_position``, ``set_acceleration``, ``set_deceleration``, ``set_speed``, ``set_target``
Expand Down
7 changes: 7 additions & 0 deletions components/display/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,13 @@ Now that you know a bit more about ESPHome's coordinate system, let's draw some
// ... and the same thing filled again
it.filled_circle(20, 75, 10);
// Ring and half-ring. First draw the circle with a hole in it
// at [75,75] with inner raduis of 20 and outer of 30
id.filled_ring(75, 75, 30, 20);
// and a "gauge": half-ring that is partially filled.
// Same position and size but 80% filled left to right
id.filled_gauge(75, 75, 30, 20, 80)
// Triangles... Let's draw the outline of a triangle from the [x,y] coordinates of its three points
// [25,5], [100,5], [80,25]
it.triangle(25, 5, 100, 5, 80, 25);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,20 +1,21 @@
Quad SPI AMOLED Displays
========================
Quad SPI Displays
=================

.. seo::
:description: Instructions for setting up quad SPI AMOLED displays.
:description: Instructions for setting up quad SPI displays.
:image: t4-s3.jpg

.. _qspi_amoled:
.. _qspi_dbi:

Models
------
This display driver supports AMOLED displays with quad SPI interfaces.
This display driver supports AMOLED and LCD displays with quad SPI interfaces, using the MIPI DBI interface.

This driver has been tested with the following displays:

- Lilygo T4-S3
- Lilygo T-Display S3 AMOLED
- JC4832W535 board using AXS15231

Usage
-----
Expand All @@ -36,19 +37,16 @@ ESP-IDF. PSRAM is a requirement due to the size of the display buffer. A :ref:`q

.. code-block:: yaml
# Example minimal configuration entry
# Example configuration entry
display:
- platform: qspi_amoled
- platform: qspi_dbi
model: RM690B0
data_rate: 80MHz
spi_mode: mode0
dimensions:
width: 450
height: 600
offset_width: 16
color_order: rgb
invert_colors: false
brightness: 255
cs_pin: GPIOXX
reset_pin: GPIOXX
Expand All @@ -58,7 +56,8 @@ ESP-IDF. PSRAM is a requirement due to the size of the display buffer. A :ref:`q
Configuration variables:
************************

- **model** (**Required**): One of ``RM67162`` or ``RM690B0``.
- **model** (**Required**): One of ``CUSTOM``, ``RM67162`` or ``RM690B0``.
- **init_sequence** (*Optional*, A list of byte arrays): Specifies the init sequence for the display. This is required when using the ``CUSTOM`` model - but may be empty. If specified for other models this data will be sent after the pre-configured sequence.
- **cs_pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The chip select pin.
- **reset_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The RESET pin.
- **enable_pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The display enable pin.
Expand All @@ -84,6 +83,7 @@ Configuration variables:
- **data_rate** (*Optional*): Set the data rate of the SPI interface to the display. One of ``80MHz``, ``40MHz``, ``20MHz``, ``10MHz`` (default), ``5MHz``, ``2MHz`` or ``1MHz``.
- **spi_mode** (*Optional*): Set the mode for the SPI interface to the display. Default is ``MODE0``.
- **invert_colors** (*Optional*): With this boolean option you can invert the display colors.
- **draw_from_origin** (*Optional*): When set, all partial display updates will start at the origin (0,0). Defaults to false.
- **lambda** (*Optional*, :ref:`lambda <config-lambda>`): The lambda to use for rendering the content on the display.
See :ref:`display-engine` for more information.

Expand Down Expand Up @@ -115,7 +115,7 @@ Lilygo T4-S3
reset_pin: 17
display:
- platform: qspi_amoled
- platform: qspi_dbi
model: RM690B0
data_rate: 80MHz
spi_mode: mode0
Expand Down Expand Up @@ -162,7 +162,7 @@ Lilygo T-Display S3 AMOLED
number: 21
display:
- platform: qspi_amoled
- platform: qspi_dbi
model: RM67162
id: main_lcd
dimensions:
Expand All @@ -178,9 +178,56 @@ Lilygo T-Display S3 AMOLED
enable_pin: 38
JC4832W535 3.5" LCD Board
*************************

This rotates the display into landscape mode using software rotation.

.. code-block:: yaml
psram:
mode: octal
speed: 80MHz
spi:
id: display_qspi
type: quad
clk_pin: 47
data_pins: [21,48,40,39]
power_supply:
id: backlight_id
pin: 1
enable_on_boot: true
display:
- platform: qspi_dbi
model: axs15231
data_rate: 40MHz
dimensions:
height: 480
width: 320
cs_pin:
number: 45
ignore_strapping_warning: true
auto_clear_enabled: false
update_interval: never
init_sequence:
i2c:
sda: 4
scl: 8
touchscreen:
platform: axs15231
transform:
swap_xy: true
mirror_y: true
See Also
--------

- :doc:`index`
- :apiref:`qspi_amoled/qspi_amoled.h`
- :apiref:`qspi_dbi/qspi_dbi.h`
- :ghedit:`Edit`
2 changes: 1 addition & 1 deletion components/font.rst
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ Configuration variables:

To use fonts you will need to have the python ``pillow`` package installed, as ESPHome uses that package
to translate the OpenType/TrueType and bitmap font files into an internal format. If you're running this as a Home Assistant add-on or with the official ESPHome docker image, it should already be installed. Otherwise you need
to install it using ``pip install "pillow==10.2.0"``.
to install it using ``pip install "pillow==10.4.0"``.

See Also
--------
Expand Down
Loading

0 comments on commit e1ccf8b

Please sign in to comment.