This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Errors when setting CONFIG_LTE_LINK_CONTROL to y

When I want to add LTE to my project I've done this by adding

CONFIG_LTE_LINK_CONTROL=y

to prj.conf. When I (pristine)build (within VScode, and when using the command line) i get the following error:

warning: AT_CMD (defined at D:\nordic\v1.7.1\nrf\lib\at_cmd\Kconfig:9) has direct dependencies NRF_MODEM_LIB with value n, but is currently being y-selected by the following symbols:
 - LTE_LINK_CONTROL (defined at D:\nordic\v1.7.1\nrf\lib\lte_link_control\Kconfig:7), with value y, direct dependencies y (value: y)

warning: AT_CMD_PARSER (defined at D:\nordic\v1.7.1\nrf\lib\at_cmd_parser\Kconfig:7) has direct dependencies NEWLIB_LIBC || EXTERNAL_LIBC with value n, but is currently being y-selected by the following symbols:
 - LTE_LINK_CONTROL (defined at D:\nordic\v1.7.1\nrf\lib\lte_link_control\Kconfig:7), with value y, direct dependencies y (value: y)

error: Aborting due to Kconfig warnings

The project is just the zephyr blinky example, board thingy_nrf9160, and SDK 1.7.1.  all on Windows 10. Tried a 'standalone' and a 'workspace' project. I don't think it is a max path length issue, as my SDK is installed at D:/nordic/.

Parents
  • I've read that, note that I can build/flash the blinky example, but it goes wrong when I add LTE_LINK_CONTROL.

    I prefer to start with the 'clean' blinky example, and than build my application on top of this, part by part, this helps me understanding all the parts, as I am new to the nrf9160 / ZephyrOS. Should this be possible, or should I take one of the more complex examples and strip them down?

  • allard.p said:
    I prefer to start with the 'clean' blinky example, and than build my application on top of this, part by part, this helps me understanding all the parts

    Understood, and that is why we encourage new users to look at the samples available. E.g. the AT Client, which is the simplest sample available for the nRF9160.

    warning: AT_CMD (defined at D:\nordic\v1.7.1\nrf\lib\at_cmd\Kconfig:9) has direct dependencies NRF_MODEM_LIB with value n, but is currently being y-selected by the following symbols:
     - LTE_LINK_CONTROL (defined at D:\nordic\v1.7.1\nrf\lib\lte_link_control\Kconfig:7), with value y, direct dependencies y (value: y)

    warning: AT_CMD_PARSER (defined at D:\nordic\v1.7.1\nrf\lib\at_cmd_parser\Kconfig:7) has direct dependencies NEWLIB_LIBC || EXTERNAL_LIBC with value n, but is currently being y-selected by the following symbols:

    That said, the build system is providing information of what is missing. CONFIG_LTE_LINK_CONTROL will select other KConfig symbols i.e. AT_CMD and AT_CMD_PARSER. These need NRF_MODEM_LIB and NEWLIB_LIBC respectively. This means that you need to add all of these to your prj.conf.

    The AT CMD library refers to sockets that are defined in the CONFIG_NET_SOCKETS library, which means you will also need to add this. 

    Once you have added what is needed, the prj.conf of the Blinky sample will look something like this:

    CONFIG_GPIO=y
    # Network
    CONFIG_NETWORKING=y
    CONFIG_NET_NATIVE=n
    CONFIG_NET_SOCKETS=y
    CONFIG_NET_SOCKETS_OFFLOAD=y
    CONFIG_NET_SOCKETS_POSIX_NAMES=y
    
    
    
    # Modem library
    CONFIG_NRF_MODEM_LIB=y
    
    CONFIG_NEWLIB_LIBC=y 
    
    CONFIG_LTE_LINK_CONTROL=y
    
    # AT host library
    CONFIG_AT_HOST_LIBRARY=y
    CONFIG_UART_INTERRUPT_DRIVEN=y
    
    # Stacks and heaps
    CONFIG_MAIN_STACK_SIZE=3072
    CONFIG_HEAP_MEM_POOL_SIZE=16384

    We recommend configuring the stacks and heaps to the following values as well, more information found in the Zephyr kernel service documentation

  • This did the trick, i guess I was confused by the message 'has direct dependencies NEWLIB_LIBC || EXTERNAL_LIBC with value n, but is currently being y-selected by the following symbols:', I thought this was saying to set NEWLIB_LIBC to 'n' instead of 'y'.

Reply
  • This did the trick, i guess I was confused by the message 'has direct dependencies NEWLIB_LIBC || EXTERNAL_LIBC with value n, but is currently being y-selected by the following symbols:', I thought this was saying to set NEWLIB_LIBC to 'n' instead of 'y'.

Children
No Data
Related