a) I would like to know the easiest way (of low complexity) to capture
a certain length/number of samples (or time period), preferably in
gnuradio, and then automagically turn off the uhd-reception (and save
received samples to disk) ?!
b) Are there any other (kernel, uhd, gnuradio) buffers and settings
than “net.core.wmem_max” and “net.core.rmem_max” (set with “sysctl”
command in Linux) which affect transmit and receive buffering for
Background: I am capturing bursts of samples at very high sampling rate
(like 25 MSPS @ 16 bit I&Q, or 50 MSPS @ 8 bit I&Q) and save them to
disk for further offline processing. But for now I have to manually
cancel the application (CTRL-C) after a few seconds to avoid overflow
since writing to a normal HDD does not keep up for saving in continuos
real time (which anyway quickly creates too large files). Also, I have
tried to maximize receive (and transmit) buffering (through mentioned
buffers) in order to capture (and buffer) as long sequences as possible
in RAM before saving them to disk and get the inevitable overflows
(resulting in loss of received samples). However, to avoid overflow
without manual interception I would like to capture just as much as the
RAM-buffers can hold (or less) and then automatically turn off the
reception so that the burst of samples can be saved to disk without any
overflows and loss of samples. Feels like it should be an easy way to
accomplish this but how ?! FYI: Hardware is USRP N210.
Any help appreciated!