Using Wi-Fi with io-pkt

Updated: April 19, 2023

When you're connecting to a wireless network in the QNX Neutrino RTOS, you must first start the stack io-pkt-* process, then mount the appropriate Wi-Fi driver for the installed hardware.

The following command is an example of starting the io-pkt-v6-hc stack variant on an i.MX6x board:
io-pkt-v6-hc -dmx6x -S -ptcpip stacksize=8192,mclbytes=4096
This command uses options for the following purposes: The full list of io-pkt options can be viewed with the use io-pkt-v6-hc command, or use io-pkt-v4-hc if you're running that stack variant.
For information on the available Wi-Fi drivers, see the devnp-* entries in the Utilities Reference. For this example, we'll mount the fictitious devnp-abc100.so driver. After a default installation, all driver binaries are installed under the staging directory /cpu/lib/dll:
mount -vvv -Tio-pkt -v -o nvram=/etc/firmware/nvram.txt,fw=/etc/firmware/firmware.bin,\
 qwdi_key_delay=0,qwdi_clm_path=/etc/firmware/default.clm,qwdi_dbg_level=3 /lib/dll \
 devnp-abc100.so
The full list of mount options can be viewed with the use mount command.

You can use the wpa_supplicant and wpa_cli utilities (described later in this document) to scan, determine network availability, set up authentication, join a network, or set up an access point.

Whether you're a client in infrastructure mode, or you're using ad hoc mode, the steps to implement encryption are the same. You need to make sure that you're using the authentication method and encryption key that have been chosen for the network. If you wish to connect with your peers using an ad hoc wireless network, all peers must be using the same authentication method and encryption key. If you're a client connecting to a WAP, you must use the same authentication method and encryption key as have been configured on the WAP.