Hi, all:)
I’ve read through the code of GMSK2 and I found the difference of tune
in
transmit_path and receive_path.
In the transmit_path:
self.u.tune(self.subdev._which, self.subdev, target_freq)
In the receive_path:
self.u.tune(0, self.subdev, target_freq)
The self.subdev._which indicate the channel of TX/RX, 0 for A, 1 for B.
(Am
I right?)
So I am confused about why the first parameter of tune depends on
channel
selection in transmit_path while it’s set to 0 in receive_path?
I am using 2 USRP with a FLEX2400 on B channel of both, so subdev._which
is
actually 1. I change the 0 in recieve_path to subdev._which, and I
cannot
recieve the signal anymore. So 0 must be set when using usrp as source.
BUT, why? Can you explain in detail about the first parameter of tune()
to
me?
This code is only 3 weeks old, so I’m ASSsuming it’s good
FYI, I think he’s talking about the receive_path and transmit_path code.
The self.subdev._which indicate the channel of TX/RX, 0 for A, 1 for B.
(Am
I right?)
No, you’re not right. They transmit and receive set ups are different
because of the location of the muxes and DDC/DUC are in different
places in the two cases. The code above is correct for the single
channel case, regardless of which slot or daughterboard you are using.
So I am confused about why the first parameter of tune depends on channel
selection in transmit_path while it’s set to 0 in receive_path?
Don’t worry, be happy. As long as you are using a single channel,
the code above works perfectly.
The detailed answer requires a diagram of the full transmit and
receive paths. Somebody was working on this a while ago, and I’m
pretty sure what they came up with was right, or pretty close.
Don’t recall where it’s stashed.
[There’s work taking place in the background to get the wiki turned
back on. Should be in place by sometime next week.]
Sorry for the delay in getting back to you on this. I’m currently
vacationing, and have intermittent connectivity.
Thanks. Eric. And you’ve had a good vocation, haven’t you?
The GMSK2 code works well and the way of tuning at transmit_path and
receive_path is OK.
For single channel,
In the transmit_path:
self.u.tune(self.subdev._which, self.subdev, target_freq)
In the receive_path:
self.u.tune(0, self.subdev, target_freq)
is all right.
How about double channel, for example, a 2 x 2 MIMO. I guess 2 Flex 2400
are
need on transmitter (2 TX/RX) and 1 for receiver (RX2 and TX/RX as RX).
How
about the tunning?