[USRP2] - BBN 802.11b project - transmitter and receiver issue

Hello everyone,

I was running the examples proposed ( bbn_80211b_tx.py &
bbn_80211b_rx.py ) and I noticed that something was wrong. First of all,
I’ve installed succesfully GNU Radio toolkit and BBN project.
The issue is:
I run bbn_80211b_tx.py (transmitter) with an USRP2 in a computer with
random arguments (f=2.4GHz, …) and at the same time I run
bbn_80211b_rx.py (receiver) with another USRP2 in another computer with
random arguments too. And the result is…


$ ./bbn_80211b_tx.py

gr_fir_ccf: using SSE

Network interface: eth0
USRP2 address: xx:xx:xx:xx:xx:xx (MAC hidden)
Using TX d’board id 0x0060
Tx baseband frequency: 2.4G
Tx DUC frequency: 0
Tx residual frequency: 0
Tx interpolation rate: 4
Samples per data bit: 25


Hello world

Four score …
[11 textlines]
… shall not perish from the earth.

Sending pkt 0
Sending pkt 1
Sending pkt 2
Sending pkt 3
Sending pkt 4
Sending pkt 5
Sending pkt 6
Sending pkt 7
Sending pkt 8
Sending pkt 9



gr_fir_ccf: using SSE
Recieved (short) header!
signal: 0x50
service: 0xCD
length: 0x3ADD
crc: 0x7B3B
Calculated crc: 0xADB7
*** BAD CRC ***

Recieved header!
signal: 0x1B
service: 0x26
length: 0xCB69
crc: 0xD9EA
Calculated crc: 0xE01A
*** BAD CRC ***

Recieved (short) header!
signal: 0x00
service: 0xA5
length: 0x111D
crc: 0xCA9E
Calculated crc: 0xEE55
*** BAD CRC ***

(… and more) still receiving frames when the transmitter isn’t

I’ve been reading the code of the tx and don’t see where I could test
the value of the fields (signal, service, length, crc) have each packet.
Am I running propertly the examples? I don’t have too much experience
with this code.
Why rx calculates always a bad CRC?

Thank you very much for your help,

Run your receiver like this, only, and don’t turn your transmitter on:
./bbn_80211b_rx.py -d 4 --barker -f 2.437G

Do you get any good packets?

On Thu, Dec 17, 2009 at 10:37 AM, Juan Ramon Gutierrez A. <

I tried TX and RX at 2.437G and doesn’t work. I’ve tested on another
802.11 channels but I obtain the same result. Also I’ve tried transmit
at 2 Mbps but it’s worthless (RX still receives a bad header).

I’m using the cgran BBN code (usrp2_version), is the correct one?

I’ll continue testing the code, thank you for your help.

Juan Ramon Gutierrez A. [email protected]

El vie, 18-12-2009 a las 12:54 -0500, George N. escribió:

Browsing the code and testing, I’ve found the way to run propertly BBN
Modifying the method SENDPKT_TO_PHY from the “bbn_80211b_pkt.py” file,
not allowing shor preamble (short_preamble=0), when I transmit “Hello
World” as a payload, receiver can detect propertly the packets.

On one machine, run the TX ./bbn_80211b_tx.py --spb 4 -b -f 2.452G

On other machine, run the RX ./bbn_80211b_rx.py --spb 4 -b -f 2.452G -v

Result (RX side):

adc frequency = 100000000
decimation frequency = 4
input_rate = 25000000
gain = 46.0
desired freq = 2452000000.0
baseband frequency 2451999855.04
dxc frequency -144.958496094

gr_fir_ccf: using SSE
Recieved header!
signal: 0x0A
service: 0x04
length: 0x0170
crc: 0xA25C
Calculated crc: 0xA25C
Packet Length: 46 bytes.
64 0 0 0 255 255 255 255 255 255 0 28 191 144 4 221 255 255 255 255 255
255 144 69 0 0 1 8 2 4 11 22 12 18 24 36 50 4 48 72 96 108 51 37 242
PKT: len=42, rssi=-96, src=00:1c:bf:90:04:DD, time=3991936, rate=1 Mbps
Payload: @����������������E$20H`l


I just want to post the solution I’ve found.

Juan Ramon Gutierrez A. [email protected]