-
Notifications
You must be signed in to change notification settings - Fork 671
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can a RFNOC Replay block perform record and play simultaneously? #793
Comments
Replay_trx_simultaneously.zip (1) Store the transmitted data in DRAM: (2) Recording and playing simultaneously (3) Transfer to the computer: |
I thought a more concise way.
That is
|
@tomwts yeah, that's possible. Just pre-load all the relevant commands to the replay block. |
Hi cjhonlyone, thank you for your response. I definitely will try it on my X310. Once the record() API is called, will it record the input samples until the buffer is full or it will continue to record by overwriting the record buffer? The USRP manual doesn't mention the behavior of record() API when the entire buffer is full. I wonder if there is a way to configure the record() API to continuously writing or overwriting data to the record buffer. Thanks, |
When the record() API is called, there are no samples to record. You must issue time command to tell radio to generate stream to Replay module, and you can specify the number of samples. There is still a problem with the above code. This is the main code for recording and playing simultaneously.
|
Hi cjhonlyone, I have some questions on your updated source. Both stream_cmd_radio and stream_cmd_replay were instantiated with STREAM_MODE_NUM_SAMPS_AND_DONE. For my case, I want the record and replay continuous. Such setting may not applicable to me. Another question is about the start time. There is a slight delay (0.01) specified. Would stream_cmd_radio buffer the received samples between now and 0.01sec to the future and starts the record session when the target time arrived, or it would miss recording the samples between now and 0.01sec to the future? I had read from other posting about the time_spec setting. Someone claimed the received samples would be buffered before the start time arrived. I wonder if it is truly the case or not. If it is true, then I don't really need a Replay block to perform the samples delay. I would just set the start time to = (now + delay time) and let the streamer to perform the buffering, but personally I am skeptical about such claim. What I really want is to simulate a RF path delay using a Replay block, but if the DDC's start time is set to (now + delay time desired) and DDC would buffer the received samples until the start time arrives, that would be awesome! Do you know if that is indeed the case? Thanks, |
As far as I know, the received samples will not be buffered until the start time has arrived. |
Issue Description
I am working on a RFNOC application that buffers or delays the samples received from a Rx radio block for a fixed short interval and then retransmits the samples on a Tx radio block. It seems the prebuilt RFNOC Replay block may be able to do the job, but I am not sure whether the RFNOC replay block is capable of performing record and play at the same time.
Does anyone have had any success running a RFNOC Replay block to stream non-repeating data continuously?
The text was updated successfully, but these errors were encountered: