Soft Wifi

Cgordini 14:41, October 22, 2010 (UTC)802.11 and Sora
Sora uses C programming, as before stated, to transmit I/Q array samples out of the Sora RCB, into a WARP or USRP RF frontend.

These I/Q samples have to be created first, and coded with information pertaining to IEEE 802.11.

Microsoft, as of Friday, May 28th, released source code for 802.11b Soft-Wifi, which includes 802.11b based structures such as CCK, BPSK, and QPSK modulation (each with their own header, found in the \bb\11b\ subdirectory of a SoftWifi sample code install (found at http://research.microsoft.com/en-us/downloads/fe7833ba-afaf-4d3c-b966-ac211a387d2b/default.aspx).

It should be noted that this directory structure means "baseband - 802.11b"; radio frequency and signal concepts often intertwine with C programming due to Sora's design.

It should also be noted that none of this code is compiled upon install; this all requires compilation from either the Sora compiler included in this kit, or the WDK compiler; both the Sora SDK and the WDK are required to install and use this sample code.

This sample code comes with four specific subdirectories:

/bb/ -- Baseband code

/driver/ -- Code for an 802.11b Microsoft Windows XP driver; in combination with Sora's RCB and a RF frontend makes for a working NIC.

/inc/ -- include statements (various headers) for use with all code neccesary. Notable inclusions are sdr_mac.h, sdr_ll.h and sdr_phy.h, all based on the OSI Model.

/util/ -- Code neccesary for the 802.11b utility to function.

I have begun to document all this code, and as of 06/02/10 finished up documenting the driver section, sans the executable. Contact me for a copy of this documentation.

As mentioned on the Sora Wiki main page, our team has finished an implementation based on this SoftWifi 11b code, that includes RTS/CTS and a backoff timer. It can be found at:

http://cid-0c55f9bb8697aa22.office.live.com/self.aspx/.Documents/802.11b%20RTS%20CTS%20Installer.exe