Enabling the TLS layer to get a HTTPS connection going.

7343.nrf7002dk_nrf5340_cpuapp_ns.conf3124.prj.confHello everyone.

WE're trying to make a https connection with google.com and execute a GET request.

Wifi connection is working; DHCP seems to be working (my personal assumption given the log message we get: "Resolved: [(1, 1, 6, '', ('142.250.201.206', 443))]" which indicates that getaddrinfo() works); but when trying to initiate the socket via TLS, something strange happens: we get the error "OSError: 109".

Inserting some debug prints inside subsys/net/lib/sockets/, we found the culprit to be the function "int zsock_setsockopt_ctx(struct net_context *ctx, int level, int optnameconst void *optval, socklen_t optlen)".

The function call that triggers error 109 is:  res = setsockopt(socket->ctx, SOL_TLS, TLS_PEER_VERIFY, &verify, sizeof(verify));

No matter what other option we try to set via setsockopt(), it will fail with the 109 error since the implementation for setsockopt() is somehow set to sockets_inet.c (whose implementation does not recognise SOL_TLS as a valid in its switches) instead of sockets_tls.c (which has handling for SOL_TLS in its switches). My personal hunch is that the config options set in the project are somehow wrong. Can someone please take a look over our .conf files? Maybe we can find the culprit. :)

We can provide any extra code snippets that are necessary for debugging and/ or run any tests. Have a great day and hope to hear from you soon!

  • Hi,

     

    Tudor B. said:
    Yes, it worked; what I wanted to point out was that the commands you provided don't work, but need to be edited like I mentioned. Trying your commands without any alterations produces:

    Ah, my apologies. The "_" was present in ncs v2.9.1, which I tested with.

     

    Although slimming down ~130k is not going to be a one-liner fix, you can get quite a large optimization by enabling link time optimization:

    CONFIG_ISR_TABLES_LOCAL_DECLARATION=y
    CONFIG_LTO=y

     

    Related to this warning:

      No SOURCES given to Zephyr library:
      ..__nrf__subsys__net__lib__tls_credentials

    What TLS_CREDENTIAL_BACKEND_* is chosen at your end?

     

    Kind regards,

    Håkon

  • What TLS_CREDENTIAL_BACKEND_* is chosen at your end?

    Searched in both prj.conf and board.conf and found nothing that contains "TLS_CREDENTIAL_BACKEND_".

    What about that call? I'm sure it wouldn't take more than 1H. Wink

  • Also found out something interesting. I was reading in another post about a .config file that's supposed to be in the build folder which shows all the CONFIG_ options that get enabled at build time. I couldn't find it (probably since that post was on SDK v2.9.1 or older) but I think I've found it for v3.0.0.

    The file in question is located at: /build/zephyr/zephyr/misc/generated/configs.c

    (leaving this here for posterity Slight smile)

    I'll attach the file to this reply. Maybe you can find something out of place with one/ a combination of the configs active at build time.

    2678.configs.c

    Edit: extra point that I wanna add: must the board's time be updated before the TLS and/or connection steps take place? Or is the board's time relevant in any way for this?

  • Hello again Håkon.

    I've taken the time and compared the two config.c files (the one in the https_client sample and the one in our project). I've attached the two files here, after filtering out all duplicate configs that were found, sorting both lists alphabetically, then sorting by "closest match" in Beyond Compare (which aligns lines that are identical/ near identical, even if they're on different line numbers). This eases comparison a lot, but it doesn't solve the main issue sadly (at least from my analysis).

    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_CONNECTIVITY_WIFI_MGMT_APPLICATION, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_CURRENT_THREAD_USE_TLS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_SHELL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DEVICE_SHELL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DEVMEM_SHELL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_RESOLVER_ADDITIONAL_BUF_CTR, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_RESOLVER_ADDITIONAL_QUERIES, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_RESOLVER_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_RESOLVER_MAX_SERVERS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_SOCKET_DISPATCHER_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_GETOPT_LONG, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_HEAP_MEM_POOL_SIZE, 1280);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_HW_UNIQUE_KEY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_HW_UNIQUE_KEY_RANDOM, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_KERNEL_SHELL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_KERNEL_THREAD_SHELL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_KERNEL_THREAD_SHELL_LIST, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_KERNEL_THREAD_SHELL_STACKS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_L2_WIFI_CONN_WQ_STACK_SIZE, 6144);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_L2_WIFI_CONNECTIVITY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_L2_WIFI_CONNECTIVITY_CONNECT_TIMEOUT_SECONDS, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_L2_WIFI_CONNECTIVITY_CONNECTION_PERSISTENCE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_LIBC_ERRNO, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_LOG_RUNTIME_FILTERING, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MAIN_STACK_SIZE, 6144);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_CCM_C, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_CHACHA20_C, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_CHACHAPOLY_C, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_DHM_C, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_ECP_DP_SECP384R1_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_GCM_C, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_HAS_CCM_CIPHERSUITE_REQUIREMENTS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_HAS_CHACHAPOLY_CIPHERSUITE_REQUIREMENTS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_HAS_GCM_CIPHERSUITE_REQUIREMENTS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_HEAP_SIZE, 81920);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_MAC_SHA256_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_MPI_MAX_SIZE, 256);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_POLY1305_C, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_PSA_CRYPTO_STORAGE_C, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_SSL_CONTEXT_SERIALIZATION, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MPSC_PBUF, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_ARP_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_BUF_RX_COUNT, 36);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_BUF_TX_COUNT, 36);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONN_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONNECTION_MANAGER_CONNECTIVITY_WIFI_MGMT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONNECTION_MANAGER_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONNECTION_MANAGER_MONITOR_STACK_SIZE, 4600);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONTEXT_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CORE_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_HOSTNAME_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_HTTP_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_HTTP_SERVER_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_ICMPV4_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_ICMPV6_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IF_IPV6_PREFIX_COUNT, 2);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IF_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IF_MAX_IPV4_COUNT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IF_MAX_IPV6_COUNT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IF_MCAST_IPV6_ADDR_COUNT, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IF_UNICAST_IPV6_ADDR_COUNT, 2);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_INITIAL_HOP_LIMIT, 64);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_INITIAL_MCAST_HOP_LIMIT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV4_ACD_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV4_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_DAD, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_IID_EUI_64, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_MAX_NEIGHBORS, 8);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_MLD, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_MTU, 1280);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_NBR_CACHE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_NBR_CACHE_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_ND, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_ND_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_PE_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_RA_RDNSS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV6_RS_TIMEOUT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_L2_ETHERNET_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_L2_WIFI_MGMT_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_L2_WIFI_SHELL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MAX_CONN, 8);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MAX_CONTEXTS, 6);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MAX_NEXTHOPS, 8);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MAX_ROUTERS, 2);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MAX_ROUTES, 8);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MGMT_EVENT_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MGMT_EVENT_QUEUE_TIMEOUT, 10);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_NATIVE_IPV6, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_PKT_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_PKT_RX_COUNT, 14);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_PKT_TX_COUNT, 14);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_ROUTE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_ROUTE_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_RX_STACK_SIZE, 2048);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_DNS_TIMEOUT, 30000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_POLL_MAX, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_SERVICE_STACK_SIZE, 1200);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_TLS_MAX_CREDENTIALS, 4);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_TLS_SET_MAX_FRAGMENT_LENGTH, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_TC_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_TCP_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_UDP_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_UTILS_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRF_WIFI_DATA_HEAP_SIZE, 40000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRF70_MAX_TX_AGGREGATION, 4);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRF70_MAX_TX_TOKENS, 10);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PICOLIBC, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PICOLIBC_IO_LONG_LONG, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PICOLIBC_USE_TOOLCHAIN, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_SIZE_TFM, 0x20000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_SIZE_TFM_INTERNAL_TRUSTED_STORAGE, 0x2000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_SIZE_TFM_OTP_NV_COUNTERS, 0x2000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_SIZE_TFM_PROTECTED_STORAGE, 0x4000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_SIZE_TFM_SRAM, 0xc000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_TFM_STORAGE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_POSIX_C_LIB_EXT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_HAS_AEAD_SUPPORT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_MAX_RSA_KEY_BITS, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_CC3XX_CTR_DRBG_DRIVER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_AEAD_DRIVER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_CCM_AES, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_CHACHA20_POLY1305, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_ECDH_SECP_R1_384, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_ECDSA_SECP_R1_384, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_GCM_AES, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_DERIVE_SECP_R1_384, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_EXPORT_SECP_R1_384, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_GENERATE_SECP_R1_384, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_IMPORT_SECP_R1_384, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_PUBLIC_KEY_SECP_R1_384, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_STREAM_CIPHER_CHACHA20, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_USE_CC3XX_CTR_DRBG_DRIVER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_USE_CTR_DRBG_DRIVER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_CCM, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_CHACHA20, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_CHACHA20_POLY1305, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_CTR_DRBG, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_GCM, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_STREAM_CIPHER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ECC_SECP_R1_384, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_KEY_TYPE_CHACHA20, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_RING_BUFFER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_ARGC_MAX, 30);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_ASCII_FILTER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_AUTOSTART, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKEND_SERIAL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKEND_SERIAL_API_INTERRUPT_DRIVEN, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKEND_SERIAL_INIT_PRIORITY, 90);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKEND_SERIAL_INTERRUPT_DRIVEN, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKEND_SERIAL_LOG_LEVEL, 5);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKEND_SERIAL_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKEND_SERIAL_LOG_MESSAGE_QUEUE_SIZE, 512);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKEND_SERIAL_LOG_MESSAGE_QUEUE_TIMEOUT, 100);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKEND_SERIAL_RX_RING_BUFFER_SIZE, 64);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKEND_SERIAL_TX_RING_BUFFER_SIZE, 8);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKENDS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_BACKSPACE_MODE_DELETE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_CMD_BUFF_SIZE, 256);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_CMD_ROOT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_CMDS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_CMDS_RESIZE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_CMDS_RETURN_VALUE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_DEFAULT_TERMINAL_HEIGHT, 24);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_DEFAULT_TERMINAL_WIDTH, 80);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_DEVICE_HELPERS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_ECHO_STATUS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_GETOPT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_HELP, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_HELP_ON_WRONG_ARGUMENT_COUNT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_HISTORY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_HISTORY_BUFFER, 512);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_LOG_BACKEND, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_LOG_FORMAT_TIMESTAMP, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_METAKEYS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_MSG_CMD_NOT_FOUND, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_MSG_SPECIFY_SUBCOMMAND, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_PRINTF_BUFF_SIZE, 30);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_PROMPT_BUFF_SIZE, 20);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_PROMPT_CHANGE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_PROMPT_UART, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_STACK_SIZE, 6144);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_STATS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_TAB, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_TAB_AUTOCOMPLETION, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_VT100_COLORS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_VT100_COMMANDS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_WILDCARD, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE, 4096);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_AEAD_MODULE_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_ASYM_SIGN_MODULE_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_BUILTIN_KEYS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_CIPHER_MODULE_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_CONC_OPER_NUM, 8);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_ENGINE_BUF_SIZE, 8320);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_HASH_MODULE_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_IOVEC_BUFFER_SIZE, 5120);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_KEY_DERIVATION_MODULE_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_KEY_MODULE_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_MAC_MODULE_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_PARTITION_STACK_SIZE, 0x2000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_EXPERIMENTAL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_ITS_BUF_SIZE, 2048);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_ITS_CREATE_FLASH_LAYOUT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_ITS_MAX_ASSET_SIZE, 512);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_ITS_NUM_ASSETS, 10);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_ITS_STACK_SIZE, 0x720);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_ITS_VALIDATE_METADATA_FROM_FLASH, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PARTITION_INTERNAL_TRUSTED_STORAGE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PARTITION_LOG_LEVEL_INFO, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PARTITION_PROTECTED_STORAGE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PROFILE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PROFILE_TYPE_SMALL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PS_CREATE_FLASH_LAYOUT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PS_MAX_ASSET_SIZE, 2048);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PS_NUM_ASSETS, 10);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PS_ROLLBACK_PROTECTION, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PS_STACK_SIZE, 0x700);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PS_VALIDATE_METADATA_FROM_FLASH, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_THREAD_LOCAL_STORAGE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TLS_CREDENTIALS_BACKEND_PROTECTED_STORAGE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TLS_CREDENTIALS_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TLS_CREDENTIALS_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_CREDENTIALS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_CREDENTIALS_BACKEND_PSA, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_CREDENTIALS_CONNECT_STORED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_CREDENTIALS_CONNECT_STORED_CONNECTION_TIMEOUT, 30);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_CREDENTIALS_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_CREDENTIALS_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_CREDENTIALS_MAX_ENTRIES, 2);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_CREDENTIALS_SAE_PASSWORD_LENGTH, 128);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_CREDENTIALS_SHELL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_NM_LOG_LEVEL, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_NM_WPA_SUPPLICANT_LOG_LEVEL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_NM_WPA_SUPPLICANT_LOG_LEVEL_ERR, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_NRF70_LOG_LEVEL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_NRF70_LOG_LEVEL_ERR, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_ZVFS_POLL_MAX, 6);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_ADXL345_TRIGGER_NONE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_CBPRINTF_FP_SUPPORT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_CBPRINTF_N_SPECIFIER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_CONNECTION_IDLE_TIMEOUT, 30);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_CONSOLE_GETCHAR, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_CONSOLE_GETCHAR_BUFSIZE, 258);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_CONSOLE_HANDLER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_CONSOLE_PUTCHAR_BUFSIZE, 128);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_CONSOLE_SUBSYS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_COUNTER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_COUNTER_INIT_PRIORITY, 60);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_COUNTER_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_COUNTER_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_COUNTER_NRF_RTC, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_COUNTER_RTC_CUSTOM_TOP_SUPPORT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_TIME, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_TIME_AUTO_UPDATE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_TIME_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_TIME_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_TIME_NTP, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_TIME_NTP_QUERY_TIME_SECONDS, 5);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_TIME_RETRY_COUNT, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_TIME_RETRY_INTERVAL_SECONDS, 60);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_TIME_THREAD_STACK_SIZE, 1280);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_TIME_TOO_OLD_SECONDS, 3600);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DATE_TIME_UPDATE_INTERVAL_SECONDS, 14400);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_RESOLVER_ADDITIONAL_BUF_CTR, 2);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_RESOLVER_ADDITIONAL_QUERIES, 2);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_RESOLVER_LOG_LEVEL, 4);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_RESOLVER_LOG_LEVEL_DBG, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_RESOLVER_MAX_SERVERS, 2);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_SERVER_IP_ADDRESSES, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_SERVER1, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_SERVER2, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_SERVER3, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_SERVER4, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_SERVER5, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_SOCKET_DISPATCHER_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DNS_SOCKET_DISPATCHER_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_DT_HAS_NORDIC_NRF_RTC_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FLASH, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FLASH_FILL_BUFFER_SIZE, 32);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FLASH_HAS_DRIVER_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FLASH_HAS_EX_OP, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FLASH_HAS_EXPLICIT_ERASE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FLASH_HAS_PAGE_LAYOUT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FLASH_INIT_PRIORITY, 50);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FLASH_JESD216, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FLASH_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FLASH_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FLASH_PAGE_LAYOUT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FP_HARDABI, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FPU, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_FPU_SHARING, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_HAS_HW_NRF_RTC0, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_HEAP_MEM_POOL_IGNORE_MIN, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_HEAP_MEM_POOL_SIZE, 65536);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_INSTRUMENT_THREAD_SWITCHING, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_ISR_TABLES_LOCAL_DECLARATION, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_LOG_BACKEND_FORMAT_TIMESTAMP, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_LOG_BACKEND_SUPPORTS_FORMAT_TIMESTAMP, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_LOG_BACKEND_UART, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_LOG_BACKEND_UART_AUTOSTART, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_LOG_BACKEND_UART_BUFFER_SIZE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_LOG_BACKEND_UART_OUTPUT_DEFAULT, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_LOG_BACKEND_UART_OUTPUT_TEXT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_LTO, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MAIN_STACK_SIZE, 12288);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_FORCE_LEGACY_CIPHER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_FORCE_LEGACY_MD, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_GENPRIME, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_HAS_RSA_CIPHERSUITE_REQUIREMENTS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_HEAP_SIZE, 16384);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_KEY_EXCHANGE_RSA_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_LOG_LEVEL, 4);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_LOG_LEVEL_DBG, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_MPI_MAX_SIZE, 512);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_PKCS1_V15, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_PKCS1_V21, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_RSA_C, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MBEDTLS_SSL_RENEGOTIATION, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MICROPY_CONFIGFILE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MICROPY_HEAP_SIZE, 32768);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MICROPY_VFS_FAT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MICROPY_VFS_LFS2, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_MPU_ALLOW_FLASH_WRITE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_ARP_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_ARP_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_BUF_POOL_USAGE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_BUF_RX_COUNT, 8);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_BUF_TX_COUNT, 8);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_AUTO_INIT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_INIT_PRIO, 95);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_INIT_TIMEOUT, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_MY_IPV4_ADDR, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_MY_IPV4_GW, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_MY_IPV4_NETMASK, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_NEED_IPV4, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_PEER_IPV4_ADDR, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONFIG_SETTINGS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONN_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONN_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONNECTION_MANAGER_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONNECTION_MANAGER_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONNECTION_MANAGER_MONITOR_STACK_SIZE, 512);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONTEXT_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CONTEXT_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CORE_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_CORE_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_OPTION_NTP_SERVER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_SERVER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_SERVER_ADDR_COUNT, 4);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_SERVER_ADDR_DECLINE_TIME, 86400);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_SERVER_ADDR_LEASE_TIME, 86400);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_SERVER_ICMP_PROBE_TIMEOUT, 1000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_SERVER_INSTANCES, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_SERVER_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_SERVER_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_SERVER_NAK_UNRECOGNIZED_REQUESTS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_DHCPV4_SERVER_OPTION_DNS_ADDRESS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_HOSTNAME_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_HOSTNAME_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_HTTP_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_HTTP_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_HTTP_SERVER_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_HTTP_SERVER_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_ICMPV4_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_ICMPV4_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IF_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IF_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IF_MAX_IPV4_COUNT, 2);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV4_ACD_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV4_ACD_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV4_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_IPV4_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_L2_ETHERNET_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_L2_ETHERNET_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_L2_WIFI_MGMT_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_L2_WIFI_MGMT_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_LOG, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MAX_CONN, 16);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MAX_CONTEXTS, 5);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MAX_ROUTERS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MGMT_EVENT_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MGMT_EVENT_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_MGMT_EVENT_QUEUE_TIMEOUT, 5000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_PKT_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_PKT_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_PKT_RX_COUNT, 16);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_PKT_TX_COUNT, 16);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_ROUTE_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_ROUTE_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_RX_STACK_SIZE, 4096);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_DNS_TIMEOUT, 2000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_LOG_LEVEL, 4);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_LOG_LEVEL_DBG, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_POLL_MAX, 10);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_SERVICE_STACK_SIZE, 2400);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_SOCKETS_TLS_MAX_CREDENTIALS, 10);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_TC_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_TC_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_TCP_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_TCP_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_UDP_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_UDP_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_UTILS_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NET_UTILS_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NEWLIB_LIBC, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NEWLIB_LIBC_MIN_REQUIRED_HEAP_SIZE, 2048);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NEWLIB_LIBC_NANO, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRF_WIFI_DATA_HEAP_SIZE, 130000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRF70_MAX_TX_AGGREGATION, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRF70_MAX_TX_TOKENS, 5);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRFX_PWM, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRFX_PWM0, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRFX_SPIM, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRFX_SPIM4, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRFX_WDT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NRFX_WDT0, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NVS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NVS_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_NVS_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_EXTERNAL_FLASH_HAS_DRIVER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_SIZE_NVS_STORAGE, 0x6000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_SIZE_TFM, 0x8000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_SIZE_TFM_INTERNAL_TRUSTED_STORAGE, 0x0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_SIZE_TFM_OTP_NV_COUNTERS, 0x0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_SIZE_TFM_PROTECTED_STORAGE, 0x0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PM_PARTITION_SIZE_TFM_SRAM, 0x8000);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_POSIX_DEVICE_IO_ALIAS_CLOSE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_POSIX_DEVICE_IO_ALIAS_OPEN, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_POSIX_DEVICE_IO_ALIAS_READ, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_POSIX_DEVICE_IO_ALIAS_WRITE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_POSIX_FD_MGMT_ALIAS_LSEEK, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_POSIX_FILE_SYSTEM_ALIAS_FSTAT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_POSIX_SIGNALS_ALIAS_KILL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_DEFAULT_OFF, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_HAS_ASYM_ENCRYPT_SUPPORT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_MAX_RSA_KEY_BITS, 4096);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_CC3XX_HMAC_DRBG_DRIVER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_ANY_RSA_KEY_SIZE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_ASYMMETRIC_ENCRYPTION_DRIVER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_ECDH_MONTGOMERY_255, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_DERIVE_MONTGOMERY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_DERIVE_MONTGOMERY_255, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_EXPORT_MONTGOMERY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_EXPORT_MONTGOMERY_255, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_GENERATE_MONTGOMERY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_GENERATE_MONTGOMERY_255, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_IMPORT_MONTGOMERY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_KEY_PAIR_IMPORT_MONTGOMERY_255, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_PUBLIC_KEY_MONTGOMERY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_ECC_PUBLIC_KEY_MONTGOMERY_255, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_RSA_KEY_PAIR_EXPORT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_RSA_KEY_PAIR_IMPORT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_KEY_TYPE_RSA_PUBLIC_KEY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_RSA_ANY_CRYPT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_RSA_ANY_SIGN, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_RSA_ANY_VERIFY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_RSA_KEY_SIZE_2048, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_RSA_KEY_SIZE_4096, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_RSA_OAEP, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_RSA_PKCS1V15_CRYPT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_RSA_PKCS1V15_SIGN, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_NEED_OBERON_RSA_PSS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_USE_CC3XX_HMAC_DRBG_DRIVER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_USE_HMAC_DRBG_DRIVER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_HMAC_DRBG, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_RSA_OAEP, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_RSA_PKCS1V15_CRYPT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_RSA_PKCS1V15_SIGN, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_RSA_PKCS1V15_SIGN_RAW, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_RSA_PSS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ALG_RSA_PSS_ANY_SALT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_ECC_MONTGOMERY_255, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_RSA_KEY_SIZE_2048, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PSA_WANT_RSA_KEY_SIZE_4096, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PWM, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PWM_INIT_PRIORITY, 50);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PWM_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PWM_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PWM_NRFX, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_PWM_TC_INIT_PRIORITY, 50);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_REBOOT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SCHED_THREAD_USAGE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SCHED_THREAD_USAGE_ALL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SCHED_THREAD_USAGE_AUTO_ENABLE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SENSOR, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SENSOR_DS3231_INIT_PRIORITY, 86);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SENSOR_INIT_PRIORITY, 90);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SENSOR_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SENSOR_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SHELL_STACK_SIZE, 4096);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SNTP, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SNTP_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SNTP_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SOC_FLASH_NRF, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SOC_FLASH_NRF_RADIO_SYNC_NONE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SOFTAP_SAMPLE_DHCPV4_POOL_START, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_COMPLETION_TIMEOUT_TOLERANCE, 200);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_INIT_PRIORITY, 50);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_NOR, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_NOR_CS_WAIT_DELAY, 0);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_NOR_FLASH_LAYOUT_PAGE_SIZE, 65536);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_NOR_INIT_PRIORITY, 80);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_NOR_SFDP_MINIMAL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_NOR_SLEEP_WHILE_WAITING_UNTIL_READY, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_NRFX, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_NRFX_RAM_BUFFER_SIZE, 8);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_NRFX_SPIM, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SPI_NRFX_WAKE_TIMEOUT_US, 200);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_STA_CONN_TIMEOUT_SEC, 70);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_STA_SAMPLE_START_WIFI_THREAD_STACK_SIZE, 5200);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE, 3072);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TEST_RANDOM_GENERATOR, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_CONC_OPER_NUM, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_ENGINE_BUF_SIZE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_IOVEC_BUFFER_SIZE, 1024);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_CRYPTO_PARTITION_STACK_SIZE, 0x800);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_MCUBOOT_IMAGE_NUMBER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PLATFORM_NV_COUNTER_MODULE_DISABLED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TFM_PROFILE_TYPE_MINIMAL, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_THREAD_ANALYZER, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_THREAD_ANALYZER_ISR_STACK_USAGE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_THREAD_ANALYZER_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_THREAD_ANALYZER_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_THREAD_ANALYZER_RUN_UNLOCKED, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_THREAD_ANALYZER_USE_PRINTK, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_THREAD_CUSTOM_DATA, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_THREAD_RUNTIME_STATS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TLS_CREDENTIALS_BACKEND_VOLATILE, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TLS_CREDENTIALS_LOG_LEVEL, 4);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_TLS_CREDENTIALS_LOG_LEVEL_DBG, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_UART_CONSOLE_DEBUG_SERVER_HOOKS, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WATCHDOG, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WDT_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WDT_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WDT_NRFX, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_NM_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_NM_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_NM_WPA_SUPPLICANT_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_NM_WPA_SUPPLICANT_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_NRF70_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_NRF70_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_READY_INIT_PRIORITY, 90);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_READY_LIB, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_READY_LIB_LOG_LEVEL, 3);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_READY_LIB_LOG_LEVEL_DEFAULT, 1);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_WIFI_READY_MAX_CALLBACKS, 2);
    GEN_ABSOLUTE_SYM_KCONFIG(CONFIG_ZVFS_POLL_MAX, 10);

    Btw! I re-ran the example and could not for the life of me get it to connect to google.com and make the request. DNS resolved an IP, certificate steps passed, but it always fails with:

    *** Booting nRF Connect SDK v3.0.0-3bfc46578e42 ***
    *** Using Zephyr OS v4.0.99-a0e545cb437a ***
    HTTPS client sample started
    Bringing network interface up
    Provisioning certificate
    CA certificate already exists, sec tag: 42
    Connecting to the network
    Connected
    Network connectivity established and IP address assigned
    Looking up google.com.
    DNS message size: 44
    DNS message content (hex):ec 18 81 80 00 01 00 01 00 00 00 00 06 67 6f 6f 67 6c 65 03 63 6f 6d 00 00 01 00 01 c0 0c 00 01 00 01 00 00 00 c6 00 04 ac d9 14 0e
    Resolved 172.217.20.14 (AF_INET)
    Current system time: 13 seconds since Epoch
    Doing setsockopt()...1
    Doing setsockopt()...2
    Doing setsockopt()...3
    Done!
    Connecting to google.com:443.
    DNS message size: 56
    DNS message content (hex):6c 27 81 80 uart:~
    00 01 00 01 00 00 00 00 06 67 6f 6f 67 6c 65 03 63 6f 6d 00 00 1c 00 01 c0 0c 00 1c 00 01 00 00 00 40 connect() failed, err: 113
    00 10 2a 00 14 50 40 0d 08 05 00 00 00 00 00 00 20 0e
    Disconnected
    Network connectivity lost
    Disconnected from the network

    I'll keep trying to figure out what the main difference is between the https_sample and our project. Have a great weekend. :)

  • I advanced a bit more when I realised that the new socket I was making was using the default socket interface.

    By changing:

    proto = IPPROTO_TCP
    to:
    proto = IPPROTO_TLS_1_2
    Now running our project produces a completely different error, in that the socket cannot be initialized at all now.
    The code segment for socket initialisation:
     STATIC mp_obj_t socket_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
         mp_arg_check_num(n_args, n_kw, 0, 4, false);
    
         mbedtls_debug_set_threshold(4); 
         socket_obj_t *socket = socket_new();
     
         int family = AF_INET;
         int socktype = SOCK_STREAM;
         int proto = -1;
     
         if (n_args >= 1) {
             family = mp_obj_get_int(args[0]);
             if (n_args >= 2) {
                 socktype = mp_obj_get_int(args[1]);
                 if (n_args >= 3) {
                     proto = mp_obj_get_int(args[2]);
                 }
             }
         }
     
         if (proto == -1) {
             proto = IPPROTO_TLS_1_2;
             if (socktype != SOCK_STREAM) {
                 proto = IPPROTO_UDP;
             }
         }
         
         int res = tls_credential_add(GOOGLE_CA_SEC_TAG, TLS_CREDENTIAL_CA_CERTIFICATE, r1_crt, r1_crt_len);
         RAISE_SOCK_ERRNO(res);
         printk("Trying to initialize socket...\n");
         socket->ctx = zsock_socket(family, socktype, proto);
         RAISE_SOCK_ERRNO(socket->ctx);
         printk("Done initializing socket! \n");
         socket->family = family;
         return MP_OBJ_FROM_PTR(socket);
     }

    Produces the following output:
    >>> s = None
    >>> s = socket.socket()
    Trying to initialize socket...
    [00:04:13.332,641] <dbg> net_sock_tls: tls_alloc: (mp_main): Allocated TLS context, 0x20009d58
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    OSError: 23
    >>>
    Which indicates that:
    socket->ctx = zsock_socket(family, socktype, proto);
    fails.
    Adding some debug code in Zephyr's internal library, I found that:
    /opt/nordic/ncs/v3.0.0/zephyr/subsys/net/lib/sockets/sockets_tls.c
    in function "static int ztls_socket(int family, int type, int proto)", the "OSError:23" is generated by the line:
        sock = zsock_socket(family, type, proto);
    	if (sock < 0) {
    		goto release_tls;
    	}
    Again adding some debug code, reveals that "sock" has a value of -1.

    And this is as far as I can go since ztls_socket() is declared in an .h file but I simply cannot find its definition, so I have no idea what makes it fail.
Related