Let’s keep the thread going then. Let us know how you are going.
Will do. This could be a helpful guide when I’m done.
Adding a note - I’ll do this to cover stumbling blocks along the way.
I’ve received the screen, a Waveshare 7" ESP32-S3-Touch-LCD-7 (link is to the Waveshare Wiki). It’s not a bad little screen, with the ESP32-S3 attached. No papers, manual, or any other info with it. A few wires and plugs to use for connecting other devices are included. It’s 800x480 resolution, 65k colors (16 bit color). They’re on AliExpress, but also on Amazon, so, depending on your location, one source may be preferable than the other. Be aware that there is also another small screen version (I think about 3.5"), so be sure, when ordering, that you’re ordering the 7" screen.
I use a Mac for my primary computer. I plugged a USB-C cable from my Mac into the board on the back of the screen and it didn’t boot up immediately. I had to disconnect it and try again and it booted completely on the 2nd time. It needs a driver on the Mac (and, apparently, on Windows and Linux, too). Before I installed the driver, the ESPHome web installer connected to it, but couldn’t install ESPHome. Once I installed the driver, ESPHome installed without immediate issue. If plugging the USB-C cable from your computer into the jack labelled USB doesn’t work, plug it into UART1.
After installing, I tried to set it up to use my wifi. It gave me error messages at first and was sometime after 2 minutes after the install when I could finally setup wifi on it.
Once I reached that point, it was business as usual to get ESPHome running on it.
There is a sample config for this board here; note that this uses UART0 for logging so you should use the UART port, not the USB port. With the board as delivered (factory firmware) the USB port was not usable for flashing. After flashing ESPHome once that port started working.
Are you saying logging is sent through UART1 (well, it’s labeled 1 on the board - I saw UART1 and UART2 and the USB-C, didn’t see a UART0 on the board labels)? So if I want to read logs on a console, I need to use UART1 to read them?
I’d like some clarification with this. I did have a problem communicating with the board when I set it up and found the UART1 worked when the USB connection did not.
The board has two USB-C connectors, labelled “USB” and “UART1”. Within ESPHome these correspond to logger serial ports USB_SERIAL_JTAG
and UART0
respectively.
The ESPHome default for logging on an ESP32-S3 is USB_SERIAL_JTAG
so if you don’t configure a hardware serial port in the logger
config that is what will be used and you will need to be plugged into the “USB” connector to see those logs.
If you set hardware_uart: UART0
then you will be able to read logs from the “UART1” serial connector. This is what is in the sample yaml I linked to.
You can flash the board using either connector, but unless your logger config matches the connector you use, you won’t see any logs past the first few lines that come from the hardware bootloader.
BUT… to complicate matters the board has a multiplexer that can switch the USB signal lines D+ and D- between the “USB” connector, and the CAN bus connector. The power-on default is to switch to the USB connector, but it appears that the factory firmware switches it to the CAN bus, so with the factory firmware loaded the “USB” connector isn’t usable for flashing. Once you have flashed ESPHome the first time, the “USB” connector will operate as expected.