Skip to content

Commit

Permalink
Update submodules to latest and enable new optimizations (#8)
Browse files Browse the repository at this point in the history
* update espp and esp-protocols submodules

* remove older jpegdec

* add esp-cpp/jpegdec

* simplify config and enable some optimizations / speedup

* remove touch / lvgl since they are not needed

* minor update

* update

* fix log

* decrease lvgl memory since it is not used so we can have larger framebuffers if we want
  • Loading branch information
finger563 authored Aug 15, 2024
1 parent 90f55f5 commit 5f35059
Show file tree
Hide file tree
Showing 8 changed files with 17 additions and 43 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
with:
submodules: 'recursive'

- name: Build Examples
- name: Build Main
uses: espressif/esp-idf-ci-action@v1
with:
esp_idf_version: v5.2.2
Expand Down
6 changes: 3 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
[submodule "components/espp"]
path = components/espp
url = [email protected]:esp-cpp/espp
[submodule "components/jpegdec"]
path = components/jpegdec
url = [email protected]:bitbank2/JPEGDEC
[submodule "components/esp-protocols"]
path = components/esp-protocols
url = [email protected]:espressif/esp-protocols
[submodule "components/jpegdec"]
path = components/jpegdec
url = https://github.com/esp-cpp/jpegdec
3 changes: 3 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@ set(EXTRA_COMPONENT_DIRS
"components/esp-protocols/components"
)

# add compile definition ARDUINO_ARCH_ESP32, enabling jpegdec simd support
add_compile_definitions(ARDUINO_ARCH_ESP32)

add_compile_definitions(BOARD_HAS_PSRAM)

set(
Expand Down
2 changes: 1 addition & 1 deletion components/espp
Submodule espp updated 307 files
6 changes: 3 additions & 3 deletions main/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ extern "C" void app_main(void) {
logger.error("Could not initialize LCD");
return;
}
static constexpr size_t pixel_buffer_size = hal::lcd_width() * 50;
static constexpr size_t pixel_buffer_size = hw.lcd_width() * 50;
if (!hw.initialize_display(pixel_buffer_size)) {
logger.error("Could not initialize display");
return;
Expand Down Expand Up @@ -181,12 +181,12 @@ extern "C" void app_main(void) {
auto display_task = espp::Task::make_unique({
.name = "Display Task",
.callback = display_task_fn,
.stack_size_bytes = 10 * 1024,
.stack_size_bytes = 5 * 1024,
});
display_task->start();

// make the rtsp client
logger.info("Starting server task");
logger.info("Starting RTSP client");
std::atomic<int> num_frames_received{0};
espp::RtspClient rtsp_client({
.server_address = mdns_service_address,
Expand Down
37 changes: 4 additions & 33 deletions sdkconfig.defaults
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ CONFIG_ESP_TASK_WDT_EN=n

CONFIG_ESPTOOLPY_FLASHSIZE_16MB=y
CONFIG_ESPTOOLPY_FLASHSIZE="16MB"
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y # over twice as fast as DIO
# over twice as fast as DIO
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHFREQ_80M=y

CONFIG_FREERTOS_HZ=1000

Expand Down Expand Up @@ -49,35 +51,4 @@ CONFIG_FATFS_LFN_HEAP=y
CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_240=y
CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ=240

#
# LVGL configuration - # Monitoring
#
# CONFIG_LV_USE_PERF_MONITOR=y
# CONFIG_LV_USE_MEM_MONITOR=y

#
# LVGL configuration - # Color settings
#
# CONFIG_LV_COLOR_DEPTH_32 is not set
CONFIG_LV_COLOR_DEPTH_16=y
# CONFIG_LV_COLOR_DEPTH_8 is not set
# CONFIG_LV_COLOR_DEPTH_1 is not set
CONFIG_LV_COLOR_DEPTH=16
CONFIG_LV_COLOR_16_SWAP=y
CONFIG_LV_COLOR_MIX_ROUND_OFS=128
CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00

#
# LVGL configuration - # Themes
#
CONFIG_LV_USE_THEME_DEFAULT=y
CONFIG_LV_THEME_DEFAULT_DARK=y
CONFIG_LV_THEME_DEFAULT_GROW=y
CONFIG_LV_THEME_DEFAULT_TRANSITION_TIME=80

# LVGL Configuration - 3rd party libraries
CONFIG_LV_USE_FS_POSIX=y
# configure the lv drive letter to be 'L' (76) for use as "L:/..."
CONFIG_LV_FS_POSIX_LETTER=76
CONFIG_LV_USE_SJPG=y
CONFIG_LV_USE_QRCODE=y
CONFIG_LV_MEM_SIZE_KILOBYTES=10

0 comments on commit 5f35059

Please sign in to comment.