New board extensions not supported by VSCode nRF extension?

Hello

When following the guidline of a new way to extend boards, VSCode "Add Build Configuration" is blank. Am I doing something wrong or this is not yet supported by nRF VSCode extension?

Attached is a sample project with the following "board.yaml":

board:
  extend: nrf52840dk
  variants:
    - name: test
      qualifier: nrf52840

extended_board_test.zip

Parents
  • Hello,

    I have looked at your application folder and also run the sample on NCS V3.2.0. Your board file is incomplete.

    It does not look like a proper board file.

    The error shows

    You mentioned earlier that ''It's not the build that fails. It's the VSCode nRF Extension that cannot start debug session. And it cannot show graphical representation of DeviceTree either.'' Can you send me the application folder which you were able to build?

  • Well, yeah, That is the problem still not solved, that was discussed earlier in this thread. A quick and simple work-around is to add the line:

    list(APPEND DTS_EXTRA_CPPFLAGS "-isystem$ENV{ZEPHYR_BASE}/boards/")

    ...to the original board "pre_dt_board.cmake" file, in Zephyr source tree.

  • And, with the help of AI, I also managed to solve the problem how to include base board DTS files from extended board conf without needing to patch Zephyr source tree. The key here is to create the following file with the following content. I'm not sure how it works but it works! Now sysbuild with MCUBoot and application target builds fine. Put your app target name in place of [main target name].

    [project root]/sysbuild/CMakeLists.txt


    cmake_minimum_required(VERSION 3.20.0)

    get_filename_component(APP_ROOT "${CMAKE_CURRENT_LIST_DIR}/.." REALPATH)
    file(TO_CMAKE_PATH "$ENV{ZEPHYR_BASE}/boards" ZEPHYR_BOARDS_DIR)

    list(APPEND BOARD_ROOT ${APP_ROOT})

    # Extended boards in this project include upstream board DTS files directly.
    # Export the extra include path through the main target image cache so the
    # flag reaches the image configure step, not just sysbuild's own scope.
    set([main target name]_DTS_EXTRA_CPPFLAGS
    "-isystem${ZEPHYR_BOARDS_DIR}"
    CACHE INTERNAL "Extra DTS preprocessor flags for the main target image"
    )

    find_package(Sysbuild REQUIRED HINTS $ENV{ZEPHYR_BASE})
    project(sysbuild LANGUAGES)

  • Hello, 

    In your two latest responses, it seems like you solved your issue with AI. Is this not the case? 

    Please give us an updated description of your current issue so we know what to focus on. 

    Best regards,

    Maria

  • Yes, but if your read my post, the fix is in the minified .js files of the nRF Extension. And that will be overwritten every time there is an update. As far as I know, Nordic doesn't disclose the source code of these extensions. It shouldn't be very difficult for you to fix it, according to the report I made.

  • Hello, 

    Our extension team has checked the code handling board extensions, and are unable to reproduce this issue with multi segment qualifiers. That is, the extended board is easily found by the extension. 

    Our recommendation is to update all our VS Code extensions (newest nrf-connect version is v2026.8.2347) and if that does not work, try with the latest SDK version as well (latest is v3.4.0 (LTS)). 

    Best regards,

    Maria

Reply
  • Hello, 

    Our extension team has checked the code handling board extensions, and are unable to reproduce this issue with multi segment qualifiers. That is, the extended board is easily found by the extension. 

    Our recommendation is to update all our VS Code extensions (newest nrf-connect version is v2026.8.2347) and if that does not work, try with the latest SDK version as well (latest is v3.4.0 (LTS)). 

    Best regards,

    Maria

Children
No Data
Related