
# CONFIG_MICROPY_HEAP_SIZE=98304
CONFIG_MAIN_STACK_SIZE=5200
CONFIG_SHELL_STACK_SIZE=5200
CONFIG_NET_MGMT_EVENT_STACK_SIZE=4600

CONFIG_MICROPY_HEAP_SIZE=32768
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=3072
# CONFIG_HEAP_MEM_POOL_SIZE=32768

# CONFIG_DYNAMIC_THREAD=y
CONFIG_THREAD_CUSTOM_DATA=y
CONFIG_THREAD_MONITOR=y
CONFIG_THREAD_STACK_INFO=y
CONFIG_THREAD_NAME=y

CONFIG_TEST_RANDOM_GENERATOR=y
CONFIG_MICROPY_CONFIGFILE="mpconfigport_full.h"

# Enable Bootloader
# CONFIG_BOOTLOADER_MCUBOOT=y
# CONFIG_IMG_MANAGER=y
# CONFIG_STREAM_FLASH=y
# CONFIG_DFU_TARGET_MCUBOOT=y
# CONFIG_IMG_ERASE_PROGRESSIVELY=y

# Enable SMP Server
# CONFIG_MCUMGR=y
# CONFIG_MCUMGR_GRP_IMG=y

# # CONFIG_MCUMGR_GRP_IMG dependencies
# CONFIG_FLASH=y
# CONFIG_IMG_MANAGER=y

# # CONFIG_IMG_MANAGER dependencies
# # CONFIG_STREAM_FLASH=y

# # CONFIG_MCUMGR dependencies
# CONFIG_NET_BUF=y
# CONFIG_ZCBOR=y

# Required for CONFIG_IMG_MANAGER
# CONFIG_FLASH_MAP=y


CONFIG_NEWLIB_LIBC=y

# # LoRaWAN config
# CONFIG_LORA_SX126X=y
CONFIG_SPI=y

# CONFIG_LORA=y

# Random number generator required for several LoRaWAN services
CONFIG_ENTROPY_GENERATOR=y

# # LoRaWAN application layer
# CONFIG_LORAWAN=y
# CONFIG_LORAMAC_REGION_EU868=y
# CONFIG_LORAWAN_NVM_SETTINGS=y

# # LoRaWAN services required for FUOTA
# CONFIG_LORAWAN_SERVICES=y
# CONFIG_LORAWAN_APP_CLOCK_SYNC=y
#CONFIG_LORAWAN_REMOTE_MULTICAST=y
#CONFIG_LORAWAN_FRAG_TRANSPORT=y

# Flash driver to store firmware image
# CONFIG_FLASH=y
# # CONFIG_FLASH_MAP=y
# # CONFIG_FLASH_PAGE_LAYOUT=y
# CONFIG_STREAM_FLASH=y


CONFIG_ARM_TRUSTZONE_M=y
CONFIG_BUILD_WITH_TFM=y

CONFIG_TFM_PROFILE_TYPE_MINIMAL=y
# CONFIG_TFM_PROFILE_TYPE_NOT_SET=y

CONFIG_WIFI_NM_WPA_SUPPLICANT=y
CONFIG_NRF70_AP_MODE=n
CONFIG_NRF70_P2P_MODE=n
CONFIG_NET_PKT_TX_COUNT=8
CONFIG_NET_PKT_RX_COUNT=8
CONFIG_NET_BUF_TX_COUNT=8
CONFIG_NET_BUF_RX_COUNT=8
CONFIG_NRF70_RX_NUM_BUFS=6
CONFIG_NET_BUF_DATA_SIZE=500
# CONFIG_HEAP_MEM_POOL_SIZE=230000
CONFIG_HEAP_MEM_POOL_SIZE=65536
CONFIG_SPEED_OPTIMIZATIONS=y
CONFIG_NRF70_QSPI_LOW_POWER=n
CONFIG_NRF70_UTIL=n
CONFIG_NRF70_MAX_TX_AGGREGATION=1
CONFIG_NRF70_MAX_TX_TOKENS=5

# # Enable MCUmgr and dependencies.
# CONFIG_NET_BUF=y
# CONFIG_ZCBOR=y
# CONFIG_CRC=y
# CONFIG_MCUMGR=y
# CONFIG_STREAM_FLASH=y
# CONFIG_FLASH_MAP=y

# Some command handlers require a large stack.
# CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=4096

# Ensure an MCUboot-compatible binary is generated.
# CONFIG_BOOTLOADER_MCUBOOT=y

# Enable flash operations.
# CONFIG_FLASH=y

# Required by the `taskstat` command.
# CONFIG_THREAD_MONITOR=y

# # Support for taskstat command
# CONFIG_MCUMGR_GRP_OS_TASKSTAT=y

# # Enable statistics and statistic names.
# CONFIG_STATS=y
# CONFIG_STATS_NAMES=y

# # Enable most core commands.
# CONFIG_FLASH=y
# CONFIG_IMG_MANAGER=y
# CONFIG_MCUMGR_GRP_IMG=y
# CONFIG_MCUMGR_GRP_OS=y
# CONFIG_MCUMGR_GRP_STAT=y

# # Disable debug logging
# CONFIG_LOG_MAX_LEVEL=3

CONFIG_WATCHDOG=y
CONFIG_WDT_DISABLE_AT_BOOT=y

CONFIG_COUNTER=y

CONFIG_ENTROPY_GENERATOR=y


CONFIG_PWM=y


# WPA supplicant
CONFIG_WIFI_NM_WPA_SUPPLICANT=y
CONFIG_WIFI_READY_LIB=y
CONFIG_NRF_WIFI_RPU_RECOVERY=y

# Networking
CONFIG_NETWORKING=y
CONFIG_WIFI=y
CONFIG_WIFI_NRF70=y
CONFIG_NET_SOCKETS=y
CONFIG_NET_IPV4=y
CONFIG_NET_TCP=y
CONFIG_NET_UDP=y
CONFIG_NET_DHCPV4=y
CONFIG_NET_DHCPV4_SERVER=y
CONFIG_NET_IF_MAX_IPV4_COUNT=2
# CONFIG_NET_IF_MAX_IPV6_COUNT=2
CONFIG_NET_CONNECTION_MANAGER=y

# ~~~~~~~~~~~~~~~~~~~~~~~~~
# CONFIG_WIFI_MGMT_EXT=y

# # Memories
CONFIG_MAIN_STACK_SIZE=12288
# CONFIG_MAIN_STACK_SIZE=5200
CONFIG_NET_TX_STACK_SIZE=2048
CONFIG_NET_RX_STACK_SIZE=2048
CONFIG_STA_SAMPLE_START_WIFI_THREAD_STACK_SIZE=5200
# # ~~~~~~~~~~~~~~~~~~~~~~~~~

CONFIG_NET_PKT_TX_COUNT=6
CONFIG_NET_PKT_RX_COUNT=6
CONFIG_NRF70_RX_NUM_BUFS=6

# Below section is the primary contributor to SRAM and is currently
# tuned for performance, but this will be revisited in the future.
CONFIG_NET_BUF_TX_COUNT=12
CONFIG_NET_BUF_RX_COUNT=6
# CONFIG_HEAP_MEM_POOL_SIZE=37000
CONFIG_HEAP_MEM_POOL_IGNORE_MIN=y   
CONFIG_NET_TC_TX_COUNT=1

CONFIG_NET_IF_UNICAST_IPV4_ADDR_COUNT=1
CONFIG_NET_MAX_CONTEXTS=5
CONFIG_NET_CONTEXT_SYNC_RECV=y


CONFIG_NET_L2_ETHERNET=y

CONFIG_NET_CONFIG_SETTINGS=y
CONFIG_NET_CONFIG_INIT_TIMEOUT=0

CONFIG_NET_SOCKETS_POLL_MAX=20
CONFIG_ZVFS_OPEN_MAX=20

# Memories
CONFIG_NET_TX_STACK_SIZE=4096
CONFIG_NET_RX_STACK_SIZE=4096

CONFIG_SHELL_CMDS_RESIZE=n

# Kernel options
CONFIG_ENTROPY_GENERATOR=y

# CONFIG_SERIAL=y
# CONFIG_UART_CONSOLE=y
# CONFIG_LOG=y
# CONFIG_LOG_PRINTK=y
# CONFIG_SHELL=y               # Enable shell if using Zephyr's shell
# CONFIG_TFM_LOG_LEVEL=DBG  # Enable TF-M debug logs

# Logging
# CONFIG_MCUBOOT_UTIL_LOG_LEVEL_WRN=y
# CONFIG_LOG_BUFFER_SIZE=2048
# CONFIG_NET_CORE_LOG_LEVEL_INF=y
# CONFIG_NET_MGMT_LOG_LEVEL_INF=y
# CONFIG_NET_MGMT_EVENT_LOG_LEVEL_DBG=y
# CONFIG_WIFI_NM_WPA_SUPPLICANT_LOG_LEVEL_DBG=y
CONFIG_POSIX_CLOCK=y


# # Global override for the log level of all modules (!warning!: will flood the CLI so much it will eventually lead to a USAGE FAULT / Stack overflow)
# CONFIG_LOG_OVERRIDE_LEVEL=4

CONFIG_NET_CONFIG_MY_IPV4_ADDR="192.168.1.1"
CONFIG_NET_CONFIG_MY_IPV4_NETMASK="255.255.255.0"
CONFIG_NET_CONFIG_MY_IPV4_GW="192.168.1.1"

# printing of scan results puts pressure on queues in new locking
# design in net_mgmt. So, use a higher timeout for a crowded
# environment.
CONFIG_NET_MGMT_EVENT_QUEUE_TIMEOUT=5000

# CONFIG_WIFI_CREDENTIALS=y
# CONFIG_WIFI_CREDENTIALS_STATIC=y
# CONFIG_WIFI_CREDENTIALS_STATIC_SSID="RT"
# CONFIG_WIFI_CREDENTIALS_STATIC_PASSWORD="WelcomeToTheFuture"

CONFIG_NET_MGMT_EVENT=y
CONFIG_NET_L2_WIFI_MGMT=y

# CONFIG_NRF70_AP_MODE=n
CONFIG_SIZE_OPTIMIZATIONS=y
CONFIG_NO_OPTIMIZATIONS=n
CONFIG_LOG=n
CONFIG_ASSERT=n

# CONFIG_MBEDTLS=y
# CONFIG_NET_SOCKETS_SOCKOPT_TLS=y
# if using offloaded TLS (e.g. on nRF91, nRF70)
# CONFIG_NET_SOCKETS_OFFLOAD=y
# CONFIG_TLS_CREDENTIALS=y
# CONFIG_MBEDTLS_ECDH_C=y
# CONFIG_MBEDTLS_ECDSA_C=y
CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED=n
CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED=n

# CONFIG_MBEDTLS_BUILTIN=y
CONFIG_MBEDTLS_TLS_LIBRARY=y
# CONFIG_NORDIC_SECURITY_BACKEND=y
# CONFIG_MBEDTLS_DHM_C=y
CONFIG_MBEDTLS_SSL_CONTEXT_SERIALIZATION=n

# # Networking core
# CONFIG_NET_SOCKETS=y

# Optional: to avoid conflicting offloading
CONFIG_NET_SOCKETS_OFFLOAD=n

# Required for socket.pkt_get_info()
# CONFIG_NET_BUF_POOL_USAGE=y

#------------

# Enable Nordic security backend
CONFIG_NRF_SECURITY=y
CONFIG_PSA_WANT_GENERATE_RANDOM=y
# CONFIG_MBEDTLS_ENABLE_HEAP=y
# CONFIG_MBEDTLS_HEAP_SIZE=32768
# CONFIG_MBEDTLS_HEAP_SIZE=16384
# CONFIG_MBEDTLS_HEAP_SIZE=81920

# BrianW solution (Note: it's from SDK version v2.8.0!!!)
#------------
# CONFIG_NET_NATIVE=n
CONFIG_MBEDTLS_LIBRARY_NRF_SECURITY=y
# TLS configuration - don't want everything in mbedtls as far too big
#CONFIG_CUSTOM_MBEDTLS_CFG_FILE=y
#CONFIG_MBEDTLS_CFG_FILE="config-mini-tls1_2.h"
CONFIG_MBEDTLS=y
CONFIG_MBEDTLS_DTLS=n
CONFIG_MBEDTLS_TLS_VERSION_1_2=y

CONFIG_MBEDTLS_RSA_C=y
CONFIG_MBEDTLS_ECP_C=n
#CONFIG_MBEDTLS_ECDH_C=n    this breaks kconfig
#CONFIG_MBEDTLS_ECDSA_C=n   this fixes kconfig, but breaks compile of hostap

# PSA WANT request does nothing as PSA is not actually enabled?
CONFIG_PSA_WANT_RSA_KEY_SIZE_4096=y
CONFIG_PSA_WANT_RSA_KEY_SIZE_2048=y

CONFIG_MBEDTLS_HAVE_TIME_DATE=n
CONFIG_MBEDTLS_SSL_SERVER_NAME_INDICATION=y

CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=16384
CONFIG_MBEDTLS_MPI_MAX_SIZE=512
CONFIG_NET_SOCKETS_TLS_SET_MAX_FRAGMENT_LENGTH=n
CONFIG_MBEDTLS_SSL_RENEGOTIATION=y
CONFIG_NET_SOCKETS_TLS_MAX_CONTEXTS=3

CONFIG_PSA_WANT_ECC_SECP_R1_256=y
CONFIG_PSA_WANT_ECC_MONTGOMERY_255=y
# use TLS in socket directly
CONFIG_NET_SOCKETS_SOCKOPT_TLS=y
CONFIG_NET_SOCKETS_ENABLE_DTLS=n
CONFIG_TLS_CREDENTIALS=y
CONFIG_TLS_MAX_CREDENTIALS_NUMBER=4
CONFIG_NET_SOCKETS_TLS_MAX_CREDENTIALS=4
CONFIG_NET_SOCKETS_CONNECT_TIMEOUT=30000
#----

CONFIG_POSIX_API=y
CONFIG_POSIX_CLOCK=y
# CONFIG_POSIX_CLOCK_MONOTONIC=y
# CONFIG_POSIX_CLOCK_REALTIME=y

# From Nordic forums (my ticket)
#----
CONFIG_MBEDTLS_SSL_SERVER_NAME_INDICATION=y
CONFIG_MBEDTLS_SSL_RENEGOTIATION=y
CONFIG_MBEDTLS_SSL_MAX_FRAGMENT_LENGTH=y
CONFIG_MBEDTLS_SSL_SESSION_TICKETS=y
CONFIG_PSA_WANT_RSA_KEY_SIZE_4096=y
CONFIG_MBEDTLS_MPI_MAX_SIZE=512

CONFIG_LOG=y
CONFIG_MBEDTLS_DEBUG=y
CONFIG_MBEDTLS_SSL_DEBUG_ALL=y
CONFIG_MBEDTLS_LOG_LEVEL_DBG=y
CONFIG_MBEDTLS_DEBUG_C=y
CONFIG_MBEDTLS_DEBUG_LEVEL=4
# Handle the large influx of prints
CONFIG_LOG_BUFFER_SIZE=16384
CONFIG_LOG_BACKEND_UART=y
#----

# https_client sample board config
#----
# # General
# CONFIG_POSIX_CLOCK=y
# CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=4096
# CONFIG_NRF_WIFI_CTRL_HEAP_SIZE=20000
# CONFIG_NRF_WIFI_DATA_HEAP_SIZE=40000
# CONFIG_NET_RX_STACK_SIZE=2048
# CONFIG_MAIN_STACK_SIZE=6144

# # Optimize Wi-Fi stack to save some memory
# CONFIG_NRF70_RX_NUM_BUFS=16
# CONFIG_NRF70_MAX_TX_AGGREGATION=4

# # Wi-Fi
# CONFIG_WIFI=y
# CONFIG_WIFI_NRF70=y
# CONFIG_WIFI_NRF70_LOG_LEVEL_ERR=y
# CONFIG_WIFI_CREDENTIALS=y

# # Shell
# CONFIG_SHELL=y
# CONFIG_SHELL_STACK_SIZE=6144
# CONFIG_NET_L2_WIFI_SHELL=y

# # WPA supplicant
# CONFIG_WIFI_NM_WPA_SUPPLICANT=y
# CONFIG_WIFI_NM_WPA_SUPPLICANT_LOG_LEVEL_ERR=y

# # Zephyr NET Connection Manager connectivity layer
# CONFIG_L2_WIFI_CONNECTIVITY=y
# CONFIG_L2_WIFI_CONNECTIVITY_AUTO_DOWN=n
# CONFIG_L2_WIFI_CONNECTIVITY_AUTO_CONNECT=n

# # DNS
# CONFIG_DNS_RESOLVER=y
# CONFIG_NET_SOCKETS_DNS_TIMEOUT=30000

# # NET sockets
CONFIG_NET_NATIVE=y
# CONFIG_NET_L2_ETHERNET=y
# CONFIG_NET_TCP=y
# CONFIG_NET_UDP=y
# CONFIG_NET_SOCKETS_OFFLOAD=n
# CONFIG_NET_DHCPV4=y
CONFIG_NET_CONTEXT_SNDTIMEO=y

# # TLS networking
CONFIG_NET_SOCKETS_ENABLE_DTLS=n
CONFIG_NET_SOCKETS_TLS_MAX_CONTEXTS=2
CONFIG_NET_SOCKETS_SOCKOPT_TLS=y

# # TLS credentials
# CONFIG_TLS_CREDENTIALS_BACKEND_PROTECTED_STORAGE=y

# # mbedTLS
# CONFIG_NRF_SECURITY=y
# CONFIG_MBEDTLS=y
# CONFIG_MBEDTLS_ENABLE_HEAP=y
# CONFIG_MBEDTLS_HEAP_SIZE=81920
# CONFIG_MBEDTLS_ECP_DP_SECP384R1_ENABLED=y
# CONFIG_MBEDTLS_TLS_LIBRARY=y
# CONFIG_MBEDTLS_SSL_SERVER_NAME_INDICATION=y

# # Optimize T-FM
# CONFIG_TFM_PROFILE_TYPE_SMALL=y
# CONFIG_PM_PARTITION_SIZE_TFM_SRAM=0xc000
# CONFIG_PM_PARTITION_SIZE_TFM=0x20000
#----

#----
# CONFIG_TRUSTED_STORAGE=y
# CONFIG_PSA_PROTECTED_STORAGE=y

#------------
# # Lowers ROM footprint by ~ 50Kb!!!
CONFIG_ISR_TABLES_LOCAL_DECLARATION=y
CONFIG_LTO=y

CONFIG_NET_MAX_CONN=16
CONFIG_MBEDTLS_MPI_MAX_SIZE=512
#------------

# CONFIG_MBEDTLS_SHA1_C=n
CONFIG_MBEDTLS_SSL_PROTO_TLS1_2=y
# CONFIG_MBEDTLS_SSL_PROTO_TLS1_3=y
# CONFIG_PSA_WANT_ALG_SHA_1=n
# CONFIG_MBEDTLS_ECDSA_C=n
#---
# CONFIG_MBEDTLS_KEY_EXCHANGE_RSA_ENABLED=n
# CONFIG_MBEDTLS_CIPHER_AES_ENABLED=n
# CONFIG_PSA_WANT_KEY_TYPE_AES=n
# CONFIG_PSA_WANT_ALG_CBC_NO_PADDING=n

# CONFIG_MBEDTLS_TLS_VERSION_1_3=y
# CONFIG_PSA_WANT_ALG_HKDF_EXTRACT=y
# CONFIG_PSA_WANT_ALG_HKDF_EXPAND=y

# CONFIG_PSA_WANT_ALG_GCM=y
# CONFIG_PSA_WANT_KEY_TYPE_AES=y
# CONFIG_PSA_WANT_ALG_CBC_NO_PADDING=y
# CONFIG_PSA_WANT_ALG_SHA_256=y
# CONFIG_MBEDTLS_PSA_CRYPTO_C=y
# CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE=y
#---

# # Use Nordic's mbedTLS configuration
# CONFIG_MBEDTLS_CFG_FILE="nrf-config.h"
# CONFIG_MBEDTLS_USER_CONFIG_FILE="nrf_mbedtls_config.h"
# CONFIG_MBEDTLS_USE_PSA_CRYPTO=y
# CONFIG_MBEDTLS_PSA_CRYPTO_C=y
# CONFIG_MBEDTLS_SSL_PROTO_TLS1_2=y

# # 128KB
# CONFIG_HEAP_MEM_POOL_SIZE=131072

# CONFIG_MBEDTLS_TLS_LIBRARY=y
# CONFIG_MBEDTLS_X509_LIBRARY=y
# CONFIG_MBEDTLS_CIPHER_MODE_CBC=y
# CONFIG_MBEDTLS_CIPHER_MODE_CTR=y
# CONFIG_MBEDTLS_CIPHER_PADDING_PKCS7=y
# CONFIG_MBEDTLS_SSL_CLI_C=y
# CONFIG_MBEDTLS_SSL_SRV_C=y
# CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE=y
# CONFIG_MBEDTLS_SSL_SESSION_TICKETS=y
# CONFIG_MBEDTLS_CIPHER_CCM_ENABLED=y

# # Use Nordic's security backend with default config
# CONFIG_NRF_SECURITY=y
# CONFIG_PSA_WANT_GENERATE_RANDOM=y
# CONFIG_MBEDTLS_HEAP_SIZE=32768

# Enable TLS credentials system
CONFIG_TLS_CREDENTIALS=y
# Adjust as needed
CONFIG_TLS_MAX_CREDENTIALS_NUMBER=4
# Disable if not using filenames
CONFIG_TLS_CREDENTIAL_FILENAMES=n

CONFIG_LOG=y
CONFIG_NET_LOG=y
CONFIG_DNS_RESOLVER_LOG_LEVEL_DBG=y
# CONFIG_NET_MGMT_EVENT_LOG_LEVEL_DBG=y

# Use Google DNS manually
CONFIG_DNS_RESOLVER=y
CONFIG_DNS_SERVER1="8.8.8.8"
CONFIG_NET_HOSTNAME_ENABLE=y
# Secondary Google DNS
CONFIG_DNS_SERVER2="8.8.4.4"
CONFIG_DNS_RESOLVER_ADDITIONAL_BUF_CTR=2
CONFIG_DNS_RESOLVER_ADDITIONAL_QUERIES=2
CONFIG_DNS_RESOLVER_MAX_SERVERS=2

# Ensure static networking is enabled
CONFIG_NET_CONFIG_NEED_IPV4=y
CONFIG_NET_DHCPV4=y
CONFIG_DNS_RESOLVER_AUTO_INIT=y


### =============================================
### These need to be DISABLED since the port to Nordic SDK v3.0.0 the build won't work with them enabled:
# Mbedtls configuration
# CONFIG_MBEDTLS_HEAP_SIZE=8192

# # Use Nordic mbedTLS config
# CONFIG_MBEDTLS=y
# CONFIG_MBEDTLS_PSA_CRYPTO_C=y
# CONFIG_MBEDTLS_CFG_FILE="nrf-config.h"
# CONFIG_MBEDTLS_USER_CONFIG_FILE="nrf_mbedtls_config.h"
# CONFIG_MBEDTLS_ENABLE_HEAP=y
# CONFIG_MBEDTLS_USE_PSA_CRYPTO=y
# CONFIG_MBEDTLS_LEGACY_CRYPTO_C=y
# #CONFIG_NORDIC_SECURITY_BACKEND=y
# #CONFIG_MBEDTLS_TLS_LIBRARY=y
# CONFIG_MBEDTLS_RSA_C=y
### =============================================

### =============================================
### Since v3.0.0, the WiFi has it's own stack and heap and it wants a MINIMUM of 150Kb of the RAM for it to work reliably.
### Given that; these need to be DISABLED for WiFi to work:
# CONFIG_BT=y
# CONFIG_BT_DEVICE_NAME_DYNAMIC=y
# CONFIG_BT_GATT_DYNAMIC_DB=y
# CONFIG_BT_PERIPHERAL=y
# CONFIG_BT_CENTRAL=y
# CONFIG_BT_GATT_CLIENT=y
# CONFIG_BT_L2CAP_TX_MTU=252
# CONFIG_BT_BUF_ACL_RX_SIZE=256

# # Enable BLE transfer
# CONFIG_BT=y
# CONFIG_BT_PERIPHERAL=y

# CONFIG_NEWLIB_LIBC_FLOAT_PRINTF=y
# CONFIG_CBPRINTF_FP_SUPPORT=y

# CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y
# CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU_SPEEDUP=y

# CONFIG_NFC_T2T_NRFXLIB=y

# CONFIG_NFC_NDEF=y
# CONFIG_NFC_NDEF_MSG=y
# CONFIG_NFC_NDEF_RECORD=y
# CONFIG_NFC_NDEF_LE_OOB_REC=y
# CONFIG_NFC_NDEF_CH_MSG=y
# CONFIG_NFC_NDEF_TEXT_RECORD=y

# CONFIG_NFC_NDEF_TNEP_RECORD=y
# CONFIG_NFC_TNEP_TAG=y
# CONFIG_NFC_NDEF_PARSER=y
# CONFIG_NFC_NDEF_CH_PARSER=y
# CONFIG_NFC_NDEF_LE_OOB_REC_PARSER=y
# CONFIG_NFC_TNEP_CH=y

# Enable nordic security backend and PSA APIs
# CONFIG_NRF_SECURITY=y

# CONFIG_PSA_WANT_GENERATE_RANDOM=y

# Using hardware crypto accelerator
# CONFIG_PSA_CRYPTO_DRIVER_OBERON=n
# CONFIG_PSA_CRYPTO_DRIVER_CC3XX=y
# CONFIG_PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY=y
# CONFIG_PSA_WANT_RSA_KEY_SIZE_2048=y

# CONFIG_INIT_STACKS=y

# # Debugging
# CONFIG_STACK_SENTINEL=y
# CONFIG_DEBUG_COREDUMP=y
# CONFIG_DEBUG_COREDUMP_BACKEND_LOGGING=y
# CONFIG_DEBUG_COREDUMP_MEMORY_DUMP_MIN=y
### =============================================

### =============================================
### These need to be DISABLED for AP mode to work:
CONFIG_LOG=y
# # Makes logs immediate (can cause race conditions!)
CONFIG_LOG_MODE_IMMEDIATE=y
CONFIG_LOG_DEFAULT_LEVEL=3
CONFIG_NET_SOCKETS_LOG_LEVEL_DBG=y
CONFIG_MBEDTLS_LOG_LEVEL_DBG=y
CONFIG_TLS_CREDENTIALS_LOG_LEVEL_DBG=y
CONFIG_DATE_TIME=y
# CONFIG_NET_LOG=y
# CONFIG_WIFI_LOG_LEVEL_INF=y
# CONFIG_NET_L2_WIFI_MGMT_LOG_LEVEL_DBG=y
# CONFIG_LOG_BUFFER_SIZE=16384

### =============================================

### =============================================
### These need to be ENABLED for AP mode to work:

# CONFIG_NRF70_AP_MODE=y
# CONFIG_WIFI_NM_WPA_SUPPLICANT_AP=y
### =============================================