WiFi Transmission

This tutorial explains how to set up unidirectional communication from the SDR to a normal WiFi card.

WiFi Card Setup

On the PC, put the card in monitor mode. In this mode, it will pick-up any frames without having to associate with a WiFi network. The easiest way to see if frames are received correctly is to use a tool for network monitoring like tcpdump, tshark, or Wireshark.

SDR Setup

On the SDR, we use the wifi_tx.grc flow graph from the example directory. With the default setup the transmitter will sent periodic messages with a constant payload. In addition, frames can be send by connecting to the UDP server listening on port 52001. This can, for example, be done with netcat:

  nc -u localhost 52001

You can even connect the SDR transceiver to the Linux TCP/IP stack using a Tun/Tap interface. An example can be found in the transceiver.grc flow graph. The necessary configuration is shown in the nic.sh script in the apps folder.

WiFi TX Flow Graph
WiFi TX GUI

Troubleshooting

If it does not work out of the box you can try the following:

  • Increase or decrease the transmit gain.
  • Use a channel in the 5 GHz band. They are less crowded and don’t use IEEE 802.11b compatibility mode, i.e., will send pure OFDM frames.
  • If you use a N210, change the LO offset to tune the local oscillator out of the band of interest.
  • Assert that there are no underruns, i.e., there are no ‘U’s printed on the console.
  • Check that you connected the antenna to the correct port.