WIFI throughput using zperf

Hi,

I'm trying to evaluate WIFI throughput on nrf7002f-dk with zperf.

I've created a new project based on wifi_shell sample project.

And added zperf to proj.conf.

I'm testing the throughput between Linux desktop acting as a Hotspot and nrf7002-dk.

I'm measuring only around 6.5 Mbps on Wifi 5.

Here is my proj.con:

#
# Copyright (c) 2022 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#
CONFIG_WIFI=y
CONFIG_WIFI_NRF700X=y

# WPA supplicant
CONFIG_WPA_SUPP=y
CONFIG_NET_L2_WIFI_SHELL=n

# System settings
CONFIG_NEWLIB_LIBC=y
CONFIG_NEWLIB_LIBC_NANO=n
CONFIG_HEAP_MEM_POOL_SIZE=153600

# Networking
CONFIG_NETWORKING=y
CONFIG_NET_SOCKETS=y
CONFIG_POSIX_API=y
CONFIG_NET_LOG=n
CONFIG_NET_IPV6=n
CONFIG_NET_IPV4=y
CONFIG_NET_UDP=y
CONFIG_NET_TCP=y
CONFIG_NET_DHCPV4=y
CONFIG_DNS_RESOLVER=n

CONFIG_NET_STATISTICS=n
CONFIG_NET_STATISTICS_WIFI=n
CONFIG_NET_STATISTICS_USER_API=n

CONFIG_NET_PKT_RX_COUNT=16
CONFIG_NET_PKT_TX_COUNT=10

CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=4096

# 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=8
CONFIG_NET_BUF_DATA_SIZE=4096
CONFIG_NET_TC_TX_COUNT=1

CONFIG_NET_MAX_CONTEXTS=5
CONFIG_NET_CONTEXT_SYNC_RECV=y
CONFIG_NET_ZPERF=y

CONFIG_INIT_STACKS=y

CONFIG_NET_L2_ETHERNET=y
CONFIG_NET_SHELL=y

# Memories
CONFIG_MAIN_STACK_SIZE=4096
CONFIG_SHELL_STACK_SIZE=4096
CONFIG_NET_TX_STACK_SIZE=4096
CONFIG_NET_RX_STACK_SIZE=4096

# Debugging
CONFIG_STACK_SENTINEL=n
CONFIG_DEBUG_COREDUMP=n
CONFIG_DEBUG_COREDUMP_BACKEND_LOGGING=n
CONFIG_DEBUG_COREDUMP_MEMORY_DUMP_MIN=n
CONFIG_SHELL_CMDS_RESIZE=n
CONFIG_DEBUG=n
CONFIG_WPA_SUPP_LOG_LEVEL_INF=n

# Kernel options
CONFIG_ENTROPY_GENERATOR=y

# Logging
CONFIG_LOG=n
CONFIG_PRINTK=n
CONFIG_SHELL=n
CONFIG_SHELL_GETOPT=n
CONFIG_DEVICE_SHELL=n
CONFIG_POSIX_CLOCK=y
CONFIG_DATE_SHELL=n
CONFIG_NET_CONFIG_AUTO_INIT=n

CONFIG_WIFI_MGMT_EXT=y
CONFIG_WIFI_CREDENTIALS=y
CONFIG_WIFI_CREDENTIALS_BACKEND_SETTINGS=y
CONFIG_FLASH=y
CONFIG_FLASH_PAGE_LAYOUT=y
CONFIG_FLASH_MAP=y
CONFIG_NVS=y
CONFIG_SETTINGS=y
CONFIG_SETTINGS_NVS=y
CONFIG_NET_CONFIG_SETTINGS=y

Parents Reply
  • Hi, 

    You could use NCS v2.3.0 shell sample with zperf github.com/.../overlay-zperf.conf, and run "iperf" client on PC to test throughput. To test zperf, it requires iPerf 2.0.5 installed on the host machine. Here is our test:

    uart:~$ zperf tcp upload 192.168.32.101 5001 10 1k 1m
    Remote port is 5001
    Invalid IPv6 address 192.168.32.101
    Connecting to 192.168.32.101
    Duration:    10.00 s
    Packet size:   1024 bytes
    Rate:         1024 kbps
    Starting...
    -
    Upload completed!
    Duration:     10.00 s
    Num packets:   15472
    Num errors:   0 (retry or fail)
    Rate:    12.08 Mbps
    uart:~$ wifi status
    Status: successful
    ==================
    State: COMPLETED
    Interface Mode: STATION
    Link Mode: WIFI 6 (802.11ax/HE)
    SSID: OpenWrt 
    BSSID: FC:34:97:0B:F6:DC
    Band: 5GHz
    Channel: 36
    Security: WPA2-PSK
    MFP: Optional
    RSSI: -52
    uart:~$

    -Amanda H.

Children
No Data
Related