MCS Table and How To Use it

by | Sep 1, 2020 | Blog

Today in our training video, we’re going to talk about one of my favorite things, the MCS table, and how you can use it.

The MCS table is one of the things that I not only love to teach, but to use because it helps me evaluate the quality of the RF environment.

Also, here is the link to François’ MCS table mentioned in the video.

MCS Table And How To Use It.mp4 transcript powered by Sonix—easily convert your audio to text with Sonix.

MCS Table And How To Use It.mp4 was automatically transcribed by Sonix with the latest audio-to-text algorithms. This transcript may contain errors. Sonix is the best audio automated transcription service in 2020. Our automated transcription algorithms works with many of the popular audio file formats.

Today in our training video, we're going to talk about

one of my favorite things, the MCS table

and how you can use it.

MCS table, it's one of the things that I love just to teach

but to use because it helps me evaluate

the quality of the RF environment

the RF media that our devices are working in

is reflected in every single transmission.

So every client device, whether it be in an... sorry

every transmitter device, whether it be an AP or a client

anything that's going to transmit on the RF medium

is going to make an internal decision

of which MCS am I going to use?

Now, MCS is a grouping of a wide variety of different things

from modulation, coding scheme, guard interval,

channel width, they're all tied together in this

now as we went from 802.11a and g with OFDM

and then moved to the 802.11n

we said, "Oh, we have some new features we can do"

instead of just, you know

6, 12, 18, 24, 36, 48, 54 meg data rates.

We now have more data rates to choose from.

Great. But how do we categorize those?

So MCS is a way to organize those

Today as we're moving into 802.11ax

The MCS is getting phenomenally huge.

Let's take a look.

Here's the 802.11ax MCS chart from SemFio

that's Francois's company,

Francois's one of our ECSE instructors

and he put together this great MCS table for 802.11ax

including the OFDM, but also all the various options

in OFDMA for resource units, size

And this is just a subset.

It's huge.

So instead of teaching off this big monster one

I'm going to go back to the one we've

been using for a while to teach 802.11n and ac

this is the... for this part, it's just the same.

I just took out the the more complex ax part

just to be able to teach the same concept.

As you move to ax, you'll have more complexity.

So let's look at this here

and let's zoom in and see across the top

we have HT 802.11n the first that used MCS

and then to the right of that it says VHT

and that's 802.11ac

And these are the MCS numbers

you note they'll also work a little different.

In n HT they counted up 0 - 7, 8 - 15,

and they kept counting up

and if you looked at the full table, it goes out to 77

there was over 77 rows

of different combinations put together.

When ac came out, they went,

Yeah, we can't do that anymore.

This is going to be 100s and 100s of rows too complex.

How about if we switch it up and just go

MCS 0-9 one spatial string.

Then repeat. Two spatial streams 0-9

three spatial streams 0-9

And so they change the mechanism to do that.

So in 802.11n 9 MCS is different than 802.11ac 9 MCS.

On the other hand, if you see an MCS that's bigger than 8

then you know you're going to be back over in the sorry

bigger than 9, we can still go to 9, sorry, little mistake there.

Now, you also have a column for Modulation Scheme

from BPSK to QPSK to 16-QAM, 64-QAM

and now up to 256-QAM

As we go to ax, we're going to add a new 1024-QAM as well

We'll do another whole video on how the

modulation schemes are more or less efficient in

delivering information

For the Coding, Coding is saying, for old fashioned people

who have been around modems a long time

This is kind of the the parody bit

that we're going to be sending to say

if I send two bits and only one has to be delivered

So I have 100% spare. That's Coding 1/2.

I send two I get to keep one.

This is Forward Error Correction (FEC)

and there's ways, mathematical algorithms

that make this work

and we can go from 1/2, which is very robust

but not very efficient.

You have to send twice as much as you wanted to receive.

Up to 5/6 Coding in 5/6 Coding we send six, but keep five.

So we have a very small amount of robustness

or or this is more brittle.

And so it's one of the ways we can send data faster

is by minimizing the coding scheme.

On the other hand, we lose robustness in the process.

Then the next column over for 20MHz wide channels

we have the Data Rate is going at either

a guard interval of 800 or guard interval of 400.

This is based on, Are you indoor or outdoor?

How far are you're going to go?

400 was the guard interval that we picked up

when we went to 802.11n

It's a little faster, a little better, faster throughput

because our chips were quicker.

And then we have a column for Minimum SNR.

Now, this is a generic, this is not specific for any one client.

There's a generic SNR.

To get the data rate

you need at least this much SNR

and RSSI column is,

"To get this you need at least this amount of RSSI"

Now these two are our generic columns.

The data came from Revolution Wi-Fi's

great Wi-Fi Capacity Planner.

And he did the research to come up with these values here.

So that's what's on the MCS Chart

Let's go through and see how we can play with this.

If we come over and look and zoom in

and let's say my client is a 80MHz wide capable client

It supports ac

And so when it's going to call and make its request to the AP

and say, "Hello, Mr AP, I'd like to join you. I can do..."

And it reports back what it can do.

I can do 80MHz channels. I can do short guard or long guard

I can do MCS 9s, because I'm in AC I can count to nine

I support 256-QAM, 5/6 Coding, anything in here.

And so inside the box from the 6.5

in the upper left-hand corner

all the way down to 866 I can support 'em.

Now, the AP may support more, it can go to 1.3 gig

but you can't so you negotiate in that association process.

And now the AP keeps in its table, next to your information

your client device can do these things

and it needs to remember what it can do

because if it sends the wrong one, it's definitely going to fail.

As a client device, you have it pretty easy.

You only have to remember one.

You remember the AP

and then you stay within this little box.

So I have a box from 6.5 All the way over to 866.

And someplace in that box

the AP can support it and the client can support it.

So the client finishes associating

and it now wants to send a DHCP request.

So that's the first thing it needs to do to get on the network.

It packages up the DHCP request

sends it down to the radio chipset and the radio says

OK, how should I modulate, and code

and choose channel, and choose guard interval?

How am I going to make the radio

actual bits going out over the radio?

How do I want to do that?

Well, it already knows what's possible.

It could do 866

Now if we look at 866 we can come over and say

866 is short guard interval, 80MHz wide channel.

We come over and look on this side

and that means I'm MCS 9 using a modulation

of 256-QAM. That's a very brittle, it's not very robust

way of modulating bits

What we're going to be doing

is we're putting 8 bits on every RF symbol

that we're going to send

and we're using a 5/6 Coding

which means we're going to send 6 bits

but only expect to get 5 back

So we have a very slim margin

of extra bits in there for our forward error correction

But if it works, we get really fast 866 throughput

So the client packages it up, sends it off.

With that set of radio modulation features

the bits are put into this kind of a packet, package, sorry

and then the client sends it that way

and then the AP receives it and the AP's radio

is going to do one or two things

actually, there's only one thing

if it can decode it, demodulate it

and make sure there's no error, no CRC error

it will send back an ACK, I received yours and we're good.

And so if that's the case

it's just going to continue to send them that way.

Now, this process works in both directions.

The AP's is going to choose which MCS send

down to the client. The client's going to choose its own.

And so in this mode, and you can think

every transmitter is choosing which MCS to choose

and that's great - if it works.

Now, here's the problem.

What happens if that 866 didn't work?

Now, what am I going to do? the client,

sorry, in this case,

the transmitter, doesn't matter up or down

but the transmitter said

"I thought this worked.

In our association, we had this table

and we're supposed to work.

It didn't. Why?"

Now, it could have been because the 80 MHz wide channel

meant that I had 60b more noise I was listening to

so that means my SNR was too low,

which means that's why it didn't work.

So the answer that might be changed

from a 80 to a 40MHz channel.

What if the problem was

my forward error correction wasn't robust enough?

So the, over here, the 5/6 Coding

should have been 3/4 Coding

Now, there's a cost to that

I would have went from 866 to 780

that would have been the cost on there

but maybe that was the problem

or maybe my 256-QAM modulation was too tight

too brittle, and too complex

and the receiver couldn't demodulate it properly.

So maybe I should slow down there.

So from the transmitter's point of view

I can decide which of these things I want to do.

Do I want to change channel width

guard interval, modulation scheme, or coding scheme?

Any one of those could have been the reason why it failed.

But right off the bat, it doesn't know.

It could have been congestion.

I tried to talk and someone talked on top of me

so probably I'm just going to try it again.

So usually what happens is the transmitter device

will attempt to send it with an MCS 9

fail, transmit, fail, transmit, fail, transmit, fail

no ACK, data, no ACK, data, no ACK

And after 4, or 5, 7, again, this is proprietary

every transmitter manufacturer has a different algorithm

At some point, it will say,

"that did not work. What should I do?"

Now, I know of one device that when it fails at 866

it goes zoom right up here to 6.5

Now, that seems kind of stupid

like, why would I go from the fastest to the slowest

but, it happens to be a voice over IP handset

and what they're thinking is, "hmm, maybe when the

handset first associated and joined in AP

it was on a really good AP

but it's mobile and it wasn't in a call.

So now the human pulling this little phone along

has now moved to a different place.

I'm still associated to the old AP

I had no reason to go to a new one.

I tried to talk.

It failed.

let me see if I should change APs"

So it goes, fail, fail, fail, here.

Drops to 6.5

And what it's saying is

if I package that same DHCP request

and I want it to go at BPSK

the most robust, slow, very strong modulation scheme

one bit per symbol, very strong

punches right through a lot of noise, coding scheme

I'm going to send two of those bits

and only expect one to be back.

So I've got 100% spare.

I'm going to go with a long guard intervals

take that picture, that out of the picture

and this narrowest 20 MHz channel

This is as slow as Wi-Fi can go

If I can't do this, then trigger a roam

Now, some vendors will go up, up, up.

they'll stay in the same column

and they'll keep climbing up as they change

Some vendors will change columns first and then up.

Some vendors go on diagonals.

Some have a little Z pattern.

For your own pattern, take your device

set up a Wireshark capture

be capturing your device and move around

and you can watch these changes happen dynamically

It will be in the capture to find out what's going on.

Now, I don't think

at least I'm not smart enough to have figured out

retroactively, what the entire algorithm was

but I've seen lots of different algorithm choices

going up, down, diagonal, up to the top

stay there for one

Some just go, I'm gonna instead of changing coding

they just slip, 256-QAM, 64-QAM 16-QAM

They only change modulation

Your mileage may vary

but the MCS Table is where you can learn all of this

Now, I'm not smart enough to have this memorized

I carry one around with me for that very reason.

If you'd like to learn more, come to

We have lots of data available for you

Lots of resources, videos, podcasts, blogs

blog roles, Twitter rolls, anything you want to look at

Thanks for being part of the community.

Automatically convert your audio files to text with Sonix. Sonix is the best online, automated transcription service.

Sonix uses cutting-edge artificial intelligence to convert your mp4 files to text.

Rapid advancements in speech-to-text technology has made transcription a whole lot easier. Are you a radio station? Better transcribe your radio shows with Sonix. Sonix has the world's best audio transcription platform with features focused on collaboration. Automated transcription can quickly transcribe your skype calls. All of your remote meetings will be better indexed with a Sonix transcript. Get the most out of your audio content with Sonix. Do you have a podcast? Here's how to automatically transcribe your podcasts with Sonix. Create better transcripts with online automated transcription. Are you a podcaster looking for automated transcription? Sonix can help you better transcribe your podcast episodes.

Sonix uses cutting-edge artificial intelligence to convert your mp4 files to text.

Sonix is the best online audio transcription software in 2020—it's fast, easy, and affordable.

If you are looking for a great way to convert your audio to text, try Sonix today.