wiki:WARPLab/Reference/Interface/X245

X245 Interface Module Module Implementation

The WARPLab Reference Design implements an Interface Group module for controlling the MAX2829-based radio interfaces on WARP v2 and v3. A single X245 Interface Group module can support up to 4 radio interfaces. Essentially, this module wraps the radio_controller peripheral and driver.

Related Components:

X245 Interface Commands

Interface commands are selected as string inputs to the wl_interfaceCmd method in wl_node.m. These strings are each individual cases of the switch statement in procCmd method of wl_interface_group_X245.m.

Syntax

MATLAB allows two valid forms of syntax for calling methods

  • Let N be a scalar or vector of wl_node objects
  • Let command_string be a string containing a particular command
  • Let interface_selection be a collection of interfaces or the string 'RF_ALL'
  • Let arg be an argument for that command (optional)

Syntax 1: wl_interfaceCmd(N, interface_selection, command_string, arg1, arg2, ..., argN)

Syntax 2: N.wl_interfaceCmd(interface_selection, command_string, arg1, arg2, ..., argN)

These two different forms of syntax are identical and either may be used for issuing commands to WARP nodes.

Command List and Documentation

tx_en

Enable transmit mode for selected interfaces

Arguments: none

Returns: none

rx_en

Enable receive mode for selected interfaces

Arguments: none

Returns: none

tx_rx_dis

Disable transmit and receive for selected interfaces (standby mode)

Arguments: none

Returns: none

read_tx_rx_state

Read the current state of the interface

Requires BUFF_SEL: Yes

Arguments: none

Returns: Current state of the buffer: TX, RX or STANDBY

channel

Tune selected interfaces to the specified band and channel

Arguments: (float BAND, int CHAN) BAND: Must be 2.4 or 5, to select 2.4GHz or 5GHz channels
CHAN: Must be integer in [1,14] for BAND=2.4, [1,44] for BAND=5

Returns: none

BAND and CHAN must be scalars (same values for all specified interfaces) or
1-D vectors (one value per interface) with length equal to the length of the interface ID vector

Band/Channel - Center Frequency Map:

2.4GHz 5GHz
Chan Freq Chan Freq
1 2412 1 5180
2 2417 2 5190
3 2422 3 5200
4 2427 4 5220
5 2432 5 5230
6 2437 6 5240
7 2442 7 5260
8 2447 8 5270
9 2452 9 5280
10 2457 10 5300
11 2462 11 5310
12 2467 12 5320
13 2472 13 5500
14 2484 14 5510
15 5520
16 5540
17 5550
18 5560
19 5580
20 5590
21 5600
22 5620
23 5630
24 5640
25 5660
26 5670
27 5680
28 5700
29 5710
30 5720
31 5745
32 5755
33 5765
34 5785
35 5795
36 5805
37 5825
38 5860
39 5870
40 5875
41 5880
42 5885
43 5890
44 5865

tx_gains

Sets the gains for the variable gain amplifiers in the MAX2829 Tx path
Refer to MAX2829 datasheet for curves of gain value vs actual gain at 2.4 and 5GHz

Arguments: (int BB_GAIN, int RF_GAIN) BB_GAIN: Must be integer in [0,1,2,3] for approx ![-5, -3, -1.5, 0]dB baseband gain
RF_GAIN: Must be integer in [0:63] for approx [0:31]dB RF gain

Returns: none

BB_GAIN and RF_GAIN must be scalars (same values for all specified interfaces) or
1-D vectors (one value per interface) with length equal to the length of the interface ID vector

NOTE: The parameters are in the order in which they are applied to the signal (ie baseband gain, then RF gain)

rx_gains

Sets the gains for the variable gain amplifiers in the MAX2829 Rx path
Refer to MAX2829 datasheet for curves of gain value vs actual gain at 2.4 and 5GHz

Arguments: (int RF_GAIN, int BB_GAIN) RF_GAIN: Must be integer in [1,2,3] for approx [0,15,30]dB RF gain
BB_GAIN: Must be integer in [0:31] for approx [0:63]dB baseband gain

Returns: none

BB_GAIN and RF_GAIN must be scalars (same values for all specified interfaces) or
1-D vectors (one value per interface) with length equal to the length of the interface ID vector

NOTE: The parameters are in the order in which they are applied to the signal (ie RF gain, then baseband gain)

tx_lpf_corn_freq

Sets the corner frequency for the MAX2829 Tx path low pass filter
Refer to MAX2829 datasheet for curves of the frequency response with each setting

Arguments: (int FILT) FILT: Must be integer in [1,2,3] for approx [12,18,24]MHz corner frequencies ([24,36,48]MHz bandwidths)

Returns: none

FILT must be scalar (same value for all specified interfaces) or 1-D vector (one value per interface)
with length equal to the length of the interface ID vector

rx_lpf_corn_freq_fine

Sets the fine corner frequency for the MAX2829 Rx path low pass filter
Refer to MAX2829 datasheet for curves of the frequency response with each setting

Arguments: (int FILT) FILT: Must be integer in [0,1,2,3,4,5] for
[90,95,100,105,110]% scaling to LPF corner frequency

Returns: none

FILT must be scalar (same value for all specified interfaces) or 1-D vector (one value per interface)
with length equal to the length of the interface ID vector

rx_lpf_corn_freq

Sets the corner frequency for the MAX2829 Rx path low pass filter
Refer to MAX2829 datasheet for curves of the frequency response with each setting

Arguments: (int FILT) FILT: Must be integer in [0,1,2,3] for approx ![7.5,9.5,14,18]MHz corner
frequencies ([15,19,28,36]MHz bandwidths)

Returns: none

FILT must be scalar (same value for all specified interfaces) or 1-D vector (one value per interface)
with length equal to the length of the interface ID vector

rx_hpf_corn_freq

Sets the corner frequency for the MAX2829 Rx path high pass filter when RXHP = 'disable' (ie 0)

Arguments: (int MODE) MODE: Must be 0 (HPF corner of 100 Hz) or 1 (default; HPF corner of 30 kHz)

Returns: none

MODE must be scalar (same value for all specified interfaces) or 1-D vector (one value per interface)
with length equal to the length of the interface ID vector

The MAX2829 default setting is 1 (30 kHz corner frequency). This is the better setting for most
applications. The lower cutoff frequency (100 Hz) should only be used when the Rx waveform has
energy in the 60 kHz around DC.

This filter setting is only used when RXHP is 'disable' (ie 0).

rx_gain_mode

Sets the gain selection mode

Arguments: (string MODE) MODE: 'automatic' for AGC, or 'manual' for manual gain control

Returns: none

rx_rxhp

Sets the RXHP mode on the node when in manual gain control

Arguments: (boolean MODE) MODE: true enables RXHP on the node when in manual gain control
false disables RXHP on the node when in manual gain control

Returns: none

Last modified 3 years ago Last modified on Aug 29, 2016, 3:49:04 PM