Build configuration for custom board with nRF9160

Hello.

I’m new to the Nordic devices and I was tasked to develop a custom board based on the nRF9160 SiP. I took the nRF9160 DK as a reference, changing it according to our needs.

I was able to program the nRF9160 with one of the examples to check if the programming was successful but now I want to start writing my own application and from what I was able to understand first I need to create a board.

To create a new board I select the “Create a new board” option on the nRF Connect Visual Studio Code plugin and provide the required fields as described in the “Lesson 3 - Adding custom board support” the folder where the board files are stored, the board files and it’s content also assume the human-readable name instead of the machine-readable name, I don’t think it was supposed to be like this.

At this point I created an application for testing based on the HTTPS Client example, on the nRF Connect plugin I selected “Add build configuration” and selected my board from the list but when I pushed the “Build Configuration” button almost immediately I get the following error:

/home/captemp/ncs/v2.7.0/zephyr/scripts/kconfig/kconfig.py: /captemp/nordic_boards/boards/CapTemp/G-LogBox nRF9160/Kconfig.defconfig:1: error: couldn't parse 'if  BOARD_G-LOGBOX NRF9160_NRF9160 || BOARD_G-LOGBOX NRF9160_NRF9160_NS': extra tokens at end of line

I believe the error is caused by the spaces on the board name but if I provide a human-readable name without spaces on the terminal all seems to go well but eventually I get the following error:

----- Installing platform NS -----

[284/291] Linking C executable zephyr/zephyr_pre0.elf

FAILED: zephyr/zephyr_pre0.elf zephyr/zephyr_pre0.map /captemp/tests/https_client/build_1/zephyr/zephyr_pre0.map 

: && ccache /home/captemp/ncs/toolchains/e9dba88316/opt/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc  -gdwarf-4 zephyr/CMakeFiles/zephyr_pre0.dir/misc/empty_file.c.obj -o zephyr/zephyr_pre0.elf  zephyr/CMakeFiles/offsets.dir/./arch/arm/core/offsets/offsets.c.obj  tfm/api_ns/interface/lib/s_veneers.o  -fuse-ld=bfd  -T  zephyr/linker_zephyr_pre0.cmd  -Wl,-Map=/captemp/tests/https_client/build_1/zephyr/zephyr_pre0.map  -Wl,--whole-archive  app/libapp.a  zephyr/libzephyr.a  zephyr/arch/common/libarch__common.a  zephyr/arch/arch/arm/core/libarch__arm__core.a  zephyr/arch/arch/arm/core/cortex_m/libarch__arm__core__cortex_m.a  zephyr/arch/arch/arm/core/cortex_m/cmse/libarch__arm__core__cortex_m__cmse.a  zephyr/arch/arch/arm/core/mpu/libarch__arm__core__mpu.a  zephyr/lib/libc/picolibc/liblib__libc__picolibc.a  zephyr/lib/libc/common/liblib__libc__common.a  zephyr/lib/posix/options/liblib__posix__options.a  zephyr/soc/soc/nrf9160/libsoc__nordic.a  zephyr/subsys/random/libsubsys__random.a  zephyr/subsys/net/libsubsys__net.a  zephyr/subsys/net/l2/offloaded_netdev/libsubsys__net__l2__offloaded_netdev.a  zephyr/subsys/net/ip/libsubsys__net__ip.a  zephyr/subsys/net/conn_mgr/libsubsys__net__conn_mgr.a  zephyr/drivers/clock_control/libdrivers__clock_control.a  zephyr/drivers/entropy/libdrivers__entropy.a  zephyr/drivers/timer/libdrivers__timer.a  modules/nrf/lib/nrf_modem_lib/lib..__nrf__lib__nrf_modem_lib.a  modules/nrf/subsys/nrf_security/src/zephyr/libmbedtls_zephyr.a  modules/nrf/modules/trusted-firmware-m/lib..__nrf__modules__trusted-firmware-m.a  modules/nrf/modules/trusted-firmware-m/libtfm_api_nrf.a  modules/trusted-firmware-m/libtfm_api.a  modules/hal_nordic/nrfx/libmodules__hal_nordic__nrfx.a  /home/captemp/ncs/v2.7.0/nrfxlib/nrf_modem/lib/cellular/nrf9160/soft-float/libmodem.a  -Wl,--no-whole-archive  zephyr/kernel/libkernel.a  -L"/home/captemp/ncs/toolchains/e9dba88316/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/thumb/v8-m.main/nofp"  -L/captemp/tests/https_client/build_1/zephyr  -lgcc  zephyr/arch/common/libisr_tables.a  -Wl,--gc-sections  -Wl,--build-id=none  -Wl,--sort-common=descending  -Wl,--sort-section=alignment  -Wl,-u,_OffsetAbsSyms  -Wl,-u,_ConfigAbsSyms  -nostdlib  -static  -Wl,-X  -Wl,-N  -Wl,--orphan-handling=warn  -Wl,-no-pie  -DPICOLIBC_LONG_LONG_PRINTF_SCANF  modules/nrf/subsys/nrf_security/src/libmbedcrypto.a  /home/captemp/ncs/v2.7.0/nrfxlib/crypto/nrf_oberon/lib/cortex-m33/soft-float/liboberon_mbedtls_3.0.15.a  modules/nrf/subsys/nrf_security/src/libmbedcrypto_base.a  -mcpu=cortex-m33  -mthumb  -mabi=aapcs  -mfp16-format=ieee  -mtp=soft  /home/captemp/ncs/v2.7.0/nrfxlib/crypto/nrf_oberon/lib/cortex-m33/soft-float/liboberon_3.0.15.a  --specs=picolibc.specs  -lc  -lgcc && cd /captemp/tests/https_client/build_1/zephyr && /home/captemp/ncs/toolchains/e9dba88316/usr/local/bin/cmake -E true

/home/captemp/ncs/toolchains/e9dba88316/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd: app/libapp.a(main.c.obj): in function `cert_provision':

/captemp/tests/https_client/src/main.c:108: undefined reference to `tls_credential_add'

collect2: error: ld returned 1 exit status

ninja: build stopped: subcommand failed.

FATAL ERROR: command exited with status 1: /home/captemp/ncs/toolchains/e9dba88316/usr/local/bin/cmake --build /captemp/tests/https_client/build_1

I have no idea what I’m missing, any help would be appreciated.

Parents
  • Hello, 

    required fields as described in the “Lesson 3 - Adding custom board support” the folder where the board files are stored

    I see that you are referring to Lesson 3 – Adding custom board support in the nRF Connect SDK Intermediate course. From the build log I see that you are using nRF Connect SDK v2.7.0. Have you ensured that everything is correctly configured as per the new hardware model in v2.7.0?

    Kind regards,
    Øyvind

Reply
  • Hello, 

    required fields as described in the “Lesson 3 - Adding custom board support” the folder where the board files are stored

    I see that you are referring to Lesson 3 – Adding custom board support in the nRF Connect SDK Intermediate course. From the build log I see that you are using nRF Connect SDK v2.7.0. Have you ensured that everything is correctly configured as per the new hardware model in v2.7.0?

    Kind regards,
    Øyvind

Children
No Data
Related