diff --git a/components/flow3r_bsp/Kconfig b/components/flow3r_bsp/Kconfig index 06f539f6a85cfef65a29f4ca184ead370cdad56d..25cebf3afe9c7188b043fe688ed1e0df45f8c218 100644 --- a/components/flow3r_bsp/Kconfig +++ b/components/flow3r_bsp/Kconfig @@ -9,23 +9,27 @@ menu "Flow3r Config" - No line in/out jacks - White bottom board - USB-C jack points side of leaf + select FLOW3R_ESP32S3 bool "Prototype 1" config FLOW3R_HW_GEN_P3 help Prototype version 3, a.k.a. proto3 Visual identifiers: - Sticker with B3xx (xx being arbitrary digits) on the back + select FLOW3R_ESP32S3 bool "Prototype 3" config FLOW3R_HW_GEN_P4 help Prototype version 4, a.k.a. proto4 Visual identifiers: - Sticker with B4xx (xx being arbitrary digits) on the back + select FLOW3R_ESP32S3 bool "Prototype 4" config FLOW3R_HW_GEN_P6 help Prototype version 6, a.k.a. proto6 - Sticker with B6xx (xx being arbitrary digits) on the back + select FLOW3R_ESP32S3 bool "Prototype 6" endchoice @@ -42,4 +46,7 @@ menu "Flow3r Config" bool "Spirals" endchoice + config FLOW3R_ESP32S3 + bool + endmenu diff --git a/components/micropython/include/mpconfigboard.h b/components/micropython/include/mpconfigboard.h index 6850b8f38ec7caafa447af9bd75226a6ab4fc77d..fab8e7180cb013fd32a95b825f880dc591d52416 100644 --- a/components/micropython/include/mpconfigboard.h +++ b/components/micropython/include/mpconfigboard.h @@ -6,6 +6,8 @@ #define MICROPY_PY_MACHINE_PWM (1) #define MICROPY_HW_I2C0_SCL (9) #define MICROPY_HW_I2C0_SDA (8) +#define MICROPY_HW_ESP32S3_EXTENDED_IO (0) + #define MICROPY_ESP_IDF_4 1 #define MICROPY_VFS_POSIX 1 diff --git a/components/micropython/vendor/ports/esp32/machine_pin.c b/components/micropython/vendor/ports/esp32/machine_pin.c index 5ea41701afe3cd96b5e00310ef034be7dff7a618..b764a373611cf70e8616d1208015069c9f94bcb4 100644 --- a/components/micropython/vendor/ports/esp32/machine_pin.c +++ b/components/micropython/vendor/ports/esp32/machine_pin.c @@ -144,6 +144,56 @@ STATIC const machine_pin_obj_t machine_pin_obj[GPIO_NUM_MAX] = { {{&machine_pin_type}, GPIO_NUM_20}, {{&machine_pin_type}, GPIO_NUM_21}, + #elif CONFIG_FLOW3R_ESP32S3 + + {{NULL}, -1}, // 0 + {{NULL}, -1}, // 1 + {{NULL}, -1}, // 2 + {{NULL}, -1}, // 3 + {{&machine_pin_type}, GPIO_NUM_4}, // Badgelink + {{&machine_pin_type}, GPIO_NUM_5}, // Badgelink + {{&machine_pin_type}, GPIO_NUM_6}, // Badgelink + {{&machine_pin_type}, GPIO_NUM_7}, // Badgelink + {{NULL}, -1}, // 8 + {{NULL}, -1}, // 9 + {{NULL}, -1}, // 10 + {{NULL}, -1}, // 11 + {{NULL}, -1}, // 12 + {{NULL}, -1}, // 13 + {{NULL}, -1}, // 14 + {{NULL}, -1}, // 15 + {{NULL}, -1}, // 16 + {{&machine_pin_type}, GPIO_NUM_17}, // QWIIC + {{NULL}, -1}, // 18 + {{NULL}, -1}, // 19 + {{NULL}, -1}, // 20 + {{NULL}, -1}, // 21 + {{NULL}, -1}, // 22 + {{NULL}, -1}, // 23 + {{NULL}, -1}, // 24 + {{NULL}, -1}, // 25 + {{NULL}, -1}, // 26 + {{NULL}, -1}, // 27 + {{NULL}, -1}, // 28 + {{NULL}, -1}, // 29 + {{NULL}, -1}, // 30 + {{NULL}, -1}, // 31 + {{NULL}, -1}, // 32 + {{NULL}, -1}, // 33 + {{NULL}, -1}, // 34 + {{NULL}, -1}, // 35 + {{NULL}, -1}, // 36 + {{NULL}, -1}, // 37 + {{NULL}, -1}, // 38 + {{NULL}, -1}, // 39 + {{NULL}, -1}, // 40 + {{NULL}, -1}, // 41 + {{NULL}, -1}, // 42 + {{NULL}, -1}, // 43 + {{NULL}, -1}, // 44 + {{&machine_pin_type}, GPIO_NUM_45}, // QWIIC + {{NULL}, -1}, // 46 + #elif CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32S3 {{&machine_pin_type}, GPIO_NUM_0}, @@ -616,6 +666,56 @@ STATIC const machine_pin_irq_obj_t machine_pin_irq_object[GPIO_NUM_MAX] = { {{&machine_pin_irq_type}, GPIO_NUM_20}, {{&machine_pin_irq_type}, GPIO_NUM_21}, + #elif CONFIG_FLOW3R_ESP32S3 + + {{NULL}, -1}, // 0 + {{NULL}, -1}, // 1 + {{NULL}, -1}, // 2 + {{NULL}, -1}, // 3 + {{&machine_pin_irq_type}, GPIO_NUM_4}, // Badgelink + {{&machine_pin_irq_type}, GPIO_NUM_5}, // Badgelink + {{&machine_pin_irq_type}, GPIO_NUM_6}, // Badgelink + {{&machine_pin_irq_type}, GPIO_NUM_7}, // Badgelink + {{NULL}, -1}, // 8 + {{NULL}, -1}, // 9 + {{NULL}, -1}, // 10 + {{NULL}, -1}, // 11 + {{NULL}, -1}, // 12 + {{NULL}, -1}, // 13 + {{NULL}, -1}, // 14 + {{NULL}, -1}, // 15 + {{NULL}, -1}, // 16 + {{&machine_pin_irq_type}, GPIO_NUM_17}, // QWIIC + {{NULL}, -1}, // 18 + {{NULL}, -1}, // 19 + {{NULL}, -1}, // 20 + {{NULL}, -1}, // 21 + {{NULL}, -1}, // 22 + {{NULL}, -1}, // 23 + {{NULL}, -1}, // 24 + {{NULL}, -1}, // 25 + {{NULL}, -1}, // 26 + {{NULL}, -1}, // 27 + {{NULL}, -1}, // 28 + {{NULL}, -1}, // 29 + {{NULL}, -1}, // 30 + {{NULL}, -1}, // 31 + {{NULL}, -1}, // 32 + {{NULL}, -1}, // 33 + {{NULL}, -1}, // 34 + {{NULL}, -1}, // 35 + {{NULL}, -1}, // 36 + {{NULL}, -1}, // 37 + {{NULL}, -1}, // 38 + {{NULL}, -1}, // 39 + {{NULL}, -1}, // 40 + {{NULL}, -1}, // 41 + {{NULL}, -1}, // 42 + {{NULL}, -1}, // 43 + {{NULL}, -1}, // 44 + {{&machine_pin_irq_type}, GPIO_NUM_45}, // QWIIC + {{NULL}, -1}, // 46 + #elif CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32S3 {{&machine_pin_irq_type}, GPIO_NUM_0},