to compile built in openthread library files for nrf52833 in windows

how to compile openthread library files for nrf52833, 

i followed the procedure as below

  1. start with a fresh copy of the SDK, and make sure you place it as close to the ROOT of the hard drive as possible.
  2. Open a command line and go to [nRF5 SDK for Thread and Zigbee v4.1.0 ROOT]\external\openthread\project.
  3. Enter the following commands:
  4. git clone github.com/.../openthread.git

b.cdopenthread

c.git checkout c6a258e3a5bd90aa26d8245c435c0ae5797027f4

  1. Modify the UART pin config in [nRF5 SDK for Thread and Zigbee v4.1.0 ROOT]\external\openthread\project\openthread\examples\platforms\nrf528xx\nrf52833\transport-config.h per your requirements.
  2. Go back to [nRF5 SDK for Thread and Zigbee v4.1.0 ROOT]\external\openthread\project and run "py -3 build_gcc_libs.py" from the command line.
  3. When that is done, run "py -3 import_libs.py gcc" from the command line.

for nrf52833 , but found only nrf52840 get compiled

Parents
  • Hi

    I just tested this on my end, and it seems to compile and build files for both nRF52840, nRF52833, and nRF52811.

    Step 6 returns the following log (I won't include the log from step 5 which is incredibly long, as it is very long, building/compiling all examples for 840, 833, and 811.

    C:\<root folder>\nrf5_SDK_for_Thread_and_Zigbee_v410\external\openthread\project
    λ py -3 import_libs.py gcc
    import_libs.py:88: SyntaxWarning: "is not" with a literal. Did you mean "!="?
      if len(bad_libs) is not 0:
    INFO - root - Copying nrf52840\cli\ftd\armgcc\libopenthread-cli-ftd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-cli-ftd.a
    INFO - root - Copying nrf52840\cli\mtd\armgcc\libopenthread-cli-mtd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-cli-mtd.a
    INFO - root - Copying nrf52840\core\ftd\armgcc\libopenthread-ftd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-ftd.a
    INFO - root - Copying nrf52840\core\mtd\armgcc\libopenthread-mtd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-mtd.a
    INFO - root - Copying nrf52840\core\radio\armgcc\libopenthread-radio-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-radio.a
    INFO - root - Copying nrf52840\ncp\ftd\uart\armgcc\libopenthread-ncp-ftd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-ncp-ftd.a
    INFO - root - Copying nrf52840\ncp\ftd\spi\armgcc\libopenthread-ncp-ftd-spi-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-ncp-ftd-spi.a
    INFO - root - Copying nrf52840\ncp\mtd\uart\armgcc\libopenthread-ncp-mtd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-ncp-mtd.a
    INFO - root - Copying nrf52840\ncp\mtd\spi\armgcc\libopenthread-ncp-mtd-spi-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-ncp-mtd-spi.a
    INFO - root - Copying nrf52840\rcp\uart\armgcc\libopenthread-rcp-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-rcp.a
    INFO - root - Copying nrf52840\rcp\spi\armgcc\libopenthread-rcp-spi-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-rcp-spi.a
    INFO - root - Copying nrf52840\plat_nrf52840\sdk-nosd\armgcc\libopenthread-nrf52840-sdk.a to ..\lib\nrf52840\gcc\libopenthread-nrf52840-sdk.a
    INFO - root - Copying nrf52840\plat_nrf52840\sdk-sd\armgcc\libopenthread-nrf52840-softdevice-sdk.a to ..\lib\nrf52840\gcc\libopenthread-nrf52840-softdevice-sdk.a
    INFO - root - Copying nrf52840\plat_nrf52840\sdk-nodiag\armgcc\libopenthread-nrf52840-sdk-nodiag.a to ..\lib\nrf52840\gcc\libopenthread-nrf52840-sdk-nodiag.a
    INFO - root - Copying nrf52840\plat_nrf52840\sdk-sd-nodiag\armgcc\libopenthread-nrf52840-softdevice-sdk-nodiag.a to ..\lib\nrf52840\gcc\libopenthread-nrf52840-softdevice-sdk-nodiag.a
    INFO - root - Copying nrf52840\plat_utils\armgcc\libopenthread-platform-utils-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-platform-utils.a
    INFO - root - Copying nrf52840\nordicsemi_nrf52840\driver\armgcc\libnordicsemi-nrf52840-radio-driver.a to ..\lib\nrf52840\gcc\libnordicsemi-nrf52840-radio-driver.a
    INFO - root - Copying nrf52840\nordicsemi_nrf52840\driver-sd\armgcc\libnordicsemi-nrf52840-radio-driver-softdevice.a to ..\lib\nrf52840\gcc\libnordicsemi-nrf52840-radio-driver-softdevice.a
    INFO - root - Copying nrf52840\plat_nrf52840\uart\armgcc\libopenthread-nrf52840-transport.a to ..\lib\nrf52840\gcc\libopenthread-nrf52840-transport.a
    INFO - root - Copying nrf52840\plat_nrf52840\usb\armgcc\libopenthread-nrf52840-transport-usb.a to ..\lib\nrf52840\gcc\libopenthread-nrf52840-transport-usb.a
    INFO - root - Copying nrf52840\plat_nrf52840\spi\armgcc\libopenthread-nrf52840-transport-spi.a to ..\lib\nrf52840\gcc\libopenthread-nrf52840-transport-spi.a
    INFO - root - Copying nrf52840\plat_nrf52840\no-transport\armgcc\libopenthread-nrf52840-transport-none.a to ..\lib\nrf52840\gcc\libopenthread-nrf52840-transport-none.a
    INFO - root - Copying nrf52840\cli\optim-ftd\armgcc\libopenthread-cli-ftd-optimized-ftd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-cli-ftd-optimized-ftd.a
    INFO - root - Copying nrf52840\core\optim-ftd\armgcc\libopenthread-ftd-optimized-ftd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-ftd-optimized-ftd.a
    INFO - root - Copying nrf52840\plat_utils_ftd\armgcc\libopenthread-platform-utils-optimized-ftd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-platform-utils-optimized-ftd.a
    INFO - root - Copying nrf52840\cli\optim-mtd\armgcc\libopenthread-cli-mtd-optimized-mtd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-cli-mtd-optimized-mtd.a
    INFO - root - Copying nrf52840\core\optim-mtd\armgcc\libopenthread-mtd-optimized-mtd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-mtd-optimized-mtd.a
    INFO - root - Copying nrf52840\plat_utils_mtd\armgcc\libopenthread-platform-utils-optimized-mtd-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-platform-utils-optimized-mtd.a
    INFO - root - Copying nrf52840\lib\spinel_ncp\armgcc\libopenthread-spinel-ncp-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-spinel-ncp.a
    INFO - root - Copying nrf52840\lib\spinel_rcp\armgcc\libopenthread-spinel-rcp-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-spinel-rcp.a
    INFO - root - Copying nrf52840\lib\hdlc\armgcc\libopenthread-hdlc-nrf52840.a to ..\lib\nrf52840\gcc\libopenthread-hdlc.a
    INFO - root - Copying nrf52833\mbedcrypto\cc310\armgcc\libmbedcrypto-nrf52833.a to ..\lib\nrf52833\gcc\libmbedcrypto.a
    INFO - root - Copying nrf52833\cli\ftd\armgcc\libopenthread-cli-ftd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-cli-ftd.a
    INFO - root - Copying nrf52833\cli\mtd\armgcc\libopenthread-cli-mtd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-cli-mtd.a
    INFO - root - Copying nrf52833\core\ftd\armgcc\libopenthread-ftd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-ftd.a
    INFO - root - Copying nrf52833\core\mtd\armgcc\libopenthread-mtd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-mtd.a
    INFO - root - Copying nrf52833\core\radio\armgcc\libopenthread-radio-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-radio.a
    INFO - root - Copying nrf52833\ncp\ftd\uart\armgcc\libopenthread-ncp-ftd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-ncp-ftd.a
    INFO - root - Copying nrf52833\ncp\ftd\spi\armgcc\libopenthread-ncp-ftd-spi-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-ncp-ftd-spi.a
    INFO - root - Copying nrf52833\ncp\mtd\uart\armgcc\libopenthread-ncp-mtd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-ncp-mtd.a
    INFO - root - Copying nrf52833\ncp\mtd\spi\armgcc\libopenthread-ncp-mtd-spi-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-ncp-mtd-spi.a
    INFO - root - Copying nrf52833\rcp\uart\armgcc\libopenthread-rcp-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-rcp.a
    INFO - root - Copying nrf52833\rcp\spi\armgcc\libopenthread-rcp-spi-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-rcp-spi.a
    INFO - root - Copying nrf52833\plat_nrf52833\sdk-nosd\armgcc\libopenthread-nrf52833-sdk.a to ..\lib\nrf52833\gcc\libopenthread-nrf52833-sdk.a
    INFO - root - Copying nrf52833\plat_nrf52833\sdk-sd\armgcc\libopenthread-nrf52833-softdevice-sdk.a to ..\lib\nrf52833\gcc\libopenthread-nrf52833-softdevice-sdk.a
    INFO - root - Copying nrf52833\plat_nrf52833\sdk-nodiag\armgcc\libopenthread-nrf52833-sdk-nodiag.a to ..\lib\nrf52833\gcc\libopenthread-nrf52833-sdk-nodiag.a
    INFO - root - Copying nrf52833\plat_nrf52833\sdk-sd-nodiag\armgcc\libopenthread-nrf52833-softdevice-sdk-nodiag.a to ..\lib\nrf52833\gcc\libopenthread-nrf52833-softdevice-sdk-nodiag.a
    INFO - root - Copying nrf52833\plat_utils\armgcc\libopenthread-platform-utils-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-platform-utils.a
    INFO - root - Copying nrf52833\nordicsemi_nrf52833\driver\armgcc\libnordicsemi-nrf52833-radio-driver.a to ..\lib\nrf52833\gcc\libnordicsemi-nrf52833-radio-driver.a
    INFO - root - Copying nrf52833\nordicsemi_nrf52833\driver-sd\armgcc\libnordicsemi-nrf52833-radio-driver-softdevice.a to ..\lib\nrf52833\gcc\libnordicsemi-nrf52833-radio-driver-softdevice.a
    INFO - root - Copying nrf52833\plat_nrf52833\uart\armgcc\libopenthread-nrf52833-transport.a to ..\lib\nrf52833\gcc\libopenthread-nrf52833-transport.a
    INFO - root - Copying nrf52833\plat_nrf52833\usb\armgcc\libopenthread-nrf52833-transport-usb.a to ..\lib\nrf52833\gcc\libopenthread-nrf52833-transport-usb.a
    INFO - root - Copying nrf52833\plat_nrf52833\spi\armgcc\libopenthread-nrf52833-transport-spi.a to ..\lib\nrf52833\gcc\libopenthread-nrf52833-transport-spi.a
    INFO - root - Copying nrf52833\plat_nrf52833\no-transport\armgcc\libopenthread-nrf52833-transport-none.a to ..\lib\nrf52833\gcc\libopenthread-nrf52833-transport-none.a
    INFO - root - Copying nrf52833\cli\optim-ftd\armgcc\libopenthread-cli-ftd-optimized-ftd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-cli-ftd-optimized-ftd.a
    INFO - root - Copying nrf52833\core\optim-ftd\armgcc\libopenthread-ftd-optimized-ftd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-ftd-optimized-ftd.a
    INFO - root - Copying nrf52833\plat_utils_ftd\armgcc\libopenthread-platform-utils-optimized-ftd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-platform-utils-optimized-ftd.a
    INFO - root - Copying nrf52833\cli\optim-mtd\armgcc\libopenthread-cli-mtd-optimized-mtd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-cli-mtd-optimized-mtd.a
    INFO - root - Copying nrf52833\core\optim-mtd\armgcc\libopenthread-mtd-optimized-mtd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-mtd-optimized-mtd.a
    INFO - root - Copying nrf52833\plat_utils_mtd\armgcc\libopenthread-platform-utils-optimized-mtd-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-platform-utils-optimized-mtd.a
    INFO - root - Copying nrf52833\lib\spinel_ncp\armgcc\libopenthread-spinel-ncp-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-spinel-ncp.a
    INFO - root - Copying nrf52833\lib\spinel_rcp\armgcc\libopenthread-spinel-rcp-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-spinel-rcp.a
    INFO - root - Copying nrf52833\lib\hdlc\armgcc\libopenthread-hdlc-nrf52833.a to ..\lib\nrf52833\gcc\libopenthread-hdlc.a
    INFO - root - Copying nrf52811\mbedcrypto\cc310\armgcc\libmbedcrypto-nrf52811.a to ..\lib\nrf52811\gcc\libmbedcrypto.a
    INFO - root - Copying nrf52811\cli\mtd\armgcc\libopenthread-cli-mtd-nrf52811.a to ..\lib\nrf52811\gcc\libopenthread-cli-mtd.a
    INFO - root - Copying nrf52811\core\mtd\armgcc\libopenthread-mtd-nrf52811.a to ..\lib\nrf52811\gcc\libopenthread-mtd.a
    INFO - root - Copying nrf52811\core\radio\armgcc\libopenthread-radio-nrf52811.a to ..\lib\nrf52811\gcc\libopenthread-radio.a
    INFO - root - Copying nrf52811\rcp\uart\armgcc\libopenthread-rcp-nrf52811.a to ..\lib\nrf52811\gcc\libopenthread-rcp.a
    INFO - root - Copying nrf52811\rcp\spi\armgcc\libopenthread-rcp-spi-nrf52811.a to ..\lib\nrf52811\gcc\libopenthread-rcp-spi.a
    INFO - root - Copying nrf52811\plat_nrf52811\sdk-nosd\armgcc\libopenthread-nrf52811-sdk.a to ..\lib\nrf52811\gcc\libopenthread-nrf52811-sdk.a
    INFO - root - Copying nrf52811\plat_utils\armgcc\libopenthread-platform-utils-nrf52811.a to ..\lib\nrf52811\gcc\libopenthread-platform-utils.a
    INFO - root - Copying nrf52811\nordicsemi_nrf52811\driver\armgcc\libnordicsemi-nrf52811-radio-driver.a to ..\lib\nrf52811\gcc\libnordicsemi-nrf52811-radio-driver.a
    INFO - root - Copying nrf52811\plat_nrf52811\uart\armgcc\libopenthread-nrf52811-transport.a to ..\lib\nrf52811\gcc\libopenthread-nrf52811-transport.a
    INFO - root - Copying nrf52811\plat_nrf52811\spi\armgcc\libopenthread-nrf52811-transport-spi.a to ..\lib\nrf52811\gcc\libopenthread-nrf52811-transport-spi.a
    INFO - root - Copying nrf52811\plat_nrf52811\no-transport\armgcc\libopenthread-nrf52811-transport-none.a to ..\lib\nrf52811\gcc\libopenthread-nrf52811-transport-none.a
    INFO - root - Copying nrf52811\lib\spinel_ncp\armgcc\libopenthread-spinel-ncp-nrf52811.a to ..\lib\nrf52811\gcc\libopenthread-spinel-ncp.a
    INFO - root - Copying nrf52811\lib\spinel_rcp\armgcc\libopenthread-spinel-rcp-nrf52811.a to ..\lib\nrf52811\gcc\libopenthread-spinel-rcp.a
    INFO - root - Copying nrf52811\lib\hdlc\armgcc\libopenthread-hdlc-nrf52811.a to ..\lib\nrf52811\gcc\libopenthread-hdlc.a

    Where do you see that the nRF52833 files are missing?

    Best regards,

    Simon

  • at the end of step 5  i am getting error like this

    Creating library: ../../../core/mtd/armgcc/libopenthread-mtd-nrf52840.a
    Done
    make: Leaving directory `/d/open thread/open thread/nRF5_SDK_for_Thread_and_Zigbee_v4.1.0_32ce5f8/external/openthread/project/nrf52840/core/mtd/armgcc'
    make: Entering directory `/d/open thread/open thread/nRF5_SDK_for_Thread_and_Zigbee_v4.1.0_32ce5f8/external/openthread/project/nrf52840/ncp/ftd/uart/armgcc'
    mkdir _build
    cd _build && mkdir libopenthread_ncp_ftd_nrf52840
    Compiling file: changed_props_set.cpp
    Compiling file: ncp_base.cpp
    In file included from ../../../../../openthread/third_party/NordicSemiconductor/libraries/nrf_security/include/mbedtls/threading.h:57:0,
                     from ../../../../../openthread/third_party/NordicSemiconductor/libraries/nrf_security/include/mbedtls/ctr_drbg.h:71,
                     from ../../../../../openthread/src/core/common/random_manager.hpp:43,
                     from ../../../../../openthread/src/core/common/instance.hpp:46,
                     from ../../../../../openthread/src/ncp/ncp_base.hpp:52,
                     from ../../../../../openthread/src/ncp/ncp_base.cpp:33:
    ../../../../../openthread/third_party/NordicSemiconductor/libraries/nrf_security/include/mbedtls/threading_alt.h:11:10: fatal error: nrf_cc310_platform_mutex.h: No such file or directory
     #include "nrf_cc310_platform_mutex.h"
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    compilation terminated.
    make: *** [_build/libopenthread_ncp_ftd_nrf52840/ncp_base.cpp.o] Error 1
    make: Leaving directory `/d/open thread/open thread/nRF5_SDK_for_Thread_and_Zigbee_v4.1.0_32ce5f8/external/openthread/project/nrf52840/ncp/ftd/uart/armgcc'
    Traceback (most recent call last):
      File "D:\open thread\open thread\nRF5_SDK_for_Thread_and_Zigbee_v4.1.0_32ce5f8\external\openthread\project\build_gcc_libs.py", line 28, in <module>
        subprocess.run(make_cmd, check=True)
      File "C:\Users\india\AppData\Local\Programs\Python\Python39\lib\subprocess.py", line 524, in run
        raise CalledProcessError(retcode, process.args,
    subprocess.CalledProcessError: Command '['make', '-C', 'nrf52840\\ncp/ftd/uart\\armgcc']' returned non-zero exit status 2.

Reply
  • at the end of step 5  i am getting error like this

    Creating library: ../../../core/mtd/armgcc/libopenthread-mtd-nrf52840.a
    Done
    make: Leaving directory `/d/open thread/open thread/nRF5_SDK_for_Thread_and_Zigbee_v4.1.0_32ce5f8/external/openthread/project/nrf52840/core/mtd/armgcc'
    make: Entering directory `/d/open thread/open thread/nRF5_SDK_for_Thread_and_Zigbee_v4.1.0_32ce5f8/external/openthread/project/nrf52840/ncp/ftd/uart/armgcc'
    mkdir _build
    cd _build && mkdir libopenthread_ncp_ftd_nrf52840
    Compiling file: changed_props_set.cpp
    Compiling file: ncp_base.cpp
    In file included from ../../../../../openthread/third_party/NordicSemiconductor/libraries/nrf_security/include/mbedtls/threading.h:57:0,
                     from ../../../../../openthread/third_party/NordicSemiconductor/libraries/nrf_security/include/mbedtls/ctr_drbg.h:71,
                     from ../../../../../openthread/src/core/common/random_manager.hpp:43,
                     from ../../../../../openthread/src/core/common/instance.hpp:46,
                     from ../../../../../openthread/src/ncp/ncp_base.hpp:52,
                     from ../../../../../openthread/src/ncp/ncp_base.cpp:33:
    ../../../../../openthread/third_party/NordicSemiconductor/libraries/nrf_security/include/mbedtls/threading_alt.h:11:10: fatal error: nrf_cc310_platform_mutex.h: No such file or directory
     #include "nrf_cc310_platform_mutex.h"
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    compilation terminated.
    make: *** [_build/libopenthread_ncp_ftd_nrf52840/ncp_base.cpp.o] Error 1
    make: Leaving directory `/d/open thread/open thread/nRF5_SDK_for_Thread_and_Zigbee_v4.1.0_32ce5f8/external/openthread/project/nrf52840/ncp/ftd/uart/armgcc'
    Traceback (most recent call last):
      File "D:\open thread\open thread\nRF5_SDK_for_Thread_and_Zigbee_v4.1.0_32ce5f8\external\openthread\project\build_gcc_libs.py", line 28, in <module>
        subprocess.run(make_cmd, check=True)
      File "C:\Users\india\AppData\Local\Programs\Python\Python39\lib\subprocess.py", line 524, in run
        raise CalledProcessError(retcode, process.args,
    subprocess.CalledProcessError: Command '['make', '-C', 'nrf52840\\ncp/ftd/uart\\armgcc']' returned non-zero exit status 2.

Children
No Data
Related