Hi all,
A few months ago, I created an application for nRF7002dk on nRF Connect SDK v2.3.0 that connected to a provided Wi-Fi network and then created four TCP and UDP sockets using the Posix API.
Now I am trying to migrate the project to nRF Connect SDK v2.4.2 and I have found that the Posix API I used to create the sockets and the WPA supplicant support I used to connect to the WiFi network are no longer compatible, so I cannot create the sockets successfully. How can I modify my application to get both features?
I tried to build the project using this prj.conf file, skipping the Posix API setting, but I was unable to create the sockets.
CONFIG_WIFI=y CONFIG_WIFI_NRF700X=y # WPA supplicant CONFIG_WPA_SUPP=y # Below configs need to be modified based on security # CONFIG_STA_KEY_MGMT_NONE=y CONFIG_STA_KEY_MGMT_WPA2=y # CONFIG_STA_KEY_MGMT_WPA2_256=y # CONFIG_STA_KEY_MGMT_WPA3=y CONFIG_STA_SAMPLE_SSID="" CONFIG_STA_SAMPLE_PASSWORD="" CONFIG_NET_CONFIG_PEER_IPV4_ADDR="" # System settings CONFIG_NEWLIB_LIBC=y CONFIG_NEWLIB_LIBC_NANO=n CONFIG_THREAD_NAME=y # Networking CONFIG_NETWORKING=y CONFIG_NET_SOCKETS=y CONFIG_NET_SOCKETS_POSIX_NAMES=y CONFIG_NET_LOG=y CONFIG_NET_IPV4=y CONFIG_NET_UDP=y CONFIG_NET_TCP=y CONFIG_NET_DHCPV4=y CONFIG_NET_PKT_RX_COUNT=16 CONFIG_NET_PKT_TX_COUNT=16 # 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_RX_COUNT=16 CONFIG_NET_BUF_TX_COUNT=16 CONFIG_NET_BUF_DATA_SIZE=128 CONFIG_HEAP_MEM_POOL_SIZE=200000 CONFIG_NET_TC_TX_COUNT=0 CONFIG_NET_IF_UNICAST_IPV4_ADDR_COUNT=1 CONFIG_NET_MAX_CONTEXTS=10 CONFIG_NET_CONTEXT_SYNC_RECV=y CONFIG_INIT_STACKS=y CONFIG_NET_L2_ETHERNET=y CONFIG_NET_CONFIG_SETTINGS=y CONFIG_NET_SOCKETS_POLL_MAX=4 # Memories CONFIG_MAIN_STACK_SIZE=4096 CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048 CONFIG_NET_TX_STACK_SIZE=4096 CONFIG_NET_RX_STACK_SIZE=4096 # Debugging CONFIG_STACK_SENTINEL=y CONFIG_DEBUG_COREDUMP=y CONFIG_DEBUG_COREDUMP_BACKEND_LOGGING=y CONFIG_DEBUG_COREDUMP_MEMORY_DUMP_MIN=y CONFIG_SHELL_CMDS_RESIZE=n # Kernel options CONFIG_ENTROPY_GENERATOR=y CONFIG_TEST_RANDOM_GENERATOR=y # Logging CONFIG_LOG=y CONFIG_LOG_BUFFER_SIZE=2048 CONFIG_POSIX_CLOCK=y CONFIG_PM=y CONFIG_NET_CONFIG_MY_IPV4_ADDR="192.168.1.99" 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_DEBUG=y
Best,
Candela