mirror of
https://github.com/meshtastic/firmware.git
synced 2025-10-05 22:42:08 +00:00
elecrow 4.3, 5.0, 7.0 support
This commit is contained in:
parent
795024c29c
commit
1850c42715
@ -8,8 +8,6 @@
|
||||
"core": "esp32",
|
||||
"extra_flags": [
|
||||
"-DBOARD_HAS_PSRAM",
|
||||
"-DARDUINO_USB_CDC_ON_BOOT=1",
|
||||
"-DARDUINO_USB_MODE=0",
|
||||
"-DARDUINO_RUNNING_CORE=1",
|
||||
"-DARDUINO_EVENT_RUNNING_CORE=0"
|
||||
],
|
||||
|
@ -584,7 +584,7 @@ void NodeDB::installDefaultConfig(bool preserveKey = false)
|
||||
strncpy(config.network.ntp_server, "meshtastic.pool.ntp.org", 32);
|
||||
|
||||
#if (defined(T_DECK) || defined(T_WATCH_S3) || defined(UNPHONE) || defined(PICOMPUTER_S3) || defined(SENSECAP_INDICATOR) || \
|
||||
defined(ELECROW)) && \
|
||||
defined(ELECROW_PANEL)) && \
|
||||
HAS_TFT
|
||||
// switch BT off by default; use TFT programming mode or hotkey to enable
|
||||
config.bluetooth.enabled = false;
|
||||
@ -689,7 +689,7 @@ void NodeDB::initConfigIntervals()
|
||||
|
||||
config.display.screen_on_secs = default_screen_on_secs;
|
||||
|
||||
#if defined(T_WATCH_S3) || defined(T_DECK) || defined(UNPHONE) || defined(MESH_TAB) || defined(RAK14014) || defined(ELECROW)
|
||||
#if defined(T_WATCH_S3) || defined(T_DECK) || defined(UNPHONE) || defined(MESH_TAB) || defined(RAK14014) || defined(ELECROW_PANEL)
|
||||
config.power.is_power_saving = true;
|
||||
config.display.screen_on_secs = 30;
|
||||
config.power.wait_bluetooth_secs = 30;
|
||||
|
@ -400,7 +400,7 @@ esp_sleep_wakeup_cause_t doLightSleep(uint64_t sleepMsec) // FIXME, use a more r
|
||||
#ifdef INPUTDRIVER_ENCODER_BTN
|
||||
gpio_wakeup_enable((gpio_num_t)INPUTDRIVER_ENCODER_BTN, GPIO_INTR_LOW_LEVEL);
|
||||
#endif
|
||||
#if defined(T_WATCH_S3) || defined(ELECROW)
|
||||
#if defined(WAKE_ON_TOUCH)
|
||||
gpio_wakeup_enable((gpio_num_t)SCREEN_TOUCH_INT, GPIO_INTR_LOW_LEVEL);
|
||||
#endif
|
||||
enableLoraInterrupt();
|
||||
|
@ -17,13 +17,11 @@ static const uint8_t MOSI = 48;
|
||||
static const uint8_t MISO = 47;
|
||||
static const uint8_t SCK = 41;
|
||||
|
||||
#ifndef CROW_SELECT
|
||||
static const uint8_t SPI_MOSI = 6;
|
||||
static const uint8_t SPI_SCK = 5;
|
||||
static const uint8_t SPI_MISO = 4;
|
||||
static const uint8_t SPI_CS = 7; // SD does not support -1
|
||||
static const uint8_t SDCARD_CS = SPI_CS;
|
||||
#endif
|
||||
|
||||
static const uint8_t A0 = 1;
|
||||
static const uint8_t A1 = 2;
|
||||
|
@ -7,7 +7,6 @@ board_build.partitions = default_16MB.csv ; must be here for some reason, board.
|
||||
|
||||
build_flags = ${esp32s3_base.build_flags} -Os
|
||||
-I variants/elecrow_panel
|
||||
-D ELECROW
|
||||
-D ELECROW_PANEL
|
||||
-D CONFIG_ARDUHAL_LOG_COLORS
|
||||
-D RADIOLIB_DEBUG_SPI=0
|
||||
@ -28,9 +27,9 @@ build_flags = ${esp32s3_base.build_flags} -Os
|
||||
-D HAS_SCREEN=0
|
||||
-D HAS_TFT=1
|
||||
-D RAM_SIZE=6144
|
||||
-D LV_LVGL_H_INCLUDE_SIMPLE
|
||||
-D LV_CONF_INCLUDE_SIMPLE
|
||||
-D LV_COMP_CONF_INCLUDE_SIMPLE
|
||||
-D LV_LVGL_H_INCLUDE_SIMPLE
|
||||
-D LV_CONF_INCLUDE_SIMPLE
|
||||
-D LV_COMP_CONF_INCLUDE_SIMPLE
|
||||
-D LV_USE_SYSMON=0
|
||||
-D LV_USE_PROFILER=0
|
||||
-D LV_USE_PERF_MONITOR=0
|
||||
@ -48,21 +47,44 @@ lib_deps = ${esp32s3_base.lib_deps}
|
||||
lovyan03/LovyanGFX@^1.2.0
|
||||
hideakitai/TCA9534@^0.1.1
|
||||
|
||||
[env:elecrow-24-28-tft]
|
||||
[crowpanel_small] ; 2.4, 2.8, 3.5 inch
|
||||
extends = crowpanel_base
|
||||
|
||||
build.extra_flags = -DARDUINO_USB_CDC_ON_BOOT=1 -DARDUINO_USB_MODE=0
|
||||
build_flags =
|
||||
${crowpanel_base.build_flags}
|
||||
-D TFT_HEIGHT=320 ; needed in variant.h
|
||||
-D HAS_SDCARD
|
||||
-D SDCARD_USE_SOFT_SPI
|
||||
-D SPI_DRIVER_SELECT=2
|
||||
-D USE_PIN_BUZZER
|
||||
; -D INPUTDRIVER_BUTTON_TYPE=0 ; no button as this pin is assigned to LoRa cs!
|
||||
-D SCREEN_TOUCH_INT=47 ; used to wake up the MCU by touch
|
||||
-D LGFX_DRIVER_TEMPLATE
|
||||
-D LGFX_DRIVER=LGFX_GENERIC
|
||||
-D GFX_DRIVER_INC=\"graphics/LGFX/LGFX_GENERIC.h\"
|
||||
-D VIEW_320x240
|
||||
-D MAP_FULL_REDRAW
|
||||
|
||||
[crowpanel_large] ; 4.3, 5.0, 7.0 inch
|
||||
extends = crowpanel_base
|
||||
build.extra_flags = -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MODE=1
|
||||
build_flags =
|
||||
${crowpanel_base.build_flags}
|
||||
-D HAS_SDCARD
|
||||
-D TFT_HEIGHT=480
|
||||
-D TFT_WIDTH=800
|
||||
-D TFT_OFFSET_X=0
|
||||
-D TFT_OFFSET_Y=0
|
||||
-D TFT_BUSY=-1
|
||||
-D LGFX_DRIVER=LGFX_ELECROW70
|
||||
-D GFX_DRIVER_INC=\"graphics/LGFX/LGFX_ELECROW70.h\"
|
||||
-D DISPLAY_SET_RESOLUTION
|
||||
-D MAP_FULL_REDRAW
|
||||
|
||||
[env:elecrow-24-28-tft]
|
||||
extends = crowpanel_small
|
||||
|
||||
build_flags =
|
||||
${crowpanel_small.build_flags}
|
||||
-D TFT_HEIGHT=320 ; needed in variant.h
|
||||
-D SPI_FREQUENCY=80000000
|
||||
-D LGFX_SCREEN_WIDTH=240
|
||||
-D LGFX_SCREEN_HEIGHT=320
|
||||
@ -81,25 +103,14 @@ build_flags =
|
||||
-D LGFX_TOUCH_INT=47
|
||||
-D LGFX_TOUCH_RST=48
|
||||
-D LGFX_TOUCH_ROTATION=0
|
||||
-D VIEW_320x240
|
||||
-D MAP_FULL_REDRAW
|
||||
|
||||
[env:elecrow-35-tft]
|
||||
extends = crowpanel_base
|
||||
extends = crowpanel_small
|
||||
|
||||
build_flags =
|
||||
${crowpanel_base.build_flags}
|
||||
-D TFT_HEIGHT=480 ; needed in variant.h
|
||||
-D HAS_SDCARD
|
||||
-D SDCARD_USE_SOFT_SPI
|
||||
-D SPI_DRIVER_SELECT=2
|
||||
-D USE_PIN_BUZZER
|
||||
; -D INPUTDRIVER_BUTTON_TYPE=0 ; no button as this pin is assigned to LoRa cs!
|
||||
-D SCREEN_TOUCH_INT=47 ; used to wake up the MCU by touch
|
||||
${crowpanel_small.build_flags}
|
||||
-D TFT_WIDTH=320 ; needed in variant.h
|
||||
-D LV_CACHE_DEF_SIZE=2097152
|
||||
-D LGFX_DRIVER_TEMPLATE
|
||||
-D LGFX_DRIVER=LGFX_GENERIC
|
||||
-D GFX_DRIVER_INC=\"graphics/LGFX/LGFX_GENERIC.h\"
|
||||
-D SPI_FREQUENCY=60000000
|
||||
-D LGFX_SCREEN_WIDTH=320
|
||||
-D LGFX_SCREEN_HEIGHT=480
|
||||
@ -119,52 +130,37 @@ build_flags =
|
||||
-D LGFX_TOUCH_RST=48
|
||||
-D LGFX_TOUCH_ROTATION=0
|
||||
-D DISPLAY_SET_RESOLUTION
|
||||
-D VIEW_320x240
|
||||
-D MAP_FULL_REDRAW
|
||||
|
||||
# 4.3 inch 800x480 IPS ST7265
|
||||
[env:elecrow-43-tft]
|
||||
extends = crowpanel_base
|
||||
extends = crowpanel_large
|
||||
board_level = extra
|
||||
|
||||
build_flags =
|
||||
${crowpanel_base.build_flags}
|
||||
-D TFT_HEIGHT=480
|
||||
-D TFT_WIDTH=800
|
||||
-D TFT_OFFSET_X=0
|
||||
-D TFT_OFFSET_Y=0
|
||||
-D TFT_BUSY=-1
|
||||
-D CROW_SELECT=1
|
||||
|
||||
${crowpanel_large.build_flags}
|
||||
-D CROW_SELECT=1
|
||||
-D VIEW_320x240
|
||||
|
||||
# 5 inch 800x480 IPS ST7262
|
||||
[env:elecrow-50-tft]
|
||||
extends = crowpanel_base
|
||||
extends = crowpanel_large
|
||||
board_level = extra
|
||||
|
||||
build_flags =
|
||||
${crowpanel_base.build_flags}
|
||||
-D TFT_HEIGHT=480
|
||||
-D TFT_WIDTH=800
|
||||
-D TFT_OFFSET_X=0
|
||||
-D TFT_OFFSET_Y=0
|
||||
-D TFT_BUSY=-1
|
||||
-D CROW_SELECT=2
|
||||
${crowpanel_large.build_flags}
|
||||
-D CROW_SELECT=2
|
||||
; -D VIEW_800x480
|
||||
-D VIEW_320x240
|
||||
|
||||
# 7 inch 800x480 IPS SC7277
|
||||
[env:elecrow-70-tft]
|
||||
extends = crowpanel_base
|
||||
extends = crowpanel_large
|
||||
board_level = extra
|
||||
|
||||
build_flags =
|
||||
${crowpanel_base.build_flags}
|
||||
-D TFT_HEIGHT=480
|
||||
-D TFT_WIDTH=800
|
||||
-D TFT_OFFSET_X=0
|
||||
-D TFT_OFFSET_Y=0
|
||||
-D TFT_BUSY=-1
|
||||
-D CROW_SELECT=3
|
||||
-D LGFX_DRIVER=LGFX_ELECROW70
|
||||
-D GFX_DRIVER_INC=\"graphics/LGFX/LGFX_ELECROW70.h\"
|
||||
-D VIEW_800x480
|
||||
-I lib/device-ui/generated/ui_800x480
|
||||
${crowpanel_large.build_flags}
|
||||
-D CROW_SELECT=3
|
||||
-D FREQ_WRITE=13000000
|
||||
; -D VIEW_800x480
|
||||
-D VIEW_320x240
|
||||
|
||||
|
@ -26,6 +26,7 @@
|
||||
#define SCREEN_TOUCH_RST 48
|
||||
#define TOUCH_I2C_PORT 0
|
||||
#define TOUCH_SLAVE_ADDRESS 0x38 // FT5x06
|
||||
#define WAKE_ON_TOUCH
|
||||
#endif
|
||||
|
||||
#if TFT_HEIGHT == 480 && not defined(HAS_TFT) // 3.5 TFT
|
||||
@ -53,6 +54,7 @@
|
||||
#define SCREEN_TOUCH_RST 48
|
||||
#define TOUCH_I2C_PORT 0
|
||||
#define TOUCH_SLAVE_ADDRESS 0x5D // GT911
|
||||
#define WAKE_ON_TOUCH
|
||||
#endif
|
||||
|
||||
#ifdef CROW_SELECT
|
||||
@ -160,7 +162,8 @@
|
||||
#define USE_SX1262
|
||||
#define LORA_CS 0 // GND
|
||||
|
||||
#if TFT_HEIGHT == 320 || TFT_HEIGHT == 480 // 2.4 - 3.5 TFT
|
||||
#if TFT_HEIGHT == 320 || TFT_WIDTH == 320 // 2.4 - 3.5 TFT
|
||||
#define HW_SPI1_DEVICE
|
||||
#define LORA_SCK 10
|
||||
#define LORA_MISO 9
|
||||
#define LORA_MOSI 3
|
||||
@ -182,7 +185,6 @@
|
||||
#define LORA_DIO2 2 // SX1262 BUSY
|
||||
#endif
|
||||
|
||||
#define HW_SPI1_DEVICE
|
||||
#define SX126X_CS LORA_CS
|
||||
#define SX126X_DIO1 LORA_DIO1
|
||||
#define SX126X_BUSY LORA_DIO2
|
||||
|
@ -24,6 +24,7 @@
|
||||
#define SCREEN_TOUCH_USE_I2C1
|
||||
#define TOUCH_I2C_PORT 1
|
||||
#define TOUCH_SLAVE_ADDRESS 0x38
|
||||
#define WAKE_ON_TOUCH
|
||||
|
||||
#define SLEEP_TIME 180
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user