Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs

Enhancing nRF5 SDK 802.15.4 wireless UART example

We are developing an application that takes data from UART and sends telegrams over 802.15.4 on a nRF52840, so I wanted to use the 802.15.4 wireless UART example as a base for this. As I see in it, the UART is used via the HAL uart API, not the libuarte driver.

Before digging deeper in it, is it basically possible to use the other nrfx drivers together with the 802_15_4_lib_gcc.a ? I find it difficult that the 802_15_4_lib_gcc.a is obviously precompiled and when trying to build an application (with linux arm_gcc) based on it I stumble over many multiple references linker errors because in that static library some functions are already present which are also introduced ny other .c files, e.g. nrfx_timer and others.

Is the 802_15_4_lib_gcc.a a good way to built own applications for 802.15.4 usage anyway? Or is there better support in the nRF Connect SDK ?

Thomas 

Parents
  • Hi,

    Is the 802_15_4_lib_gcc.a a good way to built own applications for 802.15.4 usage anyway? Or is there better support in the nRF Connect SDK ?

    I would not recommend using the nRF5 SDK for 802.15.4. As you mention, the library is precompiled, which makes it difficult to know what is happening, and it can cause conflicts with other files. It is possible to use this however, but I would recommend using the 802.15.4 Radio Driver in nRF Connect SDK (see nRF 802.15.4 Radio Driver for documentation).

    Best regards,

    Marte

Reply
  • Hi,

    Is the 802_15_4_lib_gcc.a a good way to built own applications for 802.15.4 usage anyway? Or is there better support in the nRF Connect SDK ?

    I would not recommend using the nRF5 SDK for 802.15.4. As you mention, the library is precompiled, which makes it difficult to know what is happening, and it can cause conflicts with other files. It is possible to use this however, but I would recommend using the 802.15.4 Radio Driver in nRF Connect SDK (see nRF 802.15.4 Radio Driver for documentation).

    Best regards,

    Marte

Children
  • Hello Marte,

    thanks for the reply, we did so. I installed nRF Connect SDK and can use the Segger Studio and access the 52840 DevKit without problem. I have ported our firmware that began based on nRF5 SDK to a Segger emProject file, this was not difficult, and have further integrated all 802.15.4 radio driver sources. Here some problems occur: It seems that nrfx headers between nRF5 SDK and Connect SDK have partly different APIs. I read that the Connect SDK shall supersede nRF5, but I am missing the sources e.g. for uarte driver in the Connect SDK. I see a bunch of drivers for it for zephyr, but we do not want to use an RTOS.

    Could you tell me which is the best practice to glue Connect SDK and rRF5 SDK code together ? I might fiddle it together with adapting all the include paths etc. in the emProject file but maybe you know a better way.

    Thanks in advance!

  • Hi,

    We do not have any guides for porting nRF5 SDK projects to nRF Connect SDK, as the two SDKs are very different. It would be better to start out with a nRF Connect SDK project that is similar to yours and add functionality to that.

    As for the nrfx drivers, you can still find them in nRF Connect SDK. The API can be found here: nrfx » API Reference » Drivers, and the source and header files for the drivers can be found under ncs/modules/hal/nordic/nrfx/drivers.

    Best regards,

    Marte

Related