WARP Project Forums - Wireless Open-Access Research Platform

You are not logged in.

#1 2008-Jul-10 04:37:06

anttikoi
Member
Registered: 2007-Dec-17
Posts: 14

Switching antenna output port

We have a radio card that is not working so well (tested on different FPGA boards) and we would like to test the card's other antenna port.
Basically switching from ANT #1 to using ANT #2 port.

The configuration is SISO (only one radio card on each of the boards).

So how this is done in: 

1) Hardware: The radio card switches need to be changed and / or something else ?

2) Software: Some commands need to changed / added ?


Thanks for any advice.

Offline

 

#2 2008-Jul-14 21:55:27

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

Re: Switching antenna output port

You can alter the antenna switch in software. It's worth reading the relevant page of the radio board user's guide to understand the two valid antenna switch configurations.

The radio controller has a register with 1-bit per radio that selects the antenna switch state. This bit is toggled with each Tx -> Rx and Rx -> Tx transition. You can switch this behavior by changing code in radio_controller_basic.c. Instead of asserting RAD_ANTSW_MASK on Tx and de-assert on Rx, swap these to change the default antenna port.

Offline

 

#3 2008-Sep-05 11:46:23

dpfeil
Member
Registered: 2008-Feb-02
Posts: 47

Re: Switching antenna output port

I have attempted to adjust this so that we use one port for transmitting and the other port for receiving (in order to use an external uni-directional power amplifier on the transmitter).  I have adjusted the radio_controller_basic.c, in the function void WarpRadio_v1_RxEnable(unsigned int radios) to do this:

RADIO_CONTROLLER_mWriteSlaveReg1((volatile)radio_controller_baseaddr, (RADIO_CONTROLLER_mReadSlaveReg1((volatile)radio_controller_baseaddr) | (radios & RAD_ANTSW_MASK)));

instead of this:

RADIO_CONTROLLER_mWriteSlaveReg1((volatile)radio_controller_baseaddr, (RADIO_CONTROLLER_mReadSlaveReg1((volatile)radio_controller_baseaddr) & ~(radios & RAD_ANTSW_MASK)));

this way it will assert the same antenna mode in receiving and transmitting, which would have the tx and rx go to separate ports.  We updated the bitstream and programmed the devices, but it still seems to be able to ping with a terminator on the supposed rx port.  this shouldnt happen since the ping requires both of the nodes to receive.  Are we doing things correctly or can you suggest a different approach.  Thanks

Offline

 

#4 2008-Sep-07 21:22:06

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

Re: Switching antenna output port

It's possible your changes didn't take effect. XPS doesn't automatically detect changes to driver code (like it does for application code). After changing the driver, you have to clean software (in XPS, Software->Clean Software), then update the bitstream. To be doubly sure, include a xil_printf in the driver call to be sure your version is running.

It's also possible that the switch is just leaking enough power to allow reception via the "disabled" port. I believe its isolation is around 26dB between ports, so a strong receive signal would probably still get through.

Offline

 

Board footer