mirror of
https://github.com/suchmememanyskill/CYD-Klipper.git
synced 2026-03-20 21:23:25 +00:00
Merge branch 'dev' into printer-interface
This commit is contained in:
143
CYD-Klipper/boards/esp32-8048S043C-smartdisplay-alt.json
Normal file
143
CYD-Klipper/boards/esp32-8048S043C-smartdisplay-alt.json
Normal file
@@ -0,0 +1,143 @@
|
|||||||
|
{
|
||||||
|
"build": {
|
||||||
|
"arduino": {
|
||||||
|
"ldscript": "esp32s3_out.ld",
|
||||||
|
"partitions": "default_16MB.csv",
|
||||||
|
"memory_type": "qio_opi"
|
||||||
|
},
|
||||||
|
"core": "esp32",
|
||||||
|
"extra_flags": [
|
||||||
|
"'-D ARDUINO_ESP32S3_DEV'",
|
||||||
|
"'-D BOARD_HAS_PSRAM'",
|
||||||
|
"'-D ARDUINO_USB_MODE=1'",
|
||||||
|
"'-D ARDUINO_RUNNING_CORE=1'",
|
||||||
|
"'-D ARDUINO_EVENT_RUNNING_CORE=1'",
|
||||||
|
"'-D ARDUINO_USB_CDC_ON_BOOT=0'",
|
||||||
|
"'-D ESP32_8048S043C'",
|
||||||
|
"'-D LCD_WIDTH=800'",
|
||||||
|
"'-D LCD_HEIGHT=480'",
|
||||||
|
"'-D LVGL_BUFFER_PIXELS=(LCD_WIDTH*LCD_HEIGHT)'",
|
||||||
|
"'-D LVGL_BUFFER_MALLOC_FLAGS=(MALLOC_CAP_SPIRAM|MALLOC_CAP_8BIT)'",
|
||||||
|
"'-D GPIO_BCKL=2'",
|
||||||
|
"'-D LCD_ST7262_PAR'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_CLK_SRC=LCD_CLK_SRC_PLL160M'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_PCLK_HZ=14000000'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_H_RES=LCD_WIDTH'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_V_RES=LCD_HEIGHT'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_HSYNC_PULSE_WIDTH=4'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_HSYNC_BACK_PORCH=8'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_HSYNC_FRONT_PORCH=8'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_VSYNC_PULSE_WIDTH=4'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_VSYNC_BACK_PORCH=8'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_VSYNC_FRONT_PORCH=8'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_FLAGS_HSYNC_IDLE_LOW=false'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_FLAGS_VSYNC_IDLE_LOW=false'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_FLAGS_DE_IDLE_HIGH=false'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_FLAGS_PCLK_ACTIVE_NEG=true'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_TIMINGS_FLAGS_PCLK_IDLE_HIGH=false'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_WIDTH=16'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_SRAM_TRANS_ALIGN=4'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_PSRAM_TRANS_ALIGN=64'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_HSYNC_GPIO_NUM=39'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_VSYNC_GPIO_NUM=41'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DE_GPIO_NUM=40'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_PCLK_GPIO_NUM=42'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_R0=8'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_R1=3'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_R2=46'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_R3=9'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_R4=1'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_G0=5'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_G1=6'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_G2=7'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_G3=15'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_G4=16'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_G5=4'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_B0=45'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_B1=48'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_B2=47'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_B3=21'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DATA_GPIO_B4=14'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_DISP_GPIO_NUM=GPIO_NUM_NC'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_FLAGS_DISP_ACTIVE_LOW=false'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_FLAGS_RELAX_ON_IDLE=false'",
|
||||||
|
"'-D ST7262_PANEL_CONFIG_FLAGS_FB_IN_PSRAM=true'",
|
||||||
|
"'-D BOARD_HAS_TOUCH'",
|
||||||
|
"'-D TOUCH_GT911_I2C'",
|
||||||
|
"'-D GT911_I2C_HOST=I2C_NUM_0'",
|
||||||
|
"'-D GT911_I2C_CONFIG_SDA_IO_NUM=19'",
|
||||||
|
"'-D GT911_I2C_CONFIG_SCL_IO_NUM=20'",
|
||||||
|
"'-D GT911_I2C_CONFIG_SDA_PULLUP_EN=GPIO_PULLUP_DISABLE'",
|
||||||
|
"'-D GT911_I2C_CONFIG_SCL_PULLUP_EN=GPIO_PULLUP_DISABLE'",
|
||||||
|
"'-D GT911_I2C_CONFIG_MASTER_CLK_SPEED=400000'",
|
||||||
|
"'-D GT911_I2C_CONFIG_CLK_FLAGS=I2C_SCLK_SRC_FLAG_FOR_NOMAL'",
|
||||||
|
"'-D GT911_IO_I2C_CONFIG_DEV_ADDR=ESP_LCD_TOUCH_IO_I2C_GT911_ADDRESS'",
|
||||||
|
"'-D GT911_IO_I2C_CONFIG_CONTROL_PHASE_BYTES=1'",
|
||||||
|
"'-D GT911_IO_I2C_CONFIG_DC_BIT_OFFSET=0'",
|
||||||
|
"'-D GT911_IO_I2C_CONFIG_LCD_CMD_BITS=16'",
|
||||||
|
"'-D GT911_IO_I2C_CONFIG_LCD_PARAM_BITS=0'",
|
||||||
|
"'-D GT911_IO_I2C_CONFIG_FLAGS_DC_LOW_ON_DATA=false'",
|
||||||
|
"'-D GT911_IO_I2C_CONFIG_FLAGS_DISABLE_CONTROL_PHASE=true'",
|
||||||
|
"'-D GT911_TOUCH_CONFIG_X_MAX=LCD_WIDTH'",
|
||||||
|
"'-D GT911_TOUCH_CONFIG_Y_MAX=LCD_HEIGHT'",
|
||||||
|
"'-D GT911_TOUCH_CONFIG_RST_GPIO_NUM=38'",
|
||||||
|
"'-D GT911_TOUCH_CONFIG_INT_GPIO_NUM=18'",
|
||||||
|
"'-D GT911_TOUCH_CONFIG_LEVELS_RESET=0'",
|
||||||
|
"'-D GT911_TOUCH_CONFIG_LEVELS_INTERRUPT=0'",
|
||||||
|
"'-D TOUCH_SWAP_XY=false'",
|
||||||
|
"'-D TOUCH_SWAP_X=false'",
|
||||||
|
"'-D TOUCH_SWAP_Y=false'",
|
||||||
|
"'-D BOARD_HAS_TF'",
|
||||||
|
"'-D TF_CS=10'",
|
||||||
|
"'-D TF_SPI_MOSI=11'",
|
||||||
|
"'-D TF_SPI_SCLK=12'",
|
||||||
|
"'-D TF_SPI_MISO=13'",
|
||||||
|
|
||||||
|
"-DCYD_SCREEN_HEIGHT_PX=480",
|
||||||
|
"-DCYD_SCREEN_WIDTH_PX=800",
|
||||||
|
"-DROTATION_INVERTED=LV_DISP_ROT_180",
|
||||||
|
"-DROTATION_NORMAL=LV_DISP_ROT_NONE",
|
||||||
|
"-DCYD_SCREEN_GAP_PX=15",
|
||||||
|
"-DCYD_SCREEN_MIN_BUTTON_HEIGHT_PX=60",
|
||||||
|
"-DCYD_SCREEN_MIN_BUTTON_WIDTH_PX=60",
|
||||||
|
"-DCYD_SCREEN_FONT=lv_font_montserrat_22",
|
||||||
|
"-DCYD_SCREEN_FONT_SMALL=lv_font_montserrat_16",
|
||||||
|
"-DCYD_SCREEN_SIDEBAR_SIZE_PX=70",
|
||||||
|
"-DCYD_SCREEN_DRIVER_ESP32_SMARTDISPLAY=1",
|
||||||
|
"-DCYD_SCREEN_DISABLE_TOUCH_CALIBRATION=1"
|
||||||
|
],
|
||||||
|
"f_cpu": "240000000L",
|
||||||
|
"f_flash": "80000000L",
|
||||||
|
"flash_mode": "qio",
|
||||||
|
"hwids": [
|
||||||
|
[
|
||||||
|
"0x303A",
|
||||||
|
"0x1001"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"mcu": "esp32s3",
|
||||||
|
"variant": "esp32s3"
|
||||||
|
},
|
||||||
|
"connectivity": [
|
||||||
|
"wifi"
|
||||||
|
],
|
||||||
|
"debug": {
|
||||||
|
"openocd_target": "esp32s3.cfg"
|
||||||
|
},
|
||||||
|
"frameworks": [
|
||||||
|
"arduino",
|
||||||
|
"espidf"
|
||||||
|
],
|
||||||
|
"name": "esp32-8048S043C-SD-alt",
|
||||||
|
"upload": {
|
||||||
|
"flash_size": "16MB",
|
||||||
|
"maximum_ram_size": 327680,
|
||||||
|
"maximum_size": 16777216,
|
||||||
|
"use_1200bps_touch": true,
|
||||||
|
"wait_for_upload_port": true,
|
||||||
|
"require_upload_port": true,
|
||||||
|
"speed": 460800
|
||||||
|
},
|
||||||
|
"url": "https://www.aliexpress.com/item/1005006110360174.html",
|
||||||
|
"vendor": "Sunton"
|
||||||
|
}
|
||||||
63
CYD-Klipper/boards/esp32-CROWPANEL-28R.json
Normal file
63
CYD-Klipper/boards/esp32-CROWPANEL-28R.json
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
{
|
||||||
|
"build": {
|
||||||
|
"arduino": {
|
||||||
|
"ldscript": "esp32_out.ld"
|
||||||
|
},
|
||||||
|
"core": "esp32",
|
||||||
|
"extra_flags": [
|
||||||
|
"-DUSER_SETUP_LOADED=1",
|
||||||
|
"-DILI9341_2_DRIVER=1",
|
||||||
|
"-DTFT_BACKLIGHT_ON=HIGH",
|
||||||
|
"-DTFT_BL=27",
|
||||||
|
"-DTFT_MISO=12",
|
||||||
|
"-DTFT_MOSI=13",
|
||||||
|
"-DTFT_SCLK=14",
|
||||||
|
"-DTFT_CS=15",
|
||||||
|
"-DTFT_DC=2",
|
||||||
|
"-DTFT_RST=-1",
|
||||||
|
"-DLOAD_GCLD=1",
|
||||||
|
"-DSPI_FREQUENCY=15999999",
|
||||||
|
"-DSPI_READ_FREQUENCY=20000000",
|
||||||
|
"-DSPI_TOUCH_FREQUENCY=600000",
|
||||||
|
"-DTOUCH_CS=33",
|
||||||
|
|
||||||
|
"-DCYD_SCREEN_HEIGHT_PX=240",
|
||||||
|
"-DCYD_SCREEN_WIDTH_PX=320",
|
||||||
|
"-DCYD_SCREEN_GAP_PX=8",
|
||||||
|
"-DCYD_SCREEN_MIN_BUTTON_HEIGHT_PX=35",
|
||||||
|
"-DCYD_SCREEN_MIN_BUTTON_WIDTH_PX=35",
|
||||||
|
"-DCYD_SCREEN_FONT=lv_font_montserrat_14",
|
||||||
|
"-DCYD_SCREEN_FONT_SMALL=lv_font_montserrat_10",
|
||||||
|
"-DCYD_SCREEN_SIDEBAR_SIZE_PX=40",
|
||||||
|
"-DCYD_SCREEN_DRIVER_ESP32_CROWPANEL_28R=1"
|
||||||
|
],
|
||||||
|
"f_cpu": "240000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
|
"flash_mode": "dio",
|
||||||
|
"mcu": "esp32",
|
||||||
|
"variant": "esp32"
|
||||||
|
},
|
||||||
|
"connectivity": [
|
||||||
|
"wifi",
|
||||||
|
"bluetooth",
|
||||||
|
"ethernet",
|
||||||
|
"can"
|
||||||
|
],
|
||||||
|
"debug": {
|
||||||
|
"openocd_board": "esp-wroom-32.cfg"
|
||||||
|
},
|
||||||
|
"frameworks": [
|
||||||
|
"arduino",
|
||||||
|
"espidf"
|
||||||
|
],
|
||||||
|
"name": "esp32-crowpanel-28R",
|
||||||
|
"upload": {
|
||||||
|
"flash_size": "4MB",
|
||||||
|
"maximum_ram_size": 327680,
|
||||||
|
"maximum_size": 4194304,
|
||||||
|
"require_upload_port": true,
|
||||||
|
"speed": 460800
|
||||||
|
},
|
||||||
|
"url": "https://www.aliexpress.com/item/1005004502250619.html",
|
||||||
|
"vendor": "Sunton"
|
||||||
|
}
|
||||||
@@ -87,4 +87,18 @@ board = esp32-4827S043C-smartdisplay
|
|||||||
board = esp32-4827S043C-smartdisplay
|
board = esp32-4827S043C-smartdisplay
|
||||||
|
|
||||||
[env:esp32-8048S043C-SD]
|
[env:esp32-8048S043C-SD]
|
||||||
board = esp32-8048S043C-smartdisplay
|
board = esp32-8048S043C-smartdisplay
|
||||||
|
|
||||||
|
[env:esp32-8048S043C-SD-alt]
|
||||||
|
board = esp32-8048S043C-smartdisplay-alt
|
||||||
|
|
||||||
|
[env:esp32-CROWPANEL-28R]
|
||||||
|
board = esp32-CROWPANEL-28R
|
||||||
|
lib_deps =
|
||||||
|
SPI
|
||||||
|
https://github.com/suchmememanyskill/lvgl
|
||||||
|
https://github.com/Bodmer/TFT_eSPI.git
|
||||||
|
bblanchon/ArduinoJson@^7.0.0
|
||||||
|
plageoj/UrlEncode@^1.0.1
|
||||||
|
knolleary/PubSubClient@^2.8
|
||||||
|
WiFiClientSecure
|
||||||
|
|||||||
100
CYD-Klipper/src/core/device/ESP32-CROWPANEL_28R.cpp
Normal file
100
CYD-Klipper/src/core/device/ESP32-CROWPANEL_28R.cpp
Normal file
@@ -0,0 +1,100 @@
|
|||||||
|
#ifdef CYD_SCREEN_DRIVER_ESP32_CROWPANEL_28R
|
||||||
|
#include "../screen_driver.h"
|
||||||
|
|
||||||
|
#ifdef CYD_SCREEN_VERTICAL
|
||||||
|
#error "Vertical screen not supported with the ESP32_CROWPANEL_28R driver"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <SPI.h>
|
||||||
|
#include <TFT_eSPI.h>
|
||||||
|
#include "../../conf/global_config.h"
|
||||||
|
#include "lvgl.h"
|
||||||
|
#include <TFT_eSPI.h>
|
||||||
|
#include "../lv_setup.h"
|
||||||
|
|
||||||
|
#define TOUCH_THRESHOLD 600
|
||||||
|
|
||||||
|
static lv_disp_draw_buf_t draw_buf;
|
||||||
|
static lv_color_t buf[CYD_SCREEN_HEIGHT_PX * CYD_SCREEN_WIDTH_PX / 10];
|
||||||
|
|
||||||
|
TFT_eSPI tft = TFT_eSPI();
|
||||||
|
|
||||||
|
uint16_t touchX, touchY;
|
||||||
|
|
||||||
|
void screen_setBrightness(byte brightness)
|
||||||
|
{
|
||||||
|
// calculate duty, 4095 from 2 ^ 12 - 1
|
||||||
|
uint32_t duty = (4095 / 255) * brightness;
|
||||||
|
|
||||||
|
// write duty to LEDC
|
||||||
|
ledcWrite(0, duty);
|
||||||
|
}
|
||||||
|
|
||||||
|
void screen_lv_flush(lv_disp_drv_t *disp, const lv_area_t *area, lv_color_t *color_p)
|
||||||
|
{
|
||||||
|
uint32_t w = (area->x2 - area->x1 + 1);
|
||||||
|
uint32_t h = (area->y2 - area->y1 + 1);
|
||||||
|
|
||||||
|
tft.startWrite();
|
||||||
|
tft.setAddrWindow(area->x1, area->y1, w, h);
|
||||||
|
tft.pushColors((uint16_t *)&color_p->full, w * h, true);
|
||||||
|
tft.endWrite();
|
||||||
|
|
||||||
|
lv_disp_flush_ready(disp);
|
||||||
|
}
|
||||||
|
|
||||||
|
void screen_lv_touchRead(lv_indev_drv_t *indev_driver, lv_indev_data_t *data)
|
||||||
|
{
|
||||||
|
if (tft.getTouch( &touchX, &touchY, TOUCH_THRESHOLD))
|
||||||
|
{
|
||||||
|
data->state = LV_INDEV_STATE_PR;
|
||||||
|
data->point.x = touchX;
|
||||||
|
data->point.y = touchY;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
data->state = LV_INDEV_STATE_REL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void set_invert_display(){
|
||||||
|
tft.invertDisplay(get_current_printer_config()->invert_colors);
|
||||||
|
}
|
||||||
|
|
||||||
|
void screen_setup()
|
||||||
|
{
|
||||||
|
uint16_t calData[5] = { 189, 3416, 359, 3439, 1};
|
||||||
|
|
||||||
|
lv_init();
|
||||||
|
|
||||||
|
tft.init();
|
||||||
|
tft.fillScreen(TFT_BLACK);
|
||||||
|
tft.invertDisplay(false);
|
||||||
|
delay(300);
|
||||||
|
|
||||||
|
tft.setRotation(1);
|
||||||
|
tft.setTouch( calData );
|
||||||
|
|
||||||
|
ledcSetup(0, 5000, 12);
|
||||||
|
ledcAttachPin(TFT_BL, 0);
|
||||||
|
|
||||||
|
lv_disp_draw_buf_init(&draw_buf, buf, NULL, CYD_SCREEN_HEIGHT_PX * CYD_SCREEN_WIDTH_PX / 10);
|
||||||
|
|
||||||
|
/*Initialize the display*/
|
||||||
|
static lv_disp_drv_t disp_drv;
|
||||||
|
lv_disp_drv_init(&disp_drv);
|
||||||
|
disp_drv.hor_res = CYD_SCREEN_WIDTH_PX;
|
||||||
|
disp_drv.ver_res = CYD_SCREEN_HEIGHT_PX;
|
||||||
|
disp_drv.flush_cb = screen_lv_flush;
|
||||||
|
disp_drv.draw_buf = &draw_buf;
|
||||||
|
lv_disp_drv_register(&disp_drv);
|
||||||
|
|
||||||
|
/*Initialize the (dummy) input device driver*/
|
||||||
|
static lv_indev_drv_t indev_drv;
|
||||||
|
lv_indev_drv_init(&indev_drv);
|
||||||
|
indev_drv.type = LV_INDEV_TYPE_POINTER;
|
||||||
|
indev_drv.read_cb = screen_lv_touchRead;
|
||||||
|
lv_indev_drv_register(&indev_drv);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // CYD_SCREEN_DRIVER_ESP32_CROWPANEL_28R
|
||||||
@@ -99,6 +99,8 @@
|
|||||||
<option value="esp32-3248S035C-V">ESP32-3248S035 (3.5" Capacitive) Vertical Orientation</option>
|
<option value="esp32-3248S035C-V">ESP32-3248S035 (3.5" Capacitive) Vertical Orientation</option>
|
||||||
<option value="esp32-4827S043C-SD">ESP32-4827S043 (4.3" 480x270 Capacitive)</option>
|
<option value="esp32-4827S043C-SD">ESP32-4827S043 (4.3" 480x270 Capacitive)</option>
|
||||||
<option value="esp32-8048S043C-SD">ESP32-8048S043 (4.3" 800x480 Capacitive)</option>
|
<option value="esp32-8048S043C-SD">ESP32-8048S043 (4.3" 800x480 Capacitive)</option>
|
||||||
|
<option value="esp32-8048S043C-SD-alt">ESP32-8048S043 Alt (4.3" 800x480 Capacitive)</option>
|
||||||
|
<option value="esp32-CROWPANEL-28R">ESP32-CROWPANEL-28R (2.8" Resistive)</option>
|
||||||
</select>
|
</select>
|
||||||
<span id="install-btn"></span>
|
<span id="install-btn"></span>
|
||||||
</section>
|
</section>
|
||||||
|
|||||||
5
ci.py
5
ci.py
@@ -4,15 +4,18 @@ CYD_PORTS = [
|
|||||||
"esp32-3248S035C",
|
"esp32-3248S035C",
|
||||||
"esp32-2432S028R",
|
"esp32-2432S028R",
|
||||||
"esp32-2432S032C-SD",
|
"esp32-2432S032C-SD",
|
||||||
"esp32-8048S043C-SD",
|
"esp32-8048S043C-SD",
|
||||||
|
"esp32-8048S043C-SD-alt",
|
||||||
"esp32-2432S024C-SD",
|
"esp32-2432S024C-SD",
|
||||||
"esp32-4827S043C-SD",
|
"esp32-4827S043C-SD",
|
||||||
"esp32-3248S035C-V",
|
"esp32-3248S035C-V",
|
||||||
#"esp32-4827S043R-SD",
|
#"esp32-4827S043R-SD",
|
||||||
|
"esp32-CROWPANEL-28R",
|
||||||
]
|
]
|
||||||
|
|
||||||
ESP_S3_CHIPS = [
|
ESP_S3_CHIPS = [
|
||||||
"esp32-8048S043C-SD",
|
"esp32-8048S043C-SD",
|
||||||
|
"esp32-8048S043C-SD-alt",
|
||||||
"esp32-4827S043C-SD",
|
"esp32-4827S043C-SD",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user