Hi, I’m not able to understand how to flash this device.
Can i flash it via usb-c?
Where can I find the procedure to follow?
thanks for helping
Hi, I’m not able to understand how to flash this device.
Can i flash it via usb-c?
Where can I find the procedure to follow?
thanks for helping
Anyone got any solution for phantom touches?
I wonder if its me, but im getting lots of errors using your modular setup.
INFO ESPHome 2024.9.0
INFO Reading configuration /config/esphome/esphome-web-d7a2e0.yaml...
Failed config
esphome: None
name: wallpanel1
friendly_name: wallpanel 1
min_version: 2024.8.0
project:
project name needs to have a namespace.
name: wallpanel 1
version: 1.0.0
platformio_options:
board_build.flash_mode: dio
on_boot:
priority: -100
then:
- delay: 60s
It seems to work OK here. Try building this file
guition-esp32-s3-4848s040-display_modular.yaml
With no modifications. Does that work?
Hi
Just tried that:
INFO ESPHome 2024.9.0
INFO Reading configuration /config/esphome/esphome-web-d7a2e0.yaml...
Failed config
substitutions: None
name: guition-esp32-s3-4848s040
friendly_name: Guition480
device_description: Guition ESP32-S3-4848S040 480*480 Smart Screen
project_name: Guition.ESP32_S3_4848S040
project_version: 1.0.0
lightbulb:
ceiling_light:
lamp:
floor_lamp:
string_lights:
Substitution must only consist of upper/lowercase characters, the underscore and numbers. The character '-' cannot be used.
track-light:
bulkhead-light:
led-strip:
dude - i changd those one or two things to underscore and now it works amazing.
im trying to make a slim version of yours and i think im getting there.
still haventfigured out how to get a ‘button’ to display the value of an entity
hey guys
I am using the example for the screensaver on my unit https://esphome.io/cookbook/lvgl#turn-off-screen-when-idle BUT - id like to be able to extend the duration of the timeout based on the page that im on.
default timeout is 30s
page5 timeout is 5mins.
page6 timeout is 2mins
Is this possible???
Added a color change, depending on the readings
I think its possible with on_load and on_unload
So like time or temperature or something like that?
Why not just make them all the same? 5min is a great timeout
Take a look at my code. I’m dimming the display backlight 50% at sunset and then going into timeout mode (blacked out with anti burn in running) at midnight. At that point I have a timeout of 2 minutes in case somebody is up at the hour and touches the screen.
guition-esp32-s3-4848s040-display_modular.yaml
This should make my screen last a long time but keep it visible when people are awake.
yeah, like a temperature would be helpful.
i am going to be putting one of these on my upstairs landing to be able to control all the upstairs’ heating, lighting, and have some idea of the current power situation (solar batteries etc)
your stuff has helped a lot - i have modified by making it a bit smaller so it fits 5 wide on the screen (90 wide buttons = 450px)
Hi,
I have now this
- id: weatherpage
widgets:
- image:
align: TOP_LEFT
x: 0
y: 0
src: cloudy
id: display_weather_image
- platform: template
id: weather_condition_image
lambda: |-
std::string state = id(ha_weather_cond).state.c_str();
if (state == "RAINY") { return std::string("$rainy"); }
else if (state == "CLOUDY") { return std::string("cloudy"); }
else if (state == "PARTLYCLOUDY") { return std::string("partlycloudy"); }
else if (state == "SUNNY") { return std::string("sunny"); }
return std::string("sunny");
on_value:
then:
- logger.log: id(weather_condition_image).state.c_str()
- lvgl.image.update:
id: display_weather_image
src: !lambda return id(weather_condition_image).state.c_str();
- platform: homeassistant
id: ha_weather_cond
entity_id: weather.weerstation
filters:
- to_upper
on_value:
then:
- lambda: |-
id(weather_condition_icon).publish_state(id(ha_weather_cond).state.c_str());
id(weather_condition_image).publish_state(id(ha_weather_cond).state.c_str());
- component.update: weather_condition_icon
- component.update: weather_condition_image
- file: 'images/weer_sunny.png'
id: sunny
use_transparency: true
type: RGB565
- file: 'images/weer_cloudy.png'
id: cloudy
use_transparency: true
type: RGB565
- file: 'images/partlycloudy.png'
id: partlycloudy
use_transparency: true
type: RGB565
and this in the log
[23:01:12][D][text_sensor:064]: 'weather_condition_image': Sending state 'sunny'
[23:01:12][D][main:1310]: weather_condition_image->state.c_str()
But no image … Any idea what is wrong?
I noticed that something here is the issue. I get that value but de lamda in src: doesn’t work. When using src: sunny, than it is working. Any idea how to solve this?
- platform: template
id: weather_condition_image
lambda: |-
std::string state = id(ha_weather_cond).state.c_str();
if (state == “RAINY”) { return std::string(“$rainy”); }
else if (state == “CLOUDY”) { return std::string(“cloudy”); }
else if (state == “PARTLYCLOUDY”) { return std::string(“partlycloudy”); }
else if (state == “SUNNY”) { return std::string(“sunny”); }
return std::string(“sunny”);
on_value:
then:
- logger.log: id(weather_condition_image).state.c_str()
- lvgl.image.update:
id: display_weather_image
src: !lambda return id(weather_condition_image).state.c_str();
@clydebarrow , could this be a bug, that I can’t update src: with !lambda? Or feature that is not yet there?
I have one of these and thanks to this page I have managed to configure it to control my roof window…
The only other thing I would like to add is a button so the wifi ssid and password can be entered and stored from the display rather than having them as part of the yaml.
Does anyone have any examples of doing this ?
Thanks
Hi @alaltitov
This looks realy nice.
I am trying to do something similar too.
Could you please attach the whole yaml file.
Hi
Ive been playing around as finally managed to get my wiring sorted in this house (had to borrow a neutral from somewhere!) and I have made a tado climate button:
---
# Basic climage control switch button - define its setting in substitutions
height: ${hight}
checkable: true
id: lv_button_${id}
widgets:
- label:
text_font: $icon_font
align: top_left
id: lv_button_${id}_icon
text: $button_${id}_icon
- label:
align: bottom_left
id: lv_button_${id}_label
text: $button_${id}_name
on_click:
- homeassistant.service:
service: tado.set_climate_timer
data:
entity_id: $button_${id}_device
temperature: $button_${id}_temp
time_period: $button_${id}_time
and in the main page using the following:
button_6_name: "OmarHeat"
button_6_id: button_6
button_6_icon: $string_lights
button_6_device: climate.omar_s_room
button_6_temp: "25.0"
button_6_time: "0:25:00"
I still cant get my head around how to get the label to show the temperature and heating status (ie on/off) so that the icon shows this.
and i wonder if itll be better without checkable:true
Hi,
I have more pages. I want that when I navigate to a page, that after 30seconds is return to the home_page. Any idea how to create this?