nRF5340 U-Blox Nora B120 FEM module

Hello,


I have U-Blox Nora B120 dev boards. Nora B120 chip has built in Skyworks SKY66405-11 FEM IC and I want to use it.

I read in the documentation to copy folder with board to SDK folder. I did that, but my program didn't compile.

Regarding to image above (which is a screenshot from the documentation): I copied ubx_evknorab12_nrf5340  - NOT ubx_evknorab10_nrf534 as in the picture above (nora B10 does not have built-in FEM)


Then I read to modify nrf5340dk folder. I did it and my program compiled. (screenshots from the documentation below)



Documentation links:
EVK-NORA-B1 User Guide
NORA-B1 series, system integration manual



But there is a problem.
My program is a combination of modified "ble-timesync-demo" and "Multi-NUS Central" / "Peripheral UART" programs.
LINKS:
https://github.com/nordic-auko/nRF5-ble-timesync-demo
https://github.com/NordicMatt/multi-NUS

This program has been divided into 2 separate programs. One is the MASTER - data receiver which sends the synchronization and second one is the PERIPHERAL - data transmitter which receives the synchronization.

With "normal" 5340dk configuration it works properly, but on modified 5340 board config - MASTER is receiving data and sending synchronization, but PERIPHERAL isn't receiving synchronization data.


Can you help me resolve this problem?

PS: For now I am using SDK v2.5.0. but I plan to upgrade to v2.8.0 or newer. Will the configuration changes needed to run FEM on Nora B120 in SDK v2.5.0 be the same as in v2.8.0 and v2.9.1?


Best Regards

Parents
  • Hello,

    I think perhaps U-blox will be able to provide the best support here... I will try to help, but you might want to start conversation with them as well.

    I checked the NORA-B1 EVK product page, and it seems that the "System Integration Manual" document you linked isn't listed.
    How did you arrive at that file? I find it quite strange that a guide involving modifying the nrf5340dk_nrf5340 target is in use when dedicated board file is already available. 

    I think we should try to stick with the dedicated board file for now and start with some simple application first.
    Could you please try the beacon sample in zephyr/samples/bluetooth/beacon?

    Best regards,

    Hieu

  • Hello,

    Bluetooth beacon sample doesn't compile on ubx_evknorab12_nrf5340_cpuapp. (on nrf5340dk_nrf5340_cpuapp it compiles).

    Terminal output:
    [.....]

    -- Including generated dts.cmake file: C:/TEST_Nordic_communication/beacon_TST/build_norab12/zephyr/dts.cmake
    Parsing C:/ncs/v2.5.0/zephyr/Kconfig
    Loaded configuration 'C:/ncs/v2.5.0/zephyr/boards/arm/ubx_evknorab12_nrf5340/ubx_evknorab12_nrf5340_cpuapp_defconfig'
    Merged configuration 'C:/TEST_Nordic_communication/beacon_TST/prj.conf'

    warning: the default selection BT_HCI_IPC (undefined) of <choice BT_HCI_BUS_TYPE> (defined at boards/shields\x_nucleo_idb05a1\Kconfig.defconfig:11, C:/ncs/v2.5.0/zephyr/boards/arm/ubx_evknorab12_nrf5340/Kconfig.defconfig:84, drivers/bluetooth/hci/Kconfig:11) is not contained in the choice

    error: Aborting due to Kconfig warnings

    CMake Error at C:/ncs/v2.5.0/zephyr/cmake/modules/kconfig.cmake:348 (message):
      command failed with return code: 1
    Call Stack (most recent call first):
      C:/ncs/v2.5.0/nrf/cmake/modules/kconfig.cmake:29 (include)
      C:/ncs/v2.5.0/zephyr/cmake/modules/zephyr_default.cmake:129 (include)
      C:/ncs/v2.5.0/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:66 (include)
      C:/ncs/v2.5.0/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate)
      CMakeLists.txt:4 (find_package)


    -- Configuring incomplete, errors occurred!
    FATAL ERROR: command exited with status 1: 'C:\ncs\toolchains\c57af46cb7\opt\bin\cmake.EXE' -DWEST_PYTHON=C:/ncs/toolchains/c57af46cb7/opt/bin/python.exe '-Bc:\TEST_Nordic_communication\beacon_TST\build_norab12' -GNinja -DBOARD=ubx_evknorab12_nrf5340_cpuapp -DNCS_TOOLCHAIN_VERSION=NONE -DBOARD_ROOT=c:/test_nordic_communication/beacon_tst '-Sc:\TEST_Nordic_communication\beacon_TST'

     *  The terminal process terminated with exit code: 1.
     *  Terminal will be reused by tasks, press any key to close it.  




    Regarding to "System Integration Manual" I found it in EVK-NORA-B1 user guide on page 24 - link [2] NORA-B1 system integration manual.


    Best regards

  • It's great that you have figured out the issue.

    As for the control of the FEM, by default, BLE applications built in NCS use the SoftDevice Controller and the Multiprotocol Service Layer, MPSL, by default. MPSL has FEM control integrated, and you don't have to worry about controlling FEM on your own. Please read more about it here: Developing with Front-End Modules.

    Further question on using the FEM would be a different topic, so please open a new case for it. We try to keep each case focused on one topic only.

  • Nora B12 in FEM module has built-in amplifier with 4 modes.
    In my previous question I meant about controlling these modes.
    Are there any functions for it or do I have to do it manually like I did above?

    As I said previously one of my devices mainly receives data (but sometimes sends data) other one
    mainly sends data (but sometimes receives data) and I want to improve transmission range (that's why I chose Nora B120).


    Will it be necessary to implement a mechanism for switching HIGH/LOW states on pins P1.08 (TX_EN) and P1.09 (RX_EN) when the device is sending or receiving data or maybe it will be enough to
    - turn HIGH on TX_EN (and LOW on RX_EN) in the device that mainly sends data
    and
    - turn HIGH on RX_EN (and LOW on TX_EN) in the device that mainly receives data.

    [ If that matters, would it affect the transmission range significantly or only slightly? ]
    Or maybe in current NCS versions it happens automatically and there is no need to set it up ?


    I also repeat the question:
    If I set P1.08 (TX_EN) to HIGH and P1.09 (RX_EN) to LOW then the transmitting range should increase, but will the receiving range/sensitivity decrease or remain the same?
       and
    If I set P1.08 (TX_EN) to LOW and P1.09 (RX_EN) to HIGH then the receiving range/sensitivity should increase, but will the transmitting range decrease or remain the same?




  • As I said in my last answer, the MPSL layer can take care of controlling all those modes automatically, and I would like to request again that further questions on FEM control be asked in a new case.

  • I have annother question.

    My program is a combination of modified "ble-timesync-demo" and "Multi-NUS Central" / "Peripheral UART" programs.
    https://github.com/nordic-auko/nRF5-ble-timesync-demo
    https://github.com/NordicMatt/multi-NUS

    This program has been divided into 2 separate programs. One is the MASTER - data receiver which sends the synchronization and second one is the PERIPHERAL - data transmitter which receives the synchronization.

    I tested it on 3 boards (one as a MASTER and two as PERIPHERALS) and I have a problem.
    - When I flash all boards with bulid for nrf5340dk everythig is OK.
    - When I flash MASTER with build for nrf5340dk and both PERIPHERALS with build for noraB12 it also works properly.
    - But when I flash MASTER with build for noraB12, one PERIPHERAL with build for nrf5340dk and second one with build for noraB12 then only PERIPHERAL with nrf5340dk build is synchronizing (PERIPHERAL with noraB12 build is not synchronizing).
    I will mention that source code was the same, only the configuration was different.

    I tested it on SDK v2.6.1 and v2.8.0 and the same thing happens.

    I think the problem is in the "time_sync_nrf53.c" file, but I have no idea what is wrong and why it is not working well with noraB12 and its FEM module.

  • While I can see that this is something similar to the "Nora board file is not working" topic, I truly think it will be of a big enough investigation that it should be done in a new DevZone ticket. Please open a new one, including more details on why you think the problem is in time_sync_nrf53.c.

Reply Children
No Data
Related