Move fonts / assets definition from main/boards to CMakeLists.txt (#1174)

* update surfer-c3-1.14tft font size

* Move fonts / assets definition from main/boards to CMakeLists.txt

* fix c3 compiling errors

---------

Co-authored-by: Xiaoxia <terrence.huang@tenclass.com>
This commit is contained in:
Xiaoxia 2025-09-08 17:30:18 +08:00 committed by GitHub
parent 897239e997
commit d04b08133f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
111 changed files with 1193 additions and 1673 deletions

View File

@ -1,3 +1,37 @@
# Define default assets files (Absolute url starting with http or https is supported)
set(ASSETS_PUHUI_COMMON_14_1 "none-font_puhui_common_14_1-none.bin")
set(ASSETS_XIAOZHI_WAKENET_ONLY "wn9_nihaoxiaozhi_tts-none-none.bin")
set(ASSETS_XIAOZHI_PUHUI_COMMON_14_1 "wn9_nihaoxiaozhi_tts-font_puhui_common_14_1-none.bin")
set(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32 "wn9_nihaoxiaozhi_tts-font_puhui_common_16_4-emojis_32.bin")
set(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_64 "wn9_nihaoxiaozhi_tts-font_puhui_common_16_4-emojis_64.bin")
set(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64 "wn9_nihaoxiaozhi_tts-font_puhui_common_20_4-emojis_64.bin")
set(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64 "wn9_nihaoxiaozhi_tts-font_puhui_common_30_4-emojis_64.bin")
set(ASSETS_XIAOZHI_S_WAKENET_ONLY "wn9s_nihaoxiaozhi-none-none.bin")
set(ASSETS_XIAOZHI_S_PUHUI_COMMON_14_1 "wn9s_nihaoxiaozhi-font_puhui_common_14_1-none.bin")
set(ASSETS_XIAOZHI_S_PUHUI_COMMON_16_4_EMOJI_32 "wn9s_nihaoxiaozhi-font_puhui_common_16_4-emojis_32.bin")
set(ASSETS_XIAOZHI_S_PUHUI_COMMON_20_4_EMOJI_32 "wn9s_nihaoxiaozhi-font_puhui_common_20_4-emojis_32.bin")
set(ASSETS_XIAOZHI_S_PUHUI_COMMON_20_4_EMOJI_64 "wn9s_nihaoxiaozhi-font_puhui_common_20_4-emojis_64.bin")
set(ASSETS_XIAOZHI_S_PUHUI_COMMON_30_4_EMOJI_64 "wn9s_nihaoxiaozhi-font_puhui_common_30_4-emojis_64.bin")
# Embedded font files defined in `xiaozhi-fonts` component
# Basic fonts include ASCII and about 600 characters used in assets/locales
set(FONT_PUHUI_BASIC_14_1 font_puhui_basic_14_1)
set(FONT_PUHUI_BASIC_16_4 font_puhui_basic_16_4)
set(FONT_PUHUI_BASIC_20_4 font_puhui_basic_20_4)
set(FONT_PUHUI_BASIC_30_4 font_puhui_basic_30_4)
# Common fonts include about 7000 common characters generated with DeepSeek R1 tokenizer
set(FONT_PUHUI_COMMON_14_1 font_puhui_14_1)
set(FONT_PUHUI_COMMON_16_4 font_puhui_16_4)
set(FONT_PUHUI_COMMON_20_4 font_puhui_20_4)
set(FONT_PUHUI_COMMON_30_4 font_puhui_30_4)
set(FONT_AWESOME_14_1 font_awesome_14_1)
set(FONT_AWESOME_30_1 font_awesome_30_1)
set(FONT_AWESOME_16_4 font_awesome_16_4)
set(FONT_AWESOME_20_4 font_awesome_20_4)
set(FONT_AWESOME_30_4 font_awesome_30_4)
# Define source files
set(SOURCES "audio/audio_codec.cc" set(SOURCES "audio/audio_codec.cc"
"audio/audio_service.cc" "audio/audio_service.cc"
"audio/codecs/no_audio_codec.cc" "audio/codecs/no_audio_codec.cc"
@ -30,207 +64,459 @@ set(SOURCES "audio/audio_codec.cc"
set(INCLUDE_DIRS "." "display" "audio" "protocols") set(INCLUDE_DIRS "." "display" "audio" "protocols")
# # Add board common files
file(GLOB BOARD_COMMON_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/boards/common/*.cc) file(GLOB BOARD_COMMON_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/boards/common/*.cc)
list(APPEND SOURCES ${BOARD_COMMON_SOURCES}) list(APPEND SOURCES ${BOARD_COMMON_SOURCES})
list(APPEND INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/boards/common) list(APPEND INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/boards/common)
# BOARD_TYPE # Set default LVGL_TEXT_FONT and LVGL_ICON_FONT
set(LVGL_TEXT_FONT ${FONT_PUHUI_COMMON_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
# Add board files according to BOARD_TYPE
# Set default assets if the board uses partition table V2
if(CONFIG_BOARD_TYPE_BREAD_COMPACT_WIFI) if(CONFIG_BOARD_TYPE_BREAD_COMPACT_WIFI)
set(BOARD_TYPE "bread-compact-wifi") set(BOARD_TYPE "bread-compact-wifi")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_14_1})
elseif(CONFIG_BOARD_TYPE_BREAD_COMPACT_ML307) elseif(CONFIG_BOARD_TYPE_BREAD_COMPACT_ML307)
set(BOARD_TYPE "bread-compact-ml307") set(BOARD_TYPE "bread-compact-ml307")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_14_1})
elseif(CONFIG_BOARD_TYPE_BREAD_COMPACT_ESP32) elseif(CONFIG_BOARD_TYPE_BREAD_COMPACT_ESP32)
set(BOARD_TYPE "bread-compact-esp32") set(BOARD_TYPE "bread-compact-esp32")
elseif(CONFIG_BOARD_TYPE_BREAD_COMPACT_ESP32_LCD) elseif(CONFIG_BOARD_TYPE_BREAD_COMPACT_ESP32_LCD)
set(BOARD_TYPE "bread-compact-esp32-lcd") set(BOARD_TYPE "bread-compact-esp32-lcd")
set(LVGL_TEXT_FONT ${FONT_PUHUI_COMMON_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
elseif(CONFIG_BOARD_TYPE_DF_K10) elseif(CONFIG_BOARD_TYPE_DF_K10)
set(BOARD_TYPE "df-k10") set(BOARD_TYPE "df-k10")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_DF_S3_AI_CAM) elseif(CONFIG_BOARD_TYPE_DF_S3_AI_CAM)
set(BOARD_TYPE "df-s3-ai-cam") set(BOARD_TYPE "df-s3-ai-cam")
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_WAKENET_ONLY})
elseif(CONFIG_BOARD_TYPE_ESP_BOX_3) elseif(CONFIG_BOARD_TYPE_ESP_BOX_3)
set(BOARD_TYPE "esp-box-3") set(BOARD_TYPE "esp-box-3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP_BOX) elseif(CONFIG_BOARD_TYPE_ESP_BOX)
set(BOARD_TYPE "esp-box") set(BOARD_TYPE "esp-box")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP_BOX_LITE) elseif(CONFIG_BOARD_TYPE_ESP_BOX_LITE)
set(BOARD_TYPE "esp-box-lite") set(BOARD_TYPE "esp-box-lite")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_KEVIN_BOX_1) elseif(CONFIG_BOARD_TYPE_KEVIN_BOX_1)
set(BOARD_TYPE "kevin-box-1") set(BOARD_TYPE "kevin-box-1")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_14_1})
elseif(CONFIG_BOARD_TYPE_KEVIN_BOX_2) elseif(CONFIG_BOARD_TYPE_KEVIN_BOX_2)
set(BOARD_TYPE "kevin-box-2") set(BOARD_TYPE "kevin-box-2")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_14_1})
elseif(CONFIG_BOARD_TYPE_KEVIN_C3) elseif(CONFIG_BOARD_TYPE_KEVIN_C3)
set(BOARD_TYPE "kevin-c3") set(BOARD_TYPE "kevin-c3")
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_S_WAKENET_ONLY})
elseif(CONFIG_BOARD_TYPE_KEVIN_SP_V3_DEV) elseif(CONFIG_BOARD_TYPE_KEVIN_SP_V3_DEV)
set(BOARD_TYPE "kevin-sp-v3-dev") set(BOARD_TYPE "kevin-sp-v3-dev")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_KEVIN_SP_V4_DEV) elseif(CONFIG_BOARD_TYPE_KEVIN_SP_V4_DEV)
set(BOARD_TYPE "kevin-sp-v4-dev") set(BOARD_TYPE "kevin-sp-v4-dev")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_KEVIN_YUYING_313LCD) elseif(CONFIG_BOARD_TYPE_KEVIN_YUYING_313LCD)
set(BOARD_TYPE "kevin-yuying-313lcd") set(BOARD_TYPE "kevin-yuying-313lcd")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_30_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_LICHUANG_DEV) elseif(CONFIG_BOARD_TYPE_LICHUANG_DEV)
set(BOARD_TYPE "lichuang-dev") set(BOARD_TYPE "lichuang-dev")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_LICHUANG_C3_DEV) elseif(CONFIG_BOARD_TYPE_LICHUANG_C3_DEV)
set(BOARD_TYPE "lichuang-c3-dev") set(BOARD_TYPE "lichuang-c3-dev")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_S_PUHUI_COMMON_20_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_MAGICLICK_2P4) elseif(CONFIG_BOARD_TYPE_MAGICLICK_2P4)
set(BOARD_TYPE "magiclick-2p4") set(BOARD_TYPE "magiclick-2p4")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_MAGICLICK_2P5) elseif(CONFIG_BOARD_TYPE_MAGICLICK_2P5)
set(BOARD_TYPE "magiclick-2p5") set(BOARD_TYPE "magiclick-2p5")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_MAGICLICK_C3) elseif(CONFIG_BOARD_TYPE_MAGICLICK_C3)
set(BOARD_TYPE "magiclick-c3") set(BOARD_TYPE "magiclick-c3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_S_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_MAGICLICK_C3_V2) elseif(CONFIG_BOARD_TYPE_MAGICLICK_C3_V2)
set(BOARD_TYPE "magiclick-c3-v2") set(BOARD_TYPE "magiclick-c3-v2")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_S_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_M5STACK_CORE_S3) elseif(CONFIG_BOARD_TYPE_M5STACK_CORE_S3)
set(BOARD_TYPE "m5stack-core-s3") set(BOARD_TYPE "m5stack-core-s3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_M5STACK_CORE_TAB5) elseif(CONFIG_BOARD_TYPE_M5STACK_CORE_TAB5)
set(BOARD_TYPE "m5stack-tab5") set(BOARD_TYPE "m5stack-tab5")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_30_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ATOMS3_ECHO_BASE) elseif(CONFIG_BOARD_TYPE_ATOMS3_ECHO_BASE)
set(BOARD_TYPE "atoms3-echo-base") set(BOARD_TYPE "atoms3-echo-base")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_ATOMS3R_ECHO_BASE) elseif(CONFIG_BOARD_TYPE_ATOMS3R_ECHO_BASE)
set(BOARD_TYPE "atoms3r-echo-base") set(BOARD_TYPE "atoms3r-echo-base")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_ATOMS3R_CAM_M12_ECHO_BASE) elseif(CONFIG_BOARD_TYPE_ATOMS3R_CAM_M12_ECHO_BASE)
set(BOARD_TYPE "atoms3r-cam-m12-echo-base") set(BOARD_TYPE "atoms3r-cam-m12-echo-base")
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_WAKENET_ONLY})
elseif(CONFIG_BOARD_TYPE_ATOM_ECHOS3R) elseif(CONFIG_BOARD_TYPE_ATOM_ECHOS3R)
set(BOARD_TYPE "atom-echos3r") set(BOARD_TYPE "atom-echos3r")
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_WAKENET_ONLY})
elseif(CONFIG_BOARD_TYPE_ATOMMATRIX_ECHO_BASE) elseif(CONFIG_BOARD_TYPE_ATOMMATRIX_ECHO_BASE)
set(BOARD_TYPE "atommatrix-echo-base") set(BOARD_TYPE "atommatrix-echo-base")
elseif(CONFIG_BOARD_TYPE_XMINI_C3_V3) elseif(CONFIG_BOARD_TYPE_XMINI_C3_V3)
set(BOARD_TYPE "xmini-c3-v3") set(BOARD_TYPE "xmini-c3-v3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_S_PUHUI_COMMON_14_1})
elseif(CONFIG_BOARD_TYPE_XMINI_C3_4G) elseif(CONFIG_BOARD_TYPE_XMINI_C3_4G)
set(BOARD_TYPE "xmini-c3-4g") set(BOARD_TYPE "xmini-c3-4g")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
set(DEFAULT_ASSETS ${ASSETS_PUHUI_COMMON_14_1})
elseif(CONFIG_BOARD_TYPE_XMINI_C3) elseif(CONFIG_BOARD_TYPE_XMINI_C3)
set(BOARD_TYPE "xmini-c3") set(BOARD_TYPE "xmini-c3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_S_PUHUI_COMMON_14_1})
elseif(CONFIG_BOARD_TYPE_ESP32S3_KORVO2_V3) elseif(CONFIG_BOARD_TYPE_ESP32S3_KORVO2_V3)
set(BOARD_TYPE "esp32s3-korvo2-v3") set(BOARD_TYPE "esp32s3-korvo2-v3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP_SPARKBOT) elseif(CONFIG_BOARD_TYPE_ESP_SPARKBOT)
set(BOARD_TYPE "esp-sparkbot") set(BOARD_TYPE "esp-sparkbot")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP_SPOT_S3) elseif(CONFIG_BOARD_TYPE_ESP_SPOT_S3)
set(BOARD_TYPE "esp-spot-s3") set(BOARD_TYPE "esp-spot-s3")
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_WAKENET_ONLY})
elseif(CONFIG_BOARD_TYPE_ESP_HI) elseif(CONFIG_BOARD_TYPE_ESP_HI)
set(BOARD_TYPE "esp-hi") set(BOARD_TYPE "esp-hi")
elseif(CONFIG_BOARD_TYPE_ECHOEAR) elseif(CONFIG_BOARD_TYPE_ECHOEAR)
set(BOARD_TYPE "echoear") set(BOARD_TYPE "echoear")
set(LVGL_TEXT_FONT ${FONT_PUHUI_COMMON_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
elseif(CONFIG_BOARD_TYPE_ESP32S3_AUDIO_BOARD) elseif(CONFIG_BOARD_TYPE_ESP32S3_AUDIO_BOARD)
set(BOARD_TYPE "waveshare-s3-audio-board") set(BOARD_TYPE "waveshare-s3-audio-board")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_AMOLED_1_8) elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_AMOLED_1_8)
set(BOARD_TYPE "esp32-s3-touch-amoled-1.8") set(BOARD_TYPE "esp32-s3-touch-amoled-1.8")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_30_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_AMOLED_2_06) elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_AMOLED_2_06)
set(BOARD_TYPE "waveshare-s3-touch-amoled-2.06") set(BOARD_TYPE "waveshare-s3-touch-amoled-2.06")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_30_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_AMOLED_1_75) elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_AMOLED_1_75)
set(BOARD_TYPE "waveshare-s3-touch-amoled-1.75") set(BOARD_TYPE "waveshare-s3-touch-amoled-1.75")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_30_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_LCD_1_85C) elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_LCD_1_85C)
set(BOARD_TYPE "esp32-s3-touch-lcd-1.85c") set(BOARD_TYPE "esp32-s3-touch-lcd-1.85c")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_LCD_1_85) elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_LCD_1_85)
set(BOARD_TYPE "esp32-s3-touch-lcd-1.85") set(BOARD_TYPE "esp32-s3-touch-lcd-1.85")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_LCD_1_46) elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_LCD_1_46)
set(BOARD_TYPE "esp32-s3-touch-lcd-1.46") set(BOARD_TYPE "esp32-s3-touch-lcd-1.46")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_LCD_3_5) elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_LCD_3_5)
set(BOARD_TYPE "esp32-s3-touch-lcd-3.5") set(BOARD_TYPE "esp32-s3-touch-lcd-3.5")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_LCD_3_5B) elseif(CONFIG_BOARD_TYPE_ESP32S3_Touch_LCD_3_5B)
set(BOARD_TYPE "waveshare-s3-touch-lcd-3.5b") set(BOARD_TYPE "waveshare-s3-touch-lcd-3.5b")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_ESP32C6_LCD_1_69) elseif(CONFIG_BOARD_TYPE_ESP32C6_LCD_1_69)
set(BOARD_TYPE "waveshare-c6-lcd-1.69") set(BOARD_TYPE "waveshare-c6-lcd-1.69")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_S_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32C6_Touch_AMOLED_1_43) elseif(CONFIG_BOARD_TYPE_ESP32C6_Touch_AMOLED_1_43)
set(BOARD_TYPE "waveshare-c6-touch-amoled-1.43") set(BOARD_TYPE "waveshare-c6-touch-amoled-1.43")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_30_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_S_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32P4_NANO) elseif(CONFIG_BOARD_TYPE_ESP32P4_NANO)
set(BOARD_TYPE "waveshare-p4-nano") set(BOARD_TYPE "waveshare-p4-nano")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_30_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32P4_WIFI6_Touch_LCD_4B) elseif(CONFIG_BOARD_TYPE_ESP32P4_WIFI6_Touch_LCD_4B)
set(BOARD_TYPE "waveshare-p4-wifi6-touch-lcd-4b") set(BOARD_TYPE "waveshare-p4-wifi6-touch-lcd-4b")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_30_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32P4_WIFI6_Touch_LCD_XC) elseif(CONFIG_BOARD_TYPE_ESP32P4_WIFI6_Touch_LCD_XC)
set(BOARD_TYPE "waveshare-p4-wifi6-touch-lcd-xc") set(BOARD_TYPE "waveshare-p4-wifi6-touch-lcd-xc")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_30_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_BREAD_COMPACT_WIFI_LCD) elseif(CONFIG_BOARD_TYPE_BREAD_COMPACT_WIFI_LCD)
set(BOARD_TYPE "bread-compact-wifi-lcd") set(BOARD_TYPE "bread-compact-wifi-lcd")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_TUDOUZI) elseif(CONFIG_BOARD_TYPE_TUDOUZI)
set(BOARD_TYPE "tudouzi") set(BOARD_TYPE "tudouzi")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_14_1})
elseif(CONFIG_BOARD_TYPE_LILYGO_T_CIRCLE_S3) elseif(CONFIG_BOARD_TYPE_LILYGO_T_CIRCLE_S3)
set(BOARD_TYPE "lilygo-t-circle-s3") set(BOARD_TYPE "lilygo-t-circle-s3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_LILYGO_T_CAMERAPLUS_S3_V1_0_V1_1) elseif(CONFIG_BOARD_TYPE_LILYGO_T_CAMERAPLUS_S3_V1_0_V1_1)
set(BOARD_TYPE "lilygo-t-cameraplus-s3") set(BOARD_TYPE "lilygo-t-cameraplus-s3")
elseif(CONFIG_BOARD_TYPE_LILYGO_T_CAMERAPLUS_S3_V1_2) set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(BOARD_TYPE "lilygo-t-cameraplus-s3") set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_LILYGO_T_DISPLAY_S3_PRO_MVSRLORA) elseif(CONFIG_BOARD_TYPE_LILYGO_T_DISPLAY_S3_PRO_MVSRLORA)
set(BOARD_TYPE "lilygo-t-display-s3-pro-mvsrlora") set(BOARD_TYPE "lilygo-t-display-s3-pro-mvsrlora")
elseif(CONFIG_BOARD_TYPE_LILYGO_T_DISPLAY_S3_PRO_MVSRLORA_NO_BATTERY) set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(BOARD_TYPE "lilygo-t-display-s3-pro-mvsrlora") set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_MOVECALL_MOJI_ESP32S3) elseif(CONFIG_BOARD_TYPE_MOVECALL_MOJI_ESP32S3)
set(BOARD_TYPE "movecall-moji-esp32s3") set(BOARD_TYPE "movecall-moji-esp32s3")
elseif(CONFIG_BOARD_TYPE_MOVECALL_CUICAN_ESP32S3) set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_MOVECALL_CUICAN_ESP32S3)
set(BOARD_TYPE "movecall-cuican-esp32s3") set(BOARD_TYPE "movecall-cuican-esp32s3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3) elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3)
set(BOARD_TYPE "atk-dnesp32s3") set(BOARD_TYPE "atk-dnesp32s3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3_BOX) elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3_BOX)
set(BOARD_TYPE "atk-dnesp32s3-box") set(BOARD_TYPE "atk-dnesp32s3-box")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3_BOX0) elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3_BOX0)
set(BOARD_TYPE "atk-dnesp32s3-box0") set(BOARD_TYPE "atk-dnesp32s3-box0")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3_BOX2_WIFI) elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3_BOX2_WIFI)
set(BOARD_TYPE "atk-dnesp32s3-box2-wifi") set(BOARD_TYPE "atk-dnesp32s3-box2-wifi")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3_BOX2_4G) elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3_BOX2_4G)
set(BOARD_TYPE "atk-dnesp32s3-box2-4g") set(BOARD_TYPE "atk-dnesp32s3-box2-4g")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3M_WIFI) elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3M_WIFI)
set(BOARD_TYPE "atk-dnesp32s3m-wifi") set(BOARD_TYPE "atk-dnesp32s3m-wifi")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3M_4G) elseif(CONFIG_BOARD_TYPE_ATK_DNESP32S3M_4G)
set(BOARD_TYPE "atk-dnesp32s3m-4g") set(BOARD_TYPE "atk-dnesp32s3m-4g")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_DU_CHATX) elseif(CONFIG_BOARD_TYPE_DU_CHATX)
set(BOARD_TYPE "du-chatx") set(BOARD_TYPE "du-chatx")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_ESP32S3_Taiji_Pi) elseif(CONFIG_BOARD_TYPE_ESP32S3_Taiji_Pi)
set(BOARD_TYPE "taiji-pi-s3") set(BOARD_TYPE "taiji-pi-s3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_0_85TFT_WIFI) elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_0_85TFT_WIFI)
set(BOARD_TYPE "xingzhi-cube-0.85tft-wifi") set(BOARD_TYPE "xingzhi-cube-0.85tft-wifi")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_0_85TFT_ML307) elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_0_85TFT_ML307)
set(BOARD_TYPE "xingzhi-cube-0.85tft-ml307") set(BOARD_TYPE "xingzhi-cube-0.85tft-ml307")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_0_96OLED_WIFI) elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_0_96OLED_WIFI)
set(BOARD_TYPE "xingzhi-cube-0.96oled-wifi") set(BOARD_TYPE "xingzhi-cube-0.96oled-wifi")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_14_1})
elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_0_96OLED_ML307) elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_0_96OLED_ML307)
set(BOARD_TYPE "xingzhi-cube-0.96oled-ml307") set(BOARD_TYPE "xingzhi-cube-0.96oled-ml307")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_14_1})
elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_1_54TFT_WIFI) elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_1_54TFT_WIFI)
set(BOARD_TYPE "xingzhi-cube-1.54tft-wifi") set(BOARD_TYPE "xingzhi-cube-1.54tft-wifi")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_1_54TFT_ML307) elseif(CONFIG_BOARD_TYPE_XINGZHI_Cube_1_54TFT_ML307)
set(BOARD_TYPE "xingzhi-cube-1.54tft-ml307") set(BOARD_TYPE "xingzhi-cube-1.54tft-ml307")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_SENSECAP_WATCHER) elseif(CONFIG_BOARD_TYPE_SENSECAP_WATCHER)
set(BOARD_TYPE "sensecap-watcher") set(BOARD_TYPE "sensecap-watcher")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_DOIT_S3_AIBOX) elseif(CONFIG_BOARD_TYPE_DOIT_S3_AIBOX)
set(BOARD_TYPE "doit-s3-aibox") set(BOARD_TYPE "doit-s3-aibox")
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_WAKENET_ONLY})
elseif(CONFIG_BOARD_TYPE_MIXGO_NOVA) elseif(CONFIG_BOARD_TYPE_MIXGO_NOVA)
set(BOARD_TYPE "mixgo-nova") set(BOARD_TYPE "mixgo-nova")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_GENJUTECH_S3_1_54TFT) elseif(CONFIG_BOARD_TYPE_GENJUTECH_S3_1_54TFT)
set(BOARD_TYPE "genjutech-s3-1.54tft") set(BOARD_TYPE "genjutech-s3-1.54tft")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32_CGC) elseif(CONFIG_BOARD_TYPE_ESP32_CGC)
set(BOARD_TYPE "esp32-cgc") set(BOARD_TYPE "esp32-cgc")
set(LVGL_TEXT_FONT ${FONT_PUHUI_COMMON_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
elseif(CONFIG_BOARD_TYPE_ESP32_CGC_144) elseif(CONFIG_BOARD_TYPE_ESP32_CGC_144)
set(BOARD_TYPE "esp32-cgc-144") set(BOARD_TYPE "esp32-cgc-144")
set(LVGL_TEXT_FONT ${FONT_PUHUI_COMMON_14_1})
set(LVGL_ICON_FONT ${FONT_AWESOME_14_1})
elseif(CONFIG_BOARD_TYPE_ESP_S3_LCD_EV_Board) elseif(CONFIG_BOARD_TYPE_ESP_S3_LCD_EV_Board)
set(BOARD_TYPE "esp-s3-lcd-ev-board") set(BOARD_TYPE "esp-s3-lcd-ev-board")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_30_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP_S3_LCD_EV_Board_2) elseif(CONFIG_BOARD_TYPE_ESP_S3_LCD_EV_Board_2)
set(BOARD_TYPE "esp-s3-lcd-ev-board-2") set(BOARD_TYPE "esp-s3-lcd-ev-board-2")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_30_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_30_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ZHENGCHEN_1_54TFT_WIFI) elseif(CONFIG_BOARD_TYPE_ZHENGCHEN_1_54TFT_WIFI)
set(BOARD_TYPE "zhengchen-1.54tft-wifi") set(BOARD_TYPE "zhengchen-1.54tft-wifi")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_MINSI_K08_DUAL) elseif(CONFIG_BOARD_TYPE_MINSI_K08_DUAL)
set(BOARD_TYPE "minsi-k08-dual") set(BOARD_TYPE "minsi-k08-dual")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ZHENGCHEN_1_54TFT_ML307) elseif(CONFIG_BOARD_TYPE_ZHENGCHEN_1_54TFT_ML307)
set(BOARD_TYPE "zhengchen-1.54tft-ml307") set(BOARD_TYPE "zhengchen-1.54tft-ml307")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_ESP32_S3_1_54_MUMA) elseif(CONFIG_BOARD_TYPE_ESP32_S3_1_54_MUMA)
set(BOARD_TYPE "sp-esp32-s3-1.54-muma") set(BOARD_TYPE "sp-esp32-s3-1.54-muma")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32})
elseif(CONFIG_BOARD_TYPE_ESP32_S3_1_28_BOX) elseif(CONFIG_BOARD_TYPE_ESP32_S3_1_28_BOX)
set(BOARD_TYPE "sp-esp32-s3-1.28-box") set(BOARD_TYPE "sp-esp32-s3-1.28-box")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_OTTO_ROBOT) elseif(CONFIG_BOARD_TYPE_OTTO_ROBOT)
set(BOARD_TYPE "otto-robot") set(BOARD_TYPE "otto-robot")
set(LVGL_TEXT_FONT ${FONT_PUHUI_COMMON_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
elseif(CONFIG_BOARD_TYPE_ELECTRON_BOT) elseif(CONFIG_BOARD_TYPE_ELECTRON_BOT)
set(BOARD_TYPE "electron-bot") set(BOARD_TYPE "electron-bot")
set(LVGL_TEXT_FONT ${FONT_PUHUI_COMMON_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
elseif(CONFIG_BOARD_TYPE_BREAD_COMPACT_WIFI_CAM) elseif(CONFIG_BOARD_TYPE_BREAD_COMPACT_WIFI_CAM)
set(BOARD_TYPE "bread-compact-wifi-s3cam") set(BOARD_TYPE "bread-compact-wifi-s3cam")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_16_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_16_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_JIUCHUAN) elseif(CONFIG_BOARD_TYPE_JIUCHUAN)
set(BOARD_TYPE "jiuchuan-s3") set(BOARD_TYPE "jiuchuan-s3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_LABPLUS_MPYTHON_V3) elseif(CONFIG_BOARD_TYPE_LABPLUS_MPYTHON_V3)
set(BOARD_TYPE "labplus-mpython-v3") set(BOARD_TYPE "labplus-mpython-v3")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_LABPLUS_LEDONG_V2) elseif(CONFIG_BOARD_TYPE_LABPLUS_LEDONG_V2)
set(BOARD_TYPE "labplus-ledong-v2") set(BOARD_TYPE "labplus-ledong-v2")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64})
elseif(CONFIG_BOARD_TYPE_SURFER_C3_1_14TFT) elseif(CONFIG_BOARD_TYPE_SURFER_C3_1_14TFT)
set(BOARD_TYPE "surfer-c3-1.14tft") set(BOARD_TYPE "surfer-c3-1.14tft")
set(LVGL_TEXT_FONT ${FONT_PUHUI_BASIC_20_4})
set(LVGL_ICON_FONT ${FONT_AWESOME_20_4})
set(DEFAULT_ASSETS ${ASSETS_XIAOZHI_S_PUHUI_COMMON_20_4_EMOJI_32})
endif() endif()
file(GLOB BOARD_SOURCES file(GLOB BOARD_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_TYPE}/*.cc ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_TYPE}/*.cc
${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_TYPE}/*.c ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_TYPE}/*.c
) )
list(APPEND SOURCES ${BOARD_SOURCES}) list(APPEND SOURCES ${BOARD_SOURCES})
# Select audio processor according to Kconfig
if(CONFIG_USE_AUDIO_PROCESSOR) if(CONFIG_USE_AUDIO_PROCESSOR)
list(APPEND SOURCES "audio/processors/afe_audio_processor.cc") list(APPEND SOURCES "audio/processors/afe_audio_processor.cc")
else() else()
@ -244,7 +530,7 @@ elseif(CONFIG_USE_CUSTOM_WAKE_WORD)
list(APPEND SOURCES "audio/wake_words/custom_wake_word.cc") list(APPEND SOURCES "audio/wake_words/custom_wake_word.cc")
endif() endif()
# Kconfig # Select language directory according to Kconfig
if(CONFIG_LANGUAGE_ZH_CN) if(CONFIG_LANGUAGE_ZH_CN)
set(LANG_DIR "zh-CN") set(LANG_DIR "zh-CN")
elseif(CONFIG_LANGUAGE_ZH_TW) elseif(CONFIG_LANGUAGE_ZH_TW)
@ -291,13 +577,13 @@ elseif(CONFIG_LANGUAGE_RO_RO)
set(LANG_DIR "ro-RO") set(LANG_DIR "ro-RO")
endif() endif()
# # Define generation path
set(LANG_JSON "${CMAKE_CURRENT_SOURCE_DIR}/assets/locales/${LANG_DIR}/language.json") set(LANG_JSON "${CMAKE_CURRENT_SOURCE_DIR}/assets/locales/${LANG_DIR}/language.json")
set(LANG_HEADER "${CMAKE_CURRENT_SOURCE_DIR}/assets/lang_config.h") set(LANG_HEADER "${CMAKE_CURRENT_SOURCE_DIR}/assets/lang_config.h")
file(GLOB LANG_SOUNDS ${CMAKE_CURRENT_SOURCE_DIR}/assets/locales/${LANG_DIR}/*.ogg) file(GLOB LANG_SOUNDS ${CMAKE_CURRENT_SOURCE_DIR}/assets/locales/${LANG_DIR}/*.ogg)
file(GLOB COMMON_SOUNDS ${CMAKE_CURRENT_SOURCE_DIR}/assets/common/*.ogg) file(GLOB COMMON_SOUNDS ${CMAKE_CURRENT_SOURCE_DIR}/assets/common/*.ogg)
# ESP32 # If target chip is ESP32, exclude specific files to avoid build errors
if(CONFIG_IDF_TARGET_ESP32) if(CONFIG_IDF_TARGET_ESP32)
list(REMOVE_ITEM SOURCES "audio/codecs/box_audio_codec.cc" list(REMOVE_ITEM SOURCES "audio/codecs/box_audio_codec.cc"
"audio/codecs/es8388_audio_codec.cc" "audio/codecs/es8388_audio_codec.cc"
@ -312,16 +598,17 @@ idf_component_register(SRCS ${SOURCES}
WHOLE_ARCHIVE WHOLE_ARCHIVE
) )
# 使 target_compile_definitions BOARD_TYPE, BOARD_NAME # Use target_compile_definitions to define BOARD_TYPE, BOARD_NAME
# BOARD_NAME 使 BOARD_TYPE # If BOARD_NAME is empty, use BOARD_TYPE
if(NOT BOARD_NAME) if(NOT BOARD_NAME)
set(BOARD_NAME ${BOARD_TYPE}) set(BOARD_NAME ${BOARD_TYPE})
endif() endif()
target_compile_definitions(${COMPONENT_LIB} target_compile_definitions(${COMPONENT_LIB}
PRIVATE BOARD_TYPE=\"${BOARD_TYPE}\" BOARD_NAME=\"${BOARD_NAME}\" PRIVATE BOARD_TYPE=\"${BOARD_TYPE}\" BOARD_NAME=\"${BOARD_NAME}\"
PRIVATE DEFAULT_ASSETS=\"${DEFAULT_ASSETS}\" LVGL_TEXT_FONT=${LVGL_TEXT_FONT} LVGL_ICON_FONT=${LVGL_ICON_FONT}
) )
# # Add generation rules
add_custom_command( add_custom_command(
OUTPUT ${LANG_HEADER} OUTPUT ${LANG_HEADER}
COMMAND python ${PROJECT_DIR}/scripts/gen_lang.py COMMAND python ${PROJECT_DIR}/scripts/gen_lang.py
@ -333,7 +620,7 @@ add_custom_command(
COMMENT "Generating ${LANG_DIR} language config" COMMENT "Generating ${LANG_DIR} language config"
) )
# # Force build generation dependencies
add_custom_target(lang_header ALL add_custom_target(lang_header ALL
DEPENDS ${LANG_HEADER} DEPENDS ${LANG_HEADER}
) )
@ -359,7 +646,7 @@ foreach(FILENAME IN LISTS FILES_TO_DOWNLOAD)
set(REMOTE_FILE "${URL}/${FILENAME}") set(REMOTE_FILE "${URL}/${FILENAME}")
set(LOCAL_FILE "${SPIFFS_DIR}/${FILENAME}") set(LOCAL_FILE "${SPIFFS_DIR}/${FILENAME}")
# # Check if local file exists
if(EXISTS ${LOCAL_FILE}) if(EXISTS ${LOCAL_FILE})
message(STATUS "File ${FILENAME} already exists, skipping download") message(STATUS "File ${FILENAME} already exists, skipping download")
else() else()
@ -401,3 +688,98 @@ spiffs_create_partition_assets(
IMPORT_INC_PATH ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_TYPE} IMPORT_INC_PATH ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_TYPE}
) )
endif() endif()
# Font configuration validation function
function(validate_font_config board_name text_font default_assets)
if(text_font)
# Check if DEFAULT_ASSETS contains font
if(default_assets AND default_assets MATCHES "font_")
# Rule 1: If DEFAULT_ASSETS uses font, LVGL_TEXT_FONT must be BASIC
if(NOT text_font MATCHES "basic")
message(FATAL_ERROR "Font config error for ${board_name}: DEFAULT_ASSETS contains COMMON font but LVGL_TEXT_FONT is not BASIC (${text_font})")
endif()
else()
# Rule 2: If no DEFAULT_ASSETS or DEFAULT_ASSETS doesn't contain font_, LVGL_TEXT_FONT must not be BASIC
if(text_font MATCHES "basic")
message(FATAL_ERROR "Font config error for ${board_name}: No DEFAULT_ASSETS with COMMON font but LVGL_TEXT_FONT is not COMMON (${text_font})")
endif()
endif()
# Pass validation
message(STATUS "Font config validation passed for ${board_name}: LVGL_TEXT_FONT=${text_font}, DEFAULT_ASSETS=${default_assets}")
endif()
endfunction()
# DEFAULT_ASSETS prefix validation function
function(validate_default_assets_prefix board_name default_assets)
if(default_assets)
# Check for ESP32S3/P4 target - DEFAULT_ASSETS cannot start with "wn9s_"
if(CONFIG_IDF_TARGET_ESP32S3 OR CONFIG_IDF_TARGET_ESP32P4)
if(default_assets MATCHES "^wn9s_")
message(FATAL_ERROR "Assets config error for ${board_name}: DEFAULT_ASSETS cannot start with 'wn9s_' for ESP32S3 target (${default_assets})")
endif()
endif()
# Check for ESP32C3/C6 target - DEFAULT_ASSETS cannot start with "wn9_"
if(CONFIG_IDF_TARGET_ESP32C3 OR CONFIG_IDF_TARGET_ESP32C6)
if(default_assets MATCHES "^wn9_")
message(FATAL_ERROR "Assets config error for ${board_name}: DEFAULT_ASSETS cannot start with 'wn9_' for ESP32C3/C6 target (${default_assets})")
endif()
endif()
# Pass validation
message(STATUS "Assets prefix validation passed for ${board_name}: DEFAULT_ASSETS=${default_assets}")
endif()
endfunction()
# Global font configuration validation
# This will validate the current board's font configuration
if(LVGL_TEXT_FONT)
validate_font_config("${BOARD_TYPE}" "${LVGL_TEXT_FONT}" "${DEFAULT_ASSETS}")
endif()
# Global DEFAULT_ASSETS prefix validation
# This will validate the current board's DEFAULT_ASSETS prefix configuration
if(DEFAULT_ASSETS)
validate_default_assets_prefix("${BOARD_TYPE}" "${DEFAULT_ASSETS}")
endif()
# Download and flash DEFAULT_ASSETS if defined and enabled
if(DEFAULT_ASSETS AND CONFIG_FLASH_DEFAULT_ASSETS)
# Construct the full URL
set(ASSETS_URL "${CONFIG_DEFAULT_ASSETS_URL_PREFIX}${DEFAULT_ASSETS}")
set(ASSETS_LOCAL_FILE "${CMAKE_BINARY_DIR}/${DEFAULT_ASSETS}")
set(ASSETS_TEMP_FILE "${CMAKE_BINARY_DIR}/${DEFAULT_ASSETS}.tmp")
# Check if local file exists
if(EXISTS ${ASSETS_LOCAL_FILE})
message(STATUS "Assets file ${DEFAULT_ASSETS} already exists, skipping download")
else()
message(STATUS "Downloading ${DEFAULT_ASSETS}")
# Clean up any existing temp file
if(EXISTS ${ASSETS_TEMP_FILE})
file(REMOVE ${ASSETS_TEMP_FILE})
endif()
# Download to temporary file first
file(DOWNLOAD ${ASSETS_URL} ${ASSETS_TEMP_FILE}
STATUS DOWNLOAD_STATUS)
list(GET DOWNLOAD_STATUS 0 STATUS_CODE)
if(NOT STATUS_CODE EQUAL 0)
# Clean up temp file on failure
if(EXISTS ${ASSETS_TEMP_FILE})
file(REMOVE ${ASSETS_TEMP_FILE})
endif()
message(FATAL_ERROR "Failed to download ${DEFAULT_ASSETS} from ${ASSETS_URL}")
endif()
# Move temp file to final location (atomic operation)
file(RENAME ${ASSETS_TEMP_FILE} ${ASSETS_LOCAL_FILE})
message(STATUS "Successfully downloaded ${DEFAULT_ASSETS}")
endif()
# Flash assets to partition using esptool_py_flash_to_partition
esptool_py_flash_to_partition(flash "assets" "${ASSETS_LOCAL_FILE}")
message(STATUS "Assets download and flash configured: ${ASSETS_URL} -> assets partition")
endif()

View File

@ -12,6 +12,13 @@ config DEFAULT_ASSETS_URL_PREFIX
help help
The assets will be downloaded from this URL. The assets will be downloaded from this URL.
config FLASH_DEFAULT_ASSETS
bool "Flash Default Assets"
default y
help
Download and flash default assets to the assets partition during build.
If disabled, the assets partition will not be automatically populated.
choice choice
prompt "Default Language" prompt "Default Language"
default LANGUAGE_ZH_CN default LANGUAGE_ZH_CN

View File

@ -131,10 +131,6 @@ mkdir main/boards/my-custom-board
#define TAG "MyCustomBoard" #define TAG "MyCustomBoard"
// 声明字体
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class MyCustomBoard : public WifiBoard { class MyCustomBoard : public WifiBoard {
private: private:
i2c_master_bus_handle_t codec_i2c_bus_; i2c_master_bus_handle_t codec_i2c_bus_;
@ -212,8 +208,7 @@ private:
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_WIDTH, DISPLAY_HEIGHT,
DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y,
DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
// MCP Tools 初始化 // MCP Tools 初始化
@ -232,12 +227,6 @@ public:
GetBacklight()->SetBrightness(100); GetBacklight()->SetBrightness(100);
} }
// 动态加载资源文件(包括字体、唤醒词、表情包)
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
// 获取音频编解码器 // 获取音频编解码器
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec( static Es8311AudioCodec audio_codec(

View File

@ -20,10 +20,6 @@
#define TAG "atk_dnesp32s3_box" #define TAG "atk_dnesp32s3_box"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class ATK_NoAudioCodecDuplex : public NoAudioCodec { class ATK_NoAudioCodecDuplex : public NoAudioCodec {
public: public:
ATK_NoAudioCodecDuplex(int input_sample_rate, int output_sample_rate, gpio_num_t bclk, gpio_num_t ws, gpio_num_t dout, gpio_num_t din) { ATK_NoAudioCodecDuplex(int input_sample_rate, int output_sample_rate, gpio_num_t bclk, gpio_num_t ws, gpio_num_t dout, gpio_num_t din) {
@ -84,7 +80,6 @@ public:
} }
}; };
class XL9555_IN : public I2cDevice { class XL9555_IN : public I2cDevice {
public: public:
XL9555_IN(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : I2cDevice(i2c_bus, addr) { XL9555_IN(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : I2cDevice(i2c_bus, addr) {
@ -243,8 +238,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel, true));
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -266,11 +260,6 @@ public:
InitializeButtons(); InitializeButtons();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
/* 根据探测结果初始化编解码器 */ /* 根据探测结果初始化编解码器 */
if (es8311_detected_) { if (es8311_detected_) {

View File

@ -20,9 +20,6 @@
#define TAG "atk_dnesp32s3_box0" #define TAG "atk_dnesp32s3_box0"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class atk_dnesp32s3_box0 : public WifiBoard { class atk_dnesp32s3_box0 : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -294,7 +291,6 @@ private:
GetDisplay()->ShowNotification(Lang::Strings::MAX_VOLUME); GetDisplay()->ShowNotification(Lang::Strings::MAX_VOLUME);
}); });
} }
void InitializeSt7789Display() { void InitializeSt7789Display() {
@ -325,8 +321,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -344,11 +339,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec( static Es8311AudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -21,9 +21,6 @@
#define TAG "atk_dnesp32s3_box2_4g" #define TAG "atk_dnesp32s3_box2_4g"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class atk_dnesp32s3_box2_4g : public DualNetworkBoard { class atk_dnesp32s3_box2_4g : public DualNetworkBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -412,8 +409,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -429,11 +425,6 @@ public:
InitializeBoardPowerManager(); InitializeBoardPowerManager();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8389AudioCodec audio_codec( static Es8389AudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -21,9 +21,6 @@
#define TAG "atk_dnesp32s3_box2_wifi" #define TAG "atk_dnesp32s3_box2_wifi"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class atk_dnesp32s3_box2_wifi : public WifiBoard { class atk_dnesp32s3_box2_wifi : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -392,8 +389,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -408,11 +404,6 @@ public:
InitializeBoardPowerManager(); InitializeBoardPowerManager();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8389AudioCodec audio_codec( static Es8389AudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -16,9 +16,6 @@
#define TAG "atk_dnesp32s3" #define TAG "atk_dnesp32s3"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class XL9555 : public I2cDevice { class XL9555 : public I2cDevice {
public: public:
XL9555(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : I2cDevice(i2c_bus, addr) { XL9555(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : I2cDevice(i2c_bus, addr) {
@ -47,7 +44,6 @@ public:
} }
}; };
class atk_dnesp32s3 : public WifiBoard { class atk_dnesp32s3 : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -131,8 +127,7 @@ private:
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
// 初始化摄像头ov2640 // 初始化摄像头ov2640
@ -201,11 +196,6 @@ public:
InitializeCamera(); InitializeCamera();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -20,9 +20,6 @@
#define TAG "atk_dnesp32s3m_4g" #define TAG "atk_dnesp32s3m_4g"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class atk_dnesp32s3m_4g : public Ml307Board { class atk_dnesp32s3m_4g : public Ml307Board {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -167,8 +164,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
public: public:
@ -186,11 +182,6 @@ public:
} }
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -19,9 +19,6 @@
#define TAG "atk_dnesp32s3m_wifi" #define TAG "atk_dnesp32s3m_wifi"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class atk_dnesp32s3m_wifi : public WifiBoard { class atk_dnesp32s3m_wifi : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -177,8 +174,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
public: public:
@ -196,11 +192,6 @@ public:
} }
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -12,7 +12,6 @@
#define TAG "AtomEchoS3R" #define TAG "AtomEchoS3R"
class AtomEchoS3rBaseBoard : public WifiBoard { class AtomEchoS3rBaseBoard : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -71,11 +70,6 @@ public:
InitializeButtons(); InitializeButtons();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_WAKENET);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec( static Es8311AudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -33,7 +33,6 @@ public:
} }
}; };
class AtomMatrixEchoBaseBoard : public WifiBoard { class AtomMatrixEchoBaseBoard : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -87,7 +86,6 @@ private:
pi4ioe_->SetSpeakerMute(false); pi4ioe_->SetSpeakerMute(false);
} }
void InitializeButtons() { void InitializeButtons() {
face_button_.OnClick([this]() { face_button_.OnClick([this]() {

View File

@ -16,9 +16,6 @@
#define TAG "AtomS3+EchoBase" #define TAG "AtomS3+EchoBase"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
static const gc9a01_lcd_init_cmd_t gc9107_lcd_init_cmds[] = { static const gc9a01_lcd_init_cmd_t gc9107_lcd_init_cmds[] = {
// {cmd, { data }, data_size, delay_ms} // {cmd, { data }, data_size, delay_ms}
{0xfe, (uint8_t[]){0x00}, 0, 0}, {0xfe, (uint8_t[]){0x00}, 0, 0},
@ -176,10 +173,8 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_init(panel_handle)); ESP_ERROR_CHECK(esp_lcd_panel_init(panel_handle));
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_handle, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_handle, true));
display_ = new SpiLcdDisplay(io_handle, panel_handle, display_ = new SpiLcdDisplay(io_handle, panel_handle,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -203,11 +198,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec( static Es8311AudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -169,11 +169,6 @@ public:
InitializePi4ioe(); InitializePi4ioe();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_WAKENET);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec( static Es8311AudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -23,9 +23,6 @@
#define PI4IOE_REG_IO_OUT 0x05 #define PI4IOE_REG_IO_OUT 0x05
#define PI4IOE_REG_IO_PULLUP 0x0D #define PI4IOE_REG_IO_PULLUP 0x0D
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class Pi4ioe : public I2cDevice { class Pi4ioe : public I2cDevice {
public: public:
Pi4ioe(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : I2cDevice(i2c_bus, addr) { Pi4ioe(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : I2cDevice(i2c_bus, addr) {
@ -255,8 +252,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_handle, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_handle, true));
display_ = new SpiLcdDisplay(io_handle, panel_handle, display_ = new SpiLcdDisplay(io_handle, panel_handle,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -282,11 +278,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec( static Es8311AudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -58,9 +58,6 @@ static const gc9a01_lcd_init_cmd_t gc9107_lcd_init_cmds[] = {
#define TAG "ESP32-LCD-MarsbearSupport" #define TAG "ESP32-LCD-MarsbearSupport"
LV_FONT_DECLARE(font_puhui_14_1);
LV_FONT_DECLARE(font_awesome_14_1);
class CompactWifiBoardLCD : public WifiBoard { class CompactWifiBoardLCD : public WifiBoard {
private: private:
Button boot_button_; Button boot_button_;
@ -115,7 +112,6 @@ private:
esp_lcd_panel_reset(panel); esp_lcd_panel_reset(panel);
esp_lcd_panel_init(panel); esp_lcd_panel_init(panel);
esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR); esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR);
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
@ -124,12 +120,9 @@ private:
panel_config.vendor_config = &gc9107_vendor_config; panel_config.vendor_config = &gc9107_vendor_config;
#endif #endif
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_14_1, &font_awesome_14_1, new Twemoji32()});
} }
void InitializeButtons() { void InitializeButtons() {
// 配置 GPIO // 配置 GPIO

View File

@ -17,10 +17,6 @@
#define TAG "ESP32-MarsbearSupport" #define TAG "ESP32-MarsbearSupport"
LV_FONT_DECLARE(font_puhui_14_1);
LV_FONT_DECLARE(font_awesome_14_1);
class CompactWifiBoard : public WifiBoard { class CompactWifiBoard : public WifiBoard {
private: private:
Button boot_button_; Button boot_button_;
@ -92,8 +88,7 @@ private:
ESP_LOGI(TAG, "Turning display on"); ESP_LOGI(TAG, "Turning display on");
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true));
display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
{&font_puhui_14_1, &font_awesome_14_1});
} }
void InitializeButtons() { void InitializeButtons() {

View File

@ -18,9 +18,6 @@
#define TAG "CompactMl307Board" #define TAG "CompactMl307Board"
LV_FONT_DECLARE(font_puhui_basic_14_1);
LV_FONT_DECLARE(font_awesome_14_1);
class CompactMl307Board : public DualNetworkBoard { class CompactMl307Board : public DualNetworkBoard {
private: private:
i2c_master_bus_handle_t display_i2c_bus_; i2c_master_bus_handle_t display_i2c_bus_;
@ -92,8 +89,7 @@ private:
ESP_LOGI(TAG, "Turning display on"); ESP_LOGI(TAG, "Turning display on");
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true));
display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
{&font_puhui_basic_14_1, &font_awesome_14_1});
} }
void InitializeButtons() { void InitializeButtons() {
@ -171,11 +167,6 @@ public:
InitializeTools(); InitializeTools();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_14_1);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -60,9 +60,6 @@ static const gc9a01_lcd_init_cmd_t gc9107_lcd_init_cmds[] = {
#define TAG "CompactWifiBoardLCD" #define TAG "CompactWifiBoardLCD"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class CompactWifiBoardLCD : public WifiBoard { class CompactWifiBoardLCD : public WifiBoard {
private: private:
@ -115,7 +112,6 @@ private:
esp_lcd_panel_reset(panel); esp_lcd_panel_reset(panel);
esp_lcd_panel_init(panel); esp_lcd_panel_init(panel);
esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR); esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR);
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
@ -124,12 +120,9 @@ private:
panel_config.vendor_config = &gc9107_vendor_config; panel_config.vendor_config = &gc9107_vendor_config;
#endif #endif
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void InitializeButtons() { void InitializeButtons() {
boot_button_.OnClick([this]() { boot_button_.OnClick([this]() {
auto& app = Application::GetInstance(); auto& app = Application::GetInstance();
@ -158,11 +151,6 @@ public:
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -61,9 +61,6 @@ static const gc9a01_lcd_init_cmd_t gc9107_lcd_init_cmds[] = {
#define TAG "CompactWifiBoardS3Cam" #define TAG "CompactWifiBoardS3Cam"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class CompactWifiBoardS3Cam : public WifiBoard { class CompactWifiBoardS3Cam : public WifiBoard {
private: private:
@ -117,7 +114,6 @@ private:
esp_lcd_panel_reset(panel); esp_lcd_panel_reset(panel);
esp_lcd_panel_init(panel); esp_lcd_panel_init(panel);
esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR); esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR);
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
@ -126,8 +122,7 @@ private:
panel_config.vendor_config = &gc9107_vendor_config; panel_config.vendor_config = &gc9107_vendor_config;
#endif #endif
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void InitializeCamera() { void InitializeCamera() {
@ -183,11 +178,6 @@ public:
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -22,9 +22,6 @@
#define TAG "CompactWifiBoard" #define TAG "CompactWifiBoard"
LV_FONT_DECLARE(font_puhui_basic_14_1);
LV_FONT_DECLARE(font_awesome_14_1);
class CompactWifiBoard : public WifiBoard { class CompactWifiBoard : public WifiBoard {
private: private:
i2c_master_bus_handle_t display_i2c_bus_; i2c_master_bus_handle_t display_i2c_bus_;
@ -101,8 +98,7 @@ private:
ESP_LOGI(TAG, "Turning display on"); ESP_LOGI(TAG, "Turning display on");
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true));
display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
{&font_puhui_basic_14_1, &font_awesome_14_1});
} }
void InitializeButtons() { void InitializeButtons() {
@ -168,11 +164,6 @@ public:
InitializeTools(); InitializeTools();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_14_1);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -162,5 +162,10 @@ std::string Board::GetSystemInfoJson() {
} }
Assets* Board::GetAssets() { Assets* Board::GetAssets() {
#ifdef DEFAULT_ASSETS
static Assets assets(DEFAULT_ASSETS);
return &assets;
#else
return nullptr; return nullptr;
#endif
} }

View File

@ -21,9 +21,6 @@
#define TAG "DF-K10" #define TAG "DF-K10"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class Df_K10Board : public WifiBoard { class Df_K10Board : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -234,8 +231,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel, true));
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
// 物联网初始化,添加对 AI 可见设备 // 物联网初始化,添加对 AI 可见设备
@ -255,11 +251,6 @@ public:
InitializeCamera(); InitializeCamera();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
return led_strip_; return led_strip_;
} }

View File

@ -41,7 +41,6 @@ K10AudioCodec::K10AudioCodec(void* i2c_master_handle, int input_sample_rate, int
const audio_codec_if_t *in_codec_if_ = es7243e_codec_new(&es7243e_cfg); const audio_codec_if_t *in_codec_if_ = es7243e_codec_new(&es7243e_cfg);
assert(in_codec_if_ != NULL); assert(in_codec_if_ != NULL);
esp_codec_dev_cfg_t codec_es7243e_dev_cfg = { esp_codec_dev_cfg_t codec_es7243e_dev_cfg = {
.dev_type = ESP_CODEC_DEV_TYPE_IN, .dev_type = ESP_CODEC_DEV_TYPE_IN,
.codec_if = in_codec_if_, .codec_if = in_codec_if_,

View File

@ -70,10 +70,6 @@ class DfrobotEsp32S3AiCam : public WifiBoard {
} }
// Wakenet model only // Wakenet model only
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_WAKENET);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static GpioLed led(BUILTIN_LED_GPIO, 0); static GpioLed led(BUILTIN_LED_GPIO, 0);

View File

@ -99,7 +99,6 @@ private:
}); });
} }
void InitializeGpio(gpio_num_t gpio_num_) { void InitializeGpio(gpio_num_t gpio_num_) {
gpio_config_t config = { gpio_config_t config = {
.pin_bit_mask = (1ULL << gpio_num_), .pin_bit_mask = (1ULL << gpio_num_),
@ -123,11 +122,6 @@ public:
InitializeButtons(); InitializeButtons();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_WAKENET);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static GpioLed led(BUILTIN_LED_GPIO, 1); static GpioLed led(BUILTIN_LED_GPIO, 1);
return &led; return &led;

View File

@ -19,9 +19,6 @@
#define TAG "DuChatX" #define TAG "DuChatX"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class DuChatX : public WifiBoard { class DuChatX : public WifiBoard {
private: private:
Button boot_button_; Button boot_button_;
@ -101,8 +98,7 @@ private:
esp_lcd_panel_invert_color(panel_, DISPLAY_INVERT_COLOR); esp_lcd_panel_invert_color(panel_, DISPLAY_INVERT_COLOR);
esp_lcd_panel_swap_xy(panel_, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel_, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel_, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel_, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel_,DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y,DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, display_ = new SpiLcdDisplay(panel_io, panel_,DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y,DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -126,11 +122,6 @@ public:
InitializePowerManager(); InitializePowerManager();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual Led *GetLed() override { virtual Led *GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -28,8 +28,6 @@
#define USE_LVGL_DEFAULT 0 #define USE_LVGL_DEFAULT 0
LV_FONT_DECLARE(font_puhui_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
temperature_sensor_handle_t temp_sensor = NULL; temperature_sensor_handle_t temp_sensor = NULL;
static const st77916_lcd_init_cmd_t vendor_specific_init_yysj[] = { static const st77916_lcd_init_cmd_t vendor_specific_init_yysj[] = {
{0xF0, (uint8_t []){0x28}, 1, 0}, {0xF0, (uint8_t []){0x28}, 1, 0},
@ -562,8 +560,7 @@ private:
#if USE_LVGL_DEFAULT #if USE_LVGL_DEFAULT
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_20_4, &font_awesome_20_4, new Twemoji64()});
#else #else
display_ = new anim::EmoteDisplay(panel, panel_io); display_ = new anim::EmoteDisplay(panel, panel_io);
#endif #endif

View File

@ -24,9 +24,6 @@
// 控制器初始化函数声明 // 控制器初始化函数声明
void InitializeElectronBotController(); void InitializeElectronBotController();
LV_FONT_DECLARE(font_puhui_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class ElectronBot : public WifiBoard { class ElectronBot : public WifiBoard {
private: private:
Display* display_; Display* display_;
@ -73,8 +70,7 @@ private:
display_ = new ElectronEmojiDisplay(io_handle, panel_handle, DISPLAY_WIDTH, DISPLAY_HEIGHT, display_ = new ElectronEmojiDisplay(io_handle, panel_handle, DISPLAY_WIDTH, DISPLAY_HEIGHT,
DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X,
DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_20_4, &font_awesome_20_4, new Twemoji64()});
} }
void InitializeButtons() { void InitializeButtons() {

View File

@ -7,7 +7,6 @@
#include <cstring> #include <cstring>
#include <string> #include <string>
#define TAG "ElectronEmojiDisplay" #define TAG "ElectronEmojiDisplay"
// 表情映射表 - 将多种表情映射到现有6个GIF // 表情映射表 - 将多种表情映射到现有6个GIF
@ -51,9 +50,8 @@ const ElectronEmojiDisplay::EmotionMap ElectronEmojiDisplay::emotion_maps_[] = {
ElectronEmojiDisplay::ElectronEmojiDisplay(esp_lcd_panel_io_handle_t panel_io, ElectronEmojiDisplay::ElectronEmojiDisplay(esp_lcd_panel_io_handle_t panel_io,
esp_lcd_panel_handle_t panel, int width, int height, esp_lcd_panel_handle_t panel, int width, int height,
int offset_x, int offset_y, bool mirror_x, bool mirror_y, int offset_x, int offset_y, bool mirror_x, bool mirror_y,
bool swap_xy, DisplayStyle style) bool swap_xy)
: SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, : SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy),
style),
emotion_gif_(nullptr) { emotion_gif_(nullptr) {
SetupGifContainer(); SetupGifContainer();
} }

View File

@ -23,7 +23,7 @@ public:
*/ */
ElectronEmojiDisplay(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel, ElectronEmojiDisplay(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel,
int width, int height, int offset_x, int offset_y, bool mirror_x, int width, int height, int offset_x, int offset_y, bool mirror_x,
bool mirror_y, bool swap_xy, DisplayStyle style); bool mirror_y, bool swap_xy);
virtual ~ElectronEmojiDisplay() = default; virtual ~ElectronEmojiDisplay() = default;

View File

@ -14,9 +14,6 @@
#define TAG "EspBox3Board" #define TAG "EspBox3Board"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
// Init ili9341 by custom cmd // Init ili9341 by custom cmd
static const ili9341_lcd_init_cmd_t vendor_specific_init[] = { static const ili9341_lcd_init_cmd_t vendor_specific_init[] = {
{0xC8, (uint8_t []){0xFF, 0x93, 0x42}, 3, 0}, {0xC8, (uint8_t []){0xFF, 0x93, 0x42}, 3, 0},
@ -129,8 +126,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
esp_lcd_panel_disp_on_off(panel, true); esp_lcd_panel_disp_on_off(panel, true);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -142,11 +138,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static BoxAudioCodec audio_codec( static BoxAudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -16,9 +16,6 @@
#define TAG "EspBoxBoardLite" #define TAG "EspBoxBoardLite"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
/* ADC Buttons */ /* ADC Buttons */
typedef enum { typedef enum {
BSP_ADC_BUTTON_PREV, BSP_ADC_BUTTON_PREV,
@ -191,8 +188,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
esp_lcd_panel_disp_on_off(panel, true); esp_lcd_panel_disp_on_off(panel, true);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -213,11 +209,6 @@ public:
} }
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static BoxAudioCodecLite audio_codec( static BoxAudioCodecLite audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -14,9 +14,6 @@
#define TAG "EspBoxBoard" #define TAG "EspBoxBoard"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
// Init ili9341 by custom cmd // Init ili9341 by custom cmd
static const ili9341_lcd_init_cmd_t vendor_specific_init[] = { static const ili9341_lcd_init_cmd_t vendor_specific_init[] = {
{0xC8, (uint8_t []){0xFF, 0x93, 0x42}, 3, 0}, {0xC8, (uint8_t []){0xFF, 0x93, 0x42}, 3, 0},
@ -129,8 +126,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
esp_lcd_panel_disp_on_off(panel, true); esp_lcd_panel_disp_on_off(panel, true);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -142,11 +138,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static BoxAudioCodec audio_codec( static BoxAudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -22,9 +22,6 @@
#define TAG "ESP_S3_LCD_EV_Board_2" #define TAG "ESP_S3_LCD_EV_Board_2"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_30_4);
class ESP_S3_LCD_EV_Board_2 : public WifiBoard { class ESP_S3_LCD_EV_Board_2 : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -63,7 +60,6 @@ private:
int espok = esp_lcd_new_panel_io_3wire_spi(&io_config, &panel_io); int espok = esp_lcd_new_panel_io_3wire_spi(&io_config, &panel_io);
ESP_LOGI(TAG, "Install 3-wire SPI panel IO:%d",espok); ESP_LOGI(TAG, "Install 3-wire SPI panel IO:%d",espok);
ESP_LOGI(TAG, "Install RGB LCD panel driver"); ESP_LOGI(TAG, "Install RGB LCD panel driver");
esp_lcd_panel_handle_t panel_handle = NULL; esp_lcd_panel_handle_t panel_handle = NULL;
esp_lcd_rgb_panel_config_t rgb_config = { esp_lcd_rgb_panel_config_t rgb_config = {
@ -126,8 +122,7 @@ private:
display_ = new RgbLcdDisplay(panel_io, panel_handle, display_ = new RgbLcdDisplay(panel_io, panel_handle,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X,
DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_30_4, &font_awesome_30_4});
} }
void InitializeCodecI2c() { void InitializeCodecI2c() {
@ -208,11 +203,6 @@ public:
InitializeTouch(); InitializeTouch();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static BoxAudioCodec audio_codec( static BoxAudioCodec audio_codec(
i2c_bus_, i2c_bus_,
@ -240,7 +230,6 @@ public:
return &led; return &led;
} }
}; };
DECLARE_BOARD(ESP_S3_LCD_EV_Board_2); DECLARE_BOARD(ESP_S3_LCD_EV_Board_2);

View File

@ -20,9 +20,6 @@
#define TAG "ESP_S3_LCD_EV_Board" #define TAG "ESP_S3_LCD_EV_Board"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_30_4);
class ESP_S3_LCD_EV_Board : public WifiBoard { class ESP_S3_LCD_EV_Board : public WifiBoard {
private: private:
i2c_master_bus_handle_t codec_i2c_bus_; i2c_master_bus_handle_t codec_i2c_bus_;
@ -62,7 +59,6 @@ private:
int espok = esp_lcd_new_panel_io_3wire_spi(&io_config, &panel_io); int espok = esp_lcd_new_panel_io_3wire_spi(&io_config, &panel_io);
ESP_LOGI(TAG, "Install 3-wire SPI panel IO:%d",espok); ESP_LOGI(TAG, "Install 3-wire SPI panel IO:%d",espok);
ESP_LOGI(TAG, "Install RGB LCD panel driver"); ESP_LOGI(TAG, "Install RGB LCD panel driver");
esp_lcd_panel_handle_t panel_handle = NULL; esp_lcd_panel_handle_t panel_handle = NULL;
esp_lcd_rgb_panel_config_t rgb_config = { esp_lcd_rgb_panel_config_t rgb_config = {
@ -126,8 +122,7 @@ private:
display_ = new RgbLcdDisplay(panel_io, panel_handle, display_ = new RgbLcdDisplay(panel_io, panel_handle,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X,
DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_30_4, &font_awesome_30_4});
} }
void InitializeCodecI2c() { void InitializeCodecI2c() {
@ -177,11 +172,6 @@ public:
InitializeRGB_GC9503V_Display(); InitializeRGB_GC9503V_Display();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static BoxAudioCodec audio_codec( static BoxAudioCodec audio_codec(
codec_i2c_bus_, codec_i2c_bus_,
@ -209,7 +199,6 @@ public:
return &led; return &led;
} }
}; };
DECLARE_BOARD(ESP_S3_LCD_EV_Board); DECLARE_BOARD(ESP_S3_LCD_EV_Board);

View File

@ -19,9 +19,6 @@
#define TAG "esp_sparkbot" #define TAG "esp_sparkbot"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class SparkBotEs8311AudioCodec : public Es8311AudioCodec { class SparkBotEs8311AudioCodec : public Es8311AudioCodec {
private: private:
@ -120,8 +117,7 @@ private:
esp_lcd_panel_invert_color(panel, true); esp_lcd_panel_invert_color(panel, true);
esp_lcd_panel_disp_on_off(panel, true); esp_lcd_panel_disp_on_off(panel, true);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeCamera() { void InitializeCamera() {
@ -275,11 +271,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static SparkBotEs8311AudioCodec audio_codec(i2c_bus_, I2C_NUM_0, AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static SparkBotEs8311AudioCodec audio_codec(i2c_bus_, I2C_NUM_0, AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_GPIO_MCLK, AUDIO_I2S_GPIO_BCLK, AUDIO_I2S_GPIO_WS, AUDIO_I2S_GPIO_DOUT, AUDIO_I2S_GPIO_DIN, AUDIO_I2S_GPIO_MCLK, AUDIO_I2S_GPIO_BCLK, AUDIO_I2S_GPIO_WS, AUDIO_I2S_GPIO_DOUT, AUDIO_I2S_GPIO_DIN,

View File

@ -195,11 +195,6 @@ public:
InitializeButtons(); InitializeButtons();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_WAKENET);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static CircularStrip led(LED_PIN, 1); static CircularStrip led(LED_PIN, 1);
return &led; return &led;

View File

@ -26,12 +26,8 @@
#include "power_manager.h" #include "power_manager.h"
#endif #endif
#define TAG "ESP32_CGC_144" #define TAG "ESP32_CGC_144"
LV_FONT_DECLARE(font_puhui_14_1);
LV_FONT_DECLARE(font_awesome_14_1);
class ESP32_CGC_144 : public WifiBoard { class ESP32_CGC_144 : public WifiBoard {
private: private:
Button boot_button_; Button boot_button_;
@ -80,7 +76,6 @@ void InitializePowerManager() {
power_save_timer_->SetEnabled(true); power_save_timer_->SetEnabled(true);
} }
void InitializeSpi() { void InitializeSpi() {
spi_bus_config_t buscfg = {}; spi_bus_config_t buscfg = {};
buscfg.mosi_io_num = DISPLAY_MOSI_PIN; buscfg.mosi_io_num = DISPLAY_MOSI_PIN;
@ -122,8 +117,7 @@ void InitializePowerManager() {
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_14_1, &font_awesome_14_1, new Twemoji32()});
} }
void InitializeButtons() { void InitializeButtons() {

View File

@ -60,9 +60,6 @@ static const gc9a01_lcd_init_cmd_t gc9107_lcd_init_cmds[] = {
#define TAG "ESP32_CGC" #define TAG "ESP32_CGC"
LV_FONT_DECLARE(font_puhui_14_1);
LV_FONT_DECLARE(font_awesome_14_1);
class ESP32_CGC : public WifiBoard { class ESP32_CGC : public WifiBoard {
private: private:
Button boot_button_; Button boot_button_;
@ -115,7 +112,6 @@ private:
esp_lcd_panel_reset(panel); esp_lcd_panel_reset(panel);
esp_lcd_panel_init(panel); esp_lcd_panel_init(panel);
esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR); esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR);
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
@ -124,12 +120,9 @@ private:
panel_config.vendor_config = &gc9107_vendor_config; panel_config.vendor_config = &gc9107_vendor_config;
#endif #endif
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_14_1, &font_awesome_14_1, new Twemoji32()});
} }
void InitializeButtons() { void InitializeButtons() {
boot_button_.OnClick([this]() { boot_button_.OnClick([this]() {

View File

@ -26,9 +26,6 @@
#define TAG "WaveshareEsp32s3TouchAMOLED1inch8" #define TAG "WaveshareEsp32s3TouchAMOLED1inch8"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_30_4);
class Pmic : public Axp2101 { class Pmic : public Axp2101 {
public: public:
Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) { Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) {
@ -86,8 +83,7 @@ public:
bool mirror_y, bool mirror_y,
bool swap_xy) bool swap_xy)
: SpiLcdDisplay(io_handle, panel_handle, : SpiLcdDisplay(io_handle, panel_handle,
width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_30_4, &font_awesome_30_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
lv_obj_set_style_pad_left(status_bar_, LV_HOR_RES * 0.1, 0); lv_obj_set_style_pad_left(status_bar_, LV_HOR_RES * 0.1, 0);
lv_obj_set_style_pad_right(status_bar_, LV_HOR_RES * 0.1, 0); lv_obj_set_style_pad_right(status_bar_, LV_HOR_RES * 0.1, 0);
@ -300,11 +296,6 @@ public:
InitializeTools(); InitializeTools();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec(codec_i2c_bus_, I2C_NUM_0, AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static Es8311AudioCodec audio_codec(codec_i2c_bus_, I2C_NUM_0, AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_GPIO_MCLK, AUDIO_I2S_GPIO_BCLK, AUDIO_I2S_GPIO_WS, AUDIO_I2S_GPIO_DOUT, AUDIO_I2S_GPIO_DIN, AUDIO_I2S_GPIO_MCLK, AUDIO_I2S_GPIO_BCLK, AUDIO_I2S_GPIO_WS, AUDIO_I2S_GPIO_DOUT, AUDIO_I2S_GPIO_DIN,

View File

@ -21,10 +21,6 @@
#define TAG "waveshare_lcd_1_46" #define TAG "waveshare_lcd_1_46"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
// 在waveshare_lcd_1_46类之前添加新的显示类 // 在waveshare_lcd_1_46类之前添加新的显示类
class CustomLcdDisplay : public SpiLcdDisplay { class CustomLcdDisplay : public SpiLcdDisplay {
public: public:
@ -47,8 +43,7 @@ public:
bool mirror_y, bool mirror_y,
bool swap_xy) bool swap_xy)
: SpiLcdDisplay(io_handle, panel_handle, : SpiLcdDisplay(io_handle, panel_handle,
width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_16_4, &font_awesome_16_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
lv_display_add_event_cb(display_, rounder_event_cb, LV_EVENT_INVALIDATE_AREA, NULL); lv_display_add_event_cb(display_, rounder_event_cb, LV_EVENT_INVALIDATE_AREA, NULL);
} }
@ -64,7 +59,6 @@ private:
button_driver_t* pwr_btn_driver_ = nullptr; button_driver_t* pwr_btn_driver_ = nullptr;
static CustomBoard* instance_; static CustomBoard* instance_;
void InitializeI2c() { void InitializeI2c() {
// Initialize I2C peripheral // Initialize I2C peripheral
i2c_master_bus_config_t i2c_bus_cfg = { i2c_master_bus_config_t i2c_bus_cfg = {
@ -221,11 +215,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, I2S_STD_SLOT_LEFT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN, I2S_STD_SLOT_RIGHT); // I2S_STD_SLOT_LEFT / I2S_STD_SLOT_RIGHT / I2S_STD_SLOT_BOTH AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, I2S_STD_SLOT_LEFT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN, I2S_STD_SLOT_RIGHT); // I2S_STD_SLOT_LEFT / I2S_STD_SLOT_RIGHT / I2S_STD_SLOT_BOTH

View File

@ -23,9 +23,6 @@
#define LCD_OPCODE_READ_CMD (0x0BULL) #define LCD_OPCODE_READ_CMD (0x0BULL)
#define LCD_OPCODE_WRITE_COLOR (0x32ULL) #define LCD_OPCODE_WRITE_COLOR (0x32ULL)
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
static const st77916_lcd_init_cmd_t vendor_specific_init_new[] = { static const st77916_lcd_init_cmd_t vendor_specific_init_new[] = {
{0xF0, (uint8_t []){0x28}, 1, 0}, {0xF0, (uint8_t []){0x28}, 1, 0},
{0xF2, (uint8_t []){0x28}, 1, 0}, {0xF2, (uint8_t []){0x28}, 1, 0},
@ -223,7 +220,6 @@ private:
button_driver_t* pwr_btn_driver_ = nullptr; button_driver_t* pwr_btn_driver_ = nullptr;
static CustomBoard* instance_; static CustomBoard* instance_;
void InitializeI2c() { void InitializeI2c() {
// Initialize I2C peripheral // Initialize I2C peripheral
i2c_master_bus_config_t i2c_bus_cfg = { i2c_master_bus_config_t i2c_bus_cfg = {
@ -358,8 +354,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void InitializeButtonsCustom() { void InitializeButtonsCustom() {
@ -430,11 +425,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, I2S_STD_SLOT_BOTH, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN, I2S_STD_SLOT_RIGHT); // I2S_STD_SLOT_LEFT / I2S_STD_SLOT_RIGHT / I2S_STD_SLOT_BOTH AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, I2S_STD_SLOT_BOTH, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN, I2S_STD_SLOT_RIGHT); // I2S_STD_SLOT_LEFT / I2S_STD_SLOT_RIGHT / I2S_STD_SLOT_BOTH

View File

@ -23,9 +23,6 @@
#define LCD_OPCODE_READ_CMD (0x0BULL) #define LCD_OPCODE_READ_CMD (0x0BULL)
#define LCD_OPCODE_WRITE_COLOR (0x32ULL) #define LCD_OPCODE_WRITE_COLOR (0x32ULL)
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
static const st77916_lcd_init_cmd_t vendor_specific_init_new[] = { static const st77916_lcd_init_cmd_t vendor_specific_init_new[] = {
{0xF0, (uint8_t []){0x28}, 1, 0}, {0xF0, (uint8_t []){0x28}, 1, 0},
{0xF2, (uint8_t []){0x28}, 1, 0}, {0xF2, (uint8_t []){0x28}, 1, 0},
@ -355,8 +352,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -380,11 +376,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, I2S_STD_SLOT_LEFT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN, I2S_STD_SLOT_RIGHT); // I2S_STD_SLOT_LEFT / I2S_STD_SLOT_RIGHT / I2S_STD_SLOT_BOTH AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, I2S_STD_SLOT_LEFT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN, I2S_STD_SLOT_RIGHT); // I2S_STD_SLOT_LEFT / I2S_STD_SLOT_RIGHT / I2S_STD_SLOT_BOTH

View File

@ -29,11 +29,6 @@
#define TAG "waveshare_lcd_3_5" #define TAG "waveshare_lcd_3_5"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class Pmic : public Axp2101 { class Pmic : public Axp2101 {
public: public:
Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) { Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) {
@ -66,7 +61,6 @@ class Pmic : public Axp2101 {
} }
}; };
typedef struct { typedef struct {
int cmd; /*<! The specific LCD command */ int cmd; /*<! The specific LCD command */
const void *data; /*<! Buffer that holds the command specific data */ const void *data; /*<! Buffer that holds the command specific data */
@ -82,7 +76,6 @@ typedef struct {
uint16_t init_cmds_size; /*<! Number of commands in above array */ uint16_t init_cmds_size; /*<! Number of commands in above array */
} st7796_vendor_config_t; } st7796_vendor_config_t;
st7796_lcd_init_cmd_t st7796_lcd_init_cmds[] = { st7796_lcd_init_cmd_t st7796_lcd_init_cmds[] = {
{0x11, (uint8_t []){ 0x00 }, 0, 120}, {0x11, (uint8_t []){ 0x00 }, 0, 120},
@ -106,7 +99,6 @@ st7796_lcd_init_cmd_t st7796_lcd_init_cmds[] = {
{0x29, (uint8_t []){ 0x00 }, 0, 0}, {0x29, (uint8_t []){ 0x00 }, 0, 0},
}; };
class CustomBoard : public WifiBoard { class CustomBoard : public WifiBoard {
private: private:
Button boot_button_; Button boot_button_;
@ -292,7 +284,6 @@ private:
ESP_ERROR_CHECK(esp_lcd_new_panel_st7789(panel_io, &panel_config, &panel)); ESP_ERROR_CHECK(esp_lcd_new_panel_st7789(panel_io, &panel_config, &panel));
esp_lcd_panel_reset(panel); esp_lcd_panel_reset(panel);
esp_lcd_panel_init(panel); esp_lcd_panel_init(panel);
@ -300,11 +291,8 @@ private:
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -350,11 +338,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec(i2c_bus_, I2C_NUM_0, AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static Es8311AudioCodec audio_codec(i2c_bus_, I2C_NUM_0, AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_GPIO_MCLK, AUDIO_I2S_GPIO_BCLK, AUDIO_I2S_GPIO_WS, AUDIO_I2S_GPIO_DOUT, AUDIO_I2S_GPIO_DIN, AUDIO_I2S_GPIO_MCLK, AUDIO_I2S_GPIO_BCLK, AUDIO_I2S_GPIO_WS, AUDIO_I2S_GPIO_DOUT, AUDIO_I2S_GPIO_DIN,

View File

@ -17,9 +17,6 @@
#define TAG "esp32s3_korvo2_v3" #define TAG "esp32s3_korvo2_v3"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
// Init ili9341 by custom cmd // Init ili9341 by custom cmd
static const ili9341_lcd_init_cmd_t vendor_specific_init[] = { static const ili9341_lcd_init_cmd_t vendor_specific_init[] = {
{0xC8, (uint8_t []){0xFF, 0x93, 0x42}, 3, 0}, {0xC8, (uint8_t []){0xFF, 0x93, 0x42}, 3, 0},
@ -41,7 +38,6 @@ static const ili9341_lcd_init_cmd_t vendor_specific_init[] = {
{0, (uint8_t []){0}, 0xff, 0}, {0, (uint8_t []){0}, 0xff, 0},
}; };
class Esp32S3Korvo2V3Board : public WifiBoard { class Esp32S3Korvo2V3Board : public WifiBoard {
private: private:
Button boot_button_; Button boot_button_;
@ -189,8 +185,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, false)); ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, false));
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel, true));
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeSt7789Display() { void InitializeSt7789Display() {
@ -223,8 +218,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true)); ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true));
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeCamera() { void InitializeCamera() {
@ -277,11 +271,6 @@ public:
#endif #endif
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static BoxAudioCodec audio_codec( static BoxAudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -21,9 +21,6 @@
#define TAG "GenJuTech_s3_1_54TFT" #define TAG "GenJuTech_s3_1_54TFT"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class SparkBotEs8311AudioCodec : public Es8311AudioCodec { class SparkBotEs8311AudioCodec : public Es8311AudioCodec {
private: private:
@ -200,8 +197,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true)); ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true));
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -219,11 +215,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -25,9 +25,6 @@
#define BOARD_TAG "JiuchuanDevBoard" #define BOARD_TAG "JiuchuanDevBoard"
#define __USER_GPIO_PWRDOWN__ #define __USER_GPIO_PWRDOWN__
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
// 自定义LCD显示器类用于圆形屏幕适配 // 自定义LCD显示器类用于圆形屏幕适配
class CustomLcdDisplay : public SpiLcdDisplay class CustomLcdDisplay : public SpiLcdDisplay
{ {
@ -40,9 +37,8 @@ public:
int offset_y, int offset_y,
bool mirror_x, bool mirror_x,
bool mirror_y, bool mirror_y,
bool swap_xy, bool swap_xy)
DisplayStyle style) : SpiLcdDisplay(io_handle, panel_handle, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy)
: SpiLcdDisplay(io_handle, panel_handle, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, style)
{ {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
@ -142,7 +138,6 @@ private:
power_save_timer_->SetEnabled(true); power_save_timer_->SetEnabled(true);
} }
void InitializeI2c() { void InitializeI2c() {
// Initialize I2C peripheral // Initialize I2C peripheral
i2c_master_bus_config_t i2c_bus_cfg = { i2c_master_bus_config_t i2c_bus_cfg = {
@ -315,8 +310,7 @@ private:
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new CustomLcdDisplay(panel_io, panel, display_ = new CustomLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -335,11 +329,6 @@ public:
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -16,9 +16,6 @@
#define TAG "KevinBoxBoard" #define TAG "KevinBoxBoard"
LV_FONT_DECLARE(font_puhui_basic_14_1);
LV_FONT_DECLARE(font_awesome_14_1);
class KevinBoxBoard : public Ml307Board { class KevinBoxBoard : public Ml307Board {
private: private:
i2c_master_bus_handle_t display_i2c_bus_; i2c_master_bus_handle_t display_i2c_bus_;
@ -115,8 +112,7 @@ private:
ESP_LOGI(TAG, "Turning display on"); ESP_LOGI(TAG, "Turning display on");
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true));
display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
{&font_puhui_basic_14_1, &font_awesome_14_1});
} }
void InitializeCodecI2c() { void InitializeCodecI2c() {
@ -189,11 +185,6 @@ public:
InitializeButtons(); InitializeButtons();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_14_1);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -18,10 +18,6 @@
#define TAG "KevinBoxBoard" #define TAG "KevinBoxBoard"
LV_FONT_DECLARE(font_puhui_basic_14_1);
LV_FONT_DECLARE(font_awesome_14_1);
class Pmic : public Axp2101 { class Pmic : public Axp2101 {
public: public:
Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) { Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) {
@ -50,7 +46,6 @@ public:
} }
}; };
class KevinBoxBoard : public DualNetworkBoard { class KevinBoxBoard : public DualNetworkBoard {
private: private:
i2c_master_bus_handle_t display_i2c_bus_; i2c_master_bus_handle_t display_i2c_bus_;
@ -145,8 +140,7 @@ private:
ESP_LOGI(TAG, "Turning display on"); ESP_LOGI(TAG, "Turning display on");
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true));
display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
{&font_puhui_basic_14_1, &font_awesome_14_1});
} }
void InitializeCodecI2c() { void InitializeCodecI2c() {
@ -244,11 +238,6 @@ public:
InitializePowerSaveTimer(); InitializePowerSaveTimer();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_14_1);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -75,11 +75,6 @@ public:
esp_efuse_write_field_bit(ESP_EFUSE_VDD_SPI_AS_GPIO); esp_efuse_write_field_bit(ESP_EFUSE_VDD_SPI_AS_GPIO);
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_WAKENET_SMALL);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
return led_strip_; return led_strip_;
} }

View File

@ -5,7 +5,6 @@
#define TAG "LedStripControl" #define TAG "LedStripControl"
int LedStripControl::LevelToBrightness(int level) const { int LedStripControl::LevelToBrightness(int level) const {
if (level < 0) level = 0; if (level < 0) level = 0;
if (level > 8) level = 8; if (level > 8) level = 8;

View File

@ -17,10 +17,6 @@
#define TAG "kevin-sp-v3" #define TAG "kevin-sp-v3"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
// class KEVIN_SP_V3Board : public Ml307Board { // class KEVIN_SP_V3Board : public Ml307Board {
class KEVIN_SP_V3Board : public WifiBoard { class KEVIN_SP_V3Board : public WifiBoard {
private: private:
@ -84,8 +80,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true)); ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true));
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeCamera() { void InitializeCamera() {
@ -132,11 +127,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -15,9 +15,6 @@
#define TAG "kevin-sp-v4" #define TAG "kevin-sp-v4"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class KEVIN_SP_V4Board : public WifiBoard { class KEVIN_SP_V4Board : public WifiBoard {
private: private:
i2c_master_bus_handle_t display_i2c_bus_; i2c_master_bus_handle_t display_i2c_bus_;
@ -98,8 +95,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true)); ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true));
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeCamera() { void InitializeCamera() {
@ -147,11 +143,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -17,9 +17,6 @@
#define TAG "Yuying_313lcd" #define TAG "Yuying_313lcd"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_30_4);
class Yuying_313lcd : public WifiBoard { class Yuying_313lcd : public WifiBoard {
private: private:
i2c_master_bus_handle_t codec_i2c_bus_; i2c_master_bus_handle_t codec_i2c_bus_;
@ -103,8 +100,7 @@ private:
display_ = new RgbLcdDisplay(panel_io, panel_handle, display_ = new RgbLcdDisplay(panel_io, panel_handle,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X,
DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_30_4, &font_awesome_30_4});
} }
void InitializeCodecI2c() { void InitializeCodecI2c() {
@ -147,11 +143,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec(codec_i2c_bus_, I2C_NUM_0, AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static Es8311AudioCodec audio_codec(codec_i2c_bus_, I2C_NUM_0, AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_GPIO_MCLK, AUDIO_I2S_GPIO_BCLK, AUDIO_I2S_GPIO_WS, AUDIO_I2S_GPIO_DOUT, AUDIO_I2S_GPIO_DIN, AUDIO_I2S_GPIO_MCLK, AUDIO_I2S_GPIO_BCLK, AUDIO_I2S_GPIO_WS, AUDIO_I2S_GPIO_DOUT, AUDIO_I2S_GPIO_DIN,

View File

@ -18,9 +18,6 @@
#define BOARD_STM8_ADDR 17 #define BOARD_STM8_ADDR 17
#define BOARD_STM8_CMD 4 #define BOARD_STM8_CMD 4
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class labplus_ledong_v2 : public WifiBoard { class labplus_ledong_v2 : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -119,8 +116,7 @@ private:
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -132,11 +128,6 @@ public:
GetBacklight()->SetBrightness(100); GetBacklight()->SetBrightness(100);
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -15,9 +15,6 @@
#define TAG "mpython_v3" #define TAG "mpython_v3"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class mpython_v3 : public WifiBoard { class mpython_v3 : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -99,8 +96,7 @@ private:
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -112,11 +108,6 @@ public:
GetBacklight()->SetBrightness(100); GetBacklight()->SetBrightness(100);
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -14,9 +14,6 @@
#define TAG "LichuangC3DevBoard" #define TAG "LichuangC3DevBoard"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class LichuangC3DevBoard : public WifiBoard { class LichuangC3DevBoard : public WifiBoard {
private: private:
i2c_master_bus_handle_t codec_i2c_bus_; i2c_master_bus_handle_t codec_i2c_bus_;
@ -91,8 +88,7 @@ private:
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -104,11 +100,6 @@ public:
GetBacklight()->SetBrightness(100); GetBacklight()->SetBrightness(100);
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_S_PUHUI_COMMON_20_4_EMOJI_32);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec( static Es8311AudioCodec audio_codec(
codec_i2c_bus_, codec_i2c_bus_,

View File

@ -16,12 +16,8 @@
#include <esp_lvgl_port.h> #include <esp_lvgl_port.h>
#include <lvgl.h> #include <lvgl.h>
#define TAG "LichuangDevBoard" #define TAG "LichuangDevBoard"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class Pca9557 : public I2cDevice { class Pca9557 : public I2cDevice {
public: public:
Pca9557(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : I2cDevice(i2c_bus, addr) { Pca9557(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : I2cDevice(i2c_bus, addr) {
@ -157,8 +153,7 @@ private:
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeTouch() void InitializeTouch()
@ -243,11 +238,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static CustomAudioCodec audio_codec( static CustomAudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -18,9 +18,6 @@
#define TAG "LilygoTCameraPlusS3Board" #define TAG "LilygoTCameraPlusS3Board"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class Cst816x : public I2cDevice { class Cst816x : public I2cDevice {
public: public:
struct TouchPoint_t { struct TouchPoint_t {
@ -207,8 +204,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true)); ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true));
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -286,11 +282,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec *GetAudioCodec() override { virtual AudioCodec *GetAudioCodec() override {
static Tcamerapluss3AudioCodec audio_codec( static Tcamerapluss3AudioCodec audio_codec(
AUDIO_INPUT_SAMPLE_RATE, AUDIO_INPUT_SAMPLE_RATE,

View File

@ -16,9 +16,6 @@
#define TAG "LilygoTCircleS3Board" #define TAG "LilygoTCircleS3Board"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class Cst816x : public I2cDevice { class Cst816x : public I2cDevice {
public: public:
struct TouchPoint_t { struct TouchPoint_t {
@ -185,8 +182,7 @@ private:
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X,
DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
gpio_config_t config; gpio_config_t config;
config.pin_bit_mask = BIT64(DISPLAY_BL); config.pin_bit_mask = BIT64(DISPLAY_BL);
@ -224,11 +220,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual AudioCodec *GetAudioCodec() override { virtual AudioCodec *GetAudioCodec() override {
static Tcircles3AudioCodec audio_codec( static Tcircles3AudioCodec audio_codec(
AUDIO_INPUT_SAMPLE_RATE, AUDIO_INPUT_SAMPLE_RATE,

View File

@ -16,9 +16,6 @@
#define TAG "LilygoTDisplays3ProMVSRLoraBoard" #define TAG "LilygoTDisplays3ProMVSRLoraBoard"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class Cst2xxse : public I2cDevice { class Cst2xxse : public I2cDevice {
public: public:
struct TouchPoint_t { struct TouchPoint_t {
@ -209,8 +206,7 @@ private:
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X,
DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
gpio_config_t config; gpio_config_t config;
config.pin_bit_mask = BIT64(DISPLAY_BL); config.pin_bit_mask = BIT64(DISPLAY_BL);
@ -249,11 +245,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec *GetAudioCodec() override { virtual AudioCodec *GetAudioCodec() override {
static Tdisplays3promvsrloraAudioCodec audio_codec( static Tdisplays3promvsrloraAudioCodec audio_codec(
AUDIO_INPUT_SAMPLE_RATE, AUDIO_INPUT_SAMPLE_RATE,

View File

@ -4,7 +4,6 @@
#include <driver/i2c_master.h> #include <driver/i2c_master.h>
#include <driver/i2s_tdm.h> #include <driver/i2s_tdm.h>
#define TAG "CoreS3AudioCodec" #define TAG "CoreS3AudioCodec"
CoreS3AudioCodec::CoreS3AudioCodec(void* i2c_master_handle, int input_sample_rate, int output_sample_rate, CoreS3AudioCodec::CoreS3AudioCodec(void* i2c_master_handle, int input_sample_rate, int output_sample_rate,

View File

@ -16,12 +16,8 @@
#include <esp_timer.h> #include <esp_timer.h>
#include "esp32_camera.h" #include "esp32_camera.h"
#define TAG "M5StackCoreS3Board" #define TAG "M5StackCoreS3Board"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class Pmic : public Axp2101 { class Pmic : public Axp2101 {
public: public:
// Power Init // Power Init
@ -44,7 +40,6 @@ public:
} }
}; };
class CustomBacklight : public Backlight { class CustomBacklight : public Backlight {
public: public:
CustomBacklight(Pmic *pmic) : pmic_(pmic) {} CustomBacklight(Pmic *pmic) : pmic_(pmic) {}
@ -58,7 +53,6 @@ private:
Pmic *pmic_; Pmic *pmic_;
}; };
class Aw9523 : public I2cDevice { class Aw9523 : public I2cDevice {
public: public:
// Exanpd IO Init // Exanpd IO Init
@ -123,7 +117,6 @@ private:
TouchPoint_t tp_; TouchPoint_t tp_;
}; };
class M5StackCoreS3Board : public WifiBoard { class M5StackCoreS3Board : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -294,8 +287,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeCamera() { void InitializeCamera() {
@ -342,11 +334,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static CoreS3AudioCodec audio_codec(i2c_bus_, static CoreS3AudioCodec audio_codec(i2c_bus_,
AUDIO_INPUT_SAMPLE_RATE, AUDIO_INPUT_SAMPLE_RATE,

View File

@ -19,13 +19,8 @@
#include "esp_lcd_touch_gt911.h" #include "esp_lcd_touch_gt911.h"
#include <cstring> #include <cstring>
#define TAG "M5StackTab5Board" #define TAG "M5StackTab5Board"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_30_4);
#define AUDIO_CODEC_ES8388_ADDR ES8388_CODEC_DEFAULT_ADDR #define AUDIO_CODEC_ES8388_ADDR ES8388_CODEC_DEFAULT_ADDR
#define LCD_MIPI_DSI_PHY_PWR_LDO_CHAN 3 // LDO_VO3 is connected to VDD_MIPI_DPHY #define LCD_MIPI_DSI_PHY_PWR_LDO_CHAN 3 // LDO_VO3 is connected to VDD_MIPI_DPHY
#define LCD_MIPI_DSI_PHY_PWR_LDO_VOLTAGE_MV 2500 #define LCD_MIPI_DSI_PHY_PWR_LDO_VOLTAGE_MV 2500
@ -72,7 +67,6 @@ public:
} }
}; };
class M5StackTab5Board : public WifiBoard { class M5StackTab5Board : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -261,8 +255,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel, true));
display_ = new MipiLcdDisplay(panel_io, panel, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, display_ = new MipiLcdDisplay(panel_io, panel, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X,
DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_30_4, &font_awesome_30_4});
} }
public: public:
@ -276,11 +269,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Tab5AudioCodec audio_codec(i2c_bus_, static Tab5AudioCodec audio_codec(i2c_bus_,
AUDIO_INPUT_SAMPLE_RATE, AUDIO_INPUT_SAMPLE_RATE,

View File

@ -4,10 +4,8 @@
#include <driver/i2c.h> #include <driver/i2c.h>
#include <driver/i2s_tdm.h> #include <driver/i2s_tdm.h>
#define TAG "Tab5AudioCodec" #define TAG "Tab5AudioCodec"
Tab5AudioCodec::Tab5AudioCodec(void* i2c_master_handle, int input_sample_rate, int output_sample_rate, Tab5AudioCodec::Tab5AudioCodec(void* i2c_master_handle, int input_sample_rate, int output_sample_rate,
gpio_num_t mclk, gpio_num_t bclk, gpio_num_t ws, gpio_num_t dout, gpio_num_t din, gpio_num_t mclk, gpio_num_t bclk, gpio_num_t ws, gpio_num_t dout, gpio_num_t din,
gpio_num_t pa_pin, uint8_t es8388_addr, uint8_t es7210_addr, bool input_reference) { gpio_num_t pa_pin, uint8_t es8388_addr, uint8_t es7210_addr, bool input_reference) {

View File

@ -19,15 +19,11 @@
#define TAG "magiclick_2p4" #define TAG "magiclick_2p4"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class NV3023Display : public SpiLcdDisplay { class NV3023Display : public SpiLcdDisplay {
public: public:
NV3023Display(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel, NV3023Display(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel,
int width, int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y, bool swap_xy) int width, int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y, bool swap_xy)
: SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, : SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_16_4, &font_awesome_16_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
// 只需要覆盖颜色相关的样式 // 只需要覆盖颜色相关的样式
@ -67,7 +63,6 @@ private:
esp_lcd_panel_io_handle_t panel_io = nullptr; esp_lcd_panel_io_handle_t panel_io = nullptr;
esp_lcd_panel_handle_t panel = nullptr; esp_lcd_panel_handle_t panel = nullptr;
void InitializePowerManager() { void InitializePowerManager() {
power_manager_ = new PowerManager(GPIO_NUM_48); power_manager_ = new PowerManager(GPIO_NUM_48);
power_manager_->OnChargingStatusChanged([this](bool is_charging) { power_manager_->OnChargingStatusChanged([this](bool is_charging) {
@ -231,11 +226,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static CircularStrip led(BUILTIN_LED_GPIO, BUILTIN_LED_NUM); static CircularStrip led(BUILTIN_LED_GPIO, BUILTIN_LED_NUM);
return &led; return &led;

View File

@ -22,15 +22,11 @@
#define TAG "magiclick_2p5" #define TAG "magiclick_2p5"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class GC9107Display : public SpiLcdDisplay { class GC9107Display : public SpiLcdDisplay {
public: public:
GC9107Display(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel, GC9107Display(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel,
int width, int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y, bool swap_xy) int width, int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y, bool swap_xy)
: SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, : SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_16_4, &font_awesome_16_4}) {
} }
}; };
@ -82,7 +78,6 @@ private:
esp_lcd_panel_io_handle_t panel_io = nullptr; esp_lcd_panel_io_handle_t panel_io = nullptr;
esp_lcd_panel_handle_t panel = nullptr; esp_lcd_panel_handle_t panel = nullptr;
void InitializePowerManager() { void InitializePowerManager() {
power_manager_ = new PowerManager(GPIO_NUM_48); power_manager_ = new PowerManager(GPIO_NUM_48);
power_manager_->OnChargingStatusChanged([this](bool is_charging) { power_manager_->OnChargingStatusChanged([this](bool is_charging) {
@ -147,7 +142,6 @@ private:
} }
void InitializeButtons() { void InitializeButtons() {
main_button_.OnClick([this]() { main_button_.OnClick([this]() {
auto& app = Application::GetInstance(); auto& app = Application::GetInstance();
@ -288,11 +282,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static CircularStrip led(BUILTIN_LED_GPIO, BUILTIN_LED_NUM); static CircularStrip led(BUILTIN_LED_GPIO, BUILTIN_LED_NUM);
return &led; return &led;

View File

@ -19,15 +19,11 @@
#define TAG "magiclick_c3_v2" #define TAG "magiclick_c3_v2"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class GC9107Display : public SpiLcdDisplay { class GC9107Display : public SpiLcdDisplay {
public: public:
GC9107Display(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel, GC9107Display(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel,
int width, int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y, bool swap_xy) int width, int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y, bool swap_xy)
: SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, : SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_16_4, &font_awesome_16_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
// 只需要覆盖颜色相关的样式 // 只需要覆盖颜色相关的样式
@ -211,11 +207,6 @@ public:
esp_efuse_write_field_bit(ESP_EFUSE_VDD_SPI_AS_GPIO); esp_efuse_write_field_bit(ESP_EFUSE_VDD_SPI_AS_GPIO);
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -17,15 +17,11 @@
#define TAG "magiclick_c3" #define TAG "magiclick_c3"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class NV3023Display : public SpiLcdDisplay { class NV3023Display : public SpiLcdDisplay {
public: public:
NV3023Display(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel, NV3023Display(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel,
int width, int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y, bool swap_xy) int width, int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y, bool swap_xy)
: SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, : SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_16_4, &font_awesome_16_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
// 只需要覆盖颜色相关的样式 // 只需要覆盖颜色相关的样式
@ -169,11 +165,6 @@ public:
esp_efuse_write_field_bit(ESP_EFUSE_VDD_SPI_AS_GPIO); esp_efuse_write_field_bit(ESP_EFUSE_VDD_SPI_AS_GPIO);
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -26,9 +26,6 @@
#define TAG "MINSI_K08_DUAL" #define TAG "MINSI_K08_DUAL"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class MINSI_K08_DUAL : public DualNetworkBoard { class MINSI_K08_DUAL : public DualNetworkBoard {
private: private:
@ -118,15 +115,13 @@ private:
esp_lcd_panel_reset(panel); esp_lcd_panel_reset(panel);
esp_lcd_panel_init(panel); esp_lcd_panel_init(panel);
esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR); esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR);
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -188,7 +183,6 @@ private:
static LampController lamp(LAMP_GPIO); static LampController lamp(LAMP_GPIO);
} }
public: public:
MINSI_K08_DUAL() : DualNetworkBoard(ML307_TX_PIN, ML307_RX_PIN), MINSI_K08_DUAL() : DualNetworkBoard(ML307_TX_PIN, ML307_RX_PIN),
boot_button_(BOOT_BUTTON_GPIO), boot_button_(BOOT_BUTTON_GPIO),
@ -205,11 +199,6 @@ public:
} }
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -16,10 +16,6 @@
#define TAG "MIXGO_NOVA" #define TAG "MIXGO_NOVA"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class MIXGO_NOVA : public WifiBoard { class MIXGO_NOVA : public WifiBoard {
private: private:
Button boot_button_; Button boot_button_;
@ -126,8 +122,7 @@ private:
esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
public: public:
@ -144,11 +139,6 @@ public:
} }
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static CircularStrip led(BUILTIN_LED_GPIO, 4); static CircularStrip led(BUILTIN_LED_GPIO, 4);
return &led; return &led;

View File

@ -20,9 +20,6 @@
#define TAG "MovecallCuicanESP32S3" #define TAG "MovecallCuicanESP32S3"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class MovecallCuicanESP32S3 : public WifiBoard { class MovecallCuicanESP32S3 : public WifiBoard {
private: private:
i2c_master_bus_handle_t codec_i2c_bus_; i2c_master_bus_handle_t codec_i2c_bus_;
@ -79,8 +76,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_handle, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_handle, true));
display_ = new SpiLcdDisplay(io_handle, panel_handle, display_ = new SpiLcdDisplay(io_handle, panel_handle,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -102,11 +98,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led_strip(BUILTIN_LED_GPIO); static SingleLed led_strip(BUILTIN_LED_GPIO);
return &led_strip; return &led_strip;

View File

@ -20,10 +20,6 @@
#define TAG "MovecallMojiESP32S3" #define TAG "MovecallMojiESP32S3"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class CustomLcdDisplay : public SpiLcdDisplay { class CustomLcdDisplay : public SpiLcdDisplay {
public: public:
CustomLcdDisplay(esp_lcd_panel_io_handle_t io_handle, CustomLcdDisplay(esp_lcd_panel_io_handle_t io_handle,
@ -35,8 +31,7 @@ public:
bool mirror_x, bool mirror_x,
bool mirror_y, bool mirror_y,
bool swap_xy) bool swap_xy)
: SpiLcdDisplay(io_handle, panel_handle, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, : SpiLcdDisplay(io_handle, panel_handle, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_20_4, &font_awesome_20_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
// 由于屏幕是圆的,所以状态栏需要增加左右内边距 // 由于屏幕是圆的,所以状态栏需要增加左右内边距
@ -101,8 +96,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_handle, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_handle, true));
display_ = new SpiLcdDisplay(io_handle, panel_handle, display_ = new SpiLcdDisplay(io_handle, panel_handle,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -124,11 +118,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led_strip(BUILTIN_LED_GPIO); static SingleLed led_strip(BUILTIN_LED_GPIO);
return &led_strip; return &led_strip;

View File

@ -51,9 +51,8 @@ const OttoEmojiDisplay::EmotionMap OttoEmojiDisplay::emotion_maps_[] = {
OttoEmojiDisplay::OttoEmojiDisplay(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel, OttoEmojiDisplay::OttoEmojiDisplay(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel,
int width, int height, int offset_x, int offset_y, bool mirror_x, int width, int height, int offset_x, int offset_y, bool mirror_x,
bool mirror_y, bool swap_xy, DisplayStyle style) bool mirror_y, bool swap_xy)
: SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, : SpiLcdDisplay(panel_io, panel, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy),
style),
emotion_gif_(nullptr) { emotion_gif_(nullptr) {
SetupGifContainer(); SetupGifContainer();
}; };

View File

@ -16,7 +16,7 @@ public:
*/ */
OttoEmojiDisplay(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel, int width, OttoEmojiDisplay(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel, int width,
int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y, int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y,
bool swap_xy, DisplayStyle style); bool swap_xy);
virtual ~OttoEmojiDisplay() = default; virtual ~OttoEmojiDisplay() = default;

View File

@ -21,9 +21,6 @@
#define TAG "OttoRobot" #define TAG "OttoRobot"
LV_FONT_DECLARE(font_puhui_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
extern void InitializeOttoController(); extern void InitializeOttoController();
class OttoRobot : public WifiBoard { class OttoRobot : public WifiBoard {
@ -78,8 +75,7 @@ private:
display_ = new OttoEmojiDisplay( display_ = new OttoEmojiDisplay(
panel_io, panel, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, panel_io, panel, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y,
DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_16_4, &font_awesome_16_4, new Twemoji64()});
} }
void InitializeButtons() { void InitializeButtons() {

View File

@ -32,10 +32,6 @@
#define TAG "sensecap_watcher" #define TAG "sensecap_watcher"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_20_4);
class CustomLcdDisplay : public SpiLcdDisplay { class CustomLcdDisplay : public SpiLcdDisplay {
public: public:
CustomLcdDisplay(esp_lcd_panel_io_handle_t io_handle, CustomLcdDisplay(esp_lcd_panel_io_handle_t io_handle,
@ -47,8 +43,7 @@ class CustomLcdDisplay : public SpiLcdDisplay {
bool mirror_x, bool mirror_x,
bool mirror_y, bool mirror_y,
bool swap_xy) bool swap_xy)
: SpiLcdDisplay(io_handle, panel_handle, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, : SpiLcdDisplay(io_handle, panel_handle, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_30_4, &font_awesome_20_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
lv_obj_set_size(status_bar_, LV_HOR_RES, style_.text_font->line_height * 2 + 10); lv_obj_set_size(status_bar_, LV_HOR_RES, style_.text_font->line_height * 2 + 10);
@ -533,11 +528,6 @@ public:
InitializeCamera(); InitializeCamera();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static SensecapAudioCodec audio_codec( static SensecapAudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -27,10 +27,6 @@
#define TAG "Spotpear_ESP32_S3_1_28_BOX" #define TAG "Spotpear_ESP32_S3_1_28_BOX"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class Cst816d : public I2cDevice { class Cst816d : public I2cDevice {
public: public:
struct TouchPoint_t { struct TouchPoint_t {
@ -68,7 +64,6 @@ private:
TouchPoint_t tp_; TouchPoint_t tp_;
}; };
class CustomLcdDisplay : public SpiLcdDisplay { class CustomLcdDisplay : public SpiLcdDisplay {
public: public:
CustomLcdDisplay(esp_lcd_panel_io_handle_t io_handle, CustomLcdDisplay(esp_lcd_panel_io_handle_t io_handle,
@ -80,8 +75,7 @@ public:
bool mirror_x, bool mirror_x,
bool mirror_y, bool mirror_y,
bool swap_xy) bool swap_xy)
: SpiLcdDisplay(io_handle, panel_handle, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, : SpiLcdDisplay(io_handle, panel_handle, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_16_4, &font_awesome_16_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
// 由于屏幕是圆的,所以状态栏需要增加左右内边距 // 由于屏幕是圆的,所以状态栏需要增加左右内边距
@ -90,7 +84,6 @@ public:
} }
}; };
class Spotpear_ESP32_S3_1_28_BOX : public WifiBoard { class Spotpear_ESP32_S3_1_28_BOX : public WifiBoard {
private: private:
i2c_master_bus_handle_t codec_i2c_bus_; i2c_master_bus_handle_t codec_i2c_bus_;
@ -161,7 +154,6 @@ private:
ESP_ERROR_CHECK(i2c_new_master_bus(&i2c_bus_cfg, &i2c_bus_)); ESP_ERROR_CHECK(i2c_new_master_bus(&i2c_bus_cfg, &i2c_bus_));
} }
static void touchpad_timer_callback(void* arg) { static void touchpad_timer_callback(void* arg) {
auto& board = (Spotpear_ESP32_S3_1_28_BOX&)Board::GetInstance(); auto& board = (Spotpear_ESP32_S3_1_28_BOX&)Board::GetInstance();
auto touchpad = board.GetTouchpad(); auto touchpad = board.GetTouchpad();
@ -280,12 +272,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_64);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -28,9 +28,6 @@
#define TAG "Spotpear_esp32_s3_lcd_1_54" #define TAG "Spotpear_esp32_s3_lcd_1_54"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class Cst816d : public I2cDevice { class Cst816d : public I2cDevice {
public: public:
struct TouchPoint_t { struct TouchPoint_t {
@ -212,7 +209,6 @@ private:
ESP_ERROR_CHECK(spi_bus_initialize(SPI3_HOST, &buscfg, SPI_DMA_CH_AUTO)); ESP_ERROR_CHECK(spi_bus_initialize(SPI3_HOST, &buscfg, SPI_DMA_CH_AUTO));
} }
void InitializeSt7789Display() { void InitializeSt7789Display() {
esp_lcd_panel_io_handle_t panel_io = nullptr; esp_lcd_panel_io_handle_t panel_io = nullptr;
esp_lcd_panel_handle_t panel = nullptr; esp_lcd_panel_handle_t panel = nullptr;
@ -242,7 +238,6 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y)); ESP_ERROR_CHECK(esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y));
ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true)); ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, true));
// uint8_t data_0xBB[] = { 0x3F }; // uint8_t data_0xBB[] = { 0x3F };
// esp_lcd_panel_io_tx_param(panel_io, 0xBB, data_0xBB, sizeof(data_0xBB)); // esp_lcd_panel_io_tx_param(panel_io, 0xBB, data_0xBB, sizeof(data_0xBB));
@ -250,8 +245,7 @@ private:
esp_lcd_panel_io_tx_param(panel_io, 0xBB, data_0xBB, sizeof(data_0xBB)); esp_lcd_panel_io_tx_param(panel_io, 0xBB, data_0xBB, sizeof(data_0xBB));
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -283,11 +277,6 @@ public:
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led_strip(BUILTIN_LED_GPIO); static SingleLed led_strip(BUILTIN_LED_GPIO);
return &led_strip; return &led_strip;

View File

@ -18,12 +18,8 @@
#include "power_manager.h" #include "power_manager.h"
// #include <esp_sleep.h> // #include <esp_sleep.h>
#define TAG "SURFERC3114TFT" #define TAG "SURFERC3114TFT"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class SurferC3114TFT : public WifiBoard { class SurferC3114TFT : public WifiBoard {
private: private:
i2c_master_bus_handle_t codec_i2c_bus_; i2c_master_bus_handle_t codec_i2c_bus_;
@ -146,8 +142,7 @@ private:
esp_lcd_panel_swap_xy(panel_, DISPLAY_SWAP_XY); esp_lcd_panel_swap_xy(panel_, DISPLAY_SWAP_XY);
esp_lcd_panel_mirror(panel_, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel_, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io_, panel_, display_ = new SpiLcdDisplay(panel_io_, panel_,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
public: public:
@ -166,11 +161,6 @@ public:
esp_efuse_write_field_bit(ESP_EFUSE_VDD_SPI_AS_GPIO); esp_efuse_write_field_bit(ESP_EFUSE_VDD_SPI_AS_GPIO);
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_S_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec( static Es8311AudioCodec audio_codec(
codec_i2c_bus_, codec_i2c_bus_,

View File

@ -16,11 +16,6 @@
#define TAG "TaijiPiS3Board" #define TAG "TaijiPiS3Board"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
static const st77916_lcd_init_cmd_t lcd_init_cmds[] = { static const st77916_lcd_init_cmd_t lcd_init_cmds[] = {
#ifdef CONFIG_TAIJIPAI_I2S_TYPE_STD #ifdef CONFIG_TAIJIPAI_I2S_TYPE_STD
{0xF0, (uint8_t[]){0x08}, 1, 0}, {0xF0, (uint8_t[]){0x08}, 1, 0},
@ -595,8 +590,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
void InitializeMute() { void InitializeMute() {
@ -616,11 +610,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
#ifdef CONFIG_TAIJIPAI_I2S_TYPE_STD #ifdef CONFIG_TAIJIPAI_I2S_TYPE_STD
static NoAudioCodecSimplex audio_codec( static NoAudioCodecSimplex audio_codec(

View File

@ -17,10 +17,6 @@
#define TAG "KevinBoxBoard" #define TAG "KevinBoxBoard"
LV_FONT_DECLARE(font_puhui_basic_14_1);
LV_FONT_DECLARE(font_awesome_14_1);
class Pmic : public Axp2101 { class Pmic : public Axp2101 {
public: public:
Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) { Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) {
@ -49,7 +45,6 @@ public:
} }
}; };
class KevinBoxBoard : public Ml307Board { class KevinBoxBoard : public Ml307Board {
private: private:
i2c_master_bus_handle_t display_i2c_bus_; i2c_master_bus_handle_t display_i2c_bus_;
@ -147,8 +142,7 @@ private:
ESP_LOGI(TAG, "Turning display on"); ESP_LOGI(TAG, "Turning display on");
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true));
display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
{&font_puhui_basic_14_1, &font_awesome_14_1});
} }
void InitializeCodecI2c() { void InitializeCodecI2c() {
@ -228,11 +222,6 @@ public:
InitializePowerSaveTimer(); InitializePowerSaveTimer();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_14_1);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -20,10 +20,6 @@
#define TAG "waveshare_lcd_1_69" #define TAG "waveshare_lcd_1_69"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class CustomLcdDisplay : public SpiLcdDisplay { class CustomLcdDisplay : public SpiLcdDisplay {
public: public:
CustomLcdDisplay(esp_lcd_panel_io_handle_t io_handle, CustomLcdDisplay(esp_lcd_panel_io_handle_t io_handle,
@ -36,15 +32,13 @@ public:
bool mirror_y, bool mirror_y,
bool swap_xy) bool swap_xy)
: SpiLcdDisplay(io_handle, panel_handle, : SpiLcdDisplay(io_handle, panel_handle,
width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_20_4, &font_awesome_20_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
lv_obj_set_style_pad_left(status_bar_, LV_HOR_RES * 0.1, 0); lv_obj_set_style_pad_left(status_bar_, LV_HOR_RES * 0.1, 0);
lv_obj_set_style_pad_right(status_bar_, LV_HOR_RES * 0.1, 0); lv_obj_set_style_pad_right(status_bar_, LV_HOR_RES * 0.1, 0);
} }
}; };
class CustomButton: public Button { class CustomButton: public Button {
public: public:
void OnPressDownDel(void) { void OnPressDownDel(void) {
@ -63,7 +57,6 @@ public:
} }
}; };
class CustomBoard : public WifiBoard { class CustomBoard : public WifiBoard {
private: private:
CustomButton boot_button_; CustomButton boot_button_;
@ -212,11 +205,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_S_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec( static Es8311AudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -17,10 +17,6 @@
#define TAG "waveshare_c6_amoled_1_43" #define TAG "waveshare_c6_amoled_1_43"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_30_4);
static const sh8601_lcd_init_cmd_t lcd_init_cmds[] = static const sh8601_lcd_init_cmd_t lcd_init_cmds[] =
{ {
{0x11, (uint8_t []){0x00}, 0, 80}, {0x11, (uint8_t []){0x00}, 0, 80},
@ -58,8 +54,7 @@ public:
bool mirror_y, bool mirror_y,
bool swap_xy) bool swap_xy)
: SpiLcdDisplay(io_handle, panel_handle, : SpiLcdDisplay(io_handle, panel_handle,
width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_30_4, &font_awesome_30_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
lv_display_add_event_cb(display_, MyDrawEventCb, LV_EVENT_INVALIDATE_AREA, NULL); lv_display_add_event_cb(display_, MyDrawEventCb, LV_EVENT_INVALIDATE_AREA, NULL);
} }
@ -284,11 +279,6 @@ public:
return display_; return display_;
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_S_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
}; };
DECLARE_BOARD(CustomBoard); DECLARE_BOARD(CustomBoard);

View File

@ -20,9 +20,6 @@
#include "esp_lcd_touch_gt911.h" #include "esp_lcd_touch_gt911.h"
#define TAG "WaveshareEsp32p4nano" #define TAG "WaveshareEsp32p4nano"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_30_4);
class CustomBacklight : public Backlight { class CustomBacklight : public Backlight {
public: public:
CustomBacklight(i2c_master_bus_handle_t i2c_handle) CustomBacklight(i2c_master_bus_handle_t i2c_handle)
@ -160,8 +157,7 @@ private:
esp_lcd_panel_init(disp_panel); esp_lcd_panel_init(disp_panel);
display__ = new MipiLcdDisplay(io, disp_panel, DISPLAY_WIDTH, DISPLAY_HEIGHT, display__ = new MipiLcdDisplay(io, disp_panel, DISPLAY_WIDTH, DISPLAY_HEIGHT,
DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_30_4, &font_awesome_30_4});
backlight_ = new CustomBacklight(codec_i2c_bus_); backlight_ = new CustomBacklight(codec_i2c_bus_);
backlight_->RestoreBrightness(); backlight_->RestoreBrightness();
} }
@ -229,10 +225,6 @@ public:
return backlight_; return backlight_;
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
}; };
DECLARE_BOARD(WaveshareEsp32p4nano); DECLARE_BOARD(WaveshareEsp32p4nano);

View File

@ -19,9 +19,6 @@
#include "esp_lcd_touch_gt911.h" #include "esp_lcd_touch_gt911.h"
#define TAG "WaveshareEsp32p44b" #define TAG "WaveshareEsp32p44b"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_30_4);
class WaveshareEsp32p44b : public WifiBoard { class WaveshareEsp32p44b : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -115,8 +112,7 @@ private:
esp_lcd_panel_init(disp_panel); esp_lcd_panel_init(disp_panel);
display_ = new MipiLcdDisplay(io, disp_panel, DISPLAY_WIDTH, DISPLAY_HEIGHT, display_ = new MipiLcdDisplay(io, disp_panel, DISPLAY_WIDTH, DISPLAY_HEIGHT,
DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_30_4, &font_awesome_30_4});
} }
void InitializeTouch() void InitializeTouch()
{ {
@ -194,10 +190,6 @@ public:
return &backlight; return &backlight;
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
}; };
DECLARE_BOARD(WaveshareEsp32p44b); DECLARE_BOARD(WaveshareEsp32p44b);

View File

@ -19,9 +19,6 @@
#include "esp_lcd_touch_gt911.h" #include "esp_lcd_touch_gt911.h"
#define TAG "WaveshareEsp32p4xc" #define TAG "WaveshareEsp32p4xc"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_30_4);
class WaveshareEsp32p4xc : public WifiBoard { class WaveshareEsp32p4xc : public WifiBoard {
private: private:
i2c_master_bus_handle_t i2c_bus_; i2c_master_bus_handle_t i2c_bus_;
@ -117,8 +114,7 @@ private:
esp_lcd_panel_init(disp_panel); esp_lcd_panel_init(disp_panel);
display_ = new MipiLcdDisplay(io, disp_panel, DISPLAY_WIDTH, DISPLAY_HEIGHT, display_ = new MipiLcdDisplay(io, disp_panel, DISPLAY_WIDTH, DISPLAY_HEIGHT,
DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_30_4, &font_awesome_30_4});
} }
void InitializeTouch() void InitializeTouch()
{ {
@ -170,11 +166,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static BoxAudioCodec audio_codec( static BoxAudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -26,10 +26,6 @@
#define LCD_OPCODE_READ_CMD (0x0BULL) #define LCD_OPCODE_READ_CMD (0x0BULL)
#define LCD_OPCODE_WRITE_COLOR (0x32ULL) #define LCD_OPCODE_WRITE_COLOR (0x32ULL)
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
class CustomBoard : public WifiBoard { class CustomBoard : public WifiBoard {
private: private:
Button boot_button_; Button boot_button_;
@ -113,8 +109,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR)); ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel, DISPLAY_INVERT_COLOR));
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void InitializeJd9853Display() { void InitializeJd9853Display() {
@ -147,8 +142,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_mirror(panel, true, false)); ESP_ERROR_CHECK(esp_lcd_panel_mirror(panel, true, false));
ESP_ERROR_CHECK(esp_lcd_panel_swap_xy(panel, true)); ESP_ERROR_CHECK(esp_lcd_panel_swap_xy(panel, true));
display_ = new SpiLcdDisplay(panel_io, panel, display_ = new SpiLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -209,11 +203,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static CircularStrip led(BUILTIN_LED_GPIO, 6); static CircularStrip led(BUILTIN_LED_GPIO, 6);
return &led; return &led;

View File

@ -26,9 +26,6 @@
#define TAG "WaveshareEsp32s3TouchAMOLED1inch75" #define TAG "WaveshareEsp32s3TouchAMOLED1inch75"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_30_4);
class Pmic : public Axp2101 { class Pmic : public Axp2101 {
public: public:
Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) { Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) {
@ -110,8 +107,7 @@ public:
bool mirror_y, bool mirror_y,
bool swap_xy) bool swap_xy)
: SpiLcdDisplay(io_handle, panel_handle, : SpiLcdDisplay(io_handle, panel_handle,
width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_30_4, &font_awesome_30_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
lv_obj_set_style_pad_left(status_bar_, LV_HOR_RES* 0.1, 0); lv_obj_set_style_pad_left(status_bar_, LV_HOR_RES* 0.1, 0);
lv_obj_set_style_pad_right(status_bar_, LV_HOR_RES* 0.1, 0); lv_obj_set_style_pad_right(status_bar_, LV_HOR_RES* 0.1, 0);
@ -314,11 +310,6 @@ public:
InitializeTools(); InitializeTools();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static BoxAudioCodec audio_codec( static BoxAudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -25,9 +25,6 @@
#define TAG "WaveshareEsp32s3TouchAMOLED2inch06" #define TAG "WaveshareEsp32s3TouchAMOLED2inch06"
LV_FONT_DECLARE(font_puhui_basic_30_4);
LV_FONT_DECLARE(font_awesome_30_4);
class Pmic : public Axp2101 { class Pmic : public Axp2101 {
public: public:
Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) { Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) {
@ -106,8 +103,7 @@ public:
bool mirror_y, bool mirror_y,
bool swap_xy) bool swap_xy)
: SpiLcdDisplay(io_handle, panel_handle, : SpiLcdDisplay(io_handle, panel_handle,
width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy, width, height, offset_x, offset_y, mirror_x, mirror_y, swap_xy) {
{&font_puhui_basic_30_4, &font_awesome_30_4}) {
DisplayLockGuard lock(this); DisplayLockGuard lock(this);
lv_obj_set_style_pad_left(status_bar_, LV_HOR_RES* 0.1, 0); lv_obj_set_style_pad_left(status_bar_, LV_HOR_RES* 0.1, 0);
lv_obj_set_style_pad_right(status_bar_, LV_HOR_RES* 0.1, 0); lv_obj_set_style_pad_right(status_bar_, LV_HOR_RES* 0.1, 0);
@ -300,11 +296,6 @@ public:
InitializeTools(); InitializeTools();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_30_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static BoxAudioCodec audio_codec( static BoxAudioCodec audio_codec(
i2c_bus_, i2c_bus_,

View File

@ -1,25 +1,21 @@
#include "custom_lcd_display.h"
#include "config.h"
#include "custom_lcd_display.h"
#include "lcd_display.h" #include "lcd_display.h"
#include "assets/lang_config.h"
#include "settings.h"
#include "board.h"
#include <vector> #include <vector>
#include <cstring>
#include <esp_lcd_panel_io.h>
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include <freertos/semphr.h>
#include <esp_log.h> #include <esp_log.h>
#include <esp_err.h> #include <esp_err.h>
#include <esp_lvgl_port.h> #include <esp_lvgl_port.h>
#include "assets/lang_config.h"
#include <cstring>
#include "settings.h"
#include "esp_lcd_panel_io.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "freertos/semphr.h"
#include "config.h"
#include "board.h"
#define TAG "CustomLcdDisplay" #define TAG "CustomLcdDisplay"
@ -45,7 +41,6 @@
#define LIGHT_BORDER_COLOR lv_color_hex(0xE0E0E0) // Light gray border #define LIGHT_BORDER_COLOR lv_color_hex(0xE0E0E0) // Light gray border
#define LIGHT_LOW_BATTERY_COLOR lv_color_black() // Black for light mode #define LIGHT_LOW_BATTERY_COLOR lv_color_black() // Black for light mode
// Define dark theme colors // Define dark theme colors
static const ThemeColors DARK_THEME = { static const ThemeColors DARK_THEME = {
.background = DARK_BACKGROUND_COLOR, .background = DARK_BACKGROUND_COLOR,
@ -80,8 +75,6 @@ static uint16_t *trans_act;
static uint16_t *trans_buf_1; static uint16_t *trans_buf_1;
static uint16_t *trans_buf_2; static uint16_t *trans_buf_2;
bool CustomLcdDisplay::lvgl_port_flush_io_ready_callback(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_io_event_data_t *edata, void *user_ctx) bool CustomLcdDisplay::lvgl_port_flush_io_ready_callback(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_io_event_data_t *edata, void *user_ctx)
{ {
BaseType_t taskAwake = pdFALSE; BaseType_t taskAwake = pdFALSE;
@ -99,7 +92,6 @@ void CustomLcdDisplay::lvgl_port_flush_callback(lv_display_t *drv, const lv_area
esp_lcd_panel_handle_t panel_handle = (esp_lcd_panel_handle_t)lv_display_get_driver_data(drv); esp_lcd_panel_handle_t panel_handle = (esp_lcd_panel_handle_t)lv_display_get_driver_data(drv);
assert(panel_handle != NULL); assert(panel_handle != NULL);
size_t len = lv_area_get_size(area); size_t len = lv_area_get_size(area);
lv_draw_sw_rgb565_swap(color_map, len); lv_draw_sw_rgb565_swap(color_map, len);
@ -249,11 +241,9 @@ void CustomLcdDisplay::lvgl_port_flush_callback(lv_display_t *drv, const lv_area
lv_disp_flush_ready(drv); lv_disp_flush_ready(drv);
} }
CustomLcdDisplay::CustomLcdDisplay(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel, CustomLcdDisplay::CustomLcdDisplay(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel,
int width, int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y, bool swap_xy, int width, int height, int offset_x, int offset_y, bool mirror_x, bool mirror_y, bool swap_xy)
DisplayStyle style) : LcdDisplay(panel_io, panel, width, height) {
: LcdDisplay(panel_io, panel, width, height, style) {
// width_ = width; // width_ = width;
// height_ = height; // height_ = height;

View File

@ -8,8 +8,7 @@ class CustomLcdDisplay : public LcdDisplay {
public: public:
CustomLcdDisplay(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel, CustomLcdDisplay(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_handle_t panel,
int width, int height, int offset_x, int offset_y, int width, int height, int offset_x, int offset_y,
bool mirror_x, bool mirror_y, bool swap_xy, bool mirror_x, bool mirror_y, bool swap_xy);
DisplayStyle style);
private: private:
static bool lvgl_port_flush_io_ready_callback(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_io_event_data_t *edata, void *user_ctx); static bool lvgl_port_flush_io_ready_callback(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_io_event_data_t *edata, void *user_ctx);
static void lvgl_port_flush_callback(lv_display_t *drv, const lv_area_t *area, uint8_t *color_map); static void lvgl_port_flush_callback(lv_display_t *drv, const lv_area_t *area, uint8_t *color_map);

View File

@ -21,7 +21,6 @@
#include "axp2101.h" #include "axp2101.h"
#include "power_save_timer.h" #include "power_save_timer.h"
#include "esp_lcd_axs15231b.h" #include "esp_lcd_axs15231b.h"
#include "custom_lcd_display.h" #include "custom_lcd_display.h"
@ -34,11 +33,6 @@
#define TAG "waveshare_lcd_3_5b" #define TAG "waveshare_lcd_3_5b"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
static const axs15231b_lcd_init_cmd_t lcd_init_cmds[] = { static const axs15231b_lcd_init_cmd_t lcd_init_cmds[] = {
{0xBB, (uint8_t[]){0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5A, 0xA5}, 8, 0}, {0xBB, (uint8_t[]){0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5A, 0xA5}, 8, 0},
{0xA0, (uint8_t[]){0xC0, 0x10, 0x00, 0x02, 0x00, 0x00, 0x04, 0x3F, 0x20, 0x05, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00}, 17, 0}, {0xA0, (uint8_t[]){0xC0, 0x10, 0x00, 0x02, 0x00, 0x00, 0x04, 0x3F, 0x20, 0x05, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00}, 17, 0},
@ -75,8 +69,6 @@ static const axs15231b_lcd_init_cmd_t lcd_init_cmds[] = {
{0x2a, (uint8_t[]){0x00, 0x00, 0x01, 0x3f}, 4, 0}, {0x2a, (uint8_t[]){0x00, 0x00, 0x01, 0x3f}, 4, 0},
{0x2b, (uint8_t[]){0x00, 0x00, 0x01, 0xdf}, 4, 0}}; {0x2b, (uint8_t[]){0x00, 0x00, 0x01, 0xdf}, 4, 0}};
class Pmic : public Axp2101 { class Pmic : public Axp2101 {
public: public:
Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) { Pmic(i2c_master_bus_handle_t i2c_bus, uint8_t addr) : Axp2101(i2c_bus, addr) {
@ -261,7 +253,6 @@ private:
}; };
esp_lcd_new_panel_axs15231b(panel_io, &panel_config, &panel); esp_lcd_new_panel_axs15231b(panel_io, &panel_config, &panel);
esp_lcd_panel_reset(panel); esp_lcd_panel_reset(panel);
esp_lcd_panel_init(panel); esp_lcd_panel_init(panel);
@ -271,8 +262,7 @@ private:
esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y); esp_lcd_panel_mirror(panel, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
display_ = new CustomLcdDisplay(panel_io, panel, display_ = new CustomLcdDisplay(panel_io, panel,
DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void InitializeButtons() { void InitializeButtons() {
@ -285,7 +275,6 @@ private:
}); });
} }
void InitializeTouch() void InitializeTouch()
{ {
esp_lcd_touch_handle_t tp; esp_lcd_touch_handle_t tp;
@ -318,7 +307,6 @@ private:
ESP_LOGI(TAG, "Touch panel initialized successfully"); ESP_LOGI(TAG, "Touch panel initialized successfully");
} }
public: public:
CustomBoard() : CustomBoard() :
boot_button_(BOOT_BUTTON_GPIO) { boot_button_(BOOT_BUTTON_GPIO) {
@ -340,11 +328,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static Es8311AudioCodec audio_codec(i2c_bus_, I2C_NUM_0, AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static Es8311AudioCodec audio_codec(i2c_bus_, I2C_NUM_0, AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_GPIO_MCLK, AUDIO_I2S_GPIO_BCLK, AUDIO_I2S_GPIO_WS, AUDIO_I2S_GPIO_DOUT, AUDIO_I2S_GPIO_DIN, AUDIO_I2S_GPIO_MCLK, AUDIO_I2S_GPIO_BCLK, AUDIO_I2S_GPIO_WS, AUDIO_I2S_GPIO_DOUT, AUDIO_I2S_GPIO_DIN,
@ -363,6 +346,7 @@ public:
virtual Camera* GetCamera() override { virtual Camera* GetCamera() override {
return camera_; return camera_;
} }
#if PMIC_ENABLE #if PMIC_ENABLE
virtual bool GetBatteryLevel(int &level, bool& charging, bool& discharging) override { virtual bool GetBatteryLevel(int &level, bool& charging, bool& discharging) override {
static bool last_discharging = false; static bool last_discharging = false;

View File

@ -22,10 +22,6 @@
#define TAG "XINGZHI_CUBE_0_85TFT_ML307" #define TAG "XINGZHI_CUBE_0_85TFT_ML307"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
static const nv3023_lcd_init_cmd_t lcd_init_cmds[] = { static const nv3023_lcd_init_cmd_t lcd_init_cmds[] = {
{0xff, (uint8_t[]){0xa5}, 1, 0}, {0xff, (uint8_t[]){0xa5}, 1, 0},
{0x3E, (uint8_t[]){0x09}, 1, 0}, {0x3E, (uint8_t[]){0x09}, 1, 0},
@ -141,7 +137,6 @@ private:
ESP_ERROR_CHECK(spi_bus_initialize(SPI3_HOST, &buscfg, SPI_DMA_CH_AUTO)); ESP_ERROR_CHECK(spi_bus_initialize(SPI3_HOST, &buscfg, SPI_DMA_CH_AUTO));
} }
void InitializeButtons() { void InitializeButtons() {
boot_button_.OnClick([this]() { boot_button_.OnClick([this]() {
auto& app = Application::GetInstance(); auto& app = Application::GetInstance();
@ -174,8 +169,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true));
display_ = new SpiLcdDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, display_ = new SpiLcdDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y,
DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void Initializegpio21_45() { void Initializegpio21_45() {
@ -208,11 +202,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN); AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN);

View File

@ -22,10 +22,6 @@
#define TAG "XINGZHI_CUBE_0_85TFT_WIFI" #define TAG "XINGZHI_CUBE_0_85TFT_WIFI"
LV_FONT_DECLARE(font_puhui_basic_16_4);
LV_FONT_DECLARE(font_awesome_16_4);
static const nv3023_lcd_init_cmd_t lcd_init_cmds[] = { static const nv3023_lcd_init_cmd_t lcd_init_cmds[] = {
{0xff, (uint8_t[]){0xa5}, 1, 0}, {0xff, (uint8_t[]){0xa5}, 1, 0},
{0x3E, (uint8_t[]){0x09}, 1, 0}, {0x3E, (uint8_t[]){0x09}, 1, 0},
@ -141,7 +137,6 @@ private:
ESP_ERROR_CHECK(spi_bus_initialize(SPI3_HOST, &buscfg, SPI_DMA_CH_AUTO)); ESP_ERROR_CHECK(spi_bus_initialize(SPI3_HOST, &buscfg, SPI_DMA_CH_AUTO));
} }
void InitializeButtons() { void InitializeButtons() {
boot_button_.OnClick([this]() { boot_button_.OnClick([this]() {
power_save_timer_->WakeUp(); power_save_timer_->WakeUp();
@ -178,8 +173,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true));
display_ = new SpiLcdDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, display_ = new SpiLcdDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y,
DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_16_4, &font_awesome_16_4});
} }
void Initializegpio21_45() { void Initializegpio21_45() {
@ -212,11 +206,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_16_4_EMOJI_32);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN); AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN);

View File

@ -20,10 +20,6 @@
#define TAG "XINGZHI_CUBE_0_96OLED_ML307" #define TAG "XINGZHI_CUBE_0_96OLED_ML307"
LV_FONT_DECLARE(font_puhui_basic_14_1);
LV_FONT_DECLARE(font_awesome_14_1);
class XINGZHI_CUBE_0_96OLED_ML307 : public DualNetworkBoard { class XINGZHI_CUBE_0_96OLED_ML307 : public DualNetworkBoard {
private: private:
i2c_master_bus_handle_t display_i2c_bus_; i2c_master_bus_handle_t display_i2c_bus_;
@ -130,8 +126,7 @@ private:
ESP_LOGI(TAG, "Turning display on"); ESP_LOGI(TAG, "Turning display on");
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true));
display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
{&font_puhui_basic_14_1, &font_awesome_14_1});
} }
void InitializeButtons() { void InitializeButtons() {
@ -201,11 +196,6 @@ public:
InitializeButtons(); InitializeButtons();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_14_1);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -21,10 +21,6 @@
#define TAG "XINGZHI_CUBE_0_96OLED_WIFI" #define TAG "XINGZHI_CUBE_0_96OLED_WIFI"
LV_FONT_DECLARE(font_puhui_basic_14_1);
LV_FONT_DECLARE(font_awesome_14_1);
class XINGZHI_CUBE_0_96OLED_WIFI : public WifiBoard { class XINGZHI_CUBE_0_96OLED_WIFI : public WifiBoard {
private: private:
i2c_master_bus_handle_t display_i2c_bus_; i2c_master_bus_handle_t display_i2c_bus_;
@ -131,8 +127,7 @@ private:
ESP_LOGI(TAG, "Turning display on"); ESP_LOGI(TAG, "Turning display on");
ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_disp_on_off(panel_, true));
display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, display_ = new OledDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y);
{&font_puhui_basic_14_1, &font_awesome_14_1});
} }
void InitializeButtons() { void InitializeButtons() {
@ -192,11 +187,6 @@ public:
InitializeButtons(); InitializeButtons();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_14_1);
return &assets;
}
virtual Led* GetLed() override { virtual Led* GetLed() override {
static SingleLed led(BUILTIN_LED_GPIO); static SingleLed led(BUILTIN_LED_GPIO);
return &led; return &led;

View File

@ -19,10 +19,6 @@
#define TAG "XINGZHI_CUBE_1_54TFT_ML307" #define TAG "XINGZHI_CUBE_1_54TFT_ML307"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class XINGZHI_CUBE_1_54TFT_ML307 : public DualNetworkBoard { class XINGZHI_CUBE_1_54TFT_ML307 : public DualNetworkBoard {
private: private:
Button boot_button_; Button boot_button_;
@ -161,8 +157,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel_, true));
display_ = new SpiLcdDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, display_ = new SpiLcdDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y,
DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -179,11 +174,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN); AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN);

View File

@ -19,10 +19,6 @@
#define TAG "XINGZHI_CUBE_1_54TFT_WIFI" #define TAG "XINGZHI_CUBE_1_54TFT_WIFI"
LV_FONT_DECLARE(font_puhui_basic_20_4);
LV_FONT_DECLARE(font_awesome_20_4);
class XINGZHI_CUBE_1_54TFT_WIFI : public WifiBoard { class XINGZHI_CUBE_1_54TFT_WIFI : public WifiBoard {
private: private:
Button boot_button_; Button boot_button_;
@ -151,8 +147,7 @@ private:
ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel_, true)); ESP_ERROR_CHECK(esp_lcd_panel_invert_color(panel_, true));
display_ = new SpiLcdDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y, display_ = new SpiLcdDisplay(panel_io_, panel_, DISPLAY_WIDTH, DISPLAY_HEIGHT, DISPLAY_OFFSET_X, DISPLAY_OFFSET_Y,
DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY, DISPLAY_MIRROR_X, DISPLAY_MIRROR_Y, DISPLAY_SWAP_XY);
{&font_puhui_basic_20_4, &font_awesome_20_4});
} }
public: public:
@ -168,11 +163,6 @@ public:
GetBacklight()->RestoreBrightness(); GetBacklight()->RestoreBrightness();
} }
virtual Assets* GetAssets() override {
static Assets assets(ASSETS_XIAOZHI_PUHUI_COMMON_20_4_EMOJI_64);
return &assets;
}
virtual AudioCodec* GetAudioCodec() override { virtual AudioCodec* GetAudioCodec() override {
static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE, static NoAudioCodecSimplex audio_codec(AUDIO_INPUT_SAMPLE_RATE, AUDIO_OUTPUT_SAMPLE_RATE,
AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN); AUDIO_I2S_SPK_GPIO_BCLK, AUDIO_I2S_SPK_GPIO_LRCK, AUDIO_I2S_SPK_GPIO_DOUT, AUDIO_I2S_MIC_GPIO_SCK, AUDIO_I2S_MIC_GPIO_WS, AUDIO_I2S_MIC_GPIO_DIN);

Some files were not shown because too many files have changed in this diff Show More