WARP Project Forums - Wireless Open-Access Research Platform

You are not logged in.

#1 2010-Sep-27 14:24:39

rmoraw
Member
Registered: 2009-Nov-26
Posts: 18

Is RTSCTSMAC supported in OFDM_ReferenceDesign_FPGAv2_public_v15 ?

Is RTSCTSMAC application example still supported in OFDM_ReferenceDesign_FPGAv2_public_v15.0?

I noticed that top rtsctsmac.c file needs "ofdm_pktdetector_mimo_regMacros.h", which I cannot find in WARP_repository. 
Any suggestions where to find this file or how to run this rtscts example with OFDM_ReferenceDesign_FPGAv2_public_v15.0 ?

Thank you.

Last edited by rmoraw (2010-Sep-27 14:25:36)

Offline

 

#2 2010-Sep-28 10:20:45

murphpo
Administrator
From: Mango Communications
Registered: 2006-Jul-03
Posts: 5159

Re: Is RTSCTSMAC supported in OFDM_ReferenceDesign_FPGAv2_public_v15 ?

We haven't kept RTSCTSMAC up to date in the last few reference designs. All of the primitives it requires are still there (multiple timers, multiple packet buffers for RTS/CTS/DATA/ACK packets, etc.). But parts of the WARPMAC API have changed since RTSCTSMAC was written, so it won't compile as-is. It would probably be easiest to start with the latest csmaMac.c and, using rtsctsMac.c as a guide, add NAV + RTS/CTS support.

Offline

 

#3 2010-Sep-28 12:00:06

rmoraw
Member
Registered: 2009-Nov-26
Posts: 18

Re: Is RTSCTSMAC supported in OFDM_ReferenceDesign_FPGAv2_public_v15 ?

Besides the out-dated RTSCTSMAC design, are there any other multi-nodes communication example designs available?

Does current csmaMac.c or noMac.c support more than 2 WARP nodes communications? 
For example, can any node transmit, and all the other nodes receive? 

Besides, the issue of multiple ACK which would have to be solved in csmaMac.c design, and optional address filtering at the receiving nodes (both csmaMac and noMac designs), are there any other potential issues we should look at, before we dig into rtsctsMac.c?

Offline

 

#4 2010-Sep-28 20:13:00

murphpo
Administrator
From: Mango Communications
Registered: 2006-Jul-03
Posts: 5159

Re: Is RTSCTSMAC supported in OFDM_ReferenceDesign_FPGAv2_public_v15 ?

Does current csmaMac.c or noMac.c support more than 2 WARP nodes communications?

Definitely, but in slightly different ways.

noMac acts as a pure wired-wireless bridge. There are no (valid) addresses in transmitted wireless packets, and no address checking for received ones. Every packet received on one interface (wired/wireless) is re-transmitted on the other. It's like an Ethernet hub (not switch), where every node receives every packet. noMac should work as-is with multiple nodes; the PCs connected to each will act as though they're all connected to an Ethernet hub.

csmaMac implements addressing and address filtering, necessary for ACK'ing received packets. In the reference code, the "routing" table is hard-coded for nodes 0 and 1, with every packet addressed to the other node. This is implemented in dataFromNetworkLayer_callback() with "destNode = (myID+1)%2;". You will need to extend this code to use multiple nodes with csmaMac.c. You'll probably need to read values from received Ethernet frames to figure out which wireless MAC destination address to use. In the past, we've used the last byte of the destination IP address (always in the same byte for Ethernet-encapsulated IP frames) as a proxy for destination node. One example of this is the halfmac_server.c code from our workshops.

Offline

 

Board footer