-
Notifications
You must be signed in to change notification settings - Fork 8.2k
Add board Alientek ATK-DNESP32S3B #99114
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
xingrz
wants to merge
1
commit into
zephyrproject-rtos:main
Choose a base branch
from
xingrz:dnesp32s3b/pr
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+365
−0
Open
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| # Copyright (c) 2024 Joel Guittet | ||
| # Copyright (c) 2025 Chen Xingyu <hi@xingrz.me> | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
|
|
||
| config HEAP_MEM_POOL_ADD_SIZE_BOARD | ||
| int | ||
| default 4096 if BOARD_DNESP32S3B_ESP32S3_PROCPU | ||
| default 256 if BOARD_DNESP32S3B_ESP32S3_APPCPU |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| # Copyright (c) 2024 Joel Guittet | ||
| # Copyright (c) 2025 Chen Xingyu <hi@xingrz.me> | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
|
|
||
| config BOARD_DNESP32S3B | ||
| select SOC_ESP32S3_WROOM_N16R8 | ||
| select SOC_ESP32S3_PROCPU if BOARD_DNESP32S3B_ESP32S3_PROCPU | ||
| select SOC_ESP32S3_APPCPU if BOARD_DNESP32S3B_ESP32S3_APPCPU |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| # Copyright (c) 2024 Espressif Systems (Shanghai) Co., Ltd. | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
|
|
||
| choice BOOTLOADER | ||
| default BOOTLOADER_MCUBOOT | ||
| endchoice | ||
|
|
||
| choice BOOT_SIGNATURE_TYPE | ||
| default BOOT_SIGNATURE_TYPE_NONE | ||
| endchoice |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| # Copyright (c) 2024 Joel Guittet | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
|
|
||
| if(NOT "${OPENOCD}" MATCHES "^${ESPRESSIF_TOOLCHAIN_PATH}/.*") | ||
| set(OPENOCD OPENOCD-NOTFOUND) | ||
| endif() | ||
| find_program(OPENOCD openocd PATHS ${ESPRESSIF_TOOLCHAIN_PATH}/openocd-esp32/bin NO_DEFAULT_PATH) | ||
|
|
||
| include(${ZEPHYR_BASE}/boards/common/esp32.board.cmake) | ||
| include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| board: | ||
| name: dnesp32s3b | ||
| full_name: DNESP32S3B | ||
| vendor: alientek | ||
| socs: | ||
| - name: esp32s3 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,30 @@ | ||
| /* | ||
| * Copyright (c) 2025 Chen Xingyu <hi@xingrz.me> | ||
| * SPDX-License-Identifier: Apache-2.0 | ||
| */ | ||
|
|
||
| #include <dt-bindings/pinctrl/esp32s3-pinctrl.h> | ||
| #include <zephyr/dt-bindings/pinctrl/esp-pinctrl-common.h> | ||
| #include <zephyr/dt-bindings/pinctrl/esp32s3-gpio-sigmap.h> | ||
|
|
||
| &pinctrl { | ||
| uart0_default: uart0_default { | ||
| group1 { | ||
| pinmux = <UART0_TX_GPIO43>; | ||
| output-high; | ||
| }; | ||
|
|
||
| group2 { | ||
| pinmux = <UART0_RX_GPIO44>; | ||
| bias-pull-up; | ||
| }; | ||
| }; | ||
|
|
||
| i2c0_default: i2c0_default { | ||
| group1 { | ||
| pinmux = <I2C0_SCL_GPIO45>, | ||
| <I2C0_SDA_GPIO48>; | ||
| drive-open-drain; | ||
| }; | ||
| }; | ||
| }; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,29 @@ | ||
| /* | ||
| * Copyright (c) 2025 Chen Xingyu <hi@xingrz.me> | ||
| * SPDX-License-Identifier: Apache-2.0 | ||
| */ | ||
| /dts-v1/; | ||
|
|
||
| #include <espressif/esp32s3/esp32s3_wroom_n16r8.dtsi> | ||
| #include <espressif/partitions_0x0_amp_16M.dtsi> | ||
|
|
||
| / { | ||
| model = "DNESP32S3B APPCPU"; | ||
| compatible = "alientek,dnesp32s3b"; | ||
|
|
||
| chosen { | ||
| zephyr,sram = &sram1; | ||
| zephyr,ipc_shm = &shm0; | ||
| zephyr,ipc = &ipm0; | ||
| zephyr,flash = &flash0; | ||
| zephyr,code-partition = &slot0_appcpu_partition; | ||
| }; | ||
| }; | ||
|
|
||
| &trng0 { | ||
| status = "okay"; | ||
| }; | ||
|
|
||
| &ipm0 { | ||
| status = "okay"; | ||
| }; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,27 @@ | ||
| identifier: dnesp32s3b/esp32s3/appcpu | ||
| name: DNESP32S3B APPCPU | ||
| type: mcu | ||
| arch: xtensa | ||
| toolchain: | ||
| - zephyr | ||
| supported: | ||
| - uart | ||
| testing: | ||
| ignore_tags: | ||
| - net | ||
| - bluetooth | ||
| - flash | ||
| - cpp | ||
| - posix | ||
| - watchdog | ||
| - logging | ||
| - kernel | ||
| - pm | ||
| - gpio | ||
| - crypto | ||
| - eeprom | ||
| - heap | ||
| - cmsis_rtos | ||
| - jwt | ||
| - zdsp | ||
| vendor: alientek |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| # Copyright (c) 2024 Joel Guittet | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
|
|
||
| CONFIG_CLOCK_CONTROL=y |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,122 @@ | ||
| /* | ||
| * Copyright (c) 2025 Chen Xingyu <hi@xingrz.me> | ||
| * SPDX-License-Identifier: Apache-2.0 | ||
| */ | ||
| /dts-v1/; | ||
|
|
||
| #include <espressif/esp32s3/esp32s3_wroom_n16r8.dtsi> | ||
| #include <espressif/partitions_0x0_amp_16M.dtsi> | ||
| #include <zephyr/dt-bindings/input/input-event-codes.h> | ||
| #include "dnesp32s3b-pinctrl.dtsi" | ||
|
|
||
| / { | ||
| model = "DNESP32S3B PROCPU"; | ||
| compatible = "alientek,dnesp32s3b"; | ||
|
|
||
| aliases { | ||
| led0 = &ledb; | ||
| led1 = &ledr; | ||
| sw0 = &b0; | ||
| sw1 = &k1; | ||
| sw2 = &k2; | ||
| watchdog0 = &wdt0; | ||
| }; | ||
|
|
||
| chosen { | ||
| zephyr,sram = &sram1; | ||
| zephyr,console = &uart0; | ||
| zephyr,shell-uart = &uart0; | ||
| zephyr,flash = &flash0; | ||
| zephyr,code-partition = &slot0_partition; | ||
| zephyr,bt-hci = &esp32_bt_hci; | ||
| }; | ||
|
|
||
| leds { | ||
| compatible = "gpio-leds"; | ||
|
|
||
| ledb: led_blue { | ||
| gpios = <&gpio0 4 GPIO_ACTIVE_LOW>; | ||
| label = "LEDB"; | ||
| }; | ||
|
|
||
| ledr: led_red { | ||
| gpios = <&io_expander 8 GPIO_ACTIVE_LOW>; | ||
| label = "LEDR"; | ||
| }; | ||
| }; | ||
|
|
||
| buttons { | ||
| compatible = "gpio-keys"; | ||
|
|
||
| b0: button_b0 { | ||
| gpios = <&gpio0 0 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; | ||
| label = "BOOT"; | ||
| zephyr,code = <INPUT_KEY_0>; | ||
| }; | ||
|
|
||
| k1: button_k1 { | ||
| gpios = <&io_expander 4 GPIO_ACTIVE_LOW>; | ||
| label = "KEY1"; | ||
| zephyr,code = <INPUT_KEY_1>; | ||
| }; | ||
|
|
||
| k2: button_k2 { | ||
| gpios = <&io_expander 3 GPIO_ACTIVE_LOW>; | ||
| label = "KEY2"; | ||
| zephyr,code = <INPUT_KEY_2>; | ||
| }; | ||
| }; | ||
| }; | ||
|
|
||
| &usb_serial { | ||
| status = "disabled"; | ||
| }; | ||
|
|
||
| &uart0 { | ||
| status = "okay"; | ||
| pinctrl-0 = <&uart0_default>; | ||
| pinctrl-names = "default"; | ||
|
|
||
| current-speed = <115200>; | ||
| }; | ||
|
|
||
| &gpio0 { | ||
| status = "okay"; | ||
| }; | ||
|
|
||
| &gpio1 { | ||
| status = "okay"; | ||
| }; | ||
|
|
||
| &i2c0 { | ||
| status = "okay"; | ||
| pinctrl-0 = <&i2c0_default>; | ||
| pinctrl-names = "default"; | ||
|
|
||
| clock-frequency = <I2C_BITRATE_STANDARD>; | ||
|
|
||
| io_expander: xl9555@20 { | ||
| compatible = "nxp,pca9555"; | ||
| reg = <0x20>; | ||
| gpio-controller; | ||
| #gpio-cells = <2>; | ||
| ngpios = <16>; | ||
| int-gpios = <&gpio0 3 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; | ||
| }; | ||
| }; | ||
|
|
||
| &trng0 { | ||
| status = "okay"; | ||
| }; | ||
|
|
||
| &wdt0 { | ||
| status = "okay"; | ||
| }; | ||
|
|
||
| &wifi { | ||
| status = "okay"; | ||
| }; | ||
|
|
||
| &esp32_bt_hci { | ||
| status = "okay"; | ||
| }; | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| identifier: dnesp32s3b/esp32s3/procpu | ||
| name: DNESP32S3B PROCPU | ||
| type: mcu | ||
| arch: xtensa | ||
| toolchain: | ||
| - zephyr | ||
| supported: | ||
| - gpio | ||
| - uart | ||
| - i2c | ||
| - watchdog | ||
| vendor: alientek |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,9 @@ | ||
| # Copyright (c) 2025 Chen Xingyu <hi@xingrz.me> | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
|
|
||
| CONFIG_CONSOLE=y | ||
| CONFIG_SERIAL=y | ||
| CONFIG_UART_CONSOLE=y | ||
| CONFIG_GPIO=y | ||
| CONFIG_I2C=y | ||
| CONFIG_CLOCK_CONTROL=y |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,80 @@ | ||
| .. zephyr:board:: dnesp32s3b | ||
| Overview | ||
| ******** | ||
|
|
||
| DNESP32S3B is a development board from Alientek, featuring a compatible | ||
| ESP32-S3-WROOM-1-N16R8 module and rich set of on-board peripherals, providing an | ||
| out-of-the-box development experience for AIoT applications. | ||
|
|
||
| It includes the following integrated components: | ||
|
|
||
| - ATK-MWS3S module, compatible with ESP32-S3-WROOM-1-N16R8 (240MHz dual-core, Bluetooth LE, Wi-Fi, 16MB Flash and 8MB PSRAM) | ||
| - 2KB EEPROM | ||
| - 1 blue power LED (on when powered) | ||
| - 1 red-blue dual-color user LED | ||
| - 3 user buttons | ||
| - 1 USB-A host port | ||
| - 1 USB-C JTAG/programming port | ||
| - 1 USB-C port connected to external CH343P for programming | ||
| - 1 microSD card slot | ||
| - 2 PH-2.0 UART connectors | ||
| - 1 3x2 2.54mm GPIO header | ||
| - 2.4-inch 320x240 I8080 LCD display with optional touch support | ||
| - Buzzer | ||
| - Ambient light sensor | ||
| - QMI8658A 6-axis IMU | ||
| - NS4168 audio codec with speaker and microphone | ||
|
|
||
| Hardware | ||
| ******** | ||
|
|
||
| The board is based on the ESP32-S3 with 16MB of flash, 8MB of PSRAM, WiFi and BLE | ||
| support. It has 3 USB ports (1 USB-A host, 1 USB-C JTAG/programming, and 1 USB-C | ||
| connected to external CH343P for programming). | ||
|
|
||
| .. include:: ../../../espressif/common/soc-esp32s3-features.rst | ||
| :start-after: espressif-soc-esp32s3-features | ||
|
|
||
| Supported Features | ||
| ================== | ||
|
|
||
| .. zephyr:board-supported-hw:: | ||
| System requirements | ||
| ******************* | ||
|
|
||
| .. include:: ../../../espressif/common/system-requirements.rst | ||
| :start-after: espressif-system-requirements | ||
|
|
||
| Programming and Debugging | ||
| ************************* | ||
|
|
||
| .. zephyr:board-supported-runners:: | ||
| .. include:: ../../../espressif/common/building-flashing.rst | ||
| :start-after: espressif-building-flashing | ||
|
|
||
| .. include:: ../../../espressif/common/board-variants.rst | ||
| :start-after: espressif-board-variants | ||
|
|
||
| Debugging | ||
| ========= | ||
|
|
||
| .. include:: ../../../espressif/common/openocd-debugging.rst | ||
| :start-after: espressif-openocd-debugging | ||
|
|
||
| Sample Applications | ||
| ******************* | ||
|
|
||
| The following code samples run out of the box on the DNESP32S3B board: | ||
|
|
||
| * :zephyr:code-sample:`blinky` | ||
| * :zephyr:code-sample:`button` | ||
|
|
||
| References | ||
| ********** | ||
|
|
||
| - `DNESP32S3B web page <https://www.alientek.com/Product_Details/118.html>`_ | ||
|
|
||
| .. target-notes:: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| # Copyright (c) 2024 Joel Guittet | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
|
|
||
| set ESP_RTOS none | ||
| set ESP32_ONLYCPU 1 | ||
|
|
||
| # Source the JTAG interface configuration file | ||
| source [find interface/esp_usb_jtag.cfg] | ||
| # Source the ESP32-S3 configuration file | ||
| source [find target/esp32s3.cfg] |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.