Commit graph

198 commits

Author SHA1 Message Date
Alan Carvalho de Assis
1267f78dcc doc/esp32s3: Update esp32s3-touch-lcd7 documentation
This commit updates the board documentation.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
Assisted-by: Claude Code
2026-08-24 09:39:58 +02:00
Alan Carvalho de Assis
f27c01214b docs/esp32s3: Add documentation to ESP32S3-Touch-LCD-7 board
This PR adds initial documentation to Waveshare ESP32S3-Touch-LCD-7
board.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2026-08-18 09:33:05 -03:00
Jorge Guzman
7bda3b7c8b wireless/lpwan/sx127x: fix the frequency step, the band and the LoRa only build
- The frequency step was truncated to 61 Hz, while it is FXOSC/(2**19),
  about 61.035 Hz.  The error puts a 915 MHz channel more than 500 kHz away
  from the requested frequency, outside its own bandwidth.

- The low or high frequency front end was left at its reset value, so a board
  wired for 868 or 915 MHz neither transmitted nor received.

- sx127x_rx_watchdog() is only used by the FSK and OOK path but was compiled
  whenever receive support was on, so a LoRa only configuration failed to
  build with -Werror.  nrf52840-dk:sx127x is such a configuration.

Adds the sync word, the default bandwidth and the default spreading factor as
configuration options, all defaulting to the previous behaviour, and a page
for the driver under components/drivers.

Assisted-by: Claude Code 4.8
Signed-off-by: Jorge Guzman <jorge.gzm@gmail.com>
2026-08-06 13:01:39 -03:00
Jorge Guzman
2e7910fef6 boards/stm32h7/linum-stm32h753bi: enable USB FS host, add lvglterm_kbda
Enable the OTG FS host on the Linum board so an external USB HID keyboard
can be used: configure the USB VBUS, power-switch and over-current GPIOs
at board bring-up (the power switch on PI12 is active low) and start the
USB host from stm32_bringup() through stm32_usbhost_initialize().

Add the lvglterm_kbda configuration - the LVGL terminal driven by a USB
HID keyboard on /dev/kbda - with the microSD card enabled alongside the
USB host.  They coexist once CONFIG_MMCSD_MMCSUPPORT is left disabled, so
an SD card is not probed as an MMC device.

Also switch esp32s3-m5-cardputer:lvglterm to the renamed matrix-keyboard
input option (EXAMPLES_LVGLTERM_INPUT_KBD_MATRIX) to match the reworked
lvglterm example Kconfig.

Update the documentation accordingly: the LVGL Terminal example page for
the three-way input choice (touch, matrix, USB HID) with cursor-key
scrolling and per-variant configuration plus a photo of the USB variant
running on the Linum, the lvglterm_kbda entry on the Linum board page,
and the matrix-keyboard variant name on the M5Stack Cardputer board page.

Signed-off-by: Jorge Guzman <jorge.gzm@gmail.com>
2026-07-08 14:08:16 -04:00
Jorge Guzman
1953a7449d boards/esp32s3: esp32s3-m5-cardputer: add keyboard and LVGL terminal
Add the 56-key matrix keyboard driver for the M5Stack Cardputer.  The keys
form an 8x7 matrix behind a 74HC138 3-to-8 demultiplexer; the driver scans it
on the low-priority work queue and registers a keyboard device at /dev/kbd0,
reporting ASCII codes with SHIFT/CTRL and Fn (cursor) handling.

Add an "lvglterm" configuration that runs the on-screen NuttShell terminal
(apps/examples/lvglterm, physical-keyboard input variant) on the ST7789
display: the shell output is rendered in an LVGL text area and the keyboard
feeds the input.  Wi-Fi is included so the on-screen shell can associate with
an access point using wapi.

Signed-off-by: Jorge Guzman <jorge.gzm@gmail.com>
2026-07-04 02:01:56 +08:00
Jorge Guzman
1ddbeee4ef boards/esp32s3: add support to M5Stack Cardputer board
This port adds support for the M5Stack Cardputer (M5Stamp S3 /
ESP32-S3FN8, dual Xtensa LX7 @ 240 MHz, 8 MB flash, no PSRAM).

It reuses the common ESP32-S3 board helpers and ships these
configurations:

  - nsh:    NuttShell over the USB-Serial-JTAG console
  - sdcard: microSD card on SPI3 (FAT)
  - fb:     ST7789 240x135 display exposed as a framebuffer
  - wifi:   Wi-Fi station
  - softap: Wi-Fi SoftAP with DHCP server
  - lvgl:   LVGL graphics on the ST7789 (lvgldemo)

Signed-off-by: Jorge Guzman <jorge.gzm@gmail.com>
2026-07-02 13:27:20 +08:00
Matteo Golin
50f91ef502 docs/boards/esp32s3-xiao: Fix documentation typo
Fixed references to incorrect board ID 'xiao-esp32s3' instead of
'esp32s3-xiao'.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2026-07-01 16:39:06 +02:00
Eren Terzioglu
a8a3e36adf Docs/platforms/xtensa: Add UF2 file format docs
Add UF2 file format docs for Xtensa based Espressif devices

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-05-27 14:29:35 -04:00
Tomasz 'CeDeROM' CEDRO
3efaf80d3d boards/xtensa/esp32s3: New board WaveShare ESP32-S3-Touch-LCD-1.28 (WIP).
* Initial experimental / work in progress implementation.
* New board name is esp32s3-ws-lcd128.
* Supports Kconfig delectable w/wo touch variants (lcd gpios difference).
* IMU QMI8658 bringups is put into esp32s3/common/src to share with other
  boards. Pin defines are located at <board>include/board.h and referenced
  with `#include <arch/board/board.h>`.
* Supported configurations: nsh, ostest, coremark, touch-lvgl, notouch-lvgl,
  imu-qmi8658, watchdog.
* Does not have touch panel driver yet.
* Created board documentation. Added sphinx inline cross-references.
* TODO: Fix SPI GC9A01A LCD pixel format colors.
* TODO: Create I2C CST816S touch panel driver.

Signed-off-by: Tomasz 'CeDeROM' CEDRO <tomek@cedro.info>
2026-04-24 16:27:08 +08:00
Tiago Medicci Serrano
04c4269ef0 Documentation: Update rmt defconfig description
Updated the `rmt` defconfig description for the Espressif's SoCs.
Use the `irtest` testing app (instead of the deprecated `rmtchar`)
to test the RMT peripheral.

Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
2026-04-24 11:09:41 +08:00
Vlad Pruteanu
ad168fdf2d arch/xtensa/esp32: Add support for hardware accelerated PBKDF2
This adds support for the PBKDF2 algorithm in the ESP32 crypto
driver. Here, it will take advantage of the hardware-accelerated
implementation of SHA.

Signed-off-by: Vlad Pruteanu <pruteanuvlad1611@yahoo.com>
2026-04-10 20:32:46 +08:00
wangjianyu3
439ec6c09b boards/lckfb-szpi-esp32s3: add ES7210 board support
Add board-level support for ES7210 4-ch ADC on lckfb-szpi-esp32s3:

- configs/es7210/defconfig: Board configuration with I2C0, I2S0,
  ES7210 driver enabled. I2S pins: BCLK=14, DIN=12, MCLK=38, WS=13,
  sample rate 48kHz.
- src/esp32s3_board_es7210.c: Board init registering ES7210 on I2C0
  bus with I2S0 as audio transport
- src/esp32s3_bringup.c: Call ES7210 board init on startup; skip
  generic I2S audio device registration on I2S0 when ES7210 is
  enabled to avoid conflicting audio device on the same port
- src/esp32s3-szpi.h: ES7210 I2C address and device path defines
- src/Make.defs: Build integration for CONFIG_AUDIO_ES7210

Tested: 48kHz/2ch/16bit recording on ESP32-S3 (lckfb-szpi N16R8),
verified with nxrecorder and es7210_test.

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-04-03 13:34:36 +08:00
wangjianyu3
bab7e3e51b boards/lckfb-szpi-esp32s3: add UVC camera standalone defconfig
Add UVC configuration for lckfb-szpi-esp32s3 board based on gc0308
camera config, with USB OTG and UVC gadget driver enabled in
standalone (non-composite) mode.

- defconfig: enable ESP32S3_OTG, USBUVC, UVC example app
- board doc: add uvc section with usage and host verification

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-03-29 12:35:22 -03:00
Huang Qi
e3eeaefd6d style: Fix "the the" typo across the codebase.
Fix 269 occurrences of duplicate "the" word typo found in 209 files
across source code, header files, and configuration.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2026-03-23 11:07:49 +01:00
Eren Terzioglu
5b6d0e9d49 Docs/platforms/espressif: Add AES support docs
Add AES support docs for esp32s2

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-03-17 18:45:53 -03:00
wangjianyu3
9e55df4eb3 boards/lckfb-szpi-esp32s3: add gc0308 minimal defconfig
Add a minimal GC0308 camera configuration based on nsh. Unlike the
full camera config, this only enables the GC0308 DVP camera driver
(I2C, PCA9557, LEDC, CAM, VIDEO) and camcap example, without ADB,
SDMMC, LCD, PSRAM or other peripherals.

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-03-16 17:26:27 -03:00
wangjianyu3
ebfacd3bb8 boards/lckfb-szpi-esp32s3: add camera defconfig
Add camera configuration for lckfb-szpi-esp32s3 board with GC0308
sensor on DVP interface. Includes board-level camera initialization,
DVP GPIO pin mapping, and V4L2 video pipeline setup.

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-03-16 17:26:27 -03:00
wangjianyu3
e8cef27b77 boards/lckfb-szpi-esp32s3: add sdmmc defconfig
Add SD card configuration for lckfb-szpi-esp32s3 board using
SDMMC peripheral in 1-bit mode with the following pin mapping:
  - CLK: GPIO47
  - CMD: GPIO48
  - D0:  GPIO21

Features enabled:
  - ESP32S3 SDMMC driver
  - FAT filesystem with long filename (LFN) support
  - mkfatfs utility for on-device formatting

Usage:
  mkfatfs -F 32 /dev/mmcsd1
  mkdir -p /mnt/sd
  mount -t vfat /dev/mmcsd1 /mnt/sd

Update documentation with sdmmc configuration details.

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-03-13 12:38:43 +01:00
Filipe Cavalcanti
76e1c97642 documentation: document esp32s2-saola-1:efuse defconfig
Adds description for the efuse defconfig on esp32s2-saola-1 board.

Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
2026-02-20 15:54:40 +01:00
Filipe Cavalcanti
29858d3488 documentation: update ESP32 docs for spi, gpio and i2c
Adds description for the GPIO, SPI and I2C defconfigs for the
esp32-devkitc board.

Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
2026-02-20 14:56:54 +01:00
Eren Terzioglu
e0401ae18b Docs/platforms/espressif: Add SPI docs for esp32s2
Add SPI defconfig docs for esp32s2-saola-1

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-01-27 03:09:34 +08:00
Eren Terzioglu
a8cec9a034 Docs/platforms/esp32s3: Add ostest docs
Add ostest docs for esp32s3

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-01-01 17:03:20 +08:00
Alan Carvalho de Assis
29ee50aba8 doc/xtensa/esp32: Update documentation to include sx127x
This commit includes documentation to the sx127x board profile.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-12-22 10:22:36 +08:00
Alan Carvalho de Assis
a6af0e94f9 Doc/xtensa/esp32: Fix QEMU documentation to use new config
QEMU needs CONFIG_ESP32_IGNORE_CHIP_REVISION_CHECK enabled to work

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-12-21 15:18:08 -03:00
Alan Carvalho de Assis
cb4b64b6e8 Doc/xtensa/esp32: Add documentation to Heltec WiFi LoRa32
This commit adds documentation to Heltec WiFi LoRa32

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-12-21 15:18:08 -03:00
Huang Qi
beb0a47568 boards/esp32s3/lckfb-szpi: Add QMI8658 6-axis IMU sensor support
Add support for the QMI8658 6-axis IMU sensor (accelerometer + gyroscope)
on the lckfb-szpi-esp32s3 board.

Changes:
- New esp32s3_qmi8658.c driver initializes sensor on I2C0 at address 0x6A
- Registers uORB devices: /dev/uorb/sensor_accel0 and /dev/uorb/sensor_gyro0
- Adds esp32s3_qmi8658_initialize() function declaration to header
- Integrates with board bringup when CONFIG_SENSORS_QMI8658=y

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2025-12-21 00:58:58 +08:00
Filipe Cavalcanti
37521ebf1d documentation: update flash encryption docs for Espressif devices
Adds new subsection under MCUBoot regarding use of flash encryption.

Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
2025-12-11 11:29:26 +01:00
Eren Terzioglu
f90dcde45e Documentation/xtensa/esp32[-s2]: Add PM docs
Add PM docs for esp32s2

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-12-02 02:37:06 +08:00
Vlad Pruteanu
6e7cfed8a1 documentation: Add HMAC-SHA support for esp32
Support for hardware accelerated HMAC-SHA(1/256) for ESP32
was added, this commit updates the documentation to reflect
this as well.

Signed-off-by: Vlad Pruteanu <pruteanuvlad1611@yahoo.com>
2025-11-28 08:24:59 +01:00
Eren Terzioglu
3893350287 Documentation/xtensa/esp32s3: Add ULP RISCV coprocessor wakeup docs
Add ULP RISCV coprocessor wakeup docs for esp32s3

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-10-24 11:16:11 +08:00
Eren Terzioglu
a3841a1678 Documentation/xtensa/esp32[-s2|-s3]: Add multiple ULP RISC-V bin docs
Add multiple ULP RISC-V bin docs for esp32s2 and esp32s3

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-10-21 06:32:32 -03:00
Filipe Cavalcanti
632297a3ca documentation: update MCUBoot flash allocation on ESP32|S2|S3
Add description of flash allocation when using MCUBoot.

Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
2025-10-14 17:44:15 +08:00
Eren Terzioglu
bb9639bd2b Docs/xtensa/esp32[-s2|-s3]: Add ULP RISC-V Coprocessor docs for esp32[-s2|-s3]
Add ULP RISC-V Coprocessor docs for esp32[-s2|-s3]

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-10-01 14:16:55 -04:00
Filipe Cavalcanti
dda00d30bf documentation: add docs for romfs defconfig on Espressif devices
Update the documentation for ESP32-S2|S3|C3|C6|H2, supporting romfs defconfig.

Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
2025-09-19 07:18:54 -03:00
Thiago Finelon
e87c43b798 arch/xtensa/esp32s3: Add EXT1 wakeup support in power management
Introduce EXT1 wakeup functionality to the ESP32-S3 power management
subsystem. With this feature, the ESP32-S3 can wake up from PM_STANDBY
or PM_SLEEP when one or more RTC GPIOs trigger the EXT1 condition.

Changes include:
- Added EXT1 wakeup configuration and preparation logic in rtc code.
- Integrated EXT1 handling in pmstandby() and pmsleep().
- New board-level Kconfig options under ESP32-S3 DevKit menu:
  - CONFIG_PM_EXT1_WAKEUP: enable EXT1 wakeup support
  - CONFIG_PM_EXT1_WAKEUP_RTC_GPIO<n>: select RTC GPIOs as wake sources
  - CONFIG_PM_EXT1_WAKEUP_TRIGGER_MODE: choose wakeup on HIGH or LOW level
- Fixing Kconfig style
- Fixing comments standard
- Adding PM documentation for esp32s3-devkit

Impact:
- No build impact unless CONFIG_PM_EXT1_WAKEUP is enabled.
- When enabled, ESP32-S3 can wake from low-power states via RTC GPIOs.
- No new public API introduced; controlled via board Kconfig.

Tested on ESP32-S3 DevKit:
- Configured GPIO4 and GPIO5 as EXT1 wake sources.
- Verified wakeup from light sleep and deep sleep on external signals.
- Wakeup reason correctly reported as EXT1.

Signed-off-by: Thiago Finelon <thiago.sfinelon@gmail.com>
2025-08-24 11:32:10 -03:00
Thiago Finelon
2713c5e9df boards/esp32s3: Add SPI slave device support
- Added esp32s3_board_spislavedev.c with board-level SPI slave logic
- Added esp32s3_board_spislavedev.h public header in common/include
- Updated Make.defs to include the new source when CONFIG_SPI_SLAVE_DRIVER=y
- Adding spislv board config to esp32s3-devkit
- Adding documentation of esp32s3 devkit spi slv
- Fixing path include in esp32s3_board_spislavedev.c
- Fixing relative path in the header of esp32s3_board_spislavedev.h
- Removing neasted check in Make.defs, consistency reasons

This provides initial support for SPI slave device initialization
on ESP32-S3 boards, making the feature available under conditional
build configuration.

Signed-off-by: Thiago Finelon <thiago.sfinelon@gmail.com>
2025-08-20 14:50:30 -03:00
YAMAMOTO Takashi
0f73f92ffc add esp32s3-devkit:mbedtls kconfig
Note: CONFIG_LIBC_RAND_ORDER=2 is a workaround for
https://github.com/apache/nuttx/issues/16760

Signed-off-by: YAMAMOTO Takashi <yamamoto@midokura.com>
2025-07-25 21:29:11 +08:00
Filipe Cavalcanti
bbdb75b1f7 documentation: update documentation for MCUBoot on Espressif devices
Updates MCUBoot documentation and usage example.

Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
2025-07-22 10:55:08 -03:00
Eren Terzioglu
f9c25ecd69 Docs/xtensa: Add match4 game doc for esp32-devkitc
Add esp32-devkit match4 doc

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-07-14 09:03:28 -03:00
Eren Terzioglu
cf1b087504 Docs/espressif: Add crypto defconfig docs for esp32[-s2|-s3]
Docs/espressif: Add crypto defconfig docs for Xtensa based Espressif devices

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-07-09 12:13:06 +08:00
Filipe Cavalcanti
fbe7d3a1f0 documentation: update Xtensa ESP32|S2|S3 toolchain version
Updates the instructions to install the ESP toolchain 14.2.0.

Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
2025-06-27 20:41:43 +08:00
Filipe Cavalcanti
2ddfab618b documentation: update docs on SDMMC for ESP32|S2|S3 2025-06-24 08:08:55 +08:00
halyssonJr
4193fe6e2b add support to a new board : esp32s3-8048s043. 2025-06-24 01:10:49 +08:00
wangjianyu3
db1a14adac docs/esp32s3-devkit: update doc for fastboot
Update doc for fastboot USB and TCP network transport.

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2025-06-21 04:21:29 +08:00
wangjianyu3
fee314f3d1 docs/szpi-esp32s3: update doc for fastboot
Update doc for fastboot USB and TCP network transport.

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2025-06-21 04:21:29 +08:00
Vlad Pruteanu
82effd4b2f xtensa/esp32: Add support for hardware accelerated SHA
This enables the use of the cryptographic accelerator within
the ESP32. The support algorithms are: SHA1, SHA256, SHA384
and SHA512.

Signed-off-by: Vlad Pruteanu <pruteanuvlad1611@yahoo.com>
2025-05-26 15:23:51 +08:00
Eren Terzioglu
59e13b4491 Documentation/xtensa: Add dedicated GPIO docs for esp32[-s2|-s3]
Add dedicated GPIO documentations for Xtensa based Espressif devices

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-05-14 19:38:21 +02:00
Eren Terzioglu
9a59cf4004 Documentation/xtensa: Add SDM docs for esp32[-|-s2|-s3]
Add SDM docs for Xtensa based Espressif devices

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2025-05-09 19:20:47 +08:00
Matteo Golin
39f7e81a81 xtensa/esp32/boards/esp32-ethernet-kit: Migrate README.txt to RST
Migrated the README.txt documentation to RST format as part of #11077.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-05-08 03:04:04 +02:00
Matteo Golin
6eba7ad35b docs/xtensa: Added chip tags
Added chip documentation tags to Xtensa boards.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-05-06 19:19:56 +02:00