1
0
mirror of https://github.com/esphome/esphome.git synced 2025-10-30 06:33:51 +00:00

Merge branch 'dev' into multi_device

This commit is contained in:
DanielV
2025-05-22 08:41:54 +02:00
committed by GitHub
422 changed files with 17009 additions and 3702 deletions

View File

@@ -17,10 +17,22 @@ sensor:
name: EMON Active Power CT1
reactive_power:
name: EMON Reactive Power CT1
apparent_power:
name: EMON Apparent Power CT1
harmonic_power:
name: EMON Harmonic Power CT1
power_factor:
name: EMON Power Factor CT1
phase_angle:
name: EMON Phase Angle CT1
peak_current:
name: EMON Peak Current CT1
gain_voltage: 7305
gain_ct: 27961
offset_voltage: 0
offset_current: 0
offset_active_power: 0
offset_reactive_power: 0
phase_b:
current:
name: EMON CT2 Current
@@ -28,10 +40,22 @@ sensor:
name: EMON Active Power CT2
reactive_power:
name: EMON Reactive Power CT2
apparent_power:
name: EMON Apparent Power CT2
harmonic_power:
name: EMON Harmonic Power CT2
power_factor:
name: EMON Power Factor CT2
phase_angle:
name: EMON Phase Angle CT2
peak_current:
name: EMON Peak Current CT2
gain_voltage: 7305
gain_ct: 27961
offset_voltage: 0
offset_current: 0
offset_active_power: 0
offset_reactive_power: 0
phase_c:
current:
name: EMON CT3 Current
@@ -39,23 +63,75 @@ sensor:
name: EMON Active Power CT3
reactive_power:
name: EMON Reactive Power CT3
apparent_power:
name: EMON Apparent Power CT3
harmonic_power:
name: EMON Harmonic Power CT3
power_factor:
name: EMON Power Factor CT3
phase_angle:
name: EMON Phase Angle CT3
peak_current:
name: EMON Peak Current CT3
gain_voltage: 7305
gain_ct: 27961
offset_voltage: 0
offset_current: 0
offset_active_power: 0
offset_reactive_power: 0
frequency:
name: EMON Line Frequency
chip_temperature:
name: EMON Chip Temp A
name: EMON Chip Temp
line_frequency: 60Hz
current_phases: 3
gain_pga: 2X
gain_pga: 1X
enable_offset_calibration: True
enable_gain_calibration: True
text_sensor:
- platform: atm90e32
id: atm90e32_chip1
phase_status:
phase_a:
name: "Phase A Status"
phase_b:
name: "Phase B Status"
phase_c:
name: "Phase C Status"
frequency_status:
name: "Frequency Status"
button:
- platform: atm90e32
id: atm90e32_chip1
run_gain_calibration:
name: "Run Gain Calibration"
clear_gain_calibration:
name: "Clear Gain Calibration"
run_offset_calibration:
name: Chip1 - Run Offset Calibration
name: "Run Offset Calibration"
clear_offset_calibration:
name: Chip1 - Clear Offset Calibration
name: "Clear Offset Calibration"
run_power_offset_calibration:
name: "Run Power Offset Calibration"
clear_power_offset_calibration:
name: "Clear Power Offset Calibration"
number:
- platform: atm90e32
id: atm90e32_chip1
reference_voltage:
phase_a:
name: "Phase A Ref Voltage"
phase_b:
name: "Phase B Ref Voltage"
phase_c:
name: "Phase C Ref Voltage"
reference_current:
phase_a:
name: "Phase A Ref Current"
phase_b:
name: "Phase B Ref Current"
phase_c:
name: "Phase C Ref Current"

View File

@@ -0,0 +1,11 @@
uart:
- id: uart_cm1106
tx_pin: ${tx_pin}
rx_pin: ${rx_pin}
baud_rate: 9600
sensor:
- platform: cm1106
co2:
name: CM1106 CO2 Value
update_interval: 15s

View File

@@ -0,0 +1,5 @@
substitutions:
tx_pin: GPIO17
rx_pin: GPIO16
<<: !include common.yaml

View File

@@ -0,0 +1,5 @@
substitutions:
tx_pin: GPIO4
rx_pin: GPIO5
<<: !include common.yaml

View File

@@ -0,0 +1,5 @@
substitutions:
tx_pin: GPIO4
rx_pin: GPIO5
<<: !include common.yaml

View File

@@ -0,0 +1,5 @@
substitutions:
tx_pin: GPIO17
rx_pin: GPIO16
<<: !include common.yaml

View File

@@ -0,0 +1,5 @@
substitutions:
tx_pin: GPIO4
rx_pin: GPIO5
<<: !include common.yaml

View File

@@ -0,0 +1,5 @@
substitutions:
tx_pin: GPIO4
rx_pin: GPIO5
<<: !include common.yaml

View File

@@ -0,0 +1 @@
demo:

View File

@@ -26,3 +26,17 @@ dfrobot_sen0395:
binary_sensor:
- platform: dfrobot_sen0395
id: mmwave_detected
switch:
- platform: dfrobot_sen0395
type: sensor_active
id: mmwave_sensor_active
- platform: dfrobot_sen0395
type: turn_on_led
id: mmwave_turn_on_led
- platform: dfrobot_sen0395
type: presence_via_uart
id: mmwave_presence_via_uart
- platform: dfrobot_sen0395
type: start_after_boot
id: mmwave_start_after_boot

View File

@@ -1,4 +1,5 @@
<<: !include common.yaml
esp32_ble_tracker:
software_coexistence: true
max_connections: 3

View File

@@ -2,3 +2,4 @@
esp32_ble_tracker:
max_connections: 3
software_coexistence: false

View File

@@ -2,3 +2,4 @@
esp32_ble_tracker:
max_connections: 9
software_coexistence: false

View File

@@ -1,4 +1,5 @@
<<: !include common.yaml
esp32_ble_tracker:
software_coexistence: true
max_connections: 9

View File

@@ -6,6 +6,20 @@ uart:
parity: EVEN
gps:
latitude:
name: "Latitude"
longitude:
name: "Longitude"
altitude:
name: "Altitude"
speed:
name: "Speed"
course:
name: "Course"
satellites:
name: "Satellites"
hdop:
name: "HDOP"
time:
- platform: gps

View File

@@ -26,3 +26,11 @@ key_collector:
- logger.log:
format: "input timeout: '%s', started by '%c'"
args: ['x.c_str()', "(start == 0 ? '~' : start)"]
enable_on_boot: false
button:
- platform: template
id: button0
on_press:
- key_collector.enable:
- key_collector.disable:

View File

@@ -27,9 +27,7 @@ lock:
id: test_lock1
state: !lambda "return LOCK_STATE_UNLOCKED;"
on_lock:
- lock.template.publish:
id: test_lock1
state: !lambda "return LOCK_STATE_LOCKED;"
- lock.template.publish: LOCKED
- platform: output
name: Generic Output Lock
id: test_lock2

View File

@@ -0,0 +1,5 @@
<<: !include common-default_uart.yaml
logger:
id: logger_id
task_log_buffer_size: 1024B # Set a custom buffer size

View File

@@ -0,0 +1,5 @@
<<: !include common-default_uart.yaml
logger:
id: logger_id
task_log_buffer_size: 0

View File

@@ -0,0 +1,5 @@
<<: !include common-default_uart.yaml
logger:
id: logger_id
task_log_buffer_size: 32768B # Maximum buffer size

View File

@@ -0,0 +1,5 @@
<<: !include common-default_uart.yaml
logger:
id: logger_id
task_log_buffer_size: 640B # Minimum buffer size with thread names

View File

@@ -781,6 +781,13 @@ lvgl:
value: !lambda return (int)((float)rand() / RAND_MAX * 100);
- tabview:
id: tabview_id
tab_style:
border_color: 0x00FF00
border_width: 6
items:
text_color: 0x0000FF
content_style:
scrollable: false
width: 100%
height: 80%
position: top

View File

@@ -14,3 +14,15 @@ display:
id: my_matrix
lambda: |-
it.printdigit("hello");
esphome:
on_boot:
- priority: 100
then:
- max7129digit.invert_off:
- max7129digit.invert_on:
- max7129digit.turn_on:
- max7129digit.turn_off:
- max7129digit.reverse_on:
- max7129digit.reverse_off:
- max7129digit.intensity: 10

View File

@@ -10,6 +10,7 @@ microphone:
adc_type: external
pdm: false
mclk_multiple: 384
correct_dc_offset: true
on_data:
- if:
condition:

View File

@@ -0,0 +1,38 @@
spi:
- id: spi_single
clk_pin:
number: ${clk_pin}
allow_other_uses: true
mosi_pin:
number: ${mosi_pin}
display:
- platform: mipi_spi
spi_16: true
pixel_mode: 18bit
model: ili9488
dc_pin: ${dc_pin}
cs_pin: ${cs_pin}
reset_pin: ${reset_pin}
data_rate: 20MHz
invert_colors: true
show_test_card: true
spi_mode: mode0
draw_rounding: 8
use_axis_flips: true
init_sequence:
- [0xd0, 1, 2, 3]
- delay 10ms
transform:
swap_xy: true
mirror_x: false
mirror_y: true
dimensions:
width: 100
height: 200
enable_pin:
- number: ${clk_pin}
allow_other_uses: true
- number: ${enable_pin}
bus_mode: single

View File

@@ -0,0 +1,41 @@
spi:
- id: quad_spi
type: quad
interface: spi3
clk_pin:
number: 47
data_pins:
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: octal_spi
type: octal
interface: hardware
clk_pin:
number: 0
data_pins:
- 36
- 37
- 38
- 39
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: spi_id_3
interface: any
clk_pin: 8
mosi_pin: 9
display:
- platform: mipi_spi
model: ESP32-2432S028

View File

@@ -0,0 +1,41 @@
spi:
- id: quad_spi
type: quad
interface: spi3
clk_pin:
number: 47
data_pins:
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: octal_spi
type: octal
interface: hardware
clk_pin:
number: 0
data_pins:
- 36
- 37
- 38
- 39
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: spi_id_3
interface: any
clk_pin: 8
mosi_pin: 9
display:
- platform: mipi_spi
model: JC3248W535

View File

@@ -0,0 +1,19 @@
spi:
- id: quad_spi
type: quad
interface: spi3
clk_pin:
number: 36
data_pins:
- number: 40
- number: 41
- number: 42
- number: 43
- id: spi_id_3
interface: any
clk_pin: 8
mosi_pin: 9
display:
- platform: mipi_spi
model: JC3636W518

View File

@@ -0,0 +1,9 @@
spi:
- id: spi_id_3
interface: any
clk_pin: 8
mosi_pin: 9
display:
- platform: mipi_spi
model: Pico-ResTouch-LCD-3.5

View File

@@ -0,0 +1,41 @@
spi:
- id: quad_spi
type: quad
interface: spi3
clk_pin:
number: 47
data_pins:
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: octal_spi
type: octal
interface: hardware
clk_pin:
number: 0
data_pins:
- 36
- 37
- 38
- 39
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: spi_id_3
interface: any
clk_pin: 8
mosi_pin: 9
display:
- platform: mipi_spi
model: S3BOX

View File

@@ -0,0 +1,41 @@
spi:
- id: quad_spi
type: quad
interface: spi3
clk_pin:
number: 47
data_pins:
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: octal_spi
type: octal
interface: hardware
clk_pin:
number: 0
data_pins:
- 36
- 37
- 38
- 39
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: spi_id_3
interface: any
clk_pin: 8
mosi_pin: 9
display:
- platform: mipi_spi
model: S3BOXLITE

View File

@@ -0,0 +1,9 @@
spi:
- id: spi_id_3
interface: any
clk_pin: 8
mosi_pin: 9
display:
- platform: mipi_spi
model: T-DISPLAY-S3-AMOLED-PLUS

View File

@@ -0,0 +1,15 @@
spi:
- id: quad_spi
type: quad
interface: spi3
clk_pin:
number: 47
data_pins:
- number: 40
- number: 41
- number: 42
- number: 43
display:
- platform: mipi_spi
model: T-DISPLAY-S3-AMOLED

View File

@@ -0,0 +1,9 @@
spi:
- id: spi_id_3
interface: any
clk_pin: 8
mosi_pin: 40
display:
- platform: mipi_spi
model: T-DISPLAY-S3-PRO

View File

@@ -0,0 +1,37 @@
spi:
- id: quad_spi
type: quad
interface: spi3
clk_pin:
number: 47
data_pins:
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: octal_spi
type: octal
interface: hardware
clk_pin:
number: 0
data_pins:
- 36
- 37
- 38
- 39
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
display:
- platform: mipi_spi
model: T-DISPLAY-S3

View File

@@ -0,0 +1,41 @@
spi:
- id: quad_spi
type: quad
interface: spi3
clk_pin:
number: 47
data_pins:
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: octal_spi
type: octal
interface: hardware
clk_pin:
number: 0
data_pins:
- 36
- 37
- 38
- 39
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: spi_id_3
interface: any
clk_pin: 8
mosi_pin: 9
display:
- platform: mipi_spi
model: T-DISPLAY

View File

@@ -0,0 +1,9 @@
spi:
- id: spi_id_3
interface: any
clk_pin: 8
mosi_pin: 40
display:
- platform: mipi_spi
model: T-EMBED

View File

@@ -0,0 +1,41 @@
spi:
- id: quad_spi
type: quad
interface: spi3
clk_pin:
number: 47
data_pins:
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: octal_spi
type: octal
interface: hardware
clk_pin:
number: 0
data_pins:
- 36
- 37
- 38
- 39
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: spi_id_3
interface: any
clk_pin: 8
mosi_pin: 9
display:
- platform: mipi_spi
model: T4-S3

View File

@@ -0,0 +1,37 @@
spi:
- id: quad_spi
type: quad
interface: spi3
clk_pin:
number: 47
data_pins:
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
- id: octal_spi
type: octal
interface: hardware
clk_pin:
number: 9
data_pins:
- 36
- 37
- 38
- 39
- allow_other_uses: true
number: 40
- allow_other_uses: true
number: 41
- allow_other_uses: true
number: 42
- allow_other_uses: true
number: 43
display:
- platform: mipi_spi
model: WT32-SC01-PLUS

View File

@@ -0,0 +1,15 @@
substitutions:
clk_pin: GPIO16
mosi_pin: GPIO17
miso_pin: GPIO15
dc_pin: GPIO14
cs_pin: GPIO13
enable_pin: GPIO19
reset_pin: GPIO20
display:
- platform: mipi_spi
model: LANBON-L8
packages:
display: !include common.yaml

View File

@@ -0,0 +1,10 @@
substitutions:
clk_pin: GPIO6
mosi_pin: GPIO7
miso_pin: GPIO5
dc_pin: GPIO21
cs_pin: GPIO18
enable_pin: GPIO19
reset_pin: GPIO20
<<: !include common.yaml

View File

@@ -0,0 +1,10 @@
substitutions:
clk_pin: GPIO6
mosi_pin: GPIO7
miso_pin: GPIO5
dc_pin: GPIO21
cs_pin: GPIO18
enable_pin: GPIO19
reset_pin: GPIO20
<<: !include common.yaml

View File

@@ -0,0 +1,15 @@
substitutions:
clk_pin: GPIO16
mosi_pin: GPIO17
miso_pin: GPIO15
dc_pin: GPIO21
cs_pin: GPIO18
enable_pin: GPIO19
reset_pin: GPIO20
packages:
display: !include common.yaml
display:
- platform: mipi_spi
model: m5core

View File

@@ -0,0 +1,10 @@
substitutions:
clk_pin: GPIO2
mosi_pin: GPIO3
miso_pin: GPIO4
dc_pin: GPIO14
cs_pin: GPIO13
enable_pin: GPIO19
reset_pin: GPIO20
<<: !include common.yaml

View File

@@ -293,6 +293,8 @@ fan:
- platform: template
name: Template Fan
state_topic: some/topic/fan
direction_state_topic: some/topic/direction/state
direction_command_topic: some/topic/direction/command
qos: 2
on_state:
- logger.log: on_state

View File

@@ -1,4 +1,5 @@
esp32:
cpu_frequency: 240MHz
framework:
type: esp-idf
advanced:

View File

@@ -0,0 +1,26 @@
i2s_audio:
i2s_lrclk_pin: ${i2s_bclk_pin}
i2s_bclk_pin: ${i2s_lrclk_pin}
microphone:
- platform: i2s_audio
id: i2s_microphone
i2s_din_pin: ${i2s_dout_pin}
adc_type: external
bits_per_sample: 16bit
sensor:
- platform: sound_level
microphone: i2s_microphone
measurement_duration: 2000ms
passive: false
peak:
name: "Peak Sound Level"
on_value_range:
- above: -1.0
then:
- sound_level.stop:
- delay: 5s
- sound_level.start:
rms:
name: "RMS Sound Level"

View File

@@ -0,0 +1,6 @@
substitutions:
i2s_bclk_pin: GPIO25
i2s_lrclk_pin: GPIO26
i2s_dout_pin: GPIO27
<<: !include common.yaml

View File

@@ -0,0 +1,6 @@
substitutions:
i2s_bclk_pin: GPIO6
i2s_lrclk_pin: GPIO7
i2s_dout_pin: GPIO8
<<: !include common.yaml

View File

@@ -0,0 +1,6 @@
substitutions:
i2s_bclk_pin: GPIO6
i2s_lrclk_pin: GPIO7
i2s_dout_pin: GPIO8
<<: !include common.yaml

View File

@@ -0,0 +1,6 @@
substitutions:
i2s_bclk_pin: GPIO25
i2s_lrclk_pin: GPIO26
i2s_dout_pin: GPIO27
<<: !include common.yaml

View File

@@ -0,0 +1,6 @@
substitutions:
i2s_bclk_pin: GPIO4
i2s_lrclk_pin: GPIO5
i2s_dout_pin: GPIO6
<<: !include common.yaml

View File

@@ -0,0 +1,6 @@
substitutions:
i2s_bclk_pin: GPIO4
i2s_lrclk_pin: GPIO5
i2s_dout_pin: GPIO6
<<: !include common.yaml

View File

@@ -174,6 +174,8 @@ valve:
- logger.log: open_action
close_action:
- logger.log: close_action
- valve.template.publish:
state: CLOSED
stop_action:
- logger.log: stop_action
optimistic: true

View File

@@ -60,12 +60,19 @@ number:
select:
- platform: tuya
id: tuya_select
id: tuya_select_enum
enum_datapoint: 42
options:
0: Internal
1: Floor
2: Both
- platform: tuya
id: tuya_select_int
int_datapoint: 43
options:
0: Internal
1: Floor
2: Both
sensor:
- platform: tuya

View File

@@ -0,0 +1,5 @@
usb_host:
devices:
- id: device_1
vid: 0x1234
pid: 0x1234

View File

@@ -0,0 +1,33 @@
usb_uart:
- id: uart_0
type: cdc_acm
vid: 0x1234
pid: 0x5678
channels:
- id: channel_0_1
- id: uart_1
type: cp210x
channels:
- id: channel_1_1
baud_rate: 115200
stop_bits: 2
data_bits: 7
parity: even
- id: uart_2
type: ch34x
channels:
- id: channel_2_1
baud_rate: 115200
- id: channel_2_2
baud_rate: 9600
- id: uart_3
type: ch340
channels:
- id: channel_3_1
baud_rate: 57600
- id: uart_4
type: esp_jtag
channels:
- id: channel_4_1
debug: true
dummy_receiver: true

View File

@@ -0,0 +1 @@
!include common.yaml

View File

@@ -75,6 +75,7 @@ async def test_devices_page(dashboard: DashboardTestHelper) -> None:
assert response.headers["content-type"] == "application/json"
json_data = json.loads(response.body.decode())
configured_devices = json_data["configured"]
assert len(configured_devices) != 0
first_device = configured_devices[0]
assert first_device["name"] == "pico"
assert first_device["configuration"] == "pico.yaml"

View File

@@ -18,8 +18,12 @@ def _run_repl_test(input_data):
vscode.read_config(args)
# Capture printed output
full_output = "".join(call[0][0] for call in mock_stdout.write.call_args_list)
return full_output.strip().split("\n")
full_output = "".join(
call[0][0] for call in mock_stdout.write.call_args_list
).strip()
splitted_output = full_output.split("\n")
remove_version = splitted_output[1:] # remove first entry with version info
return remove_version
def _validate(file_path: str):