Re: Error in RFNOC blocks in CPP ?? Cannot create! Property already exists at: /blocks/0/DUC#0/noc_id
The source code also warns me time out blocks and after it, the program crashes... when I disabled connect for rx_streamer block, the software has not any error but I can not see outputs... still, I am working on the problem to solve it. *[WARNING] [RFNOC::GRAPH] One or more blocks timed out during flush!* [ERROR] [RFNOC::GRAPH] Caught exception while initializing graph: RuntimeError: Cannot create! Property already exists at: /blocks/0/DUC#0/noc_id terminate called after throwing an instance of 'uhd::runtime_error' what(): RuntimeError: Failure to create rfnoc_graph. On Mon, Jan 24, 2022 at 11:05 AM sp h wrote: > when I want to convert a GRC python code to CPP code I am faced with NOC > graph error? > any idea for solving the problem...? I too attached python code... > > [ERROR] [RFNOC::GRAPH] Caught exception while initializing graph: > RuntimeError: Cannot create! Property already exists at: > /blocks/0/DUC#0/noc_id > > terminate called after throwing an instance of 'uhd::runtime_error' > > what(): RuntimeError: Failure to create rfnoc_graph. > > > > const::uhd::device_addr_t device("addr=192.168.10.2"); > > gr::ettus::rfnoc_graph::sptr > rfnoc_graph_ctrl=gr::ettus::rfnoc_graph::make(device); > > uhd::stream_args_t stream_arg=uhd::stream_args_t("fc32","sc16"); > > gr::ettus::rfnoc_rx_streamer::sptr > rx_streamer=gr::ettus::rfnoc_rx_streamer::make(rfnoc_graph_ctrl,1,stream_arg,1,true); > > gr::ettus::rfnoc_rx_radio::sptr > rx_radio=gr::ettus::rfnoc_rx_radio::make(rfnoc_graph_ctrl,device,-1,-1); > > rx_radio->set_rate(2000); > > rx_radio->set_antenna("AB", 0); > > rx_radio->set_frequency(25e6, 0); > > rx_radio->set_gain(10, 0); > > rx_radio->set_bandwidth(0, 0); > > rx_radio->set_dc_offset(false, 0); > > rx_radio->set_iq_balance(false, 0); > > > gr::ettus::rfnoc_ddc::sptr > ddc=gr::ettus::rfnoc_ddc::make(rfnoc_graph_ctrl,device,-1,-1); > > > ddc->set_freq(0, 0); > > ddc->set_output_rate(0, 0); > > > //Connections > > rfnoc_graph_ctrl->connect(ddc->get_unique_id(), > 0,rx_streamer->get_unique_id(), 0, false); > > rfnoc_graph_ctrl->connect(rx_radio->get_unique_id(), > 0,ddc->get_unique_id(), 0, false); > > > tb->connect(rx_streamer, 0,tsnk_c , 0); > > tb->connect(rx_streamer, 0,fsnk_c , 0); > > tb->start(); > > >
Re: [USRP-users] time division duplexing (TDD) with USRP B2xx
Ali, most of the time, these types of applications require the RX to be on permanently (unless you know exactly when you're expecting packets), and the TX only when you're transmitting packets. In GNU Radio, this is simply achieved by using a USRP Sink and Source, respectively. The USRP Source (RX) will be permanently receiving into your custom DSP blocks. The USRP Sink (TX) will only transmit when it gets data, so all you need to do is send it data when you have some. Important: You need to add the "tx_eob" tag. See the manual: https://www.gnuradio.org/doc/doxygen/classgr_1_1uhd_1_1usrp__sink.html#a244302d311f9232dc0634ebb920508c7 (look for "bursty transmission"). Note: The TX signal will leak into RX and will appear as a really strong signal. You need to filter those out. If you're doing vanilla UHD, it's pretty much the same. Except now, you need to pass in the tx_eob tag as metadata (see here: https://files.ettus.com/manual/structuhd_1_1tx__metadata__t.html). --M On Sat, Jan 15, 2022 at 11:22 AM Ali G. Dezfuli wrote: > I am going to implement a real-time TDD link (in the order of > one-millisecond burst durations) using two laptops and two USRP B2xx (in > either single antenna or dual-antenna ways). I searched a lot on the net > especially GNU Radio's mailing list but could not find any clear techniques > or tutorials to deal with it. So, I wonder if someone helps me manage that > in a step-by-step way. Thank you! > ___ > USRP-users mailing list -- usrp-us...@lists.ettus.com > To unsubscribe send an email to usrp-users-le...@lists.ettus.com >
Re: JACKD audio
Hello, My signal is in the range +/-1. As I use the audio output of my RPI, it seems that the problem is here : playing a wave file outside gnuradio produce the same issue. However, is there a tutorial somewhere or a manual that explain the syntax that can be written in the "device name" of the audio_sink or audio_source ? Thanks, Fabien, F4CTZ. Le 25/01/2022 à 01:05, Paul Atreides a écrit : Sounds like you’re overloading the audio sink. Have you tried lowering the amplitude of the sine wave? If you have a speaker hooked up to the output I’d imagine you can discern that pretty quickly with your ears. You’ve said what you’re not getting on the O-scope, but what are you getting? On Jan 24, 2022, at 18:47, Fabien PELLET wrote: Hello, Does someone manage to make work GNURadio with JACKD2 ? I get the gr_sink inside the graph of qjackctl, I get signal on the output. For the test I only send a sinwave at 1KHz to the audio_sink but on the physical output, using an oscilloscope, I have something with the right amplitude but it is absolutly not a sinwave. Is there a tutorial or a documentation on how to config GNUradio well with this audio server ? The goal is to reduce the latencies of a flowgraph. Best regards, Fabien, F4CTZ.
Re: Problems with the Frequency Xlating FIR Filter
Can you try running this in a REPL to see what the return value of firdes.lowpass(...) is? --M On Tue, Jan 25, 2022 at 2:03 AM Michelle wrote: > hello, > > I'm using a FIR filter and I have the error : "Param - Taps(taps): > Expression None is invalid for type'complex_vector'." > > my taps is : firdes.low_pass ( 1, samp_rate, frec_carrier, > 25000,firdes.WIN_HAMMING ) > > samp_rate and frec_carrier are both variables in my graph. > > I don't understand why I have an error. Please could you tell me what I > am doing wrong? > > > Thank you. > >
Re: Building packages for GnuRadio 3.8 and UHD 4.1.0: Circular dependency?
Hi Katja, I was trying to figure out where that comes from. Maybe this is the key: https://packages.ubuntu.com/jammy/libuhd-dev This page is telling me that libuhd-dev recommends gnuradio-dev (not that it depends on it). Maybe your script is also working on recommended dependencies? Have you tried --no-install-recommends (in step 4)? --M On Fri, Jan 21, 2022 at 5:42 PM Schütz, Katja < katja.schu...@iis.fraunhofer.de> wrote: > Hello there, > > > > I’m building packages for internal use: GnuRadio 3.8.5 and UHD 4.1.0.5 > and noticed that each seems to have the other as dependency. Is this > correct? How to deal with that? Build and install them alternating? > > > > Background: We have a fairly complicated flowgraph which we don’t want to > convert to GnuRadio3.9. On the other hand we enjoy and use features and bug > fixed from UHD 4.1.0.5. Our server runs Ubuntu 20.04 (Focal) and that won’t > change soon. Until now we used a script to download both, GnuRadio and UHD, > as archives and build them directly on the machine. The package is meant to > save time when installing a new server and guarantee the specific versions. > Also we could then directly work on the code. > > > > What I did: > > 1. Download sources with apt. For UHD I used the jammy repo as > focal only provides 3.15 > > 2. Install UHD build dependencies (sudo apt-get build-dep) for uhd > > 3. Build UHD package (dpkg-buildpackage –b) > > 4. Try to install: > > a. libuhd4.1.0 installs fine including dependencies > > b. libuhd-dev_4.1.0.5 depends on gnuradio, gnuradio-dev and several > libgnuradio packages > > 5. Try to install gnuradio build dependencies > -> build depends on libuhd-dev > > > > Does this really mean to install libuhd-dev I need to install gnuradio, > but to build gnuadio (with UHD support) I need to install libuhd-dev? > > Again my question: Where do I even start? Is this intended? > > > > Thanks for looking into this! > > Best Regards, > > Katja >
Re: JACKD audio
Hi Fabien, we've got https://wiki.gnuradio.org/index.php?title=Audio_Sink If you want to use jack, you'd go into your ~/.gnuradio/config and set [audio] audio_module=jack Best regards, Marcus On 25.01.22 10:58, Fabien PELLET wrote: Hello, My signal is in the range +/-1. As I use the audio output of my RPI, it seems that the problem is here : playing a wave file outside gnuradio produce the same issue. However, is there a tutorial somewhere or a manual that explain the syntax that can be written in the "device name" of the audio_sink or audio_source ? Thanks, Fabien, F4CTZ. Le 25/01/2022 à 01:05, Paul Atreides a écrit : Sounds like you’re overloading the audio sink. Have you tried lowering the amplitude of the sine wave? If you have a speaker hooked up to the output I’d imagine you can discern that pretty quickly with your ears. You’ve said what you’re not getting on the O-scope, but what are you getting? On Jan 24, 2022, at 18:47, Fabien PELLET wrote: Hello, Does someone manage to make work GNURadio with JACKD2 ? I get the gr_sink inside the graph of qjackctl, I get signal on the output. For the test I only send a sinwave at 1KHz to the audio_sink but on the physical output, using an oscilloscope, I have something with the right amplitude but it is absolutly not a sinwave. Is there a tutorial or a documentation on how to config GNUradio well with this audio server ? The goal is to reduce the latencies of a flowgraph. Best regards, Fabien, F4CTZ.
Re: GNU radio relay node
Hi LoyCurtis, your question is a bit broad. I'll say that you'll probably first want to be able to build a point-to-point connection before implementing a relay node. Have you done that (see our tutorials)? If so, what's the question that arises on the way to implementing a relay? (CR is a really highly loaded buzzword, and you'll really need to write down a detailed specification in what way your radio is cognitive before people can honestly help you implement one.) Best regards, Marcus On 25.01.22 03:06, LoyCurtis Smith wrote: Hi GNU community, Does anyone know how to create the following with GNU radio: * Relay node * Cognitive Radio V/r LoyCurtis Smith
Re: GNU Radio 3.9.3.0 Python basic block - issues with forecast and produce
Hi Johannes, hi Patric, On 22.01.22 12:25, Johannes Demel wrote: The `forecast` method expects estimates. The scheduler will call `general_work` anyways at some point, if the system is unable to fulfill your forecast requirement. No, that is not correct; at least in the 3.8-style scheduler you can deadlock the whole flowgraph by letting the forecast method tell the scheduling algorithm that it needs more input to produce the minimum possible number of output (==1 or output_multiple) than the input could ever offer. The mechanism is that the scheduler asks forecast what it needs to produce the largest amount of output that the output buffer can deal with, then it halves the amount until it hits the minimum number. If none of these requests yield a fulfillable input requirement, the block is permanently input-blocked. Best regards, Marcus
Re: JACKD audio
Hi Marcus, Thanks ! I already know that page. My question was more precisely on the parameters to configure JACKD that it is possible to pass directly in the Audio_sink (in "device name" field) or in the config.conf file. Best regards, Fabien, F4CTZ. Le 25/01/2022 à 13:39, Marcus Müller a écrit : Hi Fabien, we've got https://wiki.gnuradio.org/index.php?title=Audio_Sink If you want to use jack, you'd go into your ~/.gnuradio/config and set [audio] audio_module=jack Best regards, Marcus On 25.01.22 10:58, Fabien PELLET wrote: Hello, My signal is in the range +/-1. As I use the audio output of my RPI, it seems that the problem is here : playing a wave file outside gnuradio produce the same issue. However, is there a tutorial somewhere or a manual that explain the syntax that can be written in the "device name" of the audio_sink or audio_source ? Thanks, Fabien, F4CTZ. Le 25/01/2022 à 01:05, Paul Atreides a écrit : Sounds like you’re overloading the audio sink. Have you tried lowering the amplitude of the sine wave? If you have a speaker hooked up to the output I’d imagine you can discern that pretty quickly with your ears. You’ve said what you’re not getting on the O-scope, but what are you getting? On Jan 24, 2022, at 18:47, Fabien PELLET wrote: Hello, Does someone manage to make work GNURadio with JACKD2 ? I get the gr_sink inside the graph of qjackctl, I get signal on the output. For the test I only send a sinwave at 1KHz to the audio_sink but on the physical output, using an oscilloscope, I have something with the right amplitude but it is absolutly not a sinwave. Is there a tutorial or a documentation on how to config GNUradio well with this audio server ? The goal is to reduce the latencies of a flowgraph. Best regards, Fabien, F4CTZ.
Re: failed to fetch http://mirrordirector.org/rasbian ...
Marcus, I have upgraded my Raspberry Pi to Bullseye. When I attempted to upgrade to Bookworm I got a message that the repository does not have a Release file. Thus, I cannot upgrade. Bullseye gives me gnuradio 3.8.2. I went on the Raspberry Pi forum for suggestions about what to do in order to be able to upgrade to gnuradio 3.9 without Bookworm and received 2 suggestions to build 3.9 from source. In your reply to my original post you said “If upgrading from Debian 11 to Bookworm (which will be 12) is not an option (FOR A REASON, honestly, upgrading debian is rather smooth), do not go the manual route of building GNU Radio from source using cmake/make/ a lot of time figuring things out, but simply use our or the official debian packaging tools to automate that building for you.” What tools do I use to automate the building? Jim -- This email has been checked for viruses by AVG. https://www.avg.com
RE: Problems with the Frequency Xlating FIR Filter
Hi Michelle, If you are using a flowgraph from version 3.8 while running GRC with version 3.9, you may be having the problem described here: https://wiki.gnuradio.org/index.php?title=Porting_Existing_Flowgraphs_to_a_Newer_Version#From_3.8_to_3.9 --- Barry Duggan KV4FV https://github.com/duggabe On Mon, 24 Jan 2022 19:55:51 -0500, Michelle wrote: hello, I'm using a FIR filter and I have the error : "Param - Taps(taps): Expression None is invalid for type'complex_vector'." my taps is : firdes.low_pass ( 1, samp_rate, frec_carrier, 25000,firdes.WIN_HAMMING ) samp_rate and frec_carrier are both variables in my graph. I don't understand why I have an error. Please could you tell me what I am doing wrong? Thank you.
Re: Output Issue in example_corr_est_and_clock_sync.grc
Hi Mubashira, When I was writing the https://wiki.gnuradio.org/index.php?title=Packet_Communications tutorial, I remember having some problems with the gr-digital/packet examples. If you haven't already done so, you might like to look at that tutorial. I don't have my GR 3.8 computer up right now, but when I get back to it, I will look into those examples again. Best wishes, --- Barry Duggan KV4FV https://github.com/duggabe On Tue, 25 Jan 2022 06:51:56 + (UTC), Mobi Zaman wrote: Hi, I am trying to run this flowgraph in gr-digital/packet examples on GNU Radio 3.8. When I run the flowgraph, the output shows a flat line (amplitude is a constant zero). I do not have enough understanding of these blocks yet to determine what is the problem here. Can anyone please mention how the output can be corrected? Regards,Mubashira Zaman
How to model class-B distortion of a complex signal
Hi, How should I go about modeling the distortion introduced by a class-B amplifier stage that clips the signal when its value is below zero? Example: I want to combine two FM modulated signals, pass them through this "class-B distorter", demodulate them, and analyze the quality of the signal produced (compared with the undistorted one). How should I go about doing it. Created the flowgraph attached, but this is obviously wrong. :) -- Anish class_b_distort.pdf Description: Adobe PDF document
Re: How to model class-B distortion of a complex signal
Hi Anish, there's been a Summer project that implemented and compensated nonlinear distortion. Simple amplifier models are covered. https://summerofcode.withgoogle.com/archive/2020/projects/5862185634365440 https://github.com/gnuradio/gr-dpd You'll want to start by reading Alekh's proposal; it was pretty nice. The model that you illustrate in your flow graph doesn't quite mathematically work out; I think you'll want to look into Volterra series if you want to learn about a more general modelling for nonlinear elements. For a more specifically useful short introduction to nonlinear amplifier modelling, see the MP and GMP documentation in the github link above. Best regards, Marcus On 25.01.22 20:23, Anish Mangal wrote: Hi, How should I go about modeling the distortion introduced by a class-B amplifier stage that clips the signal when its value is below zero? Example: I want to combine two FM modulated signals, pass them through this "class-B distorter", demodulate them, and analyze the quality of the signal produced (compared with the undistorted one). How should I go about doing it. Created the flowgraph attached, but this is obviously wrong. :) -- Anish smime.p7s Description: S/MIME Cryptographic Signature
Re: failed to fetch http://mirrordirector.org/rasbian ...
Marcus, My problem is solved. I didn’t need to upgrade to Bookworm. Using the command ‘apt install gnuradio –dev’ instead of ‘apt install gnuradio’ did the trick. I don’t understand the need for the –dev but it worked. Jim -- This email has been checked for viruses by AVG. https://www.avg.com
Re: How to model class-B distortion of a complex signal
Hello Anish, Non-linear power amplifier modeling and pre-distortion is a vast subject. If you want to go deep in this matter I would suggest you to take a look at Baseband polinomial models. Here a reference I have used some time ago: https://repositum.tuwien.at/handle/20.500.12708/13980 If you just need something quick, you may want to lookout for AM/PM models, such as the Saleh model. Good luck! Best Regards Wheberth Dias On Tue, Jan 25, 2022, 20:44 Anish Mangal wrote: > Hi, > > How should I go about modeling the distortion introduced by a class-B > amplifier stage that clips the signal when its value is below zero? > > Example: > > I want to combine two FM modulated signals, pass them through this > "class-B distorter", demodulate them, and analyze the quality of the signal > produced (compared with the undistorted one). > > How should I go about doing it. > > Created the flowgraph attached, but this is obviously wrong. :) > > -- > Anish > > > > >
Re: How to model class-B distortion of a complex signal
Anish, If you really just want to model crossover distortion in a class-B amplifier, you could use a pair of Rail blocks: [image: image.png] If you're trying to model the distortion created by a real solid-state amplifier, and not trying to correct it with predistortion, there are a million different models which attempt to accurately characterize distortion in SSPAs: Rapp, Saleh, and Ghorbani seem to be most widely used. They're all pretty simple. Here's a very simple, memoryless model (Ghorbani) implemented as an embedded Python block: https://gist.github.com/bistromath/75d30dd9691fd18211b306db630d8c4f Some basic information about the model can be found here: https://www.mathworks.com/help/comm/ref/memorylessnonlinearity.html Nick On Tue, Jan 25, 2022 at 12:03 PM Wheberth Damascena Dias wrote: > Hello Anish, > > Non-linear power amplifier modeling and pre-distortion is a vast subject. > > If you want to go deep in this matter I would suggest you to take a look > at Baseband polinomial models. > Here a reference I have used some time ago: > https://repositum.tuwien.at/handle/20.500.12708/13980 > > If you just need something quick, you may want to lookout for AM/PM > models, such as the Saleh model. > > Good luck! > > Best Regards > Wheberth Dias > > > > > On Tue, Jan 25, 2022, 20:44 Anish Mangal wrote: > >> Hi, >> >> How should I go about modeling the distortion introduced by a class-B >> amplifier stage that clips the signal when its value is below zero? >> >> Example: >> >> I want to combine two FM modulated signals, pass them through this >> "class-B distorter", demodulate them, and analyze the quality of the signal >> produced (compared with the undistorted one). >> >> How should I go about doing it. >> >> Created the flowgraph attached, but this is obviously wrong. :) >> >> -- >> Anish >> >> >> >> >>
Re: How to model class-B distortion of a complex signal
Hi. Yes. I am just looking at modeling a class-B distortion at the moment, but could someone guide on how to convert between quadrature signals and real signals. Because the rail (or the other one I was trying .. abs, only work on real signals) The simple example im trying to shoot for is create a wbfm waveform, "clip/distort" it, and demodulate it and see the noise in the spectrum. Thanks for the replies!! :) On Wed, Jan 26, 2022 at 1:55 AM Nick Foster wrote: > Anish, > > If you really just want to model crossover distortion in a class-B > amplifier, you could use a pair of Rail blocks: > [image: image.png] > > If you're trying to model the distortion created by a real solid-state > amplifier, and not trying to correct it with predistortion, there are a > million different models which attempt to accurately characterize > distortion in SSPAs: Rapp, Saleh, and Ghorbani seem to be most widely used. > They're all pretty simple. > > Here's a very simple, memoryless model (Ghorbani) implemented as an > embedded Python block: > https://gist.github.com/bistromath/75d30dd9691fd18211b306db630d8c4f > > Some basic information about the model can be found here: > https://www.mathworks.com/help/comm/ref/memorylessnonlinearity.html > > Nick > > On Tue, Jan 25, 2022 at 12:03 PM Wheberth Damascena Dias < > whebe...@gmail.com> wrote: > >> Hello Anish, >> >> Non-linear power amplifier modeling and pre-distortion is a vast subject. >> >> If you want to go deep in this matter I would suggest you to take a look >> at Baseband polinomial models. >> Here a reference I have used some time ago: >> https://repositum.tuwien.at/handle/20.500.12708/13980 >> >> If you just need something quick, you may want to lookout for AM/PM >> models, such as the Saleh model. >> >> Good luck! >> >> Best Regards >> Wheberth Dias >> >> >> >> >> On Tue, Jan 25, 2022, 20:44 Anish Mangal wrote: >> >>> Hi, >>> >>> How should I go about modeling the distortion introduced by a class-B >>> amplifier stage that clips the signal when its value is below zero? >>> >>> Example: >>> >>> I want to combine two FM modulated signals, pass them through this >>> "class-B distorter", demodulate them, and analyze the quality of the signal >>> produced (compared with the undistorted one). >>> >>> How should I go about doing it. >>> >>> Created the flowgraph attached, but this is obviously wrong. :) >>> >>> -- >>> Anish >>> >>> >>> >>> >>> -- Anish
Release Candidate v3.10.1.0-rc1
This release fixes a few bugs that we wanted to squash before the package gets pulled into upcoming distros. See https://github.com/gnuradio/gnuradio/releases/tag/v3.10.1.0-rc1 for more details. The final v3.10.1.0 will be out in a few days, if there are no problems.