This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Testing direction finding beacon in nRF Connect SDK v1.5.0

Hi, teams.

I am testing nRFConnect 1.5.0 with nRF52833DK.

Recently, I noticed "Direction finding connectionless beacon" example in latest repository, and copied it to my 1.5.0 tree.

With slight modification, I managed to build the sample, but when I  executed, bt_df_set_adv_cte_tx_param() call returns error -35, which means not supported.

Is it limitation of current SDK version, or any way to fix it?

  • First, I already mentioned that I "backported" the sample from latest (not released) repository to SDK 1.5.0.

    Please notice.

    During backporting, I changed "dfe-antenna-num" to "dfe-ant-num", and removed dfe-pdu-antenna property in devicetree.

    And applied AOA configuration by default, for testing.

    And about BT_FEAT_LE_CONNECTIONLESS_CTE_TX(), I know it is defined in hci.h

    But, it is evaluated in directions.c as below.

    int bt_df_set_adv_cte_tx_param(struct bt_le_ext_adv *adv,
    				const struct bt_df_adv_cte_tx_param *params)
    {
    	__ASSERT_NO_MSG(adv);
    	__ASSERT_NO_MSG(params);
    
    	int err;
    
    	if (!BT_FEAT_LE_CONNECTIONLESS_CTE_TX(bt_dev.le.features)) {
    		return -ENOTSUP;
    	}
    ...

    I want to know how to enable this feature.

  • Hi again

    Sorry, I misunderstood your issue in the initial ticket. I spoke to one of the devs about this, and you won't be able to backport this example to NCS v1.5.0, as this example is only supported in the master branch or the next tag release.

    BT_FEAT_LE_CONNECTIONLESS_CTE_TX is enabled by the Zephyr Controller Subsystem in the master branch. 
    Best regards,
    Simon
  • Hi Simonr,

    I understood, but have trouble to install/test master branch properly.

    Somewhat off the topic here, but I'll continue here.

    Previously, I already installed NCS 1.5.0 with nRFConnect for Desktop -> Toolchain Manager.

    Now, I followed the install guideline in Installing the nRF Connect SDK manually, and master branch seems to be properly installed.

    But, I tried my project build in command line, build failed because west version is too low, which referenced the one in v1.5.0 tree.

    The error messages as follows:

    How should I install master branch in parallel with released ones?

    C:\Users\firebird\source\repos\ncs\latest\projects\beacon>west build -b nrf52833dk_nrf52833
    -- west build: generating a build system
    Including boilerplate (Zephyr base (cached)): C:/Users/firebird/source/repos/ncs/latest/zephyr/cmake/app/boilerplate.cmake
    -- Application: C:/Users/firebird/source/repos/ncs/latest/projects/beacon
    -- Using NCS Toolchain 1.5.0 for building. (C:/Users/firebird/source/repos/ncs/v1.5.0/toolchain/cmake)
    -- Zephyr version: 2.5.99 (C:/Users/firebird/source/repos/ncs/latest/zephyr)
    -- Found west (found suitable version "0.9.0", minimum required is "0.7.1")
    WARNING: west v0.10 or later is required by the manifest
      West version: v0.9.0
      Manifest file: C:\Users\firebird\source\repos\ncs\latest\nrf\west.yml
      This should work, but most commands won't.
      To silence this warning, upgrade west.
    CMake Error at C:/Users/firebird/source/repos/ncs/latest/zephyr/cmake/zephyr_module.cmake:61 (message):
      Traceback (most recent call last):
    
        File "C:\Users\firebird\source\repos\ncs\v1.5.0\toolchain\opt\bin\Lib\site-packages\west\manifest.py", line 1226, in __init__
          validate(source_data)
        File "C:\Users\firebird\source\repos\ncs\v1.5.0\toolchain\opt\bin\Lib\site-packages\west\manifest.py", line 420, in validate
          raise ManifestVersionError(min_version_str)
    
      west.manifest.ManifestVersionError: ('0.10', None)
    
    
    
      The above exception was the direct cause of the following exception:
    
    
    
      Traceback (most recent call last):
    
        File "C:/Users/firebird/source/repos/ncs/latest/zephyr/scripts/zephyr_module.py", line 378, in <module>
          main()
        File "C:/Users/firebird/source/repos/ncs/latest/zephyr/scripts/zephyr_module.py", line 283, in main
          manifest = Manifest.from_file()
        File "C:\Users\firebird\source\repos\ncs\v1.5.0\toolchain\opt\bin\Lib\site-packages\west\manifest.py", line 1084, in from_file
          return Manifest(**kwargs)
        File "C:\Users\firebird\source\repos\ncs\v1.5.0\toolchain\opt\bin\Lib\site-packages\west\manifest.py", line 1228, in __init__
          raise ManifestVersionError(mv.version, file=source_file) from mv
    
      west.manifest.ManifestVersionError: ('0.10',
      WindowsPath('C:/Users/firebird/source/repos/ncs/latest/nrf/west.yml'))
    
    Call Stack (most recent call first):
      C:/Users/firebird/source/repos/ncs/latest/zephyr/cmake/app/boilerplate.cmake:183 (include)
      C:/Users/firebird/source/repos/ncs/latest/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:24 (include)
      C:/Users/firebird/source/repos/ncs/latest/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:40 (include_boilerplate)
      CMakeLists.txt:22 (find_package)
    
    
    -- Configuring incomplete, errors occurred!
    FATAL ERROR: command exited with status 1: 'C:\Program Files\CMake\bin\cmake.EXE' '-DWEST_PYTHON=c:\users\firebird\appdata\local\programs\python\python37\python.exe' '-BC:\Users\firebird\source\repos\ncs\latest\projects\beacon\build' '-SC:\Users\firebird\source\repos\ncs\latest\projects\beacon' -GNinja -DBOARD=nrf52833dk_nrf52833

  • I managed to build successfully after copying 'toolchain' directory from v1.5.0 to latest, and upgrade some python packages.

    But still not sure whether this is the correct installation.

    Please let me know if there is some specific guide about installing master branch.

    When I followed the official documentation, I got the above errors during my first sample build.

    Maybe caused by parallel installation both 'nRFConnect Toolchain manager' way and manual way.

  • Hi

    The Getting Started assistant should be a sufficient guide for installing master branch of the nRFConnect SDK as well, as long as you remember using "git checkout master & west update". We don't have a specific guide to install the master branch.

    I see that your current west version is v0.9.0, which indeed is outdated as the master branch requires v0.10.1. As the toolchain manager is only updated for NCS v1.5.0 as of yet, the West version it installs will be v0.9.0.

    Updating your west version here should be sufficient.

    Best regards,

    Simon

Related