Simulink Ettus USRP SDRu Transmistter/Receiver Blocks
9 views (last 30 days)
Show older comments
Is there any way that I can use the SDRu transmitter and receiver blocks to reference a specified RF port? Currently I am unable to transmit and receive a signal without running two different simulink models at the same time.
1 Comment
Aiden Mitio
on 24 Jan 2020
I haven't been able to transmit or recieve RF signal, can you provide some insight on how you did it?
Answers (2)
Ethem
on 7 Jul 2015
Hi Ruolin,
It is possible to use transmit and receive blocks in the same model, enabling you to transmit and receive at the same time. Can you explain a little more your set up so that we can give you a more detailed answer?
On the other hand, it is not possible to specify RF ports using the USRP Support Package. If the daughterboard has a Tx/Rx and Rx port, then the support package uses Tx/Rx to transmit and Rx to receive.
1 Comment
Seppeli
on 23 Mar 2016
Hi,
if I get Ethem right, I cannot receive via the Tx/Rx ports of my Ettus B210. In GNU I can decide whether I want to receive via Rx or Tx/Rx. Is there the possibility that also the USRP SupportPackage for MATLAB supports this operation in further days?
Best!
John Rodgers
on 27 Jan 2016
Hi Ethem, I'm trying to Transmit and Receive at the same time with one USRP. This is my stream processing loop :
if radioFound
timeCounter=0;
while timeCounter<10
% Transmitter Stream processing
data_tx = step(hwav);% Generate waveform
step(radioTx,data_tx);
% Receiver Stream processing
[data_rx, len_rx] = step(radioRx);
timeCounter=timeCounter+FrameLength/FrontEndSampleRate;
end
end
It seems that it is sequential : when it sends data, it doesn't receive and vice versa. The prolem is that i just receive a part of the waveform i send. Can you please give me some advice ? Thanks in advance. John
1 Comment
Ethem
on 31 May 2016
This code looks like it is serial but in fact it is not. Any system that communicates with hardware uses buffers to store the received or transmitted data. The hardware driver reads and writes to these buffers in parallel (at the same time). The sequential MATLAB code sends and receives data to these buffers. The fact that you receive the data you sent also confirms this.
Why you receive the data you sent is a result of hardware + physics. First of all, there is always some amount of electrical leakage between the transmitter circuit of the radio and the receiver circuit. Also, the receiver antenna will receive signals from your transmitter antenna. You need to algorithmically handle this self-interference.
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!