diff --git a/boards/esp32-cam.json b/boards/esp32-fix.json similarity index 67% rename from boards/esp32-cam.json rename to boards/esp32-fix.json index 165b8ef58..90132b94e 100644 --- a/boards/esp32-cam.json +++ b/boards/esp32-fix.json @@ -4,7 +4,7 @@ "ldscript": "esp32_out.ld" }, "core": "esp32", - "extra_flags": "-DCAMERA_MODEL_AI_THINKER -DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DHAS_PSRAM_FIX -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M", + "extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DHAS_PSRAM_FIX -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M", "f_cpu": "240000000L", "f_flash": "80000000L", "flash_mode": "dio", @@ -25,7 +25,7 @@ "arduino", "espidf" ], - "name": "AI Thinker ESP32-CAM, 4M Flash 4MB PSRAM, Tasmota 2880k Code/OTA, 320k FS", + "name": "Espressif Generic ESP32 >= 4M Flash, PSRAM with fix, Tasmota 2880k Code/OTA, 320k FS", "upload": { "arduino": { "flash_extra_images": [ @@ -41,6 +41,6 @@ "require_upload_port": true, "speed": 460800 }, - "url": "https://wiki.ai-thinker.com/esp32-cam", - "vendor": "AI Thinker" + "url": "https://en.wikipedia.org/wiki/ESP32", + "vendor": "Espressif" } diff --git a/boards/esp32-m5core2.json b/boards/esp32-m5core2.json deleted file mode 100644 index 7fc157edb..000000000 --- a/boards/esp32-m5core2.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32_out.ld" - }, - "core": "esp32", - "extra_flags": "-DARDUINO_M5STACK_Core2 -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M", - "f_cpu": "240000000L", - "f_flash": "80000000L", - "flash_mode": "qio", - "mcu": "esp32", - "variant": "m5stack_core2", - "partitions": "partitions/esp32_partition_app2944k_fs10M.csv" - }, - "connectivity": [ - "wifi", - "bluetooth", - "ethernet", - "can" - ], - "debug": { - "openocd_target": "esp32.cfg" - }, - "frameworks": [ - "arduino", - "espidf" - ], - "name": "M5Stack Core2 16M Flash, 4MB PSRAM, Tasmota 2944k Code/OTA, 10M FS", - "upload": { - "flash_size": "16MB", - "maximum_ram_size": 327680, - "maximum_size": 16777216, - "require_upload_port": true, - "speed": 2000000 - }, - "url": "http://www.m5stack.com", - "vendor": "M5Stack" -} diff --git a/boards/esp32-odroid.json b/boards/esp32-odroid.json deleted file mode 100644 index f7804af4e..000000000 --- a/boards/esp32-odroid.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32_out.ld" - }, - "core": "esp32", - "extra_flags": "-DARDUINO_ODROID_ESP32 -DBOARD_HAS_PSRAM -DHAS_PSRAM_FIX -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M", - "f_cpu": "240000000L", - "f_flash": "80000000L", - "flash_mode": "dio", - "mcu": "esp32", - "variant": "odroid_esp32", - "partitions": "partitions/esp32_partition_app2944k_fs10M.csv" - }, - "connectivity": [ - "wifi", - "bluetooth", - "ethernet", - "can" - ], - "debug": { - "openocd_target": "esp32.cfg" - }, - "frameworks": [ - "arduino", - "espidf" - ], - "name": "ESP32 ODROID-GO 16M Flash, 4MB PSRAM, Tasmota 2944k Code/OTA, 10M FS", - "upload": { - "flash_size": "16MB", - "maximum_ram_size": 327680, - "maximum_size": 16777216, - "require_upload_port": true, - "speed": 2000000 - }, - "url": "https://www.hardkernel.com/main/products/prdt_info.php?g_code=G152875062626", - "vendor": "Hardkernel" -} diff --git a/boards/esp32_4M.json b/boards/esp32.json similarity index 92% rename from boards/esp32_4M.json rename to boards/esp32.json index d8e39873f..0159ea555 100644 --- a/boards/esp32_4M.json +++ b/boards/esp32.json @@ -25,7 +25,7 @@ "arduino", "espidf" ], - "name": "Espressif Generic ESP32 4M Flash, Tasmota 2880k Code/OTA, 320k FS", + "name": "Espressif Generic ESP32 >= 4M Flash PSRAM, Tasmota 2880k Code/OTA, 320k FS", "upload": { "arduino": { "flash_extra_images": [ diff --git a/boards/esp32_16M.json b/boards/esp32_16M.json deleted file mode 100644 index c0956a642..000000000 --- a/boards/esp32_16M.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32_out.ld" - }, - "core": "esp32", - "extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M", - "f_cpu": "80000000L", - "f_flash": "40000000L", - "flash_mode": "dio", - "mcu": "esp32", - "variant": "esp32", - "partitions": "partitions/esp32_partition_app2944k_fs10M.csv" - }, - "connectivity": [ - "wifi", - "bluetooth", - "ethernet", - "can" - ], - "debug": { - "openocd_target": "esp32.cfg" - }, - "frameworks": [ - "arduino", - "espidf" - ], - "name": "Espressif Generic ESP32 16M Flash, Tasmota 2944k Code/OTA, 10M FS", - "upload": { - "flash_size": "16MB", - "maximum_ram_size": 327680, - "maximum_size": 16777216, - "require_upload_port": true, - "speed": 460800 - }, - "url": "https://en.wikipedia.org/wiki/ESP32", - "vendor": "Espressif" -} diff --git a/boards/esp32_4M_FS.json b/boards/esp32_4M_FS.json deleted file mode 100644 index c2c7fb2ef..000000000 --- a/boards/esp32_4M_FS.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32_out.ld" - }, - "core": "esp32", - "extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M", - "f_cpu": "80000000L", - "f_flash": "40000000L", - "flash_mode": "dio", - "mcu": "esp32", - "variant": "esp32", - "partitions": "partitions/esp32_partition_app1856k_fs1344k.csv" - }, - "connectivity": [ - "wifi", - "bluetooth", - "ethernet", - "can" - ], - "debug": { - "openocd_target": "esp32.cfg" - }, - "frameworks": [ - "arduino", - "espidf" - ], - "name": "Espressif Generic ESP32 4M Flash, Tasmota 2880k Code/OTA, 320k FS", - "upload": { - "arduino": { - "flash_extra_images": [ - [ - "0x10000", - "variants/tasmota/tasmota32-safeboot.bin" - ] - ] - }, - "flash_size": "4MB", - "maximum_ram_size": 327680, - "maximum_size": 4194304, - "require_upload_port": true, - "speed": 460800 - }, - "url": "https://en.wikipedia.org/wiki/ESP32", - "vendor": "Espressif" - } diff --git a/boards/esp32_4M_Legacy.json b/boards/esp32_4M_Legacy.json deleted file mode 100644 index fccad9d15..000000000 --- a/boards/esp32_4M_Legacy.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32_out.ld" - }, - "core": "esp32", - "extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M", - "f_cpu": "80000000L", - "f_flash": "40000000L", - "flash_mode": "dio", - "mcu": "esp32", - "variant": "esp32", - "partitions": "partitions/esp32_partition_app1856k_fs320k.csv" - }, - "connectivity": [ - "wifi", - "bluetooth", - "ethernet", - "can" - ], - "debug": { - "openocd_target": "esp32.cfg" - }, - "frameworks": [ - "arduino", - "espidf" - ], - "name": "Espressif Generic ESP32 4M Flash, Tasmota 2880k Code/OTA, 320k FS", - "upload": { - "flash_size": "4MB", - "maximum_ram_size": 327680, - "maximum_size": 4194304, - "require_upload_port": true, - "speed": 460800 - }, - "url": "https://en.wikipedia.org/wiki/ESP32", - "vendor": "Espressif" - } diff --git a/boards/esp32_8M.json b/boards/esp32_8M.json deleted file mode 100644 index e7a351a4d..000000000 --- a/boards/esp32_8M.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32_out.ld" - }, - "core": "esp32", - "extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_8M", - "f_cpu": "80000000L", - "f_flash": "40000000L", - "flash_mode": "dio", - "mcu": "esp32", - "variant": "esp32", - "partitions": "partitions/esp32_partition_app2944k_fs2M.csv" - }, - "connectivity": [ - "wifi", - "bluetooth", - "ethernet", - "can" - ], - "debug": { - "openocd_target": "esp32.cfg" - }, - "frameworks": [ - "arduino", - "espidf" - ], - "name": "Espressif Generic ESP32 8M Flash, Tasmota 2944k Code/OTA, 2112k FS", - "upload": { - "flash_size": "8MB", - "maximum_ram_size": 327680, - "maximum_size": 8388608, - "require_upload_port": true, - "speed": 460800 - }, - "url": "https://en.wikipedia.org/wiki/ESP32", - "vendor": "Espressif" -} diff --git a/boards/esp32_solo1_4M.json b/boards/esp32_solo1.json similarity index 81% rename from boards/esp32_solo1_4M.json rename to boards/esp32_solo1.json index ebc5affe9..3723e27b2 100644 --- a/boards/esp32_solo1_4M.json +++ b/boards/esp32_solo1.json @@ -4,7 +4,7 @@ "ldscript": "esp32_out.ld" }, "core": "esp32", - "extra_flags": "-DARDUINO_ESP32_DEV -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DCORE32SOLO1", + "extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DCORE32SOLO1", "f_cpu": "80000000L", "f_flash": "40000000L", "flash_mode": "dio", @@ -25,7 +25,7 @@ "arduino", "espidf" ], - "name": "Espressif Generic ESP32 4M Flash, Tasmota 2880k Code/OTA, 320k FS", + "name": "Espressif Generic ESP32 >= 4M Flash, Tasmota 2880k Code/OTA, 320k FS", "upload": { "arduino": { "flash_extra_images": [ diff --git a/boards/esp32c3.json b/boards/esp32c3.json index 955589dd3..74a740dee 100644 --- a/boards/esp32c3.json +++ b/boards/esp32c3.json @@ -23,7 +23,7 @@ "arduino", "espidf" ], - "name": "Espressif Generic ESP32-C3 4M Flash, Tasmota 2880k Code/OTA, 320k FS", + "name": "Espressif Generic ESP32-C3 >= 4M Flash, Tasmota 2880k Code/OTA, 320k FS", "upload": { "arduino": { "flash_extra_images": [ diff --git a/boards/esp32c3cdc.json b/boards/esp32c3cdc.json index 648fce5ec..b29b2ca98 100644 --- a/boards/esp32c3cdc.json +++ b/boards/esp32c3cdc.json @@ -23,7 +23,7 @@ "arduino", "espidf" ], - "name": "Espressif Generic ESP32-C3 4M Flash, Tasmota 2880k Code/OTA, 320k FS", + "name": "Espressif Generic ESP32-C3 >= 4M Flash, Tasmota 2880k Code/OTA, 320k FS", "upload": { "arduino": { "flash_extra_images": [ diff --git a/boards/esp32c3cdc_Legacy.json b/boards/esp32c3cdc_Legacy.json deleted file mode 100644 index 8a5d88804..000000000 --- a/boards/esp32c3cdc_Legacy.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32c3_out.ld" - }, - "core": "esp32", - "extra_flags": "-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DESP32C3 -DUSE_USB_CDC_CONSOLE", - "f_cpu": "160000000L", - "f_flash": "80000000L", - "flash_mode": "dio", - "mcu": "esp32c3", - "variant": "esp32c3", - "partitions": "partitions/esp32_partition_app1856k_fs320k.csv" - }, - "connectivity": [ - "wifi", - "bluetooth" - ], - "debug": { - "openocd_target": "esp32c3.cfg" - }, - "frameworks": [ - "arduino", - "espidf" - ], - "name": "Espressif Generic ESP32-C3 4M Flash, Tasmota 1856k Code/OTA, 320k FS", - "upload": { - "flash_size": "4MB", - "maximum_ram_size": 327680, - "maximum_size": 4194304, - "require_upload_port": true, - "before_reset": "usb_reset", - "speed": 460800 - }, - "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32c3/hw-reference/esp32c3/user-guide-devkitm-1.html", - "vendor": "Espressif" - } diff --git a/boards/esp32s2.json b/boards/esp32s2.json index 1fd5f0768..e24ffd17d 100644 --- a/boards/esp32s2.json +++ b/boards/esp32s2.json @@ -22,7 +22,7 @@ "espidf", "arduino" ], - "name": "Espressif Generic ESP32-S2 4M Flash, Tasmota 2880k Code/OTA, 320k FS", + "name": "Espressif Generic ESP32-S2 >= 4M Flash PSRAM, Tasmota 2880k Code/OTA, 320k FS", "upload": { "arduino": { "flash_extra_images": [ diff --git a/boards/esp32s2_Legacy.json b/boards/esp32s2_Legacy.json deleted file mode 100644 index 9bbae7b88..000000000 --- a/boards/esp32s2_Legacy.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32s2_out.ld" - }, - "core": "esp32", - "extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=0 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DESP32_4M -DESP32S2", - "f_cpu": "240000000L", - "f_flash": "80000000L", - "flash_mode": "dio", - "mcu": "esp32s2", - "variant": "esp32s2", - "partitions": "partitions/esp32_partition_app1856k_fs320k.csv" - }, - "connectivity": [ - "wifi" - ], - "debug": { - "openocd_target": "esp32s2.cfg" - }, - "frameworks": [ - "espidf", - "arduino" - ], - "name": "Espressif Generic ESP32-S2 4M Flash, Tasmota 1856k Code/OTA, 320k FS", - "upload": { - "flash_size": "4MB", - "maximum_ram_size": 327680, - "maximum_size": 4194304, - "require_upload_port": true, - "speed": 460800 - }, - "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/hw-reference/esp32s2/user-guide-saola-1-v1.2.html", - "vendor": "Espressif" -} diff --git a/boards/esp32s2cdc.json b/boards/esp32s2cdc.json index e71bdbdf6..03be3a6c0 100644 --- a/boards/esp32s2cdc.json +++ b/boards/esp32s2cdc.json @@ -22,7 +22,7 @@ "espidf", "arduino" ], - "name": "Espressif Generic ESP32-S2 4M Flash, Tasmota 2880k Code/OTA, 320k FS", + "name": "Espressif Generic ESP32-S2 >= 4M Flash PSRAM, Tasmota 2880k Code/OTA, 320k FS", "upload": { "arduino": { "flash_extra_images": [ diff --git a/boards/esp32s3_8M.json b/boards/esp32s3-qio_opi.json similarity index 63% rename from boards/esp32s3_8M.json rename to boards/esp32s3-qio_opi.json index 46dea18ba..003053268 100644 --- a/boards/esp32s3_8M.json +++ b/boards/esp32s3-qio_opi.json @@ -2,16 +2,16 @@ "build": { "arduino":{ "ldscript": "esp32s3_out.ld", - "memory_type": "qio_qspi" + "memory_type": "qio_opi" }, "core": "esp32", - "extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=0 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DESP32_8M -DESP32S3", + "extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=0 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DESP32_4M -DESP32S3", "f_cpu": "240000000L", "f_flash": "80000000L", "flash_mode": "qio", "mcu": "esp32s3", "variant": "esp32s3", - "partitions": "partitions/esp32_partition_app2944k_fs2M.csv" + "partitions": "partitions/esp32_partition_app2880k_fs320k.csv" }, "connectivity": [ "wifi", @@ -25,11 +25,19 @@ "espidf", "arduino" ], - "name": "Espressif Generic ESP32-S3 8M Flash, Tasmota 2944k Code/OTA, 2112k FS", + "name": "Espressif Generic ESP32-S3 >= 4M Flash OPI PSRAM, Tasmota 2880k Code/OTA, 320k FS", "upload": { - "flash_size": "8MB", + "arduino": { + "flash_extra_images": [ + [ + "0x10000", + "variants/tasmota/tasmota32s3-safeboot.bin" + ] + ] + }, + "flash_size": "4MB", "maximum_ram_size": 327680, - "maximum_size": 8388608, + "maximum_size": 4194304, "require_upload_port": true, "speed": 460800 }, diff --git a/boards/esp32s3.json b/boards/esp32s3-qio_qspi.json similarity index 92% rename from boards/esp32s3.json rename to boards/esp32s3-qio_qspi.json index df9527c2c..64633ab50 100644 --- a/boards/esp32s3.json +++ b/boards/esp32s3-qio_qspi.json @@ -25,7 +25,7 @@ "espidf", "arduino" ], - "name": "Espressif Generic ESP32-S3 4M Flash, Tasmota 2880k Code/OTA, 320k FS", + "name": "Espressif Generic ESP32-S3 >= 4M Flash QSPI PSRAM, Tasmota 2880k Code/OTA, 320k FS", "upload": { "arduino": { "flash_extra_images": [ diff --git a/boards/esp32s3cdc-box.json b/boards/esp32s3cdc-box.json deleted file mode 100644 index 5388523be..000000000 --- a/boards/esp32s3cdc-box.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32s3_out.ld", - "memory_type": "qio_opi" - }, - "core": "esp32", - "extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DUSE_USB_CDC_CONSOLE -DESP32_16M -DESP32S3", - "f_cpu": "240000000L", - "f_flash": "80000000L", - "flash_mode": "qio", - "mcu": "esp32s3", - "variant": "esp32s3", - "partitions": "partitions/esp32_partition_app2944k_fs10M.csv" - }, - "connectivity": [ - "wifi", - "bluetooth", - "ethernet" - ], - "debug": { - "openocd_target": "esp32s3.cfg" - }, - "frameworks": [ - "espidf", - "arduino" - ], - "name": "Espressif Generic ESP32-S3 16M Flash, Tasmota 2880k Code/OTA, 10M FS", - "upload": { - "flash_size": "16MB", - "maximum_ram_size": 327680, - "maximum_size": 16777216, - "require_upload_port": true, - "before_reset": "usb_reset", - "speed": 460800 - }, - "url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/", - "vendor": "Espressif" -} - diff --git a/boards/esp32s3cdc-cam.json b/boards/esp32s3cdc-cam.json deleted file mode 100644 index 761236e61..000000000 --- a/boards/esp32s3cdc-cam.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32s3_out.ld", - "memory_type": "qio_opi" - }, - "core": "esp32", - "extra_flags": "-DCAMERA_MODEL_TTGO_T_CAM_SIM -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DUSE_USB_CDC_CONSOLE -DESP32_16M -DESP32S3", - "f_cpu": "240000000L", - "f_flash": "80000000L", - "flash_mode": "qio", - "hwids": [ - [ - "0x303A", - "0x1001" - ] - ], - "mcu": "esp32s3", - "variant": "esp32s3", - "partitions": "partitions/esp32_partition_app2944k_fs10M.csv" - }, - "connectivity": [ - "wifi", - "bluetooth", - "ethernet" - ], - "debug": { - "default_tool": "esp-builtin", - "onboard_tools": [ - "esp-builtin" - ], - "openocd_target": "esp32s3.cfg" - }, - "frameworks": [ - "espidf", - "arduino" - ], - "name": "LilyGo T-SIMCAM ESP32-S3 16M Flash 8MB OPI PSRAM, Tasmota 2944k Code/OTA, 10M FS", - "upload": { - "flash_size": "16MB", - "maximum_ram_size": 327680, - "maximum_size": 16777216, - "require_upload_port": true, - "before_reset": "usb_reset", - "speed": 460800 - }, - "url": "https://github.com/Xinyuan-LilyGO/LilyGo-Camera-Series", - "vendor": "LilyGo" -} diff --git a/boards/esp32s3cdc-eye.json b/boards/esp32s3cdc-eye.json deleted file mode 100644 index 3254a45df..000000000 --- a/boards/esp32s3cdc-eye.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32s3_out.ld", - "memory_type": "qio_opi" - }, - "core": "esp32", - "extra_flags": "-DCAMERA_MODEL_ESP32S3_EYE -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DUSE_USB_CDC_CONSOLE -DESP32_8M -DESP32S3", - "f_cpu": "240000000L", - "f_flash": "80000000L", - "flash_mode": "qio", - "hwids": [ - [ - "0x303A", - "0x1001" - ] - ], - "mcu": "esp32s3", - "variant": "esp32s3", - "partitions": "partitions/esp32_partition_app2944k_fs2M.csv" - }, - "connectivity": [ - "wifi", - "bluetooth", - "ethernet" - ], - "debug": { - "default_tool": "esp-builtin", - "onboard_tools": [ - "esp-builtin" - ], - "openocd_target": "esp32s3.cfg" - }, - "frameworks": [ - "espidf", - "arduino" - ], - "name": "ESP32-S3-EYE 8M Flash 8MB OPI PSRAM, Tasmota 2944k Code/OTA, 2M FS", - "upload": { - "flash_size": "8MB", - "maximum_ram_size": 327680, - "maximum_size": 8388608, - "require_upload_port": true, - "before_reset": "usb_reset", - "speed": 460800 - }, - "url": "https://github.com/espressif/esp-who/blob/master/docs/en/get-started/ESP32-S3-EYE_Getting_Started_Guide.md", - "vendor": "Espressif" -} diff --git a/boards/esp32s3cdc_Legacy.json b/boards/esp32s3cdc-qio_opi.json similarity index 64% rename from boards/esp32s3cdc_Legacy.json rename to boards/esp32s3cdc-qio_opi.json index 2fe80ff44..ad577df29 100644 --- a/boards/esp32s3cdc_Legacy.json +++ b/boards/esp32s3cdc-qio_opi.json @@ -2,16 +2,22 @@ "build": { "arduino":{ "ldscript": "esp32s3_out.ld", - "memory_type": "qio_qspi" + "memory_type": "qio_opi" }, "core": "esp32", "extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3", "f_cpu": "240000000L", "f_flash": "80000000L", "flash_mode": "qio", + "hwids": [ + [ + "0x303A", + "0x1001" + ] + ], "mcu": "esp32s3", "variant": "esp32s3", - "partitions": "partitions/esp32_partition_app1856k_fs320k.csv" + "partitions": "partitions/esp32_partition_app2880k_fs320k.csv" }, "connectivity": [ "wifi", @@ -19,14 +25,26 @@ "ethernet" ], "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], "openocd_target": "esp32s3.cfg" }, "frameworks": [ "espidf", "arduino" ], - "name": "Espressif Generic ESP32-S3 4M Flash, Tasmota 1856k Code/OTA, 320k FS", + "name": "Espressif Generic ESP32-S3 >= 4M Flash OPI PSRAM, Tasmota 2880k Code/OTA, 320k FS", "upload": { + "arduino": { + "flash_extra_images": [ + [ + "0x10000", + "variants/tasmota/tasmota32s3-safeboot.bin" + ] + ] + }, "flash_size": "4MB", "maximum_ram_size": 327680, "maximum_size": 4194304, diff --git a/boards/esp32s3cdc.json b/boards/esp32s3cdc-qio_qspi.json similarity index 78% rename from boards/esp32s3cdc.json rename to boards/esp32s3cdc-qio_qspi.json index f4cb53cde..81ac63bd2 100644 --- a/boards/esp32s3cdc.json +++ b/boards/esp32s3cdc-qio_qspi.json @@ -9,6 +9,12 @@ "f_cpu": "240000000L", "f_flash": "80000000L", "flash_mode": "qio", + "hwids": [ + [ + "0x303A", + "0x1001" + ] + ], "mcu": "esp32s3", "variant": "esp32s3", "partitions": "partitions/esp32_partition_app2880k_fs320k.csv" @@ -19,19 +25,23 @@ "ethernet" ], "debug": { + "default_tool": "esp-builtin", + "onboard_tools": [ + "esp-builtin" + ], "openocd_target": "esp32s3.cfg" }, "frameworks": [ "espidf", "arduino" ], - "name": "Espressif Generic ESP32-S3 4M Flash, Tasmota 2880k Code/OTA, 320k FS", + "name": "Espressif Generic ESP32-S3 >= 4M Flash QSPI PSRAM, Tasmota 2880k Code/OTA, 320k FS", "upload": { "arduino": { "flash_extra_images": [ [ "0x10000", - "variants/tasmota/tasmota32s3cdc-safeboot.bin" + "variants/tasmota/tasmota32s3-safeboot.bin" ] ] }, diff --git a/boards/esp32s3cdc_LilyTDisp.json b/boards/esp32s3cdc_LilyTDisp.json deleted file mode 100644 index f9a7c0702..000000000 --- a/boards/esp32s3cdc_LilyTDisp.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "build": { - "arduino":{ - "ldscript": "esp32s3_out.ld", - "memory_type": "qio_opi" - }, - "core": "esp32", - "extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DUSE_USB_CDC_CONSOLE -DESP32_8M -DESP32S3", - "f_cpu": "240000000L", - "f_flash": "80000000L", - "flash_mode": "qio", - "hwids": [ - [ - "0x303A", - "0x1001" - ] - ], - "mcu": "esp32s3", - "variant": "esp32s3", - "partitions": "partitions/esp32_partition_app2944k_fs10M.csv" - }, - "connectivity": [ - "wifi", - "bluetooth", - "ethernet" - ], - "debug": { - "default_tool": "esp-builtin", - "onboard_tools": "esp-builtin", - "openocd_target": "esp32s3.cfg" - }, - "frameworks": [ - "espidf", - "arduino" - ], - "name": "LilyGo T-Display-S3 16M Flash 8MB OPI PSRAM, Tasmota 2944k Code/OTA, 10M FS", - "upload": { - "flash_size": "16MB", - "maximum_ram_size": 327680, - "maximum_size": 16777216, - "require_upload_port": true, - "before_reset": "usb_reset", - "speed": 460800 - }, - "url": "https://github.com/Xinyuan-LilyGO/T-Display-S3", - "vendor": "LilyGo" - } diff --git a/lib/libesp32/esp32-camera/driver/include/esp_camera.h b/lib/libesp32/esp32-camera/driver/include/esp_camera.h index e9981671f..ee84b307b 100644 --- a/lib/libesp32/esp32-camera/driver/include/esp_camera.h +++ b/lib/libesp32/esp32-camera/driver/include/esp_camera.h @@ -18,8 +18,8 @@ .pin_pwdn = PIN_PWDN, .pin_reset = PIN_RESET, .pin_xclk = PIN_XCLK, - .pin_sscb_sda = PIN_SIOD, - .pin_sscb_scl = PIN_SIOC, + .pin_sccb_sda = PIN_SIOD, + .pin_sccb_scl = PIN_SIOC, .pin_d7 = PIN_D7, .pin_d6 = PIN_D6, .pin_d5 = PIN_D5, @@ -70,6 +70,7 @@ #include "driver/ledc.h" #include "sensor.h" #include "sys/time.h" +#include "sdkconfig.h" #ifdef __cplusplus extern "C" { @@ -84,13 +85,26 @@ typedef enum { } camera_grab_mode_t; /** - * @brief Camera frame buffer location + * @brief Camera frame buffer location */ typedef enum { CAMERA_FB_IN_PSRAM, /*!< Frame buffer is placed in external PSRAM */ CAMERA_FB_IN_DRAM /*!< Frame buffer is placed in internal DRAM */ } camera_fb_location_t; +#if CONFIG_CAMERA_CONVERTER_ENABLED +/** + * @brief Camera RGB\YUV conversion mode + */ +typedef enum { + CONV_DISABLE, + RGB565_TO_YUV422, + + YUV422_TO_RGB565, + YUV422_TO_YUV420 +} camera_conv_mode_t; +#endif + /** * @brief Configuration structure for camera initialization */ @@ -98,8 +112,14 @@ typedef struct { int pin_pwdn; /*!< GPIO pin for camera power down line */ int pin_reset; /*!< GPIO pin for camera reset line */ int pin_xclk; /*!< GPIO pin for camera XCLK line */ - int pin_sscb_sda; /*!< GPIO pin for camera SDA line */ - int pin_sscb_scl; /*!< GPIO pin for camera SCL line */ + union { + int pin_sccb_sda; /*!< GPIO pin for camera SDA line */ + int pin_sscb_sda __attribute__((deprecated("please use pin_sccb_sda instead"))); /*!< GPIO pin for camera SDA line (legacy name) */ + }; + union { + int pin_sccb_scl; /*!< GPIO pin for camera SCL line */ + int pin_sscb_scl __attribute__((deprecated("please use pin_sccb_scl instead"))); /*!< GPIO pin for camera SCL line (legacy name) */ + }; int pin_d7; /*!< GPIO pin for camera D7 line */ int pin_d6; /*!< GPIO pin for camera D6 line */ int pin_d5; /*!< GPIO pin for camera D5 line */ @@ -124,6 +144,11 @@ typedef struct { size_t fb_count; /*!< Number of frame buffers to be allocated. If more than one, then each frame will be acquired (double speed) */ camera_fb_location_t fb_location; /*!< The location where the frame buffer will be allocated */ camera_grab_mode_t grab_mode; /*!< When buffers should be filled */ +#if CONFIG_CAMERA_CONVERTER_ENABLED + camera_conv_mode_t conv_mode; /*!< RGB<->YUV Conversion mode */ +#endif + + int sccb_i2c_port; /*!< If pin_sccb_sda is -1, use the already configured I2C bus by number */ } camera_config_t; /** @@ -194,15 +219,15 @@ sensor_t * esp_camera_sensor_get(); /** * @brief Save camera settings to non-volatile-storage (NVS) - * - * @param key A unique nvs key name for the camera settings + * + * @param key A unique nvs key name for the camera settings */ esp_err_t esp_camera_save_to_nvs(const char *key); /** * @brief Load camera settings from non-volatile-storage (NVS) - * - * @param key A unique nvs key name for the camera settings + * + * @param key A unique nvs key name for the camera settings */ esp_err_t esp_camera_load_from_nvs(const char *key); diff --git a/lib/libesp32/esp32-camera/driver/include/sensor.h b/lib/libesp32/esp32-camera/driver/include/sensor.h index 1f99c1541..6ab12a21a 100644 --- a/lib/libesp32/esp32-camera/driver/include/sensor.h +++ b/lib/libesp32/esp32-camera/driver/include/sensor.h @@ -26,6 +26,11 @@ typedef enum { GC2145_PID = 0x2145, GC032A_PID = 0x232a, GC0308_PID = 0x9b, + BF3005_PID = 0x30, + BF20A6_PID = 0x20a6, + SC101IOT_PID = 0xda4a, + SC030IOT_PID = 0x9a46, + SC031GS_PID = 0x0031, } camera_pid_t; typedef enum { @@ -38,6 +43,11 @@ typedef enum { CAMERA_GC2145, CAMERA_GC032A, CAMERA_GC0308, + CAMERA_BF3005, + CAMERA_BF20A6, + CAMERA_SC101IOT, + CAMERA_SC030IOT, + CAMERA_SC031GS, CAMERA_MODEL_MAX, CAMERA_NONE, } camera_model_t; @@ -52,11 +62,17 @@ typedef enum { GC2145_SCCB_ADDR = 0x3C,// 0x78 >> 1 GC032A_SCCB_ADDR = 0x21,// 0x42 >> 1 GC0308_SCCB_ADDR = 0x21,// 0x42 >> 1 + BF3005_SCCB_ADDR = 0x6E, + BF20A6_SCCB_ADDR = 0x6E, + SC101IOT_SCCB_ADDR = 0x68,// 0xd0 >> 1 + SC030IOT_SCCB_ADDR = 0x68,// 0xd0 >> 1 + SC031GS_SCCB_ADDR = 0x30, } camera_sccb_addr_t; typedef enum { PIXFORMAT_RGB565, // 2BPP/RGB565 PIXFORMAT_YUV422, // 2BPP/YUV422 + PIXFORMAT_YUV420, // 1.5BPP/YUV420 PIXFORMAT_GRAYSCALE, // 1BPP/GRAYSCALE PIXFORMAT_JPEG, // JPEG/COMPRESSED PIXFORMAT_RGB888, // 3BPP/RGB888 @@ -196,7 +212,7 @@ typedef struct _sensor { // Sensor function pointers int (*init_status) (sensor_t *sensor); - int (*reset) (sensor_t *sensor); + int (*reset) (sensor_t *sensor); // Reset the configuration of the sensor, and return ESP_OK if reset is successful int (*set_pixformat) (sensor_t *sensor, pixformat_t pixformat); int (*set_framesize) (sensor_t *sensor, framesize_t framesize); int (*set_contrast) (sensor_t *sensor, int level); diff --git a/platformio_override_sample.ini b/platformio_override_sample.ini index ad7937d1c..02a8f92e6 100644 --- a/platformio_override_sample.ini +++ b/platformio_override_sample.ini @@ -98,19 +98,18 @@ lib_extra_dirs = ${library.lib_extra_dirs} ; *** Uncomment next lines ";" to enable development Tasmota Arduino version ESP32 ;platform = https://github.com/tasmota/platform-espressif32/releases/download/v2.0.5.1/platform-espressif32-2.0.5.1.zip ;platform_packages = framework-arduinoespressif32 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/1008/framework-arduinoespressif32-IDF_Arduino-d772747b2.zip -; = framework-arduino-ITEAD @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/1014/framework-arduinoespressif32-solo1-IDF_Arduino-d772747b2.zip -; framework-arduino-solo1 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/1013/framework-arduinoespressif32-ITEAD-IDF_Arduino-d772747b2.zip +; framework-arduino-solo1 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/1014/framework-arduinoespressif32-solo1-IDF_Arduino-d772747b2.zip +; framework-arduino-ITEAD @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/1013/framework-arduinoespressif32-ITEAD-IDF_Arduino-d772747b2.zip ;build_unflags = ${esp32_defaults.build_unflags} ;build_flags = ${esp32_defaults.build_flags} - -; Build variant ESP32 4M Flash, Tasmota 1856k Code/OTA, 1344k LITTLEFS (default) -;board = esp32_4M -; Build variant ESP32 8M Flash, Tasmota 2944k Code/OTA, 2112k LITTLEFS -;board = esp32_8M -; Build variant ESP32 16M Flash, Tasmota 2944k Code/OTA, 10M LITTLEFS -;board = esp32_16M +;board = esp32 ;board_build.f_cpu = 240000000L ;board_build.f_flash = 40000000L +;board_build.flash_mode = qio +;board_build.flash_size = 8MB +;board_upload.maximum_size = 8388608 +;board_upload.arduino.flash_extra_images = +;board_build.partitions = partitions/esp32_partition_app2944k_fs2M.csv monitor_speed = 115200 ; *** Serial port used for erasing/flashing the ESP32 ;upload_port = ${common.upload_port} diff --git a/platformio_tasmota_cenv_sample.ini b/platformio_tasmota_cenv_sample.ini index bb10ec1b1..397ac0792 100644 --- a/platformio_tasmota_cenv_sample.ini +++ b/platformio_tasmota_cenv_sample.ini @@ -14,12 +14,29 @@ build_flags = ${env:tasmota32_base.build_flags} [env:tasmota32s3-file] extends = env:tasmota32_base -board = esp32s3 +board = esp32s3-qio_qspi +board_build.f_cpu = 240000000L +board_build.f_flash = 80000000L build_flags = ${env:tasmota32_base.build_flags} -D FIRMWARE_TASMOTA32 -; example for custom file upload in Tasmota Filesystem -; custom_files_upload = ${env:tasmota32_base.custom_files_upload} -; tasmota/berry/modules/Partition_wizard.tapp -; https://github.com/tasmota/autoconf/raw/main/esp32s3/DevKitC-1.autoconf +; !!! Real flash size needed, avoid autoresize since it is formating FS !!! +board_upload.flash_size = 8MB +board_upload.maximum_size = 8388608 +; Without autoresize a partition scheme is needed which does fit to flash size +board_build.partitions = partitions/esp32_partition_app2944k_fs2M.csv +; Dont use safeboot, not used in this partition scheme -> an empty entry needed to overwrite the default setting +board_upload.arduino.flash_extra_images = +; Example for custom file upload in Tasmota Filesystem +custom_files_upload = ${env:tasmota32_base.custom_files_upload} + tasmota/berry/modules/Partition_wizard.tapp + https://github.com/tasmota/autoconf/raw/main/esp32s3/DevKitC-1.autoconf + +[env:tasmota32s3-qio_opi-all] +extends = env:tasmota32_base +board = esp32s3-qio_opi +board_build.f_cpu = 240000000L +board_build.f_flash = 80000000L +build_flags = ${env:tasmota32_base.build_flags} -DUSE_WEBCAM -DUSE_BERRY_ULP -DFIRMWARE_LVGL -DUSE_LVGL_OPENHASP + [env:tasmota32c3-bluetooth] extends = env:tasmota32c3 @@ -64,7 +81,7 @@ lib_ignore = ESP8266Audio TTGO TWatch Library Micro-RTSP epdiy - esp32-camera + esp32-camera [env:tasmota32s3-mi32-homebridge] extends = env:tasmota32s3 @@ -108,7 +125,7 @@ monitor_filters = esp32_exception_decoder [env:tasmota32-ocd] build_type = debug extends = env:tasmota32_base -board = esp32_4M +board = esp32 debug_tool = esp-prog upload_protocol = esp-prog debug_init_break = tbreak setup @@ -119,7 +136,7 @@ monitor_filters = esp32_exception_decoder [env:tasmota32solo1-ocd] build_type = debug extends = env:tasmota32solo1 -board = esp32_solo1_4M +board = esp32_solo1 debug_tool = esp-prog upload_protocol = esp-prog debug_init_break = tbreak setup @@ -143,7 +160,7 @@ monitor_filters = esp32_exception_decoder [env:tasmota32s3cdc-ocd] build_type = debug extends = env:tasmota32s3 -board = esp32s3cdc +board = esp32s3cdc-qio_opi debug_tool = esp-builtin upload_protocol = esp-builtin debug_init_break = tbreak setup @@ -154,7 +171,7 @@ monitor_filters = esp32_exception_decoder [env:tasmota32c3cdc-ocd] build_type = debug extends = env:tasmota32c3 -board = esp32c3cdc +board = esp32c3cdc-qio_opi debug_tool = esp-builtin upload_protocol = esp-builtin debug_init_break = tbreak setup diff --git a/platformio_tasmota_env32.ini b/platformio_tasmota_env32.ini index 154d5d42f..c938bb876 100644 --- a/platformio_tasmota_env32.ini +++ b/platformio_tasmota_env32.ini @@ -4,7 +4,7 @@ platform = ${core32.platform} platform_packages = ${core32.platform_packages} board_build.filesystem = ${common.board_build.filesystem} custom_unpack_dir = ${common.custom_unpack_dir} -board = esp32_4M +board = esp32 monitor_speed = 115200 upload_port = ${common.upload_port} upload_resetmethod = ${common.upload_resetmethod} @@ -54,29 +54,24 @@ lib_ignore = extends = env:tasmota32_base build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_TASMOTA32 -[env:tasmota32_8M] -extends = env:tasmota32_base -board = esp32_8M -build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_TASMOTA32 - -[env:tasmota32_16M] -extends = env:tasmota32_base -board = esp32_16M -build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_TASMOTA32 - [env:tasmota32-webcam] extends = env:tasmota32_base -board = esp32-cam -build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_WEBCAM +board = esp32-fix +board_build.f_cpu = 240000000L +build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_WEBCAM -DCAMERA_MODEL_AI_THINKER lib_extra_dirs = lib/lib_ssl, lib/libesp32 [env:tasmota32-odroidgo] extends = env:tasmota32-lvgl -board = esp32-odroid +board_build.f_cpu = 240000000L +build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_TASMOTA32 -DARDUINO_ODROID_ESP32 +board = esp32-fix [env:tasmota32-core2] extends = env:tasmota32-lvgl -board = esp32-m5core2 +board_build.flash_mode = qio +board_build.f_cpu = 240000000L +board_build.f_flash = 80000000L build_flags = ${env:tasmota32-lvgl.build_flags} -DUSE_I2S_SAY_TIME -DUSE_I2S_WEBRADIO -DUSE_SENDMAIL lib_extra_dirs = lib/libesp32, lib/libesp32_lvgl, lib/lib_basic, lib/lib_i2c, lib/lib_rf, lib/lib_div, lib/lib_ssl, lib/lib_display, lib/lib_audio @@ -93,7 +88,7 @@ lib_extra_dirs = lib/libesp32, lib/lib_basic, lib/lib_display, lib/lib_ [env:tasmota32-lvgl] extends = env:tasmota32_base build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_LVGL -board_build.f_cpu = 160000000L +board_build.f_cpu = 240000000L lib_extra_dirs = lib/libesp32, lib/libesp32_lvgl, lib/lib_basic, lib/lib_i2c, lib/lib_rf, lib/lib_div, lib/lib_ssl, lib/lib_display [env:tasmota32-ir] @@ -103,11 +98,11 @@ lib_extra_dirs = lib/libesp32, lib/lib_basic, lib/lib_ssl [env:tasmota32solo1] extends = env:tasmota32_base -board = esp32_solo1_4M +board = esp32_solo1 [env:tasmota32solo1-safeboot] extends = env:tasmota32_base -board = esp32_solo1_4M +board = esp32_solo1 build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_SAFEBOOT lib_extra_dirs = lib/lib_ssl, lib/libesp32 lib_ignore = @@ -117,7 +112,7 @@ lib_ignore = [env:tasmota32-zbbrdgpro] extends = env:tasmota32_base -board = esp32_4M_FS +board_build.partitions = partitions/esp32_partition_app1856k_fs1344k.csv build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_ZBBRDGPRO -DFRAMEWORK_ARDUINO_ITEAD @@ -201,7 +196,7 @@ board = esp32s2cdc [env:tasmota32s3-safeboot] extends = env:tasmota32_base -board = esp32s3 +board = esp32s3-qio_qspi build_flags = ${env:tasmota32_base.build_flags} -DFIRMWARE_SAFEBOOT lib_extra_dirs = lib/lib_ssl, lib/libesp32 lib_ignore = @@ -220,7 +215,7 @@ lib_ignore = [env:tasmota32s3cdc-safeboot] extends = env:tasmota32s3-safeboot -board = esp32s3cdc +board = esp32s3cdc-qio_qspi [env:tasmota32s3cdc] extends = env:tasmota32s3