File Exchange

image thumbnail

802.11b PHY Simulink Model

version (76.6 KB) by

Simulink® model of 802.11b baseband physical layer.

28 Ratings



View License

Simulink® model of 802.11b wireless LAN physical layer (baseband), supporting 1Mbps, 2Mbps, 5.5Mbps, and 11Mbps modes. Model includes framing, long and short preamble, DBPSK and DQPSK modulation, Barker code spreading, Complementary Code Keying (CCK), root raised-cosine pulse shaping, channel number selection (frequency shift) and an AWGN channel.
NOTE: A version of this model which works with the current release of MATLAB® and Simulink is shipped with the Communications Blockset™.

The model makes extensive use of configurable subsystems, swapping in and out required components for chosen parameters. Set system parameters by double-clicking the "System Parameters" block in the top left. Toggle instrumentation (eye-diagram, scatter plot and spectrum scope) by double-clicking the switch. The BER subsystem contains error meters. Instruments slow down the simulation considerably.

Unzip to a new folder, change the MATLAB current directory to this folder, then open the 'WiFi' mdl file.

There is a mistake in the pulse shaping filter:
wlan80211b/Transmitter/Upsample and pulse shape/Pulse Shaping Filter

Go into the mask editor > Initialization of the pulse shaping block, change:


Model Files:
WiFi.mdl - Model file
WiFi_lib.mdl - Library
WiFi_init.m - System initialization code. Configure subsystems and calculate delays. (Run by 'System parameters' mask)
cck_codes.mat - CCK codes data file

Test files (open wifi.mdl, turn off instrumentation and run these):
ber_test.m - Simulation and plot BER for each mode (2 minutes to run of 800MHz machine)
test_level_1.m - Simulate and check many parameter combinations to ensure 0 BER for no-noise case (3 mins on 800MHz machine)

IEEE Std 802.11b-1999, available from:

Comments and Ratings (40)

joey gao

Viviana Leyva

Hello Mr. McGarrity, I am interested in your simulink model, let me tell you, I am a Colombian student of electronic engineering and for my final work of career I was looking for a similar model, but now I have some tecnical problems and I do not know how to correct it, if you could help me please contact me, this is my e- mail: Thank you for your atention, please forgive my poor english.


Anjum (view profile)

I reloaded your model on other version of Matlab and now your model works fine and nicely! Now I will try by myself to get frame delay on network. Thank you!

I wanted to turn it off, because runing model, have 2 errors from instrumentation:
1. File "Switch_Off.jpg" does not exist.
2. Error in 'WiFi/Instrumentation': Initialization commands cannot be evaluated.
So wanted to follow Description and to turn off instrumentation, how it's said there.

Stuart McGarrity

Does the big switch not work for you? I'd also recommend using the version that comes with the product. Try >>commwlan80211b

Please, could You answer, how to turn off instrumentation?!

Thank You for your answer!

wangHF wang

Mr Smart


siddhu (view profile)

hi this is excellent work... can u give me the exact detailed version of the work ...

oybek chan

as him to use 802.11b PHY
  1Mbps, 2Mbps, 5.5Mbps or 11Mbps


this is good, I need this

hamzi chahro

i need a webinar about 802.11 b PHY at 5.5 Mbps model adresse is:

S Woo

Hi all,

Could anyone point out to me that why was the simulation run on negative value of Es/No as default? I kinda thought of some purpose but I would like to see from other people's comment.

Meanwhile does anyone validate the model with spreading gain by adding it into the simulated result BER curve to correspond it to the theoretical DBPSK or DQBPSK curve?

Would be pretty appreciated if anyone can respond to the question.


drif aissa

i need a simulation block diagram for the WiFi transmetter or reciver please

samuel ragheb abd el malek

samuel ragheb abd el malek

rawaa Al-Wani

Wwireless LAN simulation

reza kayvan

huda hussein

needs matlab simulink


Thanks. Great job!
it is very usefull program to understand IEEE 802.11b.

BANUMATHI annamalai sekar


hello sir,
 can please give me a rough idea to implement ieee802.16 for the past 2 months iam working to simulate the wimax system as per the draft released by ieee.

i got struck in FEC Encoder block .

i have matlab 6.1 version is it possible to simulate this system in 6.1 version or i have to go for R14

i am doing my Masters degree in communication at PSG Tech Coimbatore ,India .

Ýlhan Basturk

Thanks great work.If you share us other wlan simulations wewill be happy.

Yuan Zhang

Is there any one who can tell me, what kind of detection the BPSK modulation implements in the 802.11b, coherent or incoherent?


Ayman Alghamdi

Great work...
I was trying to find the effect of packet size on PSDU by making an .m file as the test file (ber_test.m), but error messages still there. If you can help me, please send me an email.

Keven Chang

Great Example. But why don't use Gaussian filter for Modulation filter.Isn't that the standard is use Gaussian filter for modulation filter ??
Waiting for new update. Thankx

Bill Feild


yesssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss as youuuuuuuuuuu


andrew calcagno

very goods

Phil Guillemette

I'm new to simulink and 802.11b so this was a very useful model for me. I think that you did a great job on your subsystem swapping and a few other blocks.

I do have a concern though. When reading through the 802.11b standard, it wouls seem that phi1 is relative to phi1 of the preceding symbol. For the first PSDU symbol, this would be relative to the phi1 of the last symbol of the CRC-16. This aspect does not seem to be built into the model and I'm not sure how it would be while keeping the elegant structure that it currently has.

If I'm mistaken, please let me know.

Al K

chaorong peng

i am using using Matlab version 6, IT is still not shown.

chaorong peng

i use 802.11b , but the modeler is not shown. what is happy ?

Teddy WONG

Unfortunately I couldn¡¦t run it on my computer, I think it is because I am using Matlab version 6, not version 5. i.e. I wonder, it is possible to do some modifications in order to suit for the version 6 Matlab.

Shing Tenqchen

francisco rozas


Updated license




Copyright work.


Trademark work.


Remove title trademark.


Added trademakrs.

Add information on how to correct mistake in filter.

Updated to R14. Still contains R13 version.

Tx and Rx RRC filter roll-off factor change (from 0.7) to more typical 0.3. Fixed bug in mask that ignored roll-off factor parameter.

Added keywords and release version

MATLAB Release
MATLAB 7.0.1 (R14SP1)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

R13 Original Version/