idk
This commit is contained in:
parent
f2b8e8a280
commit
a53fda923c
3 changed files with 278 additions and 64 deletions
22
display.yml
22
display.yml
|
@ -2,7 +2,7 @@ esphome:
|
||||||
name: display
|
name: display
|
||||||
|
|
||||||
esp32:
|
esp32:
|
||||||
board: esp32dev
|
board: nodemcu-32s
|
||||||
framework:
|
framework:
|
||||||
type: arduino
|
type: arduino
|
||||||
|
|
||||||
|
@ -28,18 +28,26 @@ wifi:
|
||||||
|
|
||||||
captive_portal:
|
captive_portal:
|
||||||
|
|
||||||
psram:
|
# psram:
|
||||||
mode: octal
|
# mode: octal
|
||||||
speed: 80MHz
|
# speed: 80MHz
|
||||||
|
|
||||||
|
spi:
|
||||||
|
clk_pin: GPIO33
|
||||||
|
mosi_pin: GPIO18
|
||||||
|
miso_pin: GPIO19
|
||||||
|
|
||||||
# Example minimal configuration entry
|
# Example minimal configuration entry
|
||||||
display:
|
display:
|
||||||
- platform: ili9xxx
|
- platform: ili9xxx
|
||||||
model: ili9486
|
model: ili9488
|
||||||
dc_pin: GPIOXX
|
dc_pin: GPIO14
|
||||||
reset_pin: GPIOXX
|
reset_pin: GPIO16
|
||||||
|
cs_pin: GPIO17
|
||||||
invert_colors: false
|
invert_colors: false
|
||||||
show_test_card: true
|
show_test_card: true
|
||||||
|
color_palette: 8BIT
|
||||||
|
data_rate: 80MHz
|
||||||
dimensions:
|
dimensions:
|
||||||
height: 320
|
height: 320
|
||||||
width: 480
|
width: 480
|
||||||
|
|
|
@ -42,6 +42,9 @@ sensor:
|
||||||
temperature:
|
temperature:
|
||||||
name: "Temperature"
|
name: "Temperature"
|
||||||
id: temperature
|
id: temperature
|
||||||
|
filters:
|
||||||
|
offset: -1.3
|
||||||
|
oversampling: 16x
|
||||||
pressure:
|
pressure:
|
||||||
name: "Pressure"
|
name: "Pressure"
|
||||||
id: pressure
|
id: pressure
|
||||||
|
|
317
thermostat.yml
317
thermostat.yml
|
@ -2,9 +2,19 @@ esphome:
|
||||||
name: thermostat
|
name: thermostat
|
||||||
|
|
||||||
esp32:
|
esp32:
|
||||||
board: esp32dev
|
board: esp32-s3-devkitc-1
|
||||||
|
variant: esp32s3
|
||||||
framework:
|
framework:
|
||||||
type: arduino
|
type: esp-idf
|
||||||
|
sdkconfig_options:
|
||||||
|
CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240: y
|
||||||
|
CONFIG_ESP32S3_DATA_CACHE_64KB: y
|
||||||
|
CONFIG_SPIRAM_FETCH_INSTRUCTIONS: y
|
||||||
|
CONFIG_SPIRAM_RODATA: y
|
||||||
|
|
||||||
|
psram:
|
||||||
|
mode: octal
|
||||||
|
speed: 80MHz
|
||||||
|
|
||||||
# Enable logging
|
# Enable logging
|
||||||
logger:
|
logger:
|
||||||
|
@ -29,15 +39,15 @@ wifi:
|
||||||
captive_portal:
|
captive_portal:
|
||||||
|
|
||||||
i2c:
|
i2c:
|
||||||
sda: GPIO21
|
sda: GPIO08
|
||||||
scl: GPIO22
|
scl: GPIO09
|
||||||
scan: true
|
scan: True
|
||||||
id: bus_a
|
id: bus_a
|
||||||
|
|
||||||
uart:
|
# uart:
|
||||||
tx_pin: GPIO27
|
# tx_pin: GPIO27
|
||||||
rx_pin: GPIO26
|
# rx_pin: GPIO26
|
||||||
baud_rate: 115200
|
# baud_rate: 115200
|
||||||
|
|
||||||
sensor:
|
sensor:
|
||||||
- platform: bme280_i2c
|
- platform: bme280_i2c
|
||||||
|
@ -53,61 +63,68 @@ sensor:
|
||||||
i2c_id: bus_a
|
i2c_id: bus_a
|
||||||
address: 0x76
|
address: 0x76
|
||||||
|
|
||||||
dfrobot_sen0395:
|
# dfrobot_sen0395:
|
||||||
|
|
||||||
binary_sensor:
|
# binary_sensor:
|
||||||
# Information coming from uart bus
|
# # Information coming from uart bus
|
||||||
- platform: dfrobot_sen0395
|
# - platform: dfrobot_sen0395
|
||||||
name: Mmwave UART
|
# id: mmwave_uart
|
||||||
|
# name: Mmwave UART
|
||||||
|
|
||||||
# on_...:
|
# # on_...:
|
||||||
# - dfrobot_sen0395.settings:
|
# # - dfrobot_sen0395.settings:
|
||||||
# factory_reset: true
|
# # factory_reset: true
|
||||||
# detection_segments:
|
# # detection_segments:
|
||||||
# # Define between one and four segments
|
# # # Define between one and four segments
|
||||||
# - [0cm, 3m]
|
# # - [0cm, 3m]
|
||||||
# - [5.1m, 6.6m]
|
# # - [5.1m, 6.6m]
|
||||||
# output_latency:
|
# # output_latency:
|
||||||
# delay_after_detect: 0s
|
# # delay_after_detect: 0s
|
||||||
# delay_after_disappear: 0s
|
# # delay_after_disappear: 0s
|
||||||
# sensitivity: 7
|
# # sensitivity: 7
|
||||||
|
|
||||||
# Information coming from dedicated gpio (IO2)
|
# # Information coming from dedicated gpio (IO2)
|
||||||
- platform: gpio
|
# - platform: gpio
|
||||||
name: Mmwave GPIO
|
# name: Mmwave GPIO
|
||||||
device_class: motion
|
# device_class: motion
|
||||||
pin:
|
# pin:
|
||||||
number: GPIO25
|
# number: GPIO25
|
||||||
mode: INPUT_PULLDOWN
|
# mode: INPUT_PULLDOWN
|
||||||
|
|
||||||
switch:
|
switch:
|
||||||
# Switch to turn on/off detection
|
# # Switch to turn on/off detection
|
||||||
- platform: dfrobot_sen0395
|
# - platform: dfrobot_sen0395
|
||||||
type: sensor_active
|
# type: sensor_active
|
||||||
name: Mmwave Active
|
# name: Mmwave Active
|
||||||
|
|
||||||
- platform: dfrobot_sen0395
|
# - platform: dfrobot_sen0395
|
||||||
type: presence_via_uart
|
# type: presence_via_uart
|
||||||
name: Mmwave UART active
|
# name: Mmwave UART active
|
||||||
restore_mode: always_on
|
# restore_mode: always_on
|
||||||
|
|
||||||
- platform: dfrobot_sen0395
|
# - platform: dfrobot_sen0395
|
||||||
type: turn_on_led
|
# type: turn_on_led
|
||||||
name: Mmwave Led
|
# name: Mmwave Led
|
||||||
restore_mode: always_on
|
# restore_mode: always_on
|
||||||
icon: "mdi:led-on"
|
# icon: "mdi:led-on"
|
||||||
|
|
||||||
- platform: dfrobot_sen0395
|
# - platform: dfrobot_sen0395
|
||||||
type: start_after_boot
|
# type: start_after_boot
|
||||||
name: Mmwave Start
|
# name: Mmwave Start
|
||||||
restore_mode: always_on
|
# restore_mode: always_on
|
||||||
|
# on_turn_on:
|
||||||
|
# then:
|
||||||
|
# - number.set:
|
||||||
|
# id: sensitivity
|
||||||
|
# value: !lambda |-
|
||||||
|
# return id(mmwave_uart).state + 1;
|
||||||
|
|
||||||
- platform: gpio
|
- platform: gpio
|
||||||
pin: 16
|
pin: 16
|
||||||
id: heater
|
id: heater
|
||||||
restore_mode: RESTORE_DEFAULT_OFF
|
restore_mode: RESTORE_DEFAULT_OFF
|
||||||
- platform: gpio
|
- platform: gpio
|
||||||
pin: 17
|
pin: 44
|
||||||
id: ac
|
id: ac
|
||||||
restore_mode: RESTORE_DEFAULT_OFF
|
restore_mode: RESTORE_DEFAULT_OFF
|
||||||
- platform: gpio
|
- platform: gpio
|
||||||
|
@ -115,6 +132,46 @@ switch:
|
||||||
id: fan
|
id: fan
|
||||||
restore_mode: RESTORE_DEFAULT_OFF
|
restore_mode: RESTORE_DEFAULT_OFF
|
||||||
|
|
||||||
|
# button:
|
||||||
|
# - platform: template
|
||||||
|
# id: inner_button
|
||||||
|
# on_press:
|
||||||
|
# - dfrobot_sen0395.settings:
|
||||||
|
# sensitivity: !lambda |-
|
||||||
|
# return id(sensitivity).state - 1;
|
||||||
|
|
||||||
|
# - platform: template
|
||||||
|
# id: inner_distance
|
||||||
|
# on_press:
|
||||||
|
# - dfrobot_sen0395.settings:
|
||||||
|
# detection_segments:
|
||||||
|
# - [0cm, 3.3m]
|
||||||
|
|
||||||
|
# number:
|
||||||
|
# - platform: template
|
||||||
|
# id: sensitivity
|
||||||
|
# name: Mmwave sensitivity
|
||||||
|
# optimistic: true
|
||||||
|
# min_value: 1
|
||||||
|
# max_value: 10
|
||||||
|
# step: 1
|
||||||
|
# mode: slider
|
||||||
|
# set_action:
|
||||||
|
# - button.press:
|
||||||
|
# id: inner_button
|
||||||
|
|
||||||
|
# - platform: template
|
||||||
|
# id: distance
|
||||||
|
# name: Mmwave distance
|
||||||
|
# optimistic: true
|
||||||
|
# min_value: 0.0
|
||||||
|
# max_value: 9.0
|
||||||
|
# step: 0.1
|
||||||
|
# mode: slider
|
||||||
|
# set_action:
|
||||||
|
# - button.press:
|
||||||
|
# id: inner_distance
|
||||||
|
|
||||||
climate:
|
climate:
|
||||||
- platform: thermostat
|
- platform: thermostat
|
||||||
name: "Thermostat"
|
name: "Thermostat"
|
||||||
|
@ -143,10 +200,156 @@ climate:
|
||||||
default_target_temperature_low: 67 °F
|
default_target_temperature_low: 67 °F
|
||||||
default_target_temperature_high: 76 °F
|
default_target_temperature_high: 76 °F
|
||||||
|
|
||||||
# display:
|
# Example minimal configuration entry
|
||||||
# - platform: ili9xxx
|
display:
|
||||||
# model: ili9486
|
- platform: rpi_dpi_rgb
|
||||||
# dc_pin: GPIOXX
|
id: my_display
|
||||||
# reset_pin: GPIOXX
|
auto_clear_enabled: false
|
||||||
# invert_colors: false
|
update_interval: never
|
||||||
# show_test_card: true
|
color_order: RGB
|
||||||
|
pclk_frequency: 14MHz
|
||||||
|
dimensions:
|
||||||
|
width: 800
|
||||||
|
height: 480
|
||||||
|
de_pin:
|
||||||
|
number: 5
|
||||||
|
hsync_pin:
|
||||||
|
number: 46
|
||||||
|
ignore_strapping_warning: true
|
||||||
|
vsync_pin:
|
||||||
|
number: 3
|
||||||
|
ignore_strapping_warning: true
|
||||||
|
pclk_pin: 7
|
||||||
|
pclk_inverted: false
|
||||||
|
hsync_back_porch: 10 #30
|
||||||
|
hsync_front_porch: 20 #210
|
||||||
|
hsync_pulse_width: 10 #30
|
||||||
|
vsync_back_porch: 10 #4
|
||||||
|
vsync_front_porch: 10 #4
|
||||||
|
vsync_pulse_width: 10 #4
|
||||||
|
data_pins:
|
||||||
|
red:
|
||||||
|
- 1 #r3
|
||||||
|
- 2 #r4
|
||||||
|
- 42 #r5
|
||||||
|
- 41 #r6
|
||||||
|
- 40 #r7
|
||||||
|
blue:
|
||||||
|
- 14 #b3
|
||||||
|
- 38 #b4
|
||||||
|
- 18 #b5
|
||||||
|
- 17 #b6
|
||||||
|
- 10 #b7
|
||||||
|
green:
|
||||||
|
- 39 #g2
|
||||||
|
- 0 #g3
|
||||||
|
- 45 #g4
|
||||||
|
- 48 #g5
|
||||||
|
- 47 #g6
|
||||||
|
- 21 #g7
|
||||||
|
|
||||||
|
font:
|
||||||
|
- file: "gfonts://Roboto"
|
||||||
|
id: chu_nano
|
||||||
|
size: 12
|
||||||
|
|
||||||
|
touchscreen:
|
||||||
|
platform: gt911
|
||||||
|
id: my_touch
|
||||||
|
interrupt_pin: GPIO4
|
||||||
|
on_touch:
|
||||||
|
- lambda: |-
|
||||||
|
ESP_LOGI("cal", "x=%d, y=%d, x_raw=%d, y_raw=%0d",
|
||||||
|
touch.x,
|
||||||
|
touch.y,
|
||||||
|
touch.x_raw,
|
||||||
|
touch.y_raw
|
||||||
|
);
|
||||||
|
|
||||||
|
lvgl:
|
||||||
|
buffer_size: 25%
|
||||||
|
pages:
|
||||||
|
- id: clock_page
|
||||||
|
widgets:
|
||||||
|
- obj: # Clock container
|
||||||
|
height: size_content
|
||||||
|
width: 800 #240
|
||||||
|
align: CENTER
|
||||||
|
pad_all: 0
|
||||||
|
border_width: 0
|
||||||
|
bg_color: 0xFFFFFF
|
||||||
|
widgets:
|
||||||
|
- meter: # Clock face
|
||||||
|
height: 400 #220
|
||||||
|
width: 400 #220
|
||||||
|
align: center
|
||||||
|
bg_opa: TRANSP
|
||||||
|
text_color: 0x000000
|
||||||
|
scales:
|
||||||
|
- ticks: # minutes scale
|
||||||
|
width: 1
|
||||||
|
count: 61
|
||||||
|
length: 10
|
||||||
|
color: 0x000000
|
||||||
|
range_from: 0
|
||||||
|
range_to: 60
|
||||||
|
angle_range: 360
|
||||||
|
rotation: 270
|
||||||
|
indicators:
|
||||||
|
- line:
|
||||||
|
id: minute_hand
|
||||||
|
width: 3
|
||||||
|
color: 0xa6a6a6
|
||||||
|
r_mod: -4
|
||||||
|
value: 0
|
||||||
|
- ticks: # hours scale
|
||||||
|
width: 1
|
||||||
|
count: 12
|
||||||
|
length: 1
|
||||||
|
major:
|
||||||
|
stride: 1
|
||||||
|
width: 4
|
||||||
|
length: 8
|
||||||
|
color: 0xC0C0C0
|
||||||
|
label_gap: 12
|
||||||
|
angle_range: 330
|
||||||
|
rotation: 300
|
||||||
|
range_from: 1
|
||||||
|
range_to: 12
|
||||||
|
- indicators:
|
||||||
|
- line:
|
||||||
|
id: hour_hand
|
||||||
|
width: 5
|
||||||
|
color: 0xa6a6a6
|
||||||
|
r_mod: -30
|
||||||
|
value: 0
|
||||||
|
angle_range: 360
|
||||||
|
rotation: 270
|
||||||
|
range_from: 0
|
||||||
|
range_to: 720
|
||||||
|
|
||||||
|
time:
|
||||||
|
- platform: homeassistant
|
||||||
|
id: time_comp
|
||||||
|
|
||||||
|
interval:
|
||||||
|
- interval: 30s
|
||||||
|
then:
|
||||||
|
if:
|
||||||
|
condition:
|
||||||
|
time.has_time:
|
||||||
|
then:
|
||||||
|
- script.execute: time_update
|
||||||
|
|
||||||
|
script:
|
||||||
|
- id: time_update
|
||||||
|
then:
|
||||||
|
- lvgl.indicator.update:
|
||||||
|
id: minute_hand
|
||||||
|
value: !lambda |-
|
||||||
|
return id(time_comp).now().minute;
|
||||||
|
- lvgl.indicator.update:
|
||||||
|
id: hour_hand
|
||||||
|
value: !lambda |-
|
||||||
|
auto now = id(time_comp).now();
|
||||||
|
return std::fmod(now.hour, 12) * 60 + now.minute;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue