# GRC 3.6 / 802.11 a/g test signal

**URL:** <https://www.ruby-forum.com/t/grc-3-6-802-11-a-g-test-signal/232315>\
**Category:** GNU Radio\
**Created:** [October 2, 2014, 9:13am UTC](https://www.ruby-forum.com/t/grc-3-6-802-11-a-g-test-signal/232315 "2014-10-02T09:13:26Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![addis\_a](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/c4cdca/32.png) [@addis\_a](https://www.ruby-forum.com/u/addis_a)\
**Post date:** [October 2, 2014, 9:13am UTC](https://www.ruby-forum.com/t/grc-3-6-802-11-a-g-test-signal/232315/1 "2014-10-02T09:13:26Z")

</div>

Greetings engi’s!

I’m currently working on my masters (802.11 wlan receiver with  
MATLAB/USRPN210). After creating all the important stuff ie:

-symbol finder  
-time synchronization  
-coarse and fine frequency compensation  
-symbol demodulator  
-deinterleaver  
-Viterbi decoder  
-descrambler etc.  
-MAC layer decoding

i’m looking for any tested 802.11 a/g IQ signal for further research  
becouse live samples captured by USRP seem to have incorrect result’s  
(wrong frame type MAC field, random MAC adress, CRC, parity bits etc).

And here comes my 1st question.

Is there any place where i can get some real, tested IQ wlan signal i  
a/g standard and full description (rate, coded data, adresses, included  
MAC fields)? Tried with Agilent Signal Studio but files are saved in  
.wfm encrypted format ☹

I also found GRC beacon frames transmitter, written in GRC

[http://rrsg.ee.uct.ac.za/members/jwamicha/gr-wlan.tar.gz](http://rrsg.ee.uct.ac.za/members/jwamicha/gr-wlan.tar.gz)

but due to having GRC 3.7 (where ‘gnuradio-core’ was repleaced with  
‘gnurdaio-runtime’) i can’t simply compile this file becouse of an  
error:

* * *

checking for GNURADIO\_CORE… configure: error: Package requirements  
(gnuradio-core \>= 3) were not met:

No package ‘gnuradio-core’ found

Consider adjusting the PKG\_CONFIG\_PATH environment variable if you  
installed software in a non-standard prefix.

Alternatively, you may set the environment variables  
GNURADIO\_CORE\_CFLAGS  
and GNURADIO\_CORE\_LIBS to avoid the need to call pkg-config.

* * *

It seems that those binaries arent compatible with my GRC version ☹

Any helpful guy to install this library and send me IQ signal of this  
beacon frame? (in any MATLAB readable format - simple file sink in GRC).

Looking forward for any reply.

Thanks

---

<div class="post-metadata">

**Author:** ![ernest\_s](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/779978/32.png) [@ernest\_s](https://www.ruby-forum.com/u/ernest_s)\
**Post date:** [October 6, 2014, 3:06am UTC](https://www.ruby-forum.com/t/grc-3-6-802-11-a-g-test-signal/232315/2 "2014-10-06T03:06:21Z")

</div>

Please, stay on the list.

On 04 Oct 2014, at 18:20, Ernest S. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> Hi,
> 
> we are talking about ‘frame.bin’ signal right?

yes

> More\_data: ‘No’  
> Protected: ‘No’  
> Order: ‘Random’
> 
> and the initial state was 0b0101011. Furthermore, i cant see those “1”, which  
> will indicate the broadcast adress thou:( So i think it is not working correctly  
> yet.

If you are still not convinced, you can very easily send the frame with  
a USRP and receive it with a WiFi card to inspect the MAC header with  
Wireshark. You can either use a simple GNU Radio flow graph (file source  
 → USRP sink) or use the tx\_samples\_from\_file example that ships with  
UHD. At least my card agreed with my interpretation of the payload 🙂

Best,  
Bastian

---

<div class="post-metadata">

**Author:** ![ernest\_s](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/779978/32.png) [@ernest\_s](https://www.ruby-forum.com/u/ernest_s)\
**Post date:** [October 5, 2014, 1:03pm UTC](https://www.ruby-forum.com/t/grc-3-6-802-11-a-g-test-signal/232315/3 "2014-10-05T13:03:45Z")

</div>

Hi,

On 04 Oct 2014, at 15:50, Ernest S. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> - rest of the data is modulated with BPSK 6Mbps
> - coderate is 1/2
> - 1 bit per carrier
> - 364 octets of data (is that correct?)
> - reserved field, parity bit and tail bits seems to be fine.
> 
> Further MAC decoding says that:
> 
> - descrambler initial state is [0 1 0 1 0 1 1] (correct?)
> - 16 zeros in SERVICE field (7 for desrcambler synchro and 9 reserved - seems to  
> be correct)
> - according to standard this is a PNC Selection (PNCS) frame type with retry ([0  
> 0 0 1] in frame type field) is that correct?

my decoder says:

# new mac frame (length 360)

duration: 00 00  
frame control: 00 08 (DATA)  
Subtype: Data  
seq nr: 0  
mac 1: ff:ff:ff:ff:ff:ff  
mac 2: 23:23:23:23:23:23  
mac 3: ff:ff:ff:ff:ff:ff  
Hello World!Hello World!Hello World!Hello World!Hello World!Hello  
World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello  
World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello  
World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello  
World!Hello World!Hello World!Hello World!Hello World!

It does not contain a LLC, just a MAC header. It is BPSK 1/2 encoded. I  
guess the initial scrambler state was 0b0101010 (=42) and it is a data  
frame.

Best,  
Bastian
