GithubHelp home page GithubHelp logo

m5stack / m5dial-userdemo Goto Github PK

View Code? Open in Web Editor NEW
35.0 3.0 15.0 69.71 MB

M5Dial user demo for hardware evaluation.

License: MIT License

CMake 0.01% Makefile 0.01% C++ 1.83% C 97.94% Python 0.21% Shell 0.01% Handlebars 0.01% Ruby 0.01% HTML 0.01%

m5dial-userdemo's Introduction

M5Dial-UserDemo

M5Dial user demo for hardware evaluation.

Environment set up

To start using ESP-IDF on ESP32-S3, install the following software:

  • Toolchain to compile code for ESP32-S3
  • Build tools - CMake and Ninja to build a full Application for ESP32-S3
  • ESP-IDF that essentially contains API (software libraries and source code) for ESP32-S3 and scripts to operate the Toolchain

What you need to know

Installation

To install all the required software, we offer some different ways to facilitate this task. Choose from one of the available options.

More information can be found ESP-IDF v5.1.3

IDE

Manual Installation

For the manual procedure, please select according to your operating system.

Build

git clone https://github.com/m5stack/M5Dial-UserDemo.git
cd M5Dial-UserDemo
idf.py build

m5dial-userdemo's People

Contributors

3110 avatar forairaaaaa avatar nlv-hack avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

m5dial-userdemo's Issues

Activating LVGL RLottie conflicts with LovyanGFX

I'm new to ESP programming and I've recently purchased the M5 Dial.

I'm using this demo for my project and I wanted to try to render a Lottie image using LVGL Lottie Player. I've followed these instructions and I was able to enable RLottie successfully.... But because Rlottie and LovyanGFX uses different versions of Miniz, I'm getting this multiple definition conflict error.

Any idea on how to fix it?

[1/9] Performing build step for 'bootloader'
[1/1] cd ./M5Dial-UserDemo/build/bootloader/esp-idf/esptool_py && ~/.espressif/python_env/idf5.1_py3.9_env/bin/python ~/esp/esp-idf/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 ./M5Dial-UserDemo/build/bootloader/bootloader.bin
Bootloader binary size 0x5770 bytes. 0x2890 bytes (32%) free.
[2/7] Building CXX object esp-idf/main/CMakeFiles/__idf_main.dir/apps/app_more_menu/more_menu_selected_callback.cpp.obj
[3/7] Linking C static library esp-idf/main/libmain.a
[4/7] Generating ld/sections.ld
[5/7] Linking CXX executable stamp_ring_factory_test.elf
FAILED: stamp_ring_factory_test.elf 
: && ~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/xtensa-esp32s3-elf-g++ -mlongcalls -Wl,--cref -Wl,--defsym=IDF_TARGET_ESP32S3=0 -Wl,--Map=./M5Dial-UserDemo/build/stamp_ring_factory_test.map -Wl,--no-warn-rwx-segments -fno-rtti -fno-lto -Wl,--gc-sections -Wl,--warn-common -T esp32s3.peripherals.ld -T esp32s3.rom.ld -T esp32s3.rom.api.ld -T esp32s3.rom.libgcc.ld -T esp32s3.rom.newlib.ld -T esp32s3.rom.version.ld -T memory.ld -T sections.ld CMakeFiles/stamp_ring_factory_test.elf.dir/project_elf_src_esp32s3.c.obj -o stamp_ring_factory_test.elf -L~/esp/esp-idf/components/soc/esp32s3/ld   -L~/esp/esp-idf/components/esp_rom/esp32s3/ld   -L./M5Dial-UserDemo/build/esp-idf/esp_system/ld   -L~/esp/esp-idf/components/esp_phy/lib/esp32s3   -L~/esp/esp-idf/components/esp_coex/lib/esp32s3   -L~/esp/esp-idf/components/esp_wifi/lib/esp32s3   -L~/esp/esp-idf/components/bt/controller/lib_esp32c3_family/esp32s3 esp-idf/xtensa/libxtensa.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/efuse/libefuse.a  esp-idf/driver/libdriver.a  esp-idf/esp_pm/libesp_pm.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/esp_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/esp_partition/libesp_partition.a  esp-idf/app_update/libapp_update.a  esp-idf/esp_mm/libesp_mm.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/pthread/libpthread.a  esp-idf/esp_system/libesp_system.a  esp-idf/esp_rom/libesp_rom.a  esp-idf/hal/libhal.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/soc/libsoc.a  esp-idf/esp_hw_support/libesp_hw_support.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/app_trace/libapp_trace.a  esp-idf/esp_event/libesp_event.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_phy/libesp_phy.a  esp-idf/vfs/libvfs.a  esp-idf/lwip/liblwip.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/esp_coex/libesp_coex.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/bt/libbt.a  esp-idf/unity/libunity.a  esp-idf/cmock/libcmock.a  esp-idf/console/libconsole.a  esp-idf/http_parser/libhttp_parser.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/esp_adc/libesp_adc.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/esp_gdbstub/libesp_gdbstub.a  esp-idf/esp_hid/libesp_hid.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/esp_https_ota/libesp_https_ota.a  esp-idf/esp_lcd/libesp_lcd.a  esp-idf/protobuf-c/libprotobuf-c.a  esp-idf/protocomm/libprotocomm.a  esp-idf/esp_local_ctrl/libesp_local_ctrl.a  esp-idf/espcoredump/libespcoredump.a  esp-idf/wear_levelling/libwear_levelling.a  esp-idf/sdmmc/libsdmmc.a  esp-idf/fatfs/libfatfs.a  esp-idf/json/libjson.a  esp-idf/mqtt/libmqtt.a  esp-idf/perfmon/libperfmon.a  esp-idf/spiffs/libspiffs.a  esp-idf/touch_element/libtouch_element.a  esp-idf/ulp/libulp.a  esp-idf/usb/libusb.a  esp-idf/wifi_provisioning/libwifi_provisioning.a  esp-idf/espressif__led_strip/libespressif__led_strip.a  esp-idf/main/libmain.a  esp-idf/LovyanGFX/libLovyanGFX.a  esp-idf/esp-idf-rc522/libesp-idf-rc522.a  esp-idf/lvgl/liblvgl.a  esp-idf/app_trace/libapp_trace.a  esp-idf/app_trace/libapp_trace.a  esp-idf/cmock/libcmock.a  esp-idf/unity/libunity.a  esp-idf/esp_hid/libesp_hid.a  esp-idf/esp_local_ctrl/libesp_local_ctrl.a  esp-idf/espcoredump/libespcoredump.a  esp-idf/fatfs/libfatfs.a  esp-idf/wear_levelling/libwear_levelling.a  esp-idf/sdmmc/libsdmmc.a  esp-idf/mqtt/libmqtt.a  esp-idf/perfmon/libperfmon.a  esp-idf/spiffs/libspiffs.a  esp-idf/touch_element/libtouch_element.a  esp-idf/usb/libusb.a  esp-idf/wifi_provisioning/libwifi_provisioning.a  esp-idf/protocomm/libprotocomm.a  esp-idf/bt/libbt.a  -lbtdm_app  esp-idf/console/libconsole.a  esp-idf/protobuf-c/libprotobuf-c.a  esp-idf/json/libjson.a  esp-idf/espressif__led_strip/libespressif__led_strip.a  esp-idf/esp_lcd/libesp_lcd.a  esp-idf/lvgl/liblvgl.a  esp-idf/rlottie/rlottie/librlottie.a  -Wl,--version-script=./M5Dial-UserDemo/components/rlottie/rlottie/rlottie.expmap  -Wl,--no-undefined  esp-idf/xtensa/libxtensa.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/efuse/libefuse.a  esp-idf/driver/libdriver.a  esp-idf/esp_pm/libesp_pm.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/esp_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/esp_partition/libesp_partition.a  esp-idf/app_update/libapp_update.a  esp-idf/esp_mm/libesp_mm.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/pthread/libpthread.a  esp-idf/esp_system/libesp_system.a  esp-idf/esp_rom/libesp_rom.a  esp-idf/hal/libhal.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/soc/libsoc.a  esp-idf/esp_hw_support/libesp_hw_support.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/esp_event/libesp_event.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_phy/libesp_phy.a  esp-idf/vfs/libvfs.a  esp-idf/lwip/liblwip.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/esp_coex/libesp_coex.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/http_parser/libhttp_parser.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/esp_adc/libesp_adc.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/esp_gdbstub/libesp_gdbstub.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/esp_https_ota/libesp_https_ota.a  esp-idf/ulp/libulp.a  esp-idf/mbedtls/mbedtls/library/libmbedtls.a  esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a  esp-idf/mbedtls/mbedtls/library/libmbedx509.a  esp-idf/mbedtls/mbedtls/3rdparty/everest/libeverest.a  esp-idf/mbedtls/mbedtls/3rdparty/p256-m/libp256m.a  ~/esp/esp-idf/components/esp_coex/lib/esp32s3/libcoexist.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a  esp-idf/xtensa/libxtensa.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/efuse/libefuse.a  esp-idf/driver/libdriver.a  esp-idf/esp_pm/libesp_pm.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/esp_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/esp_partition/libesp_partition.a  esp-idf/app_update/libapp_update.a  esp-idf/esp_mm/libesp_mm.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/pthread/libpthread.a  esp-idf/esp_system/libesp_system.a  esp-idf/esp_rom/libesp_rom.a  esp-idf/hal/libhal.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/soc/libsoc.a  esp-idf/esp_hw_support/libesp_hw_support.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/esp_event/libesp_event.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_phy/libesp_phy.a  esp-idf/vfs/libvfs.a  esp-idf/lwip/liblwip.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/esp_coex/libesp_coex.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/http_parser/libhttp_parser.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/esp_adc/libesp_adc.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/esp_gdbstub/libesp_gdbstub.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/esp_https_ota/libesp_https_ota.a  esp-idf/ulp/libulp.a  esp-idf/mbedtls/mbedtls/library/libmbedtls.a  esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a  esp-idf/mbedtls/mbedtls/library/libmbedx509.a  esp-idf/mbedtls/mbedtls/3rdparty/everest/libeverest.a  esp-idf/mbedtls/mbedtls/3rdparty/p256-m/libp256m.a  ~/esp/esp-idf/components/esp_coex/lib/esp32s3/libcoexist.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a  esp-idf/xtensa/libxtensa.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/efuse/libefuse.a  esp-idf/driver/libdriver.a  esp-idf/esp_pm/libesp_pm.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/esp_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/esp_partition/libesp_partition.a  esp-idf/app_update/libapp_update.a  esp-idf/esp_mm/libesp_mm.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/pthread/libpthread.a  esp-idf/esp_system/libesp_system.a  esp-idf/esp_rom/libesp_rom.a  esp-idf/hal/libhal.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/soc/libsoc.a  esp-idf/esp_hw_support/libesp_hw_support.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/esp_event/libesp_event.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_phy/libesp_phy.a  esp-idf/vfs/libvfs.a  esp-idf/lwip/liblwip.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/esp_coex/libesp_coex.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/http_parser/libhttp_parser.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/esp_adc/libesp_adc.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/esp_gdbstub/libesp_gdbstub.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/esp_https_ota/libesp_https_ota.a  esp-idf/ulp/libulp.a  esp-idf/mbedtls/mbedtls/library/libmbedtls.a  esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a  esp-idf/mbedtls/mbedtls/library/libmbedx509.a  esp-idf/mbedtls/mbedtls/3rdparty/everest/libeverest.a  esp-idf/mbedtls/mbedtls/3rdparty/p256-m/libp256m.a  ~/esp/esp-idf/components/esp_coex/lib/esp32s3/libcoexist.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a  esp-idf/xtensa/libxtensa.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/efuse/libefuse.a  esp-idf/driver/libdriver.a  esp-idf/esp_pm/libesp_pm.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/esp_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/esp_partition/libesp_partition.a  esp-idf/app_update/libapp_update.a  esp-idf/esp_mm/libesp_mm.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/pthread/libpthread.a  esp-idf/esp_system/libesp_system.a  esp-idf/esp_rom/libesp_rom.a  esp-idf/hal/libhal.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/soc/libsoc.a  esp-idf/esp_hw_support/libesp_hw_support.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/esp_event/libesp_event.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_phy/libesp_phy.a  esp-idf/vfs/libvfs.a  esp-idf/lwip/liblwip.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/esp_coex/libesp_coex.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/http_parser/libhttp_parser.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/esp_adc/libesp_adc.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/esp_gdbstub/libesp_gdbstub.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/esp_https_ota/libesp_https_ota.a  esp-idf/ulp/libulp.a  esp-idf/mbedtls/mbedtls/library/libmbedtls.a  esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a  esp-idf/mbedtls/mbedtls/library/libmbedx509.a  esp-idf/mbedtls/mbedtls/3rdparty/everest/libeverest.a  esp-idf/mbedtls/mbedtls/3rdparty/p256-m/libp256m.a  ~/esp/esp-idf/components/esp_coex/lib/esp32s3/libcoexist.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a  esp-idf/xtensa/libxtensa.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/efuse/libefuse.a  esp-idf/driver/libdriver.a  esp-idf/esp_pm/libesp_pm.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/esp_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/esp_partition/libesp_partition.a  esp-idf/app_update/libapp_update.a  esp-idf/esp_mm/libesp_mm.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/pthread/libpthread.a  esp-idf/esp_system/libesp_system.a  esp-idf/esp_rom/libesp_rom.a  esp-idf/hal/libhal.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/soc/libsoc.a  esp-idf/esp_hw_support/libesp_hw_support.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/esp_event/libesp_event.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_phy/libesp_phy.a  esp-idf/vfs/libvfs.a  esp-idf/lwip/liblwip.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/esp_coex/libesp_coex.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/http_parser/libhttp_parser.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/esp_adc/libesp_adc.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/esp_gdbstub/libesp_gdbstub.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/esp_https_ota/libesp_https_ota.a  esp-idf/ulp/libulp.a  esp-idf/mbedtls/mbedtls/library/libmbedtls.a  esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a  esp-idf/mbedtls/mbedtls/library/libmbedx509.a  esp-idf/mbedtls/mbedtls/3rdparty/everest/libeverest.a  esp-idf/mbedtls/mbedtls/3rdparty/p256-m/libp256m.a  ~/esp/esp-idf/components/esp_coex/lib/esp32s3/libcoexist.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a  esp-idf/xtensa/libxtensa.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/efuse/libefuse.a  esp-idf/driver/libdriver.a  esp-idf/esp_pm/libesp_pm.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/esp_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/esp_partition/libesp_partition.a  esp-idf/app_update/libapp_update.a  esp-idf/esp_mm/libesp_mm.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/pthread/libpthread.a  esp-idf/esp_system/libesp_system.a  esp-idf/esp_rom/libesp_rom.a  esp-idf/hal/libhal.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/soc/libsoc.a  esp-idf/esp_hw_support/libesp_hw_support.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/esp_event/libesp_event.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_phy/libesp_phy.a  esp-idf/vfs/libvfs.a  esp-idf/lwip/liblwip.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/esp_coex/libesp_coex.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/http_parser/libhttp_parser.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/esp_adc/libesp_adc.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/esp_gdbstub/libesp_gdbstub.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/esp_https_ota/libesp_https_ota.a  esp-idf/ulp/libulp.a  esp-idf/mbedtls/mbedtls/library/libmbedtls.a  esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a  esp-idf/mbedtls/mbedtls/library/libmbedx509.a  esp-idf/mbedtls/mbedtls/3rdparty/everest/libeverest.a  esp-idf/mbedtls/mbedtls/3rdparty/p256-m/libp256m.a  ~/esp/esp-idf/components/esp_coex/lib/esp32s3/libcoexist.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a  ~/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a  ~/esp/esp-idf/components/xtensa/esp32s3/libxt_hal.a  -u esp_app_desc  -u pthread_include_pthread_impl  -u pthread_include_pthread_cond_var_impl  -u pthread_include_pthread_local_storage_impl  -u pthread_include_pthread_rwlock_impl  -u pthread_include_pthread_semaphore_impl  -u ld_include_highint_hdl  -u start_app  -u start_app_other_cores  -u __ubsan_include  -Wl,--wrap=longjmp  -u __assert_func  -Wl,--undefined=uxTopUsedPriority  -Wl,--undefined=FreeRTOS_openocd_params  -u app_main  -lc  -lm  esp-idf/newlib/libnewlib.a  -u newlib_include_heap_impl  -u newlib_include_syscalls_impl  -u newlib_include_pthread_impl  -u newlib_include_assert_impl  -Wl,--wrap=_Unwind_SetEnableExceptionFdeSorting  -Wl,--wrap=__register_frame_info_bases  -Wl,--wrap=__register_frame_info  -Wl,--wrap=__register_frame  -Wl,--wrap=__register_frame_info_table_bases  -Wl,--wrap=__register_frame_info_table  -Wl,--wrap=__register_frame_table  -Wl,--wrap=__deregister_frame_info_bases  -Wl,--wrap=__deregister_frame_info  -Wl,--wrap=_Unwind_Find_FDE  -Wl,--wrap=_Unwind_GetGR  -Wl,--wrap=_Unwind_GetCFA  -Wl,--wrap=_Unwind_GetIP  -Wl,--wrap=_Unwind_GetIPInfo  -Wl,--wrap=_Unwind_GetRegionStart  -Wl,--wrap=_Unwind_GetDataRelBase  -Wl,--wrap=_Unwind_GetTextRelBase  -Wl,--wrap=_Unwind_SetIP  -Wl,--wrap=_Unwind_SetGR  -Wl,--wrap=_Unwind_GetLanguageSpecificData  -Wl,--wrap=_Unwind_FindEnclosingFunction  -Wl,--wrap=_Unwind_Resume  -Wl,--wrap=_Unwind_RaiseException  -Wl,--wrap=_Unwind_DeleteException  -Wl,--wrap=_Unwind_ForcedUnwind  -Wl,--wrap=_Unwind_Resume_or_Rethrow  -Wl,--wrap=_Unwind_Backtrace  -Wl,--wrap=__cxa_call_unexpected  -Wl,--wrap=__gxx_personality_v0  -u __cxa_guard_dummy  -lstdc++  esp-idf/pthread/libpthread.a  -lgcc  esp-idf/cxx/libcxx.a  -u __cxx_fatal_exception  -u include_esp_phy_override  -lphy  -lbtbb  esp-idf/esp_phy/libesp_phy.a  -lphy  -lbtbb  esp-idf/esp_phy/libesp_phy.a  -lphy  -lbtbb  -u vfs_include_syscalls_impl && :
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `mz_adler32':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:1800: multiple definition of `mz_adler32'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:1004: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `mz_crc32':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:1854: multiple definition of `mz_crc32'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:1020: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `mz_free':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:1922: multiple definition of `mz_free'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:1030: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tdefl_compress':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:3682: multiple definition of `tdefl_compress'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:2653: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tdefl_compress_buffer':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:3753: multiple definition of `tdefl_compress_buffer'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:2709: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tdefl_init':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:3760: multiple definition of `tdefl_init'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:2714: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tdefl_get_prev_return_status':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:3799: multiple definition of `tdefl_get_prev_return_status'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:2733: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tdefl_get_adler32':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:3803: multiple definition of `tdefl_get_adler32'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:2738: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tdefl_compress_mem_to_output':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:3807: multiple definition of `tdefl_compress_mem_to_output'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:2743: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tdefl_compress_mem_to_heap':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:3854: multiple definition of `tdefl_compress_mem_to_heap'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:2774: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tdefl_compress_mem_to_mem':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:3871: multiple definition of `tdefl_compress_mem_to_mem'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:2783: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tdefl_write_image_to_png_file_in_memory_ex':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:3927: multiple definition of `tdefl_write_image_to_png_file_in_memory_ex'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:2825: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tdefl_write_image_to_png_file_in_memory':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:4007: multiple definition of `tdefl_write_image_to_png_file_in_memory'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:2880: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tinfl_decompress':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:4206: multiple definition of `tinfl_decompress'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:1452: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tinfl_decompress_mem_to_heap':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:4684: multiple definition of `tinfl_decompress_mem_to_heap'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:1713: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tinfl_decompress_mem_to_mem':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:4725: multiple definition of `tinfl_decompress_mem_to_mem'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:1741: first defined here
~/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/rlottie/rlottie/librlottie.a(zip.cpp.obj): in function `tinfl_decompress_mem_to_callback':
./M5Dial-UserDemo/components/rlottie/rlottie/src/lottie/zip/miniz.h:4740: multiple definition of `tinfl_decompress_mem_to_callback'; esp-idf/LovyanGFX/libLovyanGFX.a(miniz.c.obj):./M5Dial-UserDemo/components/LovyanGFX/src/lgfx/utility/miniz.c:1748: first defined here
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

Demo does not build when using VSCode and ESP_IDF

In file included from C:/ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/panel/Panel_M5HDMI.cpp:21:
C:/ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/panel/Panel_M5HDMI.hpp:213:12: error: 'uint8_t' in namespace 'std' does not name a type; did you mean 'wint_t'?
  213 |       std::uint8_t readRegister(std::uint8_t register_address);
      |            ^~~~~~~
      |            wint_t
C:/ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/platforms/esp32/common.cpp: In function 'void lgfx::v1::pinMode(int_fast16_t, pin_mode_t)':
C:/ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/platforms/esp32/common.cpp:232:34: error: 'uint64_t' is not a member of 'std'; did you mean 'wint_t'?
  232 |     io_conf.pin_bit_mask = (std::uint64_t)1 << pin;
      |                                  ^~~~~~~~
      |                                  wint_t
In file included from C:/ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/panel/Panel_M5HDMI.cpp:21:
C:/ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/panel/Panel_M5HDMI.hpp:213:12: error: 'uint8_t' in namespace 'std' does not name a type; did you mean 'wint_t'?
  213 |       std::uint8_t readRegister(std::uint8_t register_address);
      |            ^~~~~~~
      |            wint_t
C:/ESP-IDF/M5Dial-UserDemo-main/main/hal/rtc/hal_rtc.hpp: In member function 'int PCF8563::PCF8563::setAlarmIRQ(int)':
C:/ESP-IDF/M5Dial-UserDemo-main/main/hal/rtc/hal_rtc.hpp:167:22: error: 'uint8_t' is not a member of 'std'; did you mean 'wint_t'?
  167 |                 std::uint8_t reg_value = _data_buffer[0] & ~0x0C;
      |                      ^~~~~~~
      |                      wint_t

A fix was tested successfully that involved adding
#include <cstdint>
Before any other includes in the following files...
M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/panel/Panel_M5HDMI.hpp
M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/platforms/esp32/common.cpp
ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/panel/Panel_M5HDMI.cpp
M5Dial-UserDemo-main/main/hal/rtc/hal_rtc.hpp

Demo doesn't compile with IDF v5.2.1

I'm running ESP-IDF v5.2.1-dirty and I'm not able to get the demo to compile using idf.py build

Steps to repeat this:

  • Install ESP-IDF v5.2.1-dirty (this is the latest version I think, I installed it from the latest in the last week or two)
  • Clone the repo to a local folder
  • Init esp-idf: . $HOME/esp/esp-idf/export.sh
  • In the project folder: esp-idf.py build

Any ideas?

Compilation error output:

In file included from /home/user/M5Dial-UserDemo/main/apps/launcher/../../hal/utils/ESP32Encoder/src/ESP32Encoder.h:7,
                 from /home/user/M5Dial-UserDemo/main/apps/launcher/../../hal/hal.h:17,
                 from /home/user/M5Dial-UserDemo/main/apps/launcher/launcher.h:13,
                 from /home/user/M5Dial-UserDemo/main/apps/launcher/launcher.cpp:11:
/home/user/esp/esp-idf/components/driver/deprecated/driver/pcnt.h:15:2: warning: #warning "legacy pcnt driver is deprecated, please migrate to use driver/pulse_cnt.h" [-Wcpp]
   15 | #warning "legacy pcnt driver is deprecated, please migrate to use driver/pulse_cnt.h"
      |  ^~~~~~~
In file included from /home/user/M5Dial-UserDemo/main/apps/launcher/../../hal/hal.h:23:
/home/user/M5Dial-UserDemo/main/apps/launcher/../../hal/rtc/hal_rtc.hpp: In member function 'int PCF8563::PCF8563::setAlarmIRQ(int)':
/home/user/M5Dial-UserDemo/main/apps/launcher/../../hal/rtc/hal_rtc.hpp:166:22: error: 'uint8_t' is not a member of 'std'; did you mean 'wint_t'?
  166 |                 std::uint8_t reg_value = _data_buffer[0] & ~0x0C;
      |                      ^~~~~~~
      |                      wint_t
/home/user/M5Dial-UserDemo/main/apps/launcher/../../hal/rtc/hal_rtc.hpp:172:38: error: 'reg_value' was not declared in this scope
  172 |                     _write_reg(0x01, reg_value & ~0x01);
      |                                      ^~~~~~~~~
/home/user/M5Dial-UserDemo/main/apps/launcher/../../hal/rtc/hal_rtc.hpp:182:22: error: 'uint8_t' is not a member of 'std'; did you mean 'wint_t'?
  182 |                 std::uint8_t type_value = 0x82;
      |                      ^~~~~~~
      |                      wint_t
/home/user/M5Dial-UserDemo/main/apps/launcher/../../hal/rtc/hal_rtc.hpp:198:21: error: 'type_value' was not declared in this scope; did you mean 'typename'?
  198 |                     type_value = 0x83;
      |                     ^~~~~~~~~~
      |                     typename
/home/user/M5Dial-UserDemo/main/apps/launcher/../../hal/rtc/hal_rtc.hpp:202:34: error: 'type_value' was not declared in this scope; did you mean 'typename'?
  202 |                 _write_reg(0x0E, type_value);
      |                                  ^~~~~~~~~~
      |                                  typename
/home/user/M5Dial-UserDemo/main/apps/launcher/../../hal/rtc/hal_rtc.hpp:208:35: error: 'reg_value' was not declared in this scope
  208 |                 _write_reg(0x01, (reg_value | 0x01) & ~0x80);
      |                                   ^~~~~~~~~
In file included from /home/user/M5Dial-UserDemo/main/apps/launcher/../app_temp_demo/app_temp_demo.h:14,
                 from /home/user/M5Dial-UserDemo/main/apps/launcher/launcher.h:19:
/home/user/M5Dial-UserDemo/main/apps/launcher/../app_temp_demo/gui/gui_temp_demo.h: At global scope:
/home/user/M5Dial-UserDemo/main/apps/launcher/../app_temp_demo/gui/gui_temp_demo.h:40:39: warning: '_pic_button_list' defined but not used [-Wunused-variable]
   40 | static std::array<const uint16_t*, 2> _pic_button_list =
      |                                       ^~~~~~~~~~~~~~~~
/home/user/M5Dial-UserDemo/main/apps/launcher/../app_temp_demo/gui/gui_temp_demo.h:28:39: warning: '_pic_temp_list' defined but not used [-Wunused-variable]
   28 | static std::array<const uint16_t*, 9> _pic_temp_list =
      |                                       ^~~~~~~~~~~~~~
ninja: build stopped: subcommand failed.
ninja failed with exit code 1, output of the command is in the /home/user/M5Dial-UserDemo/build/log/idf_py_stderr_output_39890 and /home/user/M5Dial-UserDemo/build/log/idf_py_stdout_output_39890

LovyanGFX does not build in VSCode ESP_IDF

C:/ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/platforms/esp32s3/Bus_Parallel16.cpp: In member function 'virtual void lgfx::v1::Bus_Parallel16::beginTransaction()':
C:/ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/platforms/esp32s3/Bus_Parallel16.cpp:181:66: error: 'LCD_CAM_LCD_UPDATE_REG' was not declared in this scope; did you mean 'LCD_CAM_LCD_UPDATE_M'?
  181 |     dev->lcd_user.val = LCD_CAM_LCD_2BYTE_EN | LCD_CAM_LCD_CMD | LCD_CAM_LCD_UPDATE_REG;
      |                                                                  ^~~~~~~~~~~~~~~~~~~~~~
      |                                                                  LCD_CAM_LCD_UPDATE_M

Again, noting that this is a library from else where copied into your repo. In ESP-IDF 5.2.1, it appears that LCD_CAM_LCD_UPDATE_REG has been removed from lcd_cam_reg.h. LCD_CAM_LCD_UPDATE has the same bit value assigned to it so, I suggest, Bus_Parallel8.cpp and Bus_parallel16.cpp are changed to replace LCD_CAM_LCD_UPDATE_REG with LCD_CAM_LCD_UPDATE

C:/ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/platforms/esp32/common.cpp: In function 'cpp::bitwizeshift::result<void, lgfx::v1::error_t> lgfx::v1::spi::init(int, int, int, int, int)':
C:/ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/platforms/esp32/common.cpp:314:29: error: 'INTR_CPU_ID_AUTO' was not declared in this scope
  314 |         buscfg.isr_cpu_id = INTR_CPU_ID_AUTO; 

ESP-IDF 5.2.1 has changed the isr cpu id macro as suggested here. Changing line 314 to
buscfg.isr_cpu_id = ESP_INTR_CPU_AFFINITY_AUTO;
fixes the build issue

Encoder Ring Not Working After Flashing

I recently purchased an M5Dial.
Everything was working fine until I downloaded the firmware from GitHub, built it, and flashed it onto the device. After the flashing process, the encoder ring stopped responding. The click functionality is still operational, allowing access to the LCD TEST menu, but the rotation of the encoder does not trigger any response.

Could anyone provide guidance on whether there is a specific configuration or setting adjustment needed during the build process to get the encoder ring working again? Any assistance would be greatly appreciated.

Thank you.

The idf.py file missing in the root

According to the README.MD file to build the project one need to

git clone https://github.com/m5stack/M5Dial-UserDemo.git
cd M5Dial-UserDemo
idf.py build

But the idf.py file isnt in the repo. I guess it somewhat relates to #2

Demo does not build for ESP_IDF_VERSION 5.2.1

Whilst getting this code to build in VSCode using Espressif , The code would not build as comd0 was not defined.

C:/ESP-IDF/M5Dial-UserDemo-main/components/LovyanGFX/src/lgfx/v1/platforms/esp32/common.cpp:653:14: error: 'struct i2c_dev_t' has no member named 'comd0'; did you mean 'comd'?
  653 |       (&dev->comd0)[index].val = cmd_val;
      |              ^~~~~
      |              comd
ninja: build stopped: subcommand failed.

Updating the #if as below fixed the build issue...

#if defined (CONFIG_IDF_TARGET_ESP32S3)
 #if (ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 0, 3) && ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 1, 0)) \
  || (ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 1, 1) && ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 2, 0)) \
  || (ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 2, 1) && ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 3, 0))
      (&dev->comd[0])[index].val = cmd_val;
 #else
      (&dev->comd0)[index].val = cmd_val;
 #endif
#else
      dev->command[index].val = cmd_val;
#endif

I realise that this is in a library that has just been cloned into your repo. I've checked the source repo and it needs updating there.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.