esp32[s3]: Add Documentation for esp32s3-lcd-ev board
This commit is contained in:
parent
3170af2fd0
commit
2d069231c5
3 changed files with 156 additions and 0 deletions
Binary file not shown.
|
After Width: | Height: | Size: 21 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 331 KiB |
|
|
@ -0,0 +1,156 @@
|
|||
===============
|
||||
ESP32-S3-LCD-EV
|
||||
===============
|
||||
|
||||
The `ESP32-S3-LCD-EV-Board <https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32s3/esp32-s3-lcd-ev-board/user_guide.html>`_ is a small-sized AI development board from Espressif featuring the ESP32-S3 CPU with a touchscreen LCD display, dual microphone, an 16 MB Octal PSRAM and an 16 MB flash.
|
||||
|
||||
.. list-table::
|
||||
:align: center
|
||||
|
||||
* - .. figure:: esp32s3_lcd_ev.png
|
||||
:align: center
|
||||
|
||||
Features
|
||||
========
|
||||
|
||||
- ESP32-S3 WROOM-1 Module
|
||||
- USB Type-C ports
|
||||
- Power LED
|
||||
- LCD Display
|
||||
- MEMS Microphone
|
||||
- 16MB Octal PSRAM
|
||||
- 16MB SPI Flash
|
||||
- RST and BOOT buttons (BOOT accessible to user)
|
||||
|
||||
Serial Console
|
||||
==============
|
||||
|
||||
UART0 is, by default, the serial console. It connects to the on-board
|
||||
CP2102 converter and is available on the USB connector USB CON8 (J1).
|
||||
|
||||
It will show up as /dev/ttyUSB[n] where [n] will probably be 0.
|
||||
|
||||
Buttons and LEDs
|
||||
================
|
||||
|
||||
Board Buttons
|
||||
-------------
|
||||
|
||||
There are two buttons labeled Boot and EN. The EN button is not available
|
||||
to software. It pulls the chip enable line that doubles as a reset line.
|
||||
|
||||
The BOOT button is connected to IO0. On reset it is used as a strapping
|
||||
pin to determine whether the chip boots normally or into the serial
|
||||
bootloader. After reset, however, the BOOT button can be used for software
|
||||
input.
|
||||
|
||||
Board LEDs
|
||||
----------
|
||||
|
||||
There are several on-board LEDs for that indicate the presence of power
|
||||
and USB activity. None of these are available for use by software.
|
||||
Another WS2812 LED is connected to GPIO4.
|
||||
|
||||
Configurations
|
||||
==============
|
||||
|
||||
All of the configurations presented below can be tested by running the following commands::
|
||||
|
||||
$ ./tools/configure.sh esp32s3-lcd-ev:<config_name>
|
||||
$ make flash ESPTOOL_PORT=/dev/ttyUSB0 -j
|
||||
|
||||
Where <config_name> is the name of board configuration you want to use, i.e.: nsh, buttons, wifi...
|
||||
Then use a serial console terminal like ``picocom`` configured to 115200 8N1.
|
||||
|
||||
audio
|
||||
-----
|
||||
|
||||
This configuration uses the I2S0 peripheral and an externally connected audio
|
||||
codec to play an audio file streamed over an HTTP connection while connected
|
||||
to a Wi-Fi network.
|
||||
|
||||
**Audio Codec Setup**
|
||||
|
||||
The CS4344 audio codec is connected to the following pins:
|
||||
|
||||
============ ========== ============================================
|
||||
ESP32-S3 Pin CS4344 Pin Description
|
||||
============ ========== ============================================
|
||||
5 MCLK Master Clock
|
||||
16 SCLK Serial Clock
|
||||
7 LRCK Left Right Clock (Word Select)
|
||||
6 SDIN Serial Data In on CS4344. (DOUT on ESP32-S3)
|
||||
============ ========== ============================================
|
||||
|
||||
**Simple HTTP server**
|
||||
|
||||
Prepare a PCM-encoded (`.wav`) audio file with 16 or 24 bits/sample (sampled at
|
||||
16~48kHz). This file must be placed into a folder in a computer that could
|
||||
be accessed on the same Wi-Fi network the ESP32 will be connecting to.
|
||||
|
||||
Python provides a simple HTTP server. ``cd`` to the audio file folder on the
|
||||
PC and run::
|
||||
|
||||
$ python3 -m http.server
|
||||
Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/)
|
||||
|
||||
Look for your PC IP address and test playing the prepared audio on your
|
||||
browser:
|
||||
|
||||
.. figure:: esp32s3-audio-config-file.png
|
||||
:align: center
|
||||
|
||||
After successfully built and flashed, connect the board to the Wi-Fi network::
|
||||
|
||||
nsh> wapi psk wlan0 mypasswd 3
|
||||
nsh> wapi essid wlan0 myssid 1
|
||||
nsh> renew wlan0
|
||||
|
||||
Once connected, open NuttX's player and play the file according to the filename
|
||||
and the IP address of the HTTP server::
|
||||
|
||||
nsh> nxplayer
|
||||
nxplayer> play http://192.168.1.239:8000/tones.wav
|
||||
|
||||
buttons
|
||||
-------
|
||||
|
||||
This configuration shows the use of the buttons subsystem. It can be used by executing
|
||||
the ``buttons`` application and pressing on any of the available board buttons::
|
||||
|
||||
nsh> buttons
|
||||
buttons_main: Starting the button_daemon
|
||||
buttons_main: button_daemon started
|
||||
button_daemon: Running
|
||||
button_daemon: Opening /dev/buttons
|
||||
button_daemon: Supported BUTTONs 0x01
|
||||
nsh> Sample = 1
|
||||
Sample = 0
|
||||
|
||||
lvgl
|
||||
----
|
||||
|
||||
This is a demonstration of the LVGL graphics library running on the NuttX LCD
|
||||
driver. You can find LVGL here::
|
||||
|
||||
https://www.lvgl.io/
|
||||
https://github.com/lvgl/lvgl
|
||||
|
||||
This configuration uses the LVGL demonstration at `apps/examples/lvgldemo`.
|
||||
|
||||
nsh
|
||||
---
|
||||
|
||||
Basic NuttShell configuration (console enabled in UART0, exposed via
|
||||
USB connection by means of CP2102 converter, at 115200 bps).
|
||||
|
||||
ws2812
|
||||
------
|
||||
|
||||
This configuration enables the usage of the RMT peripheral and the example
|
||||
``ws2812`` to drive addressable RGB LEDs::
|
||||
|
||||
nsh> ws2812
|
||||
|
||||
Please note that this board contains an on-board WS2812 LED connected to GPIO38
|
||||
and, by default, this config configures the RMT transmitter in the same pin.
|
||||
Loading…
Add table
Reference in a new issue