Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adafruit NeoPixel linker errors on BK7231N #229

Open
hannescam opened this issue Dec 26, 2023 · 2 comments
Open

Adafruit NeoPixel linker errors on BK7231N #229

hannescam opened this issue Dec 26, 2023 · 2 comments

Comments

@hannescam
Copy link

I tried to upload and compile the example for Adafruit Neopixel on my board but I got this error:

Processing generic-bk7231n-qfn32-tuya (platform: libretiny; board: generic-bk7231n-qfn32-tuya; framework: arduino)
-------------------------------------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/libretiny/generic-bk7231n-qfn32-tuya.html
PLATFORM: LibreTiny (1.4.1+sha.eed39c9) > Generic - BK7231N (Tuya QFN32)
HARDWARE: BK7231N 120MHz, 256KB RAM, 1.03MB Flash
DEBUG: Current (openocd) External (custom, openocd)
PACKAGES: 
 - framework-arduino-api @ 2022.8.24+sha.237b10a 
 - framework-beken-bdk @ 0.0.0+v2021.06.07.sha.6491b8c 
 - library-flashdb @ 1.2.0+sha.d5c892f 
 - library-freertos @ 9.0.0+sha.95cc959 
 - library-freertos-port @ 2023.5.23+sha.a917d93 
 - library-lwip @ 2.1.3-bdk+sha.4ee4d34 
 - library-printf @ 6.1.0+sha.28a79bd 
 - library-uf2ota @ 5.0.0+sha.f955412 
 - tool-openocd @ 2.1100.211028 (11.0) 
 - toolchain-gccarmnoneeabi @ 1.100301.220327 (10.3.1)
PLATFORM VERSIONS:
 - libretiny @ 1.4.1+sha.eed39c9.dirty
 - ltchiptool @ 4.10.1
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 1 compatible libraries
Scanning dependencies...
Dependency Graph
|-- Adafruit NeoPixel @ 1.12.0
Building in release mode
Compiling .pio/build/generic-bk7231n-qfn32-tuya/src/main.cpp.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libarduino_api.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libarduino_api.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_arduino_libraries/WiFi/WiFiAP.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_arduino_libraries/WiFi/WiFiEvents.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_arduino_libraries/WiFi/WiFiGeneric.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_arduino_libraries/WiFi/WiFiSTA.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_arduino_libraries/WiFi/WiFiScan.cpp.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk72xx_arduino_fixups.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk72xx_arduino_fixups.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_arduino/main.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_arduino/wiring.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_arduino/wiring_analog.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_arduino/wiring_digital.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_arduino/wiring_irq.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/api/Serial/Serial.cpp.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk72xx_arduino.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk72xx_arduino.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/api/SoftwareSerial/SoftwareSerial.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/api/WiFi/WiFi.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/api/WiFi/WiFiAP.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/api/WiFi/WiFiEvents.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/api/WiFi/WiFiGeneric.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/api/WiFi/WiFiSTA.cpp.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk72xx_arduino_libraries.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk72xx_arduino_libraries.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/api/WiFi/WiFiScan.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/FS/FS.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/IPv6Address/IPv6Address.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/MD5/MD5MbedTLSImpl.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/Update/Update.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/Update/UpdateUtil.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/WiFiClient/LwIPClient.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/WiFiClient/LwIPRxBuffer.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/WiFiClient/MbedTLSClient.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/WiFiServer/LwIPServer.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/WiFiUdp/LwIPUdp.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/mDNS/LwIPmDNS.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/common/mDNS/mDNS.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/ext/HTTPClient/HTTPClient.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/ext/StreamString/StreamString.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/ext/WebServer/Parsing.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/ext/WebServer/WebServer.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/ext/WebServer/detail/mimetable.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/ext/WiFiMulti/WiFiMulti.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/ext/base64/base64.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/ext/base64/libb64/cdecode.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/ext/base64/libb64/cencode.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/ext/cbuf/cbuf.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino_libraries/inline/Singletons.cpp.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_common_arduino_fixups.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_common_arduino_fixups.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino/Events.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino/common/abi.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino/common/dtostrf.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino/common/serial_event.cpp.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino/main.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino/posix/time.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino/wiring/wiring.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino/wiring/wiring_custom.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino/wiring/wiring_irq.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino/wiring/wiring_private.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_arduino/wiring/wiring_shift.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/printf/src/printf/printf.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/flashdb/port/fal/src/fal.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/flashdb/port/fal/src/fal_flash.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/flashdb/port/fal/src/fal_partition.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/flashdb/port/fal/src/fal_rtt.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_common_arduino.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/flashdb/src/fdb.c.o
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_common_arduino.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/flashdb/src/fdb_file.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/flashdb/src/fdb_kvdb.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/flashdb/src/fdb_tsdb.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/flashdb/src/fdb_utils.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_common_arduino_libraries.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/uf2ota/src/uf2binpatch.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libprintf.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libprintf.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_common_arduino_libraries.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/uf2ota/src/uf2ota.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/uf2ota/src/uf2priv.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk7231n_fixups/fixups/temp_detect.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk7231n.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk7231n.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_fixups/fixups/arch_main.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk7231n_fixups.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_fixups/fixups/ate_app.c.o
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk7231n_fixups.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_fixups/fixups/clock_cal.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libflashdb.a
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libuf2ota.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_fixups/fixups/clock_rtos.c.o
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libuf2ota.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libflashdb.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_fixups/fixups/gcc10.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx_fixups/fixups/intc.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/api/lt_cpu.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/api/lt_device.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/api/lt_flash.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/api/lt_init.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/api/lt_mem.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/api/lt_ota.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/api/lt_sleep.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk72xx_fixups.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/api/lt_wdt.c.o
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk72xx_fixups.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/port/fal_flash_bk72xx_port.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/port/printf.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/wraps/BkDriverFlash.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_bk72xx/wraps/wlan_ui.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common_fixups/fixups/malloc.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/api/lt_cpu.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/api/lt_device.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/api/lt_flash.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/api/lt_mem.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_common_fixups.a
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk72xx.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_bk72xx.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_common_fixups.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/api/lt_ota.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/api/lt_sleep.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/api/lt_utils.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/api/lt_wdt.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/lt_logger.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/lt_main.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/posix/itoa.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/posix/strcasecmp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/posix/strdup.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/posix/strptime.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/wraps/putchar.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/core_common/wraps/puts.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/app/src/app_ble.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/app/src/app_ble_init.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libcore_common.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libcore_common.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/app/src/app_comm.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/app/src/app_sdp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/app/src/app_task.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/prf/prf.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/prf/prf_utils.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/profiles/comm/src/comm.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/profiles/comm/src/comm_task.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/profiles/sdp/src/sdp_comm_task.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/profiles/sdp/src/sdp_common.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/ble_pub/ui/ble_ui.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/platform/7231n/driver/rf/ble_rf_port.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/platform/7231n/driver/rf/rf_xvr.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/platform/7231n/driver/uart/uart_ble.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/platform/7231n/entry/ble_main.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/platform/7231n/rwip/src/rwble.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_ble_5_x/platform/7231n/rwip/src/rwip.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver_spi/spi_bk7231n.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver_spi/spi_master_bk7231n.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver_spi/spi_slave_bk7231n.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls-port/src/timing_alt.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls-port/src/tls_certificate.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls-port/src/tls_client.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls-port/src/tls_hardware.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls-port/src/tls_mem.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls-port/src/tls_net.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libbdk_ble_5_x.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libbdk_ble_5_x.a
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libbdk_driver_spi.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libbdk_driver_spi.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/aes.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/aesni.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/arc4.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/asn1parse.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/asn1write.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/base64.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/bignum.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/blowfish.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/camellia.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ccm.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/certs.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/cipher.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/cipher_wrap.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/cmac.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ctr_drbg.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/debug.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/des.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/dhm.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ecdh.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ecdsa.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ecjpake.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ecp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ecp_curves.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/entropy.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/entropy_poll.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/error.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/gcm.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/havege.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/hmac_drbg.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/md.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/md2.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/md4.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/md5.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/md_wrap.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/memory_buffer_alloc.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/net_sockets.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/oid.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/padlock.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/pem.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/pk.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/pk_wrap.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/pkcs11.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/pkcs12.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/pkcs5.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/pkparse.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/pkwrite.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/platform.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ripemd160.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/rsa.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/sha1.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/sha256.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/sha512.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ssl_cache.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ssl_ciphersuites.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ssl_cli.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ssl_cookie.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ssl_srv.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ssl_ticket.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/ssl_tls.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/threading.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/timing.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/version.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/version_features.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/x509.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/x509_create.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/x509_crl.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/x509_crt.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/x509_csr.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/x509write_crt.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/x509write_csr.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_mbedtls/mbedtls/library/xtea.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/port/ethernetif.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/port/net.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/port/sys_arch.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/api/api_lib.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/api/api_msg.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/api/err.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/api/if_api.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/api/netbuf.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/api/netdb.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libbdk_mbedtls.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libbdk_mbedtls.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/api/netifapi.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/api/sockets.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/api/tcpip.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/apps/mdns/mdns.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/apps/sntp/sntp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/altcp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/altcp_alloc.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/altcp_tcp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/def.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/dns.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/inet_chksum.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/init.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/ip.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/ipv4/autoip.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/ipv4/dhcp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/ipv4/etharp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/ipv4/icmp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/ipv4/igmp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/ipv4/ip4.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/ipv4/ip4_addr.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/ipv4/ip4_frag.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/mem.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/memp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/netif.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/pbuf.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/raw.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/stats.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/sys.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/tcp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/tcp_in.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/tcp_out.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/timeouts.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/core/udp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/lwip_bdk/src/netif/ethernet.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_freertos_thumb/os/FreeRTOSv9.0.0/rtos_pub.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_freertos_thumb/os/mem_arch.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_freertos_thumb/os/str_arch.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/freertos_port/beken-bdk/heap_4.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/freertos_port/beken-bdk/port.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/freertos/FreeRTOS/Source/croutine.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/freertos/FreeRTOS/Source/event_groups.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/liblwip_bdk.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/freertos/FreeRTOS/Source/list.c.o
Indexing .pio/build/generic-bk7231n-qfn32-tuya/liblwip_bdk.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/freertos/FreeRTOS/Source/queue.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/freertos/FreeRTOS/Source/tasks.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/freertos/FreeRTOS/Source/timers.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/airkiss/airkiss_main.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/airkiss/airkiss_pingpong.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libbdk_freertos_thumb.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libbdk_freertos_thumb.a
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libfreertos_port.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/airkiss/bk_airkiss.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/base64/base_64.c.o
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libfreertos_port.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/ble_wifi_exchange/ble_wifi_port.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/camera_intf/camera_intf.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/func.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/hostapd_intf/hostapd_intf.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/joint_up/role_launch.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/lwip_intf/dhcpd/dhcp-server-main.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/lwip_intf/dhcpd/dhcp-server.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/misc/pseudo_random.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/misc/start_type.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/misc/target_util.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libfreertos.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libfreertos.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/net_param_intf/net_param.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/power_save/ap_idle.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/power_save/manual_ps.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/power_save/mcu_ps.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/power_save/power_save.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/rwnx_intf/rw_ieee80211.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/rwnx_intf/rw_msdu.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/rwnx_intf/rw_msg_rx.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/rwnx_intf/rw_msg_tx.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/saradc_intf/saradc_intf.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/security/security_func.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/sim_uart/gpio_uart.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/sim_uart/pwm_uart.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/spidma_intf/spidma_intf.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/temp_detect/temp_detect.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/usb_plug/usb_plug.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/user_driver/BkDriverFlash.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/user_driver/BkDriverGpio.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/user_driver/BkDriverPwm.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/user_driver/BkDriverRng.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/user_driver/BkDriverTimer.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/user_driver/BkDriverUart.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/user_driver/BkDriverWdg.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/utf8/conv_utf8.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_func/video_transfer/video_transfer.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/calendar/calendar.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/common/dd.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/common/drv_model.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/dma/dma.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/driver.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/fft/fft.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/flash/flash.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/general_dma/general_dma.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/gpio/gpio.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/i2c/i2c1.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libbdk_func.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libbdk_func.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/i2c/i2c2.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/i2s/i2s.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/icu/icu.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/irda/irda.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/jpeg/jpeg_encoder.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/macphy_bypass/mac_phy_bypass.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/phy/phy_trident.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/pwm/bk_timer.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/pwm/mcu_ps_timer.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/pwm/pwm.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/pwm/pwm_bk7231n.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/pwm/pwm_mutex.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/qspi/qspi.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/rw_pub/rw_platf_pub.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/saradc/saradc.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/security/hal_aes.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/security/hal_sha.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/security/security.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/spidma/spidma.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/sys_ctrl/sys_ctrl.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/uart/uart.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_driver/wdt/wdt.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/http/lite-log.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/http/utils_httpc.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/http/utils_net.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/http/utils_timer.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/net_work/video_demo_main.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/net_work/video_demo_softap.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/net_work/video_demo_station.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/standalone-ap/sa_ap.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/standalone-station/sa_station.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/video_work/video_buffer.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/video_work/video_transfer_tcp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_app/video_work/video_transfer_udp.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_core/app/app.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_core/app/config/param_config.c.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_core/driver/entry/boot_handlers.S.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libbdk_driver.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libbdk_driver.a
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_core/driver/entry/boot_vectors.S.o
Compiling .pio/build/generic-bk7231n-qfn32-tuya/bdk_core/func/wlan_ui/wlan_ui.c.o
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libbdk_app.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libbdk_app.a
Archiving .pio/build/generic-bk7231n-qfn32-tuya/libbdk_core.a
Indexing .pio/build/generic-bk7231n-qfn32-tuya/libbdk_core.a
Linking .pio/build/generic-bk7231n-qfn32-tuya/raw_firmware.elf
|-- Image 1: raw_firmware.elf
/home/hannes/.platformio/packages/[email protected]/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: .pio/build/generic-bk7231n-qfn32-tuya/lib114/libAdafruit NeoPixel.a(Adafruit_NeoPixel.cpp.o): in function `Adafruit_NeoPixel::show()':
/home/hannes/Dagi_Lampe/new_fw/.pio/libdeps/generic-bk7231n-qfn32-tuya/Adafruit NeoPixel/Adafruit_NeoPixel.cpp:288: undefined reference to `ulPortSetInterruptMask'
/home/hannes/.platformio/packages/[email protected]/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: /home/hannes/Dagi_Lampe/new_fw/.pio/libdeps/generic-bk7231n-qfn32-tuya/Adafruit NeoPixel/Adafruit_NeoPixel.cpp:3036: undefined reference to `vPortClearInterruptMask'
collect2: error: ld returned 1 exit status
|-- Generated file not found: .pio/build/generic-bk7231n-qfn32-tuya/raw_firmware.elf
*** [.pio/build/generic-bk7231n-qfn32-tuya/raw_firmware.elf] Error 1
======================================================= [FAILED] Took 27.56 seconds =======================================================
hannes@hannes-GUSCHTAV ~/D/new_fw [1]>

platformio.ini:

; PlatformIO Project Configuration File
;
;   Build options: build flags, source filter
;   Upload options: custom upload port, speed and extra flags
;   Library options: dependencies, extra library storages
;   Advanced options: extra scripting
;
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html
[env:generic-bk7231n-qfn32-tuya]
platform = libretiny
board = generic-bk7231n-qfn32-tuya
framework = arduino
upload_port = /dev/ttyUSB0
lib_deps:
	adafruit/Adafruit NeoPixel@^1.12.0

main.cpp:

// A basic everyday NeoPixel strip test program.

// NEOPIXEL BEST PRACTICES for most reliable operation:
// - Add 1000 uF CAPACITOR between NeoPixel strip's + and - connections.
// - MINIMIZE WIRING LENGTH between microcontroller board and first pixel.
// - NeoPixel strip's DATA-IN should pass through a 300-500 OHM RESISTOR.
// - AVOID connecting NeoPixels on a LIVE CIRCUIT. If you must, ALWAYS
//   connect GROUND (-) first, then +, then data.
// - When using a 3.3V microcontroller with a 5V-powered NeoPixel strip,
//   a LOGIC-LEVEL CONVERTER on the data line is STRONGLY RECOMMENDED.
// (Skipping these may work OK on your workbench but can fail in the field)

#include <Adafruit_NeoPixel.h>
#ifdef __AVR__
 #include <avr/power.h> // Required for 16 MHz Adafruit Trinket
#endif

// Which pin on the Arduino is connected to the NeoPixels?
// On a Trinket or Gemma we suggest changing this to 1:
#define LED_PIN   16

// How many NeoPixels are attached to the Arduino?
#define LED_COUNT 16

// Declare our NeoPixel strip object:
Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);
// Argument 1 = Number of pixels in NeoPixel strip
// Argument 2 = Arduino pin number (most are valid)
// Argument 3 = Pixel type flags, add together as needed:
//   NEO_KHZ800  800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
//   NEO_KHZ400  400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers)
//   NEO_GRB     Pixels are wired for GRB bitstream (most NeoPixel products)
//   NEO_RGB     Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2)
//   NEO_RGBW    Pixels are wired for RGBW bitstream (NeoPixel RGBW products)





// Some functions of our own for creating animated effects -----------------

// Fill strip pixels one after another with a color. Strip is NOT cleared
// first; anything there will be covered pixel by pixel. Pass in color
// (as a single 'packed' 32-bit value, which you can get by calling
// strip.Color(red, green, blue) as shown in the loop() function above),
// and a delay time (in milliseconds) between pixels.
void colorWipe(uint32_t color, int wait) {
  for(int i=0; i<strip.numPixels(); i++) { // For each pixel in strip...
    strip.setPixelColor(i, color);         //  Set pixel's color (in RAM)
    strip.show();                          //  Update strip to match
    delay(wait);                           //  Pause for a moment
  }
}

// Theater-marquee-style chasing lights. Pass in a color (32-bit value,
// a la strip.Color(r,g,b) as mentioned above), and a delay time (in ms)
// between frames.
void theaterChase(uint32_t color, int wait) {
  for(int a=0; a<10; a++) {  // Repeat 10 times...
    for(int b=0; b<3; b++) { //  'b' counts from 0 to 2...
      strip.clear();         //   Set all pixels in RAM to 0 (off)
      // 'c' counts up from 'b' to end of strip in steps of 3...
      for(int c=b; c<strip.numPixels(); c += 3) {
        strip.setPixelColor(c, color); // Set pixel 'c' to value 'color'
      }
      strip.show(); // Update strip with new contents
      delay(wait);  // Pause for a moment
    }
  }
}

// Rainbow cycle along whole strip. Pass delay time (in ms) between frames.
void rainbow(int wait) {
  // Hue of first pixel runs 5 complete loops through the color wheel.
  // Color wheel has a range of 65536 but it's OK if we roll over, so
  // just count from 0 to 5*65536. Adding 256 to firstPixelHue each time
  // means we'll make 5*65536/256 = 1280 passes through this loop:
  for(long firstPixelHue = 0; firstPixelHue < 5*65536; firstPixelHue += 256) {
    // strip.rainbow() can take a single argument (first pixel hue) or
    // optionally a few extras: number of rainbow repetitions (default 1),
    // saturation and value (brightness) (both 0-255, similar to the
    // ColorHSV() function, default 255), and a true/false flag for whether
    // to apply gamma correction to provide 'truer' colors (default true).
    strip.rainbow(firstPixelHue);
    // Above line is equivalent to:
    // strip.rainbow(firstPixelHue, 1, 255, 255, true);
    strip.show(); // Update strip with new contents
    delay(wait);  // Pause for a moment
  }
}

// Rainbow-enhanced theater marquee. Pass delay time (in ms) between frames.
void theaterChaseRainbow(int wait) {
  int firstPixelHue = 0;     // First pixel starts at red (hue 0)
  for(int a=0; a<30; a++) {  // Repeat 30 times...
    for(int b=0; b<3; b++) { //  'b' counts from 0 to 2...
      strip.clear();         //   Set all pixels in RAM to 0 (off)
      // 'c' counts up from 'b' to end of strip in increments of 3...
      for(int c=b; c<strip.numPixels(); c += 3) {
        // hue of pixel 'c' is offset by an amount to make one full
        // revolution of the color wheel (range 65536) along the length
        // of the strip (strip.numPixels() steps):
        int      hue   = firstPixelHue + c * 65536L / strip.numPixels();
        uint32_t color = strip.gamma32(strip.ColorHSV(hue)); // hue -> RGB
        strip.setPixelColor(c, color); // Set pixel 'c' to value 'color'
      }
      strip.show();                // Update strip with new contents
      delay(wait);                 // Pause for a moment
      firstPixelHue += 65536 / 90; // One cycle of color wheel over 90 frames
    }
  }
}





// setup() function -- runs once at startup --------------------------------

void setup() {
  pinMode(6,OUTPUT);
digitalWrite(6, HIGH);
  // These lines are specifically to support the Adafruit Trinket 5V 16 MHz.
  // Any other board, you can remove this part (but no harm leaving it):
#if defined(__AVR_ATtiny85__) && (F_CPU == 16000000)
  clock_prescale_set(clock_div_1);
#endif
  // END of Trinket-specific code.

  strip.begin();           // INITIALIZE NeoPixel strip object (REQUIRED)
  strip.show();            // Turn OFF all pixels ASAP
  strip.setBrightness(50); // Set BRIGHTNESS to about 1/5 (max = 255)
}


// loop() function -- runs repeatedly as long as board is on ---------------

void loop() {
  // Fill along the length of the strip in various colors...
  colorWipe(strip.Color(255,   0,   0), 50); // Red
  colorWipe(strip.Color(  0, 255,   0), 50); // Green
  colorWipe(strip.Color(  0,   0, 255), 50); // Blue

  // Do a theater marquee effect in various colors...
  theaterChase(strip.Color(127, 127, 127), 50); // White, half brightness
  theaterChase(strip.Color(127,   0,   0), 50); // Red, half brightness
  theaterChase(strip.Color(  0,   0, 127), 50); // Blue, half brightness

  rainbow(10);             // Flowing rainbow cycle along the whole strip
  theaterChaseRainbow(50); // Rainbow-enhanced theaterChase variant
}

Help would be greatly appreaciated

@kuba2k2
Copy link
Member

kuba2k2 commented Dec 26, 2023

It seems there are some missing functions or macros used by the NeoPixel library. These might be specific to esp32 or esp8266 and are not supported by LibreTiny. To fix this you would have to find what are these functions used for, and where.

@hannescam
Copy link
Author

hannescam commented Dec 26, 2023

I think these errors are related to interrupt disabling/enabling, but if I comment them out it uploads but the NeoPixel stays off.
Here are the lines in the code:
https://github.com/adafruit/Adafruit_NeoPixel/blob/master/Adafruit_NeoPixel.cpp#L288
https://github.com/adafruit/Adafruit_NeoPixel/blob/master/Adafruit_NeoPixel.cpp#L3036
I think if it is possible to implement those, it maybe would work, and I also didn't find the function "interrupts()" or "noInterrupts()" in any file in the NeoPixel repo

@hannescam hannescam changed the title Adafruit NeoPixels linker errors on BK7231N Adafruit NeoPixel linker errors on BK7231N Dec 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants