Merge pull request #177 from MoonModules/moonHUB

add support for T7-S3 (LILYGO / TTGO) with MOONHUB
This commit is contained in:
Frank
2024-11-04 23:06:23 +01:00
committed by GitHub
3 changed files with 60 additions and 3 deletions

View File

@@ -78,6 +78,7 @@ default_envs =
esp32S3_4MB_PSRAM_S ;; for lolin s3 mini, S3 zero, S3 super mini - optimized for speed
esp32S3_4MB_PSRAM_M ;; for lolin s3 mini, S3 zero, S3 super mini
esp32S3_8MB_PSRAM_M ;; experiemental
esp32S3_16MB_PSRAM_M_HUB75 ;; for S3 with 16MB flash, and MOONHUB HUB75 adapter board
esp32S3_WROOM-2_M ;; for S3 WROOM-2
;; esp32s2_tinyUF2_PSRAM_S ;; experimental - only for adafruit -S2 boards with tinyUF2 bootloader !!!
esp32s2_PSRAM_M ;; experimental
@@ -2067,6 +2068,54 @@ board_build.partitions = tools/WLED_ESP32_8MB.csv
; RAM: [=== ] 25.8% (used 84544 bytes from 327680 bytes)
; Flash: [======== ] 78.1% (used 1638737 bytes from 2097152 bytes)
;; for S3 with 16MB flash, octal PSRAM,
;; MOONHUB HUB75 adapter board
[env:esp32S3_16MB_PSRAM_M_HUB75]
extends = env:esp32S3_8MB_PSRAM_M
board = lilygo-t7-s3
board_build.arduino.memory_type = qio_opi
board_build.flash_mode = qio
build_unflags = ${env:esp32S3_8MB_PSRAM_M.build_unflags}
-D WLED_RELEASE_NAME=esp32S3_8MB_M
-D LEDPIN=21
${Speed_Flags.build_unflags} ;; to override -Os
build_flags = ${common.build_flags} ${esp32s3.build_flags} -Wno-misleading-indentation -Wno-format-truncation
${common_mm.build_flags_S} ${common_mm.build_flags_M}
${Speed_Flags.build_flags_V4} ;; optimize for speed
${common_mm.HUB75_build_flags}
-D MOONHUB_S3_PINOUT ;; HUB75 pinout
${common_mm.animartrix_build_flags}
-D WLED_RELEASE_NAME=esp32S3_16MB_PSRAM_M_HUB75
-D WLEDMM_FASTPATH
-D WLED_DISABLE_BROWNOUT_DET
;; -D JSON_BUFFER_SIZE=18432 ;; default 54000
-D MIN_HEAP_SIZE=6144 ;; default 8192
-D MAX_SEGMENT_DATA=40960 ;; default 32767
-DBOARD_HAS_PSRAM ;; -D WLED_USE_PSRAM ;; your board supports PSRAM
-D WLED_USE_PSRAM_JSON -DALL_JSON_TO_PSRAM ; WLEDMM --> force all JSON stuff into PSRAM; gives more free heap
-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 ;; for Serial-to-USB chip
;; -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=1 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=1 ;; for Hardware-CDC USB mode
-D WLED_WATCHDOG_TIMEOUT=0 -D CONFIG_ASYNC_TCP_USE_WDT=0
;; -DUSERMOD_BATTERY_MEASUREMENT_PIN=2 ;; battery voltage pin
;; -D STATUSLED=17 ;; onboard LED
-D LEDPIN=14 -D BTNPIN=0 -D RLYPIN=15 -D IRPIN=-1 -D AUDIOPIN=-1 ;; defaults that avoid pin conflicts with HUB75
-D SR_DMTYPE=1 -D I2S_SDPIN=10 -D I2S_CKPIN=11 -D I2S_WSPIN=12 -D MCLK_PIN=-1 ;; I2S mic
lib_deps = ${esp32s3.lib_deps} ${common_mm.lib_deps_S} ${common_mm.lib_deps_V4_M}
${common_mm.HUB75_lib_deps}
${common_mm.animartrix_lib_deps}
;lib_ignore = IRremoteESP8266 ; use with WLED_DISABLE_INFRARED for faster compilation
board_build.partitions = ${esp32.extreme_partitions}
board_upload.flash_size = 16MB
board_upload.maximum_size =16777216
; RAM: [== ] 19.0% (used 62332 bytes from 327680 bytes)
; Flash: [====== ] 57.7% (used 1813585 bytes from 3145728 bytes)
;; MM for ESP32-S3 WROOM-2, a.k.a. ESP32-S3 DevKitC-1 v1.1
;; with >= 16MB FLASH and >= 8MB PSRAM (memory_type: opi_opi)
;; includes HUB75 and AnimArtix

View File

@@ -677,8 +677,15 @@ BusHub75Matrix::BusHub75Matrix(BusConfig &bc) : Bus(bc.type, bc.start, bc.autoWh
mxconfig.gpio.d = 35;
mxconfig.gpio.e = 21;
#elif defined(CONFIG_IDF_TARGET_ESP32S3) && defined(BOARD_HAS_PSRAM)// ESP32-S3
#elif defined(CONFIG_IDF_TARGET_ESP32S3) && defined(BOARD_HAS_PSRAM)// ESP32-S3 with PSRAM
#if defined(MOONHUB_S3_PINOUT)
USER_PRINTLN("MatrixPanel_I2S_DMA - T7 S3 with PSRAM, MOONHUB pinout");
// HUB75_I2S_CFG::i2s_pins _pins={R1_PIN, G1_PIN, B1_PIN, R2_PIN, G2_PIN, B2_PIN, A_PIN, B_PIN, C_PIN, D_PIN, E_PIN, LAT_PIN, OE_PIN, CLK_PIN};
mxconfig.gpio = { 1, 5, 6, 7, 13, 9, 16, 48, 47, 21, 38, 8, 4, 18 };
#else
USER_PRINTLN("MatrixPanel_I2S_DMA - S3 with PSRAM");
mxconfig.gpio.r1 = 1;
@@ -697,8 +704,9 @@ BusHub75Matrix::BusHub75Matrix(BusConfig &bc) : Bus(bc.type, bc.start, bc.autoWh
mxconfig.gpio.lat = 8;
mxconfig.gpio.oe = 3;
// 16th pin is GND
#endif
#elif defined(CONFIG_IDF_TARGET_ESP32S3) // ESP32-S3
#elif defined(CONFIG_IDF_TARGET_ESP32S3) // ESP32-S3 HD-WF2
// Huidu HD-WF2 ESP32-S3
// https://www.aliexpress.com/item/1005002258734810.html

View File

@@ -8,7 +8,7 @@
*/
// version code in format yymmddb (b = daily build)
#define VERSION 2410300
#define VERSION 2411040
// WLEDMM - you can check for this define in usermods, to only enabled WLEDMM specific code in the "right" fork. Its not defined in AC WLED.
#define _MoonModules_WLED_