Skip to content

Commit

Permalink
init sdk
Browse files Browse the repository at this point in the history
  • Loading branch information
Wvirgil123 committed Apr 19, 2023
1 parent 97479ad commit 784bdda
Show file tree
Hide file tree
Showing 1,470 changed files with 501,506 additions and 0 deletions.
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# SenseCAP Indicator

This is the SDK for SenseCAP Indicator esp32 MCU.
25 changes: 25 additions & 0 deletions components/bsp/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@

idf_component_register(
SRC_DIRS
"src/boards"
"src/peripherals"
"src/storage"
"src/indev"
"src/codec"
"src/calibration"
"src/calibration/basic_painter"
INCLUDE_DIRS
"src/boards"
"src"
"include"
"src/calibration"
REQUIRES
iot_button
esp_hid
esp_lcd
fatfs
bus
i2c_devices
nvs_flash
spiffs
lora)
129 changes: 129 additions & 0 deletions components/bsp/Kconfig.projbuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
menu "Board Configuration"

choice LCD_BOARD
prompt "Select LCD Board"
default LCD_BOARD_SENSECAP_INDICATOR_D1
config LCD_BOARD_EV
bool "ESP32-S3-LCD-EV-BOARD Development Board"
config LCD_BOARD_SENSECAP_INDICATOR_WXM
bool "SenseCAP Indicator for WXM"
config LCD_BOARD_SENSECAP_INDICATOR_D1
bool "SenseCAP Indicator D1/D1S"
config LCD_BOARD_SENSECAP_INDICATOR_D1L
bool "SenseCAP Indicator D1L/D1Pro ( with Lora)"
endchoice

choice LCD_SUB_BOARD
depends on LCD_BOARD_EV
prompt "Select LCD Sub Board"
default LCD_EV_SUB_BOARD2
help
Select an sub board for LCD EV mainboard
config LCD_EV_SUB_BOARD1
bool "SUB_BOARD1 128x64 & 320x240 screen"
config LCD_EV_SUB_BOARD2
bool "SUB_BOARD2 480x480 & 320x480 screen"
config LCD_EV_SUB_BOARD3
bool "SUB_BOARD3 800x480 screen"
config LCD_EV_SUB_BOARD
bool "SUB_BOARD3 800x480 screen"
endchoice

choice LCD_SUB_BOARD1_SCREEN
depends on LCD_EV_SUB_BOARD1
prompt "Select screen for Sub Board1"
default LCD_EV_SUB_BOARD1_LCD_320x240
config LCD_EV_SUB_BOARD1_OLED_128x64
bool "128x64 0.96' OLED screen"
config LCD_EV_SUB_BOARD1_LCD_320x240
bool "320x240 2.4' LCD screen"
endchoice

choice LCD_SUB_BOARD2_SCREEN
depends on LCD_EV_SUB_BOARD2
prompt "Select screen for Sub Board2"
default LCD_EV_SUB_BOARD2_LCD_480x480
config LCD_EV_SUB_BOARD2_LCD_480x480
bool "480x480 3.95' LCD screen"
config LCD_EV_SUB_BOARD2_LCD_480x320
bool "480x320 3.5' LCD screen"
endchoice

choice LCD_SUB_BOARD2_SCREEN_DATA_WIDTH
depends on LCD_EV_SUB_BOARD2_LCD_480x320
prompt "Select data width for 480x320 3.5' LCD screen"
default LCD_EV_SUB_BOARD2_LCD_480x320_8BIT
config LCD_EV_SUB_BOARD2_LCD_480x320_8BIT
bool "8Bit 8080 interface"
config LCD_EV_SUB_BOARD2_LCD_480x320_16BIT
bool "16Bit 8080 interface"
endchoice

choice SENSECAP_INDICATOR_SCREEN
depends on LCD_BOARD_SENSECAP_INDICATOR_WXM || LCD_BOARD_SENSECAP_INDICATOR_D1 || LCD_BOARD_SENSECAP_INDICATOR_D1L
prompt "Select the screen type for SenseCAP Indicator boards"
default SENSECAP_INDICATOR_SCREEN_GX
config SENSECAP_INDICATOR_SCREEN_GX
bool "GuanXian 4.0 inch RGB (SPI+RGB)"
config SENSECAP_INDICATOR_SCREEN_DX
bool "DaXian 4.0 inch RGB (RGB only)"
endchoice

config LCD_EVB_SCREEN_WIDTH
int
default 800 if LCD_EV_SUB_BOARD3
default 480 if LCD_EV_SUB_BOARD2_LCD_480x480 || SENSECAP_INDICATOR_SCREEN_GX || SENSECAP_INDICATOR_SCREEN_DX
default 320 if LCD_EV_SUB_BOARD2_LCD_480x320
default 240 if LCD_EV_SUB_BOARD1_LCD_320x240
default 128 if LCD_EV_SUB_BOARD1_OLED_128x64

config LCD_EVB_SCREEN_HEIGHT
int
default 480 if LCD_EV_SUB_BOARD3 || LCD_EV_SUB_BOARD2_LCD_480x480 || LCD_EV_SUB_BOARD2_LCD_480x320 || SENSECAP_INDICATOR_SCREEN_GX || SENSECAP_INDICATOR_SCREEN_DX
default 320 if LCD_EV_SUB_BOARD1_LCD_320x240
default 64 if LCD_EV_SUB_BOARD1_OLED_128x64

choice LCD_EVB_SCREEN_ROTATION
prompt "Set rotation of lcd and touch"
default LCD_EVB_SCREEN_ROTATION_0
config LCD_EVB_SCREEN_ROTATION_0
bool "Rotate 0"
config LCD_EVB_SCREEN_ROTATION_90
bool "Rotate 90"
config LCD_EVB_SCREEN_ROTATION_180
bool "Rotate 180"
config LCD_EVB_SCREEN_ROTATION_270
bool "Rotate 270"
endchoice

config LCD_EVB_SCREEN_FREQ
depends on LCD_EV_SUB_BOARD2_LCD_480x480 || LCD_EV_SUB_BOARD3 || SENSECAP_INDICATOR_SCREEN_GX || SENSECAP_INDICATOR_SCREEN_DX
int "Frequency of lcd pclk"
default 18

config LCD_AVOID_TEAR
depends on LCD_EV_SUB_BOARD2_LCD_480x480 || LCD_EV_SUB_BOARD3 || SENSECAP_INDICATOR_SCREEN_GX || SENSECAP_INDICATOR_SCREEN_DX
depends on LCD_EVB_SCREEN_ROTATION_0
bool "Avoid tearing effect"
default "n"

choice LCD_LVGL_MODE
depends on LCD_AVOID_TEAR
prompt "Select lvgl mode for avoiding tearing"
default LCD_LVGL_FULL_REFRESH
config LCD_LVGL_FULL_REFRESH
bool "full refresh with two frame psram buffer"
config LCD_LVGL_DIRECT_MODE
bool "direct mode with two frame psram buffer"
endchoice

config LCD_TASK_PRIORITY
depends on LCD_AVOID_TEAR
int "Priority of lcd refresh task"
default 5

config LCD_TASK_REFRESH_TIME
depends on LCD_AVOID_TEAR
int "Screen refresh period(ms)"
default 40
endmenu
Loading

0 comments on commit 784bdda

Please sign in to comment.