Wi-Fi Management

Overview

The Wi-Fi management API is used to manage Wi-Fi networks. It supports below modes:

  • IEEE802.11 Station (STA)

  • IEEE802.11 Access Point (AP)

Only personal mode security is supported with below types:

  • Open

  • WPA2-PSK

  • WPA3-PSK-256

  • WPA3-SAE

The Wi-Fi management API is implemented in the wifi_mgmt module as a part of the networking L2 stack. Currently, two types of Wi-Fi drivers are supported:

  • Networking or socket offloaded drivers

  • Native L2 Ethernet drivers

Wi-Fi Enterprise test: X.509 Certificate header generation

Wi-Fi enterprise security requires use of X.509 certificates, test certificates in PEM format are committed to the repo at samples/net/wifi/test_certs and the during the build process the certificates are converted to a C header file that is included by the Wi-Fi shell module.

$ cp client.pem samples/net/wifi/test_certs/
$ cp client-key.pem samples/net/wifi/test_certs/
$ cp ca.pem samples/net/wifi/test_certs/
$ west build -p -b <board> samples/net/wifi

To initiate Wi-Fi connection, the following command can be used:

uart:~$ wifi connect -s <SSID> -k 5 -a anon -K whatever

Server certificate is also provided in the same directory for testing purposes. Any AAA server can be used for testing purposes, for example, FreeRADIUS or hostapd.

Important

The passphrase for the client-key.pem` and the server-key.pem is whatever.

Note

The certificates are for testing purposes only and should not be used in production. They are generated using FreeRADIUS raddb scripts.

API Reference

Wi-Fi Management