Also see here
So what is the verdict here? is the XIAO 7.5 decent?
Seems like some hoops to jump though to render a dashboard but not too bad.
I have been strongly considering a display like this for outside my office door so people know I am in meetings / should not disturb.
I have been running it for a week or so.
I have wife seal of approval!
There is an initial hurdle to get it setup and the guide provide is well done with a few glitches here and there that may trip up the less technically competent like me.
I have it
Setup in the lounge with information that I and my wife check normally several times day.
It is set to refresh every 5 mins, the 30 second was too much as the screen flashes when refreshing.
I need to put it on a charger pretty much once a day.
I put a date/time in the display so I could tell if it was still running.
I can see me just leaving it plugged in permanently.
If you plan to use as a sign on a door then you need to consider the screen refresh time.
If you set it to 5 mins then it could take up to 5 mins to reflect a change, you pull data from the device you can’t push to it.
I like it, I had thought about 3d printing a different case for it as they files are available online but have not got around to it yet.
I’m also using it, I made some changes to the setup, to get rid of the flickering with every update. This screen supports partial updates, so add a ‘p’ after the model name and add a “full_update_every” interval. Furthermore invert the busy pin as advised in the esphome docs for these models.
display:
- platform: waveshare_epaper
id: my_display
cs_pin: GPIO3
dc_pin: GPIO5
busy_pin:
number: GPIO4
inverted: true
reset_pin: GPIO2
model: 7.50inv2p
full_update_every: 720
update_interval: 10s
Thanks!!!
I have implemented your recommendations and much improved.
I thought while I was updating it I would change the display slightly and go from the Black Screen with white text to White background and black text.
The instructions for Puppet and SEEED state you add a &invert on the end of the url to get the Dashboard image
“…:10000/epaper-display/epaper-display?viewport=800x480&eink=2”
So it becomes
“…:10000/epaper-display/epaper-display?viewport=800x480&eink=2&invert”
When using this in a browser it does not change the output at all
However adding &inverted does invert the output when use in a browser but has not effect at all on the paper display.
Any ideas, not critical or important … but worth clarifying I think for anyone else trying to get the display the way they want it.
captive_portal:
http_request:
verify_ssl: false
timeout: 10s
watchdog_timeout: 15s
online_image:
- id: dashboard_image
format: PNG
type: BINARY
buffer_size: 30000
url: http://xxx.xxx.xxx.xxx:10000/epaper-display/epaper-display?viewport=800x480&eink=2&inverted
update_interval: 30s
on_download_finished:
- delay: 0ms
- component.update: main_display
spi:
clk_pin: GPIO8
mosi_pin: GPIO10
display:
- platform: waveshare_epaper
id: main_display
cs_pin: GPIO3
dc_pin: GPIO5
busy_pin:
number: GPIO4
inverted: True
reset_pin: GPIO2
model: 7.50inv2p
update_interval: 10s
full_update_every: 720
lambda: |-
it.image(0, 0, id(dashboard_image));
I don’t use the it.image function myself, but you can add the foreground and background ‘color’ of the epaper screen to the function.
it.image(0, 0, id(dashboard_image), COLOR_OFF, COLOR_ON);
or maybe you have to swap the COLOR_ON and COLOR_OFF depending on the required result.
it.image(0, 0, id(dashboard_image), COLOR_ON, COLOR_OFF);