From 1758dc728b545736983a91bd8498281a320718b7 Mon Sep 17 00:00:00 2001 From: Jiaxuan Weng <1391548050@qq.com> Date: Wed, 19 Jul 2023 16:12:30 +0800 Subject: [PATCH 1/3] esp32/boards: Add support for XIAO ESP32C3 boards. Signed-off-by: Jiaxuan Weng <1391548050@qq.com> --- ports/esp32/boards/XIAO_ESP32C3/board.json | 19 +++++++++++++++++++ ports/esp32/boards/XIAO_ESP32C3/manifest.py | 2 ++ .../esp32/boards/XIAO_ESP32C3/modules/xiao.py | 15 +++++++++++++++ .../boards/XIAO_ESP32C3/mpconfigboard.cmake | 9 +++++++++ .../esp32/boards/XIAO_ESP32C3/mpconfigboard.h | 14 ++++++++++++++ .../esp32/boards/XIAO_ESP32C3/sdkconfig.board | 7 +++++++ 6 files changed, 66 insertions(+) create mode 100644 ports/esp32/boards/XIAO_ESP32C3/board.json create mode 100644 ports/esp32/boards/XIAO_ESP32C3/manifest.py create mode 100644 ports/esp32/boards/XIAO_ESP32C3/modules/xiao.py create mode 100644 ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.cmake create mode 100644 ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.h create mode 100644 ports/esp32/boards/XIAO_ESP32C3/sdkconfig.board diff --git a/ports/esp32/boards/XIAO_ESP32C3/board.json b/ports/esp32/boards/XIAO_ESP32C3/board.json new file mode 100644 index 0000000000..46ceb1a8c6 --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32C3/board.json @@ -0,0 +1,19 @@ +{ + "deploy": [ + "../deploy_c3.md" + ], + "docs": "", + "features": [ + "BLE", + "USB-C", + "WiFi" + ], + "images": [ + "xiao_esp32c3.jpg" + ], + "mcu": "esp32c3", + "product": "XIAO-ESP32C3", + "thumbnail": "", + "url": "https://wiki.seeedstudio.com/XIAO_ESP32C3_Getting_Started/", + "vendor": "Seeed Studio" +} diff --git a/ports/esp32/boards/XIAO_ESP32C3/manifest.py b/ports/esp32/boards/XIAO_ESP32C3/manifest.py new file mode 100644 index 0000000000..f993d4fa6b --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32C3/manifest.py @@ -0,0 +1,2 @@ +include("$(PORT_DIR)/boards/manifest.py") +freeze("./modules") diff --git a/ports/esp32/boards/XIAO_ESP32C3/modules/xiao.py b/ports/esp32/boards/XIAO_ESP32C3/modules/xiao.py new file mode 100644 index 0000000000..01ef7994d5 --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32C3/modules/xiao.py @@ -0,0 +1,15 @@ +# XIAO ESP32 C3 MicroPython Helper Library + +from micropython import const +from machine import Pin + +# Pin Assignments + +# SPI +SPI_MOSI = const(10) +SPI_MISO = const(9) +SPI_CLK = const(8) + +# I2C +I2C_SDA = const(6) +I2C_SCL = const(7) diff --git a/ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.cmake b/ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.cmake new file mode 100644 index 0000000000..67ed6e6650 --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.cmake @@ -0,0 +1,9 @@ +set(IDF_TARGET esp32c3) + +set(SDKCONFIG_DEFAULTS + boards/sdkconfig.base + boards/sdkconfig.ble + boards/XIAO_ESP32C3/sdkconfig.board +) + +set(MICROPY_FROZEN_MANIFEST ${MICROPY_BOARD_DIR}/manifest.py) diff --git a/ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.h b/ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.h new file mode 100644 index 0000000000..551c47c91c --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.h @@ -0,0 +1,14 @@ +#define MICROPY_HW_BOARD_NAME "XIAO-ESP32C3" +#define MICROPY_HW_MCU_NAME "ESP32-C3FN4" +#define MICROPY_PY_NETWORK_HOSTNAME_DEFAULT "XIAO-ESP32C3" + +#define MICROPY_HW_ENABLE_SDCARD (0) +#define MICROPY_PY_MACHINE_DAC (0) +#define MICROPY_PY_MACHINE_I2S (0) + +#define MICROPY_HW_I2C0_SCL (7) +#define MICROPY_HW_I2C0_SDA (6) + +#define MICROPY_HW_SPI1_MOSI (10) +#define MICROPY_HW_SPI1_MISO (9) +#define MICROPY_HW_SPI1_SCK (8) diff --git a/ports/esp32/boards/XIAO_ESP32C3/sdkconfig.board b/ports/esp32/boards/XIAO_ESP32C3/sdkconfig.board new file mode 100644 index 0000000000..d9e7c7f61f --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32C3/sdkconfig.board @@ -0,0 +1,7 @@ +CONFIG_ESP32C3_REV_MIN_3=y +CONFIG_ESP32C3_BROWNOUT_DET=y +CONFIG_ESP32C3_BROWNOUT_DET_LVL_SEL_7= +CONFIG_ESP32C3_BROWNOUT_DET_LVL_SEL_4=y +CONFIG_ESP32C3_BROWNOUT_DET_LVL=4 +CONFIG_ESP_CONSOLE_UART_DEFAULT= +CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG=y From 7035267aad82aa48617a3d8738f0bfaf44b8bd04 Mon Sep 17 00:00:00 2001 From: Jiaxuan Weng <1391548050@qq.com> Date: Wed, 19 Jul 2023 16:13:10 +0800 Subject: [PATCH 2/3] esp32/boards: Add support for XIAO ESP32S3 boards. Signed-off-by: Jiaxuan Weng <1391548050@qq.com> --- ports/esp32/boards/XIAO_ESP32S3/board.json | 23 +++++++++++++++++++ ports/esp32/boards/XIAO_ESP32S3/manifest.py | 2 ++ .../esp32/boards/XIAO_ESP32S3/modules/xiao.py | 22 ++++++++++++++++++ .../boards/XIAO_ESP32S3/mpconfigboard.cmake | 12 ++++++++++ .../esp32/boards/XIAO_ESP32S3/mpconfigboard.h | 12 ++++++++++ .../esp32/boards/XIAO_ESP32S3/sdkconfig.board | 18 +++++++++++++++ 6 files changed, 89 insertions(+) create mode 100644 ports/esp32/boards/XIAO_ESP32S3/board.json create mode 100644 ports/esp32/boards/XIAO_ESP32S3/manifest.py create mode 100644 ports/esp32/boards/XIAO_ESP32S3/modules/xiao.py create mode 100644 ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.cmake create mode 100644 ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.h create mode 100644 ports/esp32/boards/XIAO_ESP32S3/sdkconfig.board diff --git a/ports/esp32/boards/XIAO_ESP32S3/board.json b/ports/esp32/boards/XIAO_ESP32S3/board.json new file mode 100644 index 0000000000..267eadd494 --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32S3/board.json @@ -0,0 +1,23 @@ +{ + "deploy": [ + "../deploy_s3.md" + ], + "docs": "", + "features": [ + "SPIRAM", + "USB-C", + "WiFi", + "BLE" + ], + "features_non_filterable": [ + ], + "id": "xiao", + "images": [ + "xiao_esp32s3.jpg" + ], + "mcu": "esp32s3", + "product": "XIAO-ESP32S3", + "thumbnail": "", + "url": "https://wiki.seeedstudio.com/xiao_esp32s3_getting_started/", + "vendor": "Seeed Studio" +} diff --git a/ports/esp32/boards/XIAO_ESP32S3/manifest.py b/ports/esp32/boards/XIAO_ESP32S3/manifest.py new file mode 100644 index 0000000000..7ae2ed15d9 --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32S3/manifest.py @@ -0,0 +1,2 @@ +include("$(PORT_DIR)/boards/manifest.py") +freeze("modules") diff --git a/ports/esp32/boards/XIAO_ESP32S3/modules/xiao.py b/ports/esp32/boards/XIAO_ESP32S3/modules/xiao.py new file mode 100644 index 0000000000..0f403dd324 --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32S3/modules/xiao.py @@ -0,0 +1,22 @@ +# XIAO ESP32 S3 MicroPython Helper Library + +from micropython import const +from machine import Pin + +# Pin Assignments + +# SPI +SPI_MOSI = const(9) +SPI_MISO = const(8) +SPI_CLK = const(7) + +# I2C +I2C_SDA = const(5) +I2C_SCL = const(6) + +# LED +LED = const(21) + +# Helper methods for built in sensors + +led = Pin(LED, Pin.OUT, value=0) diff --git a/ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.cmake b/ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.cmake new file mode 100644 index 0000000000..07d69f7b02 --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.cmake @@ -0,0 +1,12 @@ +set(IDF_TARGET esp32s3) + +set(SDKCONFIG_DEFAULTS + boards/sdkconfig.base + boards/sdkconfig.usb + boards/sdkconfig.ble + boards/sdkconfig.240mhz + boards/sdkconfig.spiram_sx + boards/XIAO_ESP32S3/sdkconfig.board +) + +set(MICROPY_FROZEN_MANIFEST ${MICROPY_BOARD_DIR}/manifest.py) diff --git a/ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.h b/ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.h new file mode 100644 index 0000000000..175df58331 --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.h @@ -0,0 +1,12 @@ +#define MICROPY_HW_BOARD_NAME "XIAO-ESP32S3" +#define MICROPY_HW_MCU_NAME "ESP32-S3-FN8" +#define MICROPY_PY_NETWORK_HOSTNAME_DEFAULT "XIAO-ESP32S3" + +#define MICROPY_PY_MACHINE_DAC (0) + +#define MICROPY_HW_I2C0_SCL (6) +#define MICROPY_HW_I2C0_SDA (5) + +#define MICROPY_HW_SPI1_MOSI (9) +#define MICROPY_HW_SPI1_MISO (8) +#define MICROPY_HW_SPI1_SCK (7) diff --git a/ports/esp32/boards/XIAO_ESP32S3/sdkconfig.board b/ports/esp32/boards/XIAO_ESP32S3/sdkconfig.board new file mode 100644 index 0000000000..b906787b2a --- /dev/null +++ b/ports/esp32/boards/XIAO_ESP32S3/sdkconfig.board @@ -0,0 +1,18 @@ +CONFIG_ESPTOOLPY_FLASHMODE_QIO=y +CONFIG_ESPTOOLPY_FLASHFREQ_80M=y +CONFIG_ESPTOOLPY_AFTER_NORESET=y + +CONFIG_ESPTOOLPY_FLASHSIZE_4MB= +CONFIG_ESPTOOLPY_FLASHSIZE_8MB=y +CONFIG_ESPTOOLPY_FLASHSIZE_16MB= +CONFIG_PARTITION_TABLE_CUSTOM=y +CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions-8MiB.csv" + +CONFIG_LWIP_LOCAL_HOSTNAME="XIAO-ESP32S3" + +CONFIG_TINYUSB_DESC_CUSTOM_VID=0x2886 +CONFIG_TINYUSB_DESC_CUSTOM_PID=0x8056 +CONFIG_TINYUSB_DESC_BCD_DEVICE=0x0100 +CONFIG_TINYUSB_DESC_MANUFACTURER_STRING="Seeed Studio" +CONFIG_TINYUSB_DESC_PRODUCT_STRING="XIAO ESP32S3" +CONFIG_TINYUSB_DESC_SERIAL_STRING="XIAO ESP32S3" From 2a55a3ffe09a37cb7f2ea9e3746ac9be1f3ad577 Mon Sep 17 00:00:00 2001 From: Jiaxuan Weng <1391548050@qq.com> Date: Fri, 18 Aug 2023 10:35:57 +0800 Subject: [PATCH 3/3] esp32/boards: Add manufacturer to board name and remove unused import. Signed-off-by: Jiaxuan Weng <1391548050@qq.com> --- .../boards/{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/board.json | 0 .../boards/{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/manifest.py | 0 .../{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/modules/xiao.py | 5 +---- .../{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/mpconfigboard.cmake | 2 +- .../{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/mpconfigboard.h | 2 +- .../{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/sdkconfig.board | 0 .../boards/{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/board.json | 0 .../boards/{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/manifest.py | 0 .../{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/modules/xiao.py | 2 -- .../{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/mpconfigboard.cmake | 2 +- .../{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/mpconfigboard.h | 2 +- .../{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/sdkconfig.board | 0 12 files changed, 5 insertions(+), 10 deletions(-) rename ports/esp32/boards/{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/board.json (100%) rename ports/esp32/boards/{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/manifest.py (100%) rename ports/esp32/boards/{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/modules/xiao.py (62%) rename ports/esp32/boards/{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/mpconfigboard.cmake (78%) rename ports/esp32/boards/{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/mpconfigboard.h (88%) rename ports/esp32/boards/{XIAO_ESP32C3 => SEEED_XIAO_ESP32C3}/sdkconfig.board (100%) rename ports/esp32/boards/{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/board.json (100%) rename ports/esp32/boards/{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/manifest.py (100%) rename ports/esp32/boards/{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/modules/xiao.py (94%) rename ports/esp32/boards/{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/mpconfigboard.cmake (84%) rename ports/esp32/boards/{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/mpconfigboard.h (86%) rename ports/esp32/boards/{XIAO_ESP32S3 => SEEED_XIAO_ESP32S3}/sdkconfig.board (100%) diff --git a/ports/esp32/boards/XIAO_ESP32C3/board.json b/ports/esp32/boards/SEEED_XIAO_ESP32C3/board.json similarity index 100% rename from ports/esp32/boards/XIAO_ESP32C3/board.json rename to ports/esp32/boards/SEEED_XIAO_ESP32C3/board.json diff --git a/ports/esp32/boards/XIAO_ESP32C3/manifest.py b/ports/esp32/boards/SEEED_XIAO_ESP32C3/manifest.py similarity index 100% rename from ports/esp32/boards/XIAO_ESP32C3/manifest.py rename to ports/esp32/boards/SEEED_XIAO_ESP32C3/manifest.py diff --git a/ports/esp32/boards/XIAO_ESP32C3/modules/xiao.py b/ports/esp32/boards/SEEED_XIAO_ESP32C3/modules/xiao.py similarity index 62% rename from ports/esp32/boards/XIAO_ESP32C3/modules/xiao.py rename to ports/esp32/boards/SEEED_XIAO_ESP32C3/modules/xiao.py index 01ef7994d5..1c0f82b5cf 100644 --- a/ports/esp32/boards/XIAO_ESP32C3/modules/xiao.py +++ b/ports/esp32/boards/SEEED_XIAO_ESP32C3/modules/xiao.py @@ -1,9 +1,6 @@ -# XIAO ESP32 C3 MicroPython Helper Library +# Seeed XIAO ESP32 C3 MicroPython Helper Library from micropython import const -from machine import Pin - -# Pin Assignments # SPI SPI_MOSI = const(10) diff --git a/ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.cmake b/ports/esp32/boards/SEEED_XIAO_ESP32C3/mpconfigboard.cmake similarity index 78% rename from ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.cmake rename to ports/esp32/boards/SEEED_XIAO_ESP32C3/mpconfigboard.cmake index 67ed6e6650..4efc554abd 100644 --- a/ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.cmake +++ b/ports/esp32/boards/SEEED_XIAO_ESP32C3/mpconfigboard.cmake @@ -3,7 +3,7 @@ set(IDF_TARGET esp32c3) set(SDKCONFIG_DEFAULTS boards/sdkconfig.base boards/sdkconfig.ble - boards/XIAO_ESP32C3/sdkconfig.board + boards/SEEED_XIAO_ESP32C3/sdkconfig.board ) set(MICROPY_FROZEN_MANIFEST ${MICROPY_BOARD_DIR}/manifest.py) diff --git a/ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.h b/ports/esp32/boards/SEEED_XIAO_ESP32C3/mpconfigboard.h similarity index 88% rename from ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.h rename to ports/esp32/boards/SEEED_XIAO_ESP32C3/mpconfigboard.h index 551c47c91c..513cbae77f 100644 --- a/ports/esp32/boards/XIAO_ESP32C3/mpconfigboard.h +++ b/ports/esp32/boards/SEEED_XIAO_ESP32C3/mpconfigboard.h @@ -1,4 +1,4 @@ -#define MICROPY_HW_BOARD_NAME "XIAO-ESP32C3" +#define MICROPY_HW_BOARD_NAME "Seeed XIAO ESP32C3" #define MICROPY_HW_MCU_NAME "ESP32-C3FN4" #define MICROPY_PY_NETWORK_HOSTNAME_DEFAULT "XIAO-ESP32C3" diff --git a/ports/esp32/boards/XIAO_ESP32C3/sdkconfig.board b/ports/esp32/boards/SEEED_XIAO_ESP32C3/sdkconfig.board similarity index 100% rename from ports/esp32/boards/XIAO_ESP32C3/sdkconfig.board rename to ports/esp32/boards/SEEED_XIAO_ESP32C3/sdkconfig.board diff --git a/ports/esp32/boards/XIAO_ESP32S3/board.json b/ports/esp32/boards/SEEED_XIAO_ESP32S3/board.json similarity index 100% rename from ports/esp32/boards/XIAO_ESP32S3/board.json rename to ports/esp32/boards/SEEED_XIAO_ESP32S3/board.json diff --git a/ports/esp32/boards/XIAO_ESP32S3/manifest.py b/ports/esp32/boards/SEEED_XIAO_ESP32S3/manifest.py similarity index 100% rename from ports/esp32/boards/XIAO_ESP32S3/manifest.py rename to ports/esp32/boards/SEEED_XIAO_ESP32S3/manifest.py diff --git a/ports/esp32/boards/XIAO_ESP32S3/modules/xiao.py b/ports/esp32/boards/SEEED_XIAO_ESP32S3/modules/xiao.py similarity index 94% rename from ports/esp32/boards/XIAO_ESP32S3/modules/xiao.py rename to ports/esp32/boards/SEEED_XIAO_ESP32S3/modules/xiao.py index 0f403dd324..6864f3de10 100644 --- a/ports/esp32/boards/XIAO_ESP32S3/modules/xiao.py +++ b/ports/esp32/boards/SEEED_XIAO_ESP32S3/modules/xiao.py @@ -3,8 +3,6 @@ from micropython import const from machine import Pin -# Pin Assignments - # SPI SPI_MOSI = const(9) SPI_MISO = const(8) diff --git a/ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.cmake b/ports/esp32/boards/SEEED_XIAO_ESP32S3/mpconfigboard.cmake similarity index 84% rename from ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.cmake rename to ports/esp32/boards/SEEED_XIAO_ESP32S3/mpconfigboard.cmake index 07d69f7b02..01ea92951d 100644 --- a/ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.cmake +++ b/ports/esp32/boards/SEEED_XIAO_ESP32S3/mpconfigboard.cmake @@ -6,7 +6,7 @@ set(SDKCONFIG_DEFAULTS boards/sdkconfig.ble boards/sdkconfig.240mhz boards/sdkconfig.spiram_sx - boards/XIAO_ESP32S3/sdkconfig.board + boards/SEEED_XIAO_ESP32S3/sdkconfig.board ) set(MICROPY_FROZEN_MANIFEST ${MICROPY_BOARD_DIR}/manifest.py) diff --git a/ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.h b/ports/esp32/boards/SEEED_XIAO_ESP32S3/mpconfigboard.h similarity index 86% rename from ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.h rename to ports/esp32/boards/SEEED_XIAO_ESP32S3/mpconfigboard.h index 175df58331..48b1ca8488 100644 --- a/ports/esp32/boards/XIAO_ESP32S3/mpconfigboard.h +++ b/ports/esp32/boards/SEEED_XIAO_ESP32S3/mpconfigboard.h @@ -1,4 +1,4 @@ -#define MICROPY_HW_BOARD_NAME "XIAO-ESP32S3" +#define MICROPY_HW_BOARD_NAME "Seeed XIAO ESP32S3" #define MICROPY_HW_MCU_NAME "ESP32-S3-FN8" #define MICROPY_PY_NETWORK_HOSTNAME_DEFAULT "XIAO-ESP32S3" diff --git a/ports/esp32/boards/XIAO_ESP32S3/sdkconfig.board b/ports/esp32/boards/SEEED_XIAO_ESP32S3/sdkconfig.board similarity index 100% rename from ports/esp32/boards/XIAO_ESP32S3/sdkconfig.board rename to ports/esp32/boards/SEEED_XIAO_ESP32S3/sdkconfig.board