Mode of Transmission and Reception using Adalm Pluto SDR devices

96 visualizzazioni (ultimi 30 giorni)
My current setup is two SDR (software defined radio) Adalm Pluto devices connected to a Windows Host computer with Matlab. I have the proper toolboxes installed and I am able to connect successfully vis USB and configure the SDRs. Considering this exhaustive example: WLAN Pluto example, as starting point, I have seen that, basically, i can transmit and receive using the following SDR functions in the following order:
> transmitRepeat( some_data ); // documentation
> [ some_data ] = capture( some_data); // documentation
Now I have some questions:
Is there any other alternative to a continous transmission? Is it possible to first start the Rx(), then Tx() a given waveform and finally collecting the Rx data (and releasing the objects)?
Is there a way to sync Tx and Rx Plutos? since they are both connected to the same Host pc.
In order to have a communication in both directions (time-division TDD), the roles of Rx and Tx must be exchanged between the two Plutos. For example one time-slot from Pluto Tx -> Rx and another slot the other way back. Is it possible?
Can you explain a bit more in details what is the impact of choosing bigger/smaller "sdr.SamplesPerFrame" in TX and RX?
Thank you for the support, you are great!
Marco

Risposta accettata

Pratyush
Pratyush il 6 Feb 2024
Hi Marco,
  • Continuous Transmission Alternative: Instead of using `transmitRepeat` for continuous transmission, you can use the `transmit` function to send a waveform once. This allows you to start the receiver, transmit the waveform, and then collect the received data in sequence.
  • Synchronization of Tx and Rx Plutos: Synchronizing two Pluto SDRs can be done using external triggers or by programming them to start simultaneously. There's no direct clock synchronization feature between two Pluto devices.
  • Time-Division Duplex (TDD): Implementing TDD with two Pluto SDRs is feasible by manually managing time slots for transmitting and receiving. You need to switch the roles of the devices according to these time slots.
  • Impact of "sdr.SamplesPerFrame": The "SamplesPerFrame" setting affects latency, throughput, buffering, CPU load, and real-time processing capabilities. Smaller frames may reduce latency but increase CPU load, whereas larger frames can increase throughput but also latency and memory usage. This setting should be tuned based on the specific needs of your application.

Più risposte (0)

Tag

Prodotti


Release

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by