Waveshare ESP32-P4 WiFi6 Touch LCD X"

Waveshare has released a large number of ESP32 based screens in the past few months and each one is an improvement on the last. This one is truly amazing.

It has a case milled out of a solid aluminum block plus dual microphones, built in speaker and a huge touch screen.

Waveshare offers this P4 screen in 7", 8" and 10.1" models but they are all a similar price so the the 10.1" is the way to go…Waveshare has released a lot of P4 boards lastly and they all use MIPI displays and similar touch screens. This makes it fairly easy to get each screen working.

In this case I just used the WAVESHARE-P4-NANO-10.1 driver to build a working config.

1 Like

Waveshare also offer this screen with a battery. At that point it would basically just be a tablet. You could buy and Android tablet for the same price (around $85) but you would not get the extreme customization potential of ESPHome!

There are not any good pictures of the back of this screen online. You can see it’s very flat. The back is an aluminum plate that matches the case.

Did I mention there is a camera in this thing too? I have not gotten that working yet.

Have you tested it with voice assist? How does the microphones work in a some what noisy room?

Yes it works well the microphones (there are two) are on a separate board right at the edge of the case. They put holes on the side for them as well as on the back. This allows the sound to get the the microphones better then other designs I have seens.

1 Like

The camera works fine, I believe it’s an OV5647.

Nice do you have some code for that?

Got it working on esphome-modular-lvgl-buttons, but I chewed up a lot of claude tokens in the process, and it's super slow when rendering the captured image to screen (not all that useful, just thought it would be cool to do selfies or show feedback for some kind of remote authentication).

Also, Waveshare defaulted the display & camera to portrait, which makes zero sense for its position (center of the long side), so getting a decent image when mounting the unit landscape is tricky.

How are you running it?

I'm in landscape mode, and the frame rate can exceed 26 fps on EPShome depending on the lighting.

However, I'm not using esphome-modular-lvgl-buttons; my ESP32P4 is an ESP32-P4-WIFI6-Touch-LCD-7B-C, which has the same functionality as yours except for the resolution. I'm using the master version of lvgl 9.5 available in my repository. The PPA and PPA rotation image work, as does Thors VG, the most complete configuration I've been able to create for the camera. I'm using esp_video and esp_cam_sensor, which work on EPShome. Face detection, Predestrian, and Yolov11 are also working.

I have been testing a bit with the 10 inch screen and this is how far I got.

I haven't got the mic or camera working with the esphome in home assistant. I'm not sure there are any good way to use those yet with the available P4 integration out there.

The mic works well with wake words and you can play music to it using Sendspin. But you get dropouts if they are both used at the same time. I'm not sure there is a way to resolve that.

I have all the code for this already in my repo

1 Like