nRF Connect (v1.8) Tensorflow Example cannot build

I setup the VS Code on Windows with

- nRF Connect (3.10.0) 

- nRF Connect SDK v1.8.0 with the Toolchain Manager (0.10.3)

started the blinky example (works) and then started the tensorflow zephyr/samples/modules/tflite-micro/hello_world

but it didn't work -> After I checked for similar problems I found, that tensorflow is not in the name-allowlist in west.yml.

What I tried: 

- added tensorflow to the name-allowlist in west.yml

  name-allowlist:
      - tensorflow
      - tflite-micro

- added repos in west.yml

    # Tensorflow
    - name: tensorflow
      repo-path: tensorflow
      path: modules/lib/tensorflow
      revision: dc70a45a7cc12c25726a32cd91b28be59e7bc596
      remote: zephyrproject
    - name: tflite-micro
      repo-path: tflite-micro
      path: modules/lib/tflite-micro
      revision: d30cdac11bff4df6f50bae1a14753b76bde8e4d3
      remote: zephyrproject

- run `west update`

But still the config is not working 

and I can't edit Kconfig in VSCode (value cannot be changed)

because Direct Dependencies: (=n) ?

and the build fails

Building tfliteexample
west build --build-dir c:\Nordic\test\tfliteexample\build c:\Nordic\test\tfliteexample --pristine --board nrf52840dk_nrf52840 -- -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=On -DNCS_TOOLCHAIN_VERSION:STRING="NONE" -DBOARD_ROOT:STRING="c:/Nordic/test/anotherMeshTest" -DCONFIG_DEBUG_OPTIMIZATIONS:STRING="y" -DCONFIG_DEBUG_THREAD_INFO:STRING="y" -DCONF_FILE:STRING="c:/Nordic/test/tfliteexample/prj.conf"

-- west build: generating a build system
Including boilerplate (Zephyr base): C:/Users/<username>/ncs/v1.8.0/zephyr/cmake/app/boilerplate.cmake
-- Application: C:/Nordic/test/tfliteexample
-- Zephyr version: 2.7.0 (C:/Users/<username>/ncs/v1.8.0/zephyr), build: v2.7.0-ncs1
-- Found Python3: C:/Users/<username>/ncs/v1.8.0/toolchain/opt/bin/python.exe (found suitable exact version "3.8.2") found components: Interpreter 
-- Found west (found suitable version "0.12.0", minimum required is "0.7.1")
-- Board: nrf52840dk_nrf52840
-- Cache files will be written to: C:/Users/<username>/ncs/v1.8.0/zephyr/.cache
-- Found dtc: C:/Users/<username>/ncs/v1.8.0/toolchain/opt/bin/dtc.exe (found suitable version "1.4.7", minimum required is "1.4.6")
-- Found toolchain: gnuarmemb (c:/Users/<username>/ncs/v1.8.0/toolchain/opt)
-- Found BOARD.dts: C:/Users/<username>/ncs/v1.8.0/zephyr/boards/arm/nrf52840dk_nrf52840/nrf52840dk_nrf52840.dts
-- Generated zephyr.dts: C:/Nordic/test/tfliteexample/build/zephyr/zephyr.dts
-- Generated devicetree_unfixed.h: C:/Nordic/test/tfliteexample/build/zephyr/include/generated/devicetree_unfixed.h
-- Generated device_extern.h: C:/Nordic/test/tfliteexample/build/zephyr/include/generated/device_extern.h
-- Including generated dts.cmake file: C:/Nordic/test/tfliteexample/build/zephyr/dts.cmake
Parsing C:/Users/<username>/ncs/v1.8.0/zephyr/Kconfig
C:/Users/<username>/ncs/v1.8.0/zephyr/scripts/kconfig/kconfig.py: C:\Nordic\test\tfliteexample\build\Kconfig\Kconfig.modules:44: Could not open 'C:\Users\<username>\ncs\v1.8.0\zephyr\' (in 'osource "$(ZEPHYR_TENSORFLOW_KCONFIG)"') (ENOENT: No such file or directory)
CMake Error at C:\Users\<username>\ncs\v1.8.0\zephyr\cmake\kconfig.cmake:270 (message):
  command failed with return code: 1
Call Stack (most recent call first):
  C:\Users\<username>\ncs\v1.8.0\zephyr\cmake\app\boilerplate.cmake:546 (include)
  C:\Users\<username>\ncs\v1.8.0\zephyr\share\zephyr-package\cmake\ZephyrConfig.cmake:24 (include)
  C:\Users\<username>\ncs\v1.8.0\zephyr\share\zephyr-package\cmake\ZephyrConfig.cmake:35 (include_boilerplate)
  c:\Nordic\test\tfliteexample\build\CMakeLists.txt:3 (find_package)


-- Configuring incomplete, errors occurred!
FATAL ERROR: command exited with status 1: 'c:\Users\<username>\ncs\v1.8.0\toolchain\opt\bin\cmake.EXE' '-DWEST_PYTHON=c:\Users\<username>\ncs\v1.8.0\toolchain\opt\bin\python.exe' '-Bc:\Nordic\test\tfliteexample\build' '-Sc:\Nordic\test\tfliteexample' -GNinja -DBOARD=nrf52840dk_nrf52840 -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=On -DNCS_TOOLCHAIN_VERSION:STRING=NONE -DBOARD_ROOT:STRING=c:/Nordic/test/anotherMeshTest -DCONFIG_DEBUG_OPTIMIZATIONS:STRING=y -DCONFIG_DEBUG_THREAD_INFO:STRING=y -DCONF_FILE:STRING=c:/Nordic/test/tfliteexample/prj.conf
The terminal process terminated with exit code: 1.

Parents Reply
  • Hello,

    RK01 said:
    So we need bluetooth mesh and tensorflow inference on a nRF52840.

    I see. Well I should mention that Softdevice and S140 is a part of the nRF5SDK, while the support for Edge Impulse and way to get Tensorflow working is a part of the nRF Connect SDK, and they are mutually exclusive. Maybe I am misunderstanding you, but it seems to me that you should look into getting the mesh part of the application working with NCS instead of SD.

    Regards,

    Elfving

Children
No Data
Related