summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Mussared <jim.mussared@gmail.com>2023-07-25 15:03:30 +1000
committerJim Mussared <jim.mussared@gmail.com>2023-08-15 17:37:44 +1000
commit2fbf42d3ad974b7de12823bb5a86df8a08d917ce (patch)
treec67efac78f22969282faef5b1b9b0abef3c34742
parent9573d31071b069713ac7bc803777fba65c4ead41 (diff)
esp32/boards/GENERIC: Merge with GENERIC_{SPIRAM,OTA,D2WD,UNICORE}.
These are now variants of the GENERIC board. This work was funded through GitHub Sponsors. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
-rw-r--r--ports/esp32/boards/GENERIC/board.json8
-rw-r--r--ports/esp32/boards/GENERIC/board.md10
-rw-r--r--ports/esp32/boards/GENERIC/mpconfigboard.cmake44
-rw-r--r--ports/esp32/boards/GENERIC/mpconfigboard.h10
-rw-r--r--ports/esp32/boards/GENERIC/sdkconfig.d2wd (renamed from ports/esp32/boards/GENERIC_D2WD/sdkconfig.board)0
-rw-r--r--ports/esp32/boards/GENERIC/sdkconfig.ota (renamed from ports/esp32/boards/GENERIC_OTA/sdkconfig.board)0
-rw-r--r--ports/esp32/boards/GENERIC/sdkconfig.unicore (renamed from ports/esp32/boards/GENERIC_UNICORE/sdkconfig.board)0
-rw-r--r--ports/esp32/boards/GENERIC_D2WD/board.json20
-rw-r--r--ports/esp32/boards/GENERIC_D2WD/mpconfigboard.cmake5
-rw-r--r--ports/esp32/boards/GENERIC_D2WD/mpconfigboard.h2
-rw-r--r--ports/esp32/boards/GENERIC_OTA/board.json20
-rw-r--r--ports/esp32/boards/GENERIC_OTA/mpconfigboard.cmake5
-rw-r--r--ports/esp32/boards/GENERIC_OTA/mpconfigboard.h2
-rw-r--r--ports/esp32/boards/GENERIC_SPIRAM/board.json24
-rw-r--r--ports/esp32/boards/GENERIC_SPIRAM/board.md1
-rw-r--r--ports/esp32/boards/GENERIC_SPIRAM/mpconfigboard.cmake5
-rw-r--r--ports/esp32/boards/GENERIC_SPIRAM/mpconfigboard.h2
-rw-r--r--ports/esp32/boards/GENERIC_UNICORE/board.json20
-rw-r--r--ports/esp32/boards/GENERIC_UNICORE/board.md1
-rw-r--r--ports/esp32/boards/GENERIC_UNICORE/mpconfigboard.cmake5
-rw-r--r--ports/esp32/boards/GENERIC_UNICORE/mpconfigboard.h2
-rw-r--r--ports/esp32/esp32_common.cmake1
22 files changed, 69 insertions, 118 deletions
diff --git a/ports/esp32/boards/GENERIC/board.json b/ports/esp32/boards/GENERIC/board.json
index f70e2e089..d08fcfec1 100644
--- a/ports/esp32/boards/GENERIC/board.json
+++ b/ports/esp32/boards/GENERIC/board.json
@@ -13,11 +13,15 @@
"esp32_devkitc.jpg"
],
"mcu": "esp32",
- "product": "ESP32",
+ "product": "ESP32 / WROOM",
"thumbnail": "",
"url": "https://www.espressif.com/en/products/modules",
"variants": {
- "idf3": "Compiled with IDF 3.x"
+ "idf3": "Compiled with IDF 3.x",
+ "d2wd": "ESP32 D2WD",
+ "spiram": "Support for SPIRAM / WROVER",
+ "unicore": "ESP32 Unicore",
+ "ota": "Support for OTA"
},
"vendor": "Espressif"
}
diff --git a/ports/esp32/boards/GENERIC/board.md b/ports/esp32/boards/GENERIC/board.md
index efb2b2cab..8a669411d 100644
--- a/ports/esp32/boards/GENERIC/board.md
+++ b/ports/esp32/boards/GENERIC/board.md
@@ -1 +1,9 @@
-The following files are firmware for ESP32-based boards without external SPIRAM.
+The following files are firmware that should work on most ESP32-based boards
+with 4MiB of flash, including WROOM WROVER, SOLO, PICO, and MINI modules.
+
+If your board is based on a WROVER module, or otherwise has SPIRAM (also known
+as PSRAM), then use the "spiram" variant.
+
+The "d2wd" variant is for ESP32-D2WD chips (with 2MiB flash), and "unicore" is
+for single-core ESP32 chips (e.g. the "SOLO" modules). The "ota" variant sets
+up the partition table to allow for Over-the-Air updates.
diff --git a/ports/esp32/boards/GENERIC/mpconfigboard.cmake b/ports/esp32/boards/GENERIC/mpconfigboard.cmake
index ac60dc863..29096c276 100644
--- a/ports/esp32/boards/GENERIC/mpconfigboard.cmake
+++ b/ports/esp32/boards/GENERIC/mpconfigboard.cmake
@@ -2,3 +2,47 @@ set(SDKCONFIG_DEFAULTS
boards/sdkconfig.base
boards/sdkconfig.ble
)
+
+if(MICROPY_BOARD_VARIANT STREQUAL "d2wd")
+ set(SDKCONFIG_DEFAULTS
+ ${SDKCONFIG_DEFAULTS}
+ boards/GENERIC/sdkconfig.d2wd
+ )
+
+ list(APPEND MICROPY_DEF_BOARD
+ MICROPY_HW_MCU_NAME="ESP32-D2WD"
+ )
+endif()
+
+if(MICROPY_BOARD_VARIANT STREQUAL "ota")
+ set(SDKCONFIG_DEFAULTS
+ ${SDKCONFIG_DEFAULTS}
+ boards/GENERIC/sdkconfig.ota
+ )
+
+ list(APPEND MICROPY_DEF_BOARD
+ MICROPY_HW_BOARD_NAME="Generic ESP32 module with OTA"
+ )
+endif()
+
+if(MICROPY_BOARD_VARIANT STREQUAL "spiram")
+ set(SDKCONFIG_DEFAULTS
+ ${SDKCONFIG_DEFAULTS}
+ boards/sdkconfig.spiram
+ )
+
+ list(APPEND MICROPY_DEF_BOARD
+ MICROPY_HW_BOARD_NAME="Generic ESP32 module with SPIRAM"
+ )
+endif()
+
+if(MICROPY_BOARD_VARIANT STREQUAL "unicore")
+ set(SDKCONFIG_DEFAULTS
+ ${SDKCONFIG_DEFAULTS}
+ boards/GENERIC/sdkconfig.unicore
+ )
+
+ list(APPEND MICROPY_DEF_BOARD
+ MICROPY_HW_MCU_NAME="ESP32-UNICORE"
+ )
+endif()
diff --git a/ports/esp32/boards/GENERIC/mpconfigboard.h b/ports/esp32/boards/GENERIC/mpconfigboard.h
index 644807f78..7171a84bb 100644
--- a/ports/esp32/boards/GENERIC/mpconfigboard.h
+++ b/ports/esp32/boards/GENERIC/mpconfigboard.h
@@ -1,2 +1,10 @@
-#define MICROPY_HW_BOARD_NAME "ESP32 module"
+// Both of these can be set by mpconfigboard.cmake if a BOARD_VARIANT is
+// specified.
+
+#ifndef MICROPY_HW_BOARD_NAME
+#define MICROPY_HW_BOARD_NAME "Generic ESP32 module"
+#endif
+
+#ifndef MICROPY_HW_MCU_NAME
#define MICROPY_HW_MCU_NAME "ESP32"
+#endif
diff --git a/ports/esp32/boards/GENERIC_D2WD/sdkconfig.board b/ports/esp32/boards/GENERIC/sdkconfig.d2wd
index 7b4313b7d..7b4313b7d 100644
--- a/ports/esp32/boards/GENERIC_D2WD/sdkconfig.board
+++ b/ports/esp32/boards/GENERIC/sdkconfig.d2wd
diff --git a/ports/esp32/boards/GENERIC_OTA/sdkconfig.board b/ports/esp32/boards/GENERIC/sdkconfig.ota
index 7ff939aa9..7ff939aa9 100644
--- a/ports/esp32/boards/GENERIC_OTA/sdkconfig.board
+++ b/ports/esp32/boards/GENERIC/sdkconfig.ota
diff --git a/ports/esp32/boards/GENERIC_UNICORE/sdkconfig.board b/ports/esp32/boards/GENERIC/sdkconfig.unicore
index f0b0b5e03..f0b0b5e03 100644
--- a/ports/esp32/boards/GENERIC_UNICORE/sdkconfig.board
+++ b/ports/esp32/boards/GENERIC/sdkconfig.unicore
diff --git a/ports/esp32/boards/GENERIC_D2WD/board.json b/ports/esp32/boards/GENERIC_D2WD/board.json
deleted file mode 100644
index 058282044..000000000
--- a/ports/esp32/boards/GENERIC_D2WD/board.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "deploy": [
- "../deploy.md"
- ],
- "docs": "",
- "features": [
- "BLE",
- "External Flash",
- "WiFi"
- ],
- "id": "esp32-d2wd",
- "images": [
- "generic_d2wd.jpg"
- ],
- "mcu": "esp32",
- "product": "ESP32 D2WD",
- "thumbnail": "",
- "url": "https://www.espressif.com/en/products/modules",
- "vendor": "Espressif"
-}
diff --git a/ports/esp32/boards/GENERIC_D2WD/mpconfigboard.cmake b/ports/esp32/boards/GENERIC_D2WD/mpconfigboard.cmake
deleted file mode 100644
index 88cc7a730..000000000
--- a/ports/esp32/boards/GENERIC_D2WD/mpconfigboard.cmake
+++ /dev/null
@@ -1,5 +0,0 @@
-set(SDKCONFIG_DEFAULTS
- boards/sdkconfig.base
- boards/sdkconfig.ble
- boards/GENERIC_D2WD/sdkconfig.board
-)
diff --git a/ports/esp32/boards/GENERIC_D2WD/mpconfigboard.h b/ports/esp32/boards/GENERIC_D2WD/mpconfigboard.h
deleted file mode 100644
index 8923d46fd..000000000
--- a/ports/esp32/boards/GENERIC_D2WD/mpconfigboard.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define MICROPY_HW_BOARD_NAME "Generic ESP32-D2WD module"
-#define MICROPY_HW_MCU_NAME "ESP32-D2WD"
diff --git a/ports/esp32/boards/GENERIC_OTA/board.json b/ports/esp32/boards/GENERIC_OTA/board.json
deleted file mode 100644
index 3b882e04f..000000000
--- a/ports/esp32/boards/GENERIC_OTA/board.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "deploy": [
- "../deploy.md"
- ],
- "docs": "",
- "features": [
- "BLE",
- "External Flash",
- "WiFi"
- ],
- "id": "esp32-ota",
- "images": [
- "esp32_devkitc.jpg"
- ],
- "mcu": "esp32",
- "product": "ESP32 with OTA support",
- "thumbnail": "",
- "url": "https://www.espressif.com/en/products/modules",
- "vendor": "Espressif"
-}
diff --git a/ports/esp32/boards/GENERIC_OTA/mpconfigboard.cmake b/ports/esp32/boards/GENERIC_OTA/mpconfigboard.cmake
deleted file mode 100644
index 8bc9d507a..000000000
--- a/ports/esp32/boards/GENERIC_OTA/mpconfigboard.cmake
+++ /dev/null
@@ -1,5 +0,0 @@
-set(SDKCONFIG_DEFAULTS
- boards/sdkconfig.base
- boards/sdkconfig.ble
- boards/GENERIC_OTA/sdkconfig.board
-)
diff --git a/ports/esp32/boards/GENERIC_OTA/mpconfigboard.h b/ports/esp32/boards/GENERIC_OTA/mpconfigboard.h
deleted file mode 100644
index ff39c4b2b..000000000
--- a/ports/esp32/boards/GENERIC_OTA/mpconfigboard.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define MICROPY_HW_BOARD_NAME "4MB/OTA module"
-#define MICROPY_HW_MCU_NAME "ESP32"
diff --git a/ports/esp32/boards/GENERIC_SPIRAM/board.json b/ports/esp32/boards/GENERIC_SPIRAM/board.json
deleted file mode 100644
index 02242028f..000000000
--- a/ports/esp32/boards/GENERIC_SPIRAM/board.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- "deploy": [
- "../deploy.md"
- ],
- "docs": "",
- "features": [
- "BLE",
- "External Flash",
- "External RAM",
- "WiFi"
- ],
- "id": "esp32spiram",
- "images": [
- "esp32_psram.jpg"
- ],
- "mcu": "esp32",
- "product": "ESP32 with SPIRAM",
- "thumbnail": "",
- "url": "https://www.espressif.com/en/products/modules",
- "variants": {
- "idf3": "Compiled with IDF 3.x"
- },
- "vendor": "Espressif"
-}
diff --git a/ports/esp32/boards/GENERIC_SPIRAM/board.md b/ports/esp32/boards/GENERIC_SPIRAM/board.md
deleted file mode 100644
index c638f63dd..000000000
--- a/ports/esp32/boards/GENERIC_SPIRAM/board.md
+++ /dev/null
@@ -1 +0,0 @@
-The following files are firmware for ESP32-based boards with external SPIRAM (also known as PSRAM).
diff --git a/ports/esp32/boards/GENERIC_SPIRAM/mpconfigboard.cmake b/ports/esp32/boards/GENERIC_SPIRAM/mpconfigboard.cmake
deleted file mode 100644
index 2e1d799b9..000000000
--- a/ports/esp32/boards/GENERIC_SPIRAM/mpconfigboard.cmake
+++ /dev/null
@@ -1,5 +0,0 @@
-set(SDKCONFIG_DEFAULTS
- boards/sdkconfig.base
- boards/sdkconfig.ble
- boards/sdkconfig.spiram
-)
diff --git a/ports/esp32/boards/GENERIC_SPIRAM/mpconfigboard.h b/ports/esp32/boards/GENERIC_SPIRAM/mpconfigboard.h
deleted file mode 100644
index a5982e47e..000000000
--- a/ports/esp32/boards/GENERIC_SPIRAM/mpconfigboard.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define MICROPY_HW_BOARD_NAME "ESP32 module (spiram)"
-#define MICROPY_HW_MCU_NAME "ESP32"
diff --git a/ports/esp32/boards/GENERIC_UNICORE/board.json b/ports/esp32/boards/GENERIC_UNICORE/board.json
deleted file mode 100644
index 1f3beaf6e..000000000
--- a/ports/esp32/boards/GENERIC_UNICORE/board.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "deploy": [
- "../deploy.md"
- ],
- "docs": "",
- "features": [
- "BLE",
- "External Flash",
- "WiFi"
- ],
- "id": "esp32-unicore",
- "images": [
- "generic_unicore.jpg"
- ],
- "mcu": "esp32",
- "product": "ESP32 Unicore",
- "thumbnail": "",
- "url": "https://www.espressif.com/en/products/modules",
- "vendor": "Espressif"
-}
diff --git a/ports/esp32/boards/GENERIC_UNICORE/board.md b/ports/esp32/boards/GENERIC_UNICORE/board.md
deleted file mode 100644
index b41c16749..000000000
--- a/ports/esp32/boards/GENERIC_UNICORE/board.md
+++ /dev/null
@@ -1 +0,0 @@
-The following files are daily firmware for single-core ESP32-based boards without external SPIRAM.
diff --git a/ports/esp32/boards/GENERIC_UNICORE/mpconfigboard.cmake b/ports/esp32/boards/GENERIC_UNICORE/mpconfigboard.cmake
deleted file mode 100644
index 2f34688c8..000000000
--- a/ports/esp32/boards/GENERIC_UNICORE/mpconfigboard.cmake
+++ /dev/null
@@ -1,5 +0,0 @@
-set(SDKCONFIG_DEFAULTS
- boards/sdkconfig.base
- boards/sdkconfig.ble
- boards/GENERIC_UNICORE/sdkconfig.board
-)
diff --git a/ports/esp32/boards/GENERIC_UNICORE/mpconfigboard.h b/ports/esp32/boards/GENERIC_UNICORE/mpconfigboard.h
deleted file mode 100644
index 5d0624b9c..000000000
--- a/ports/esp32/boards/GENERIC_UNICORE/mpconfigboard.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define MICROPY_HW_BOARD_NAME "ESP32 Unicore module"
-#define MICROPY_HW_MCU_NAME "ESP32-UNICORE"
diff --git a/ports/esp32/esp32_common.cmake b/ports/esp32/esp32_common.cmake
index 098df1f1a..f5219048f 100644
--- a/ports/esp32/esp32_common.cmake
+++ b/ports/esp32/esp32_common.cmake
@@ -170,6 +170,7 @@ set(MICROPY_CROSS_FLAGS -march=xtensawin)
# Set compile options for this port.
target_compile_definitions(${MICROPY_TARGET} PUBLIC
${MICROPY_DEF_CORE}
+ ${MICROPY_DEF_BOARD}
MICROPY_ESP_IDF_4=1
MICROPY_VFS_FAT=1
MICROPY_VFS_LFS2=1