discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Building custom RFNoC block


From: Martin Braun
Subject: Re: [Discuss-gnuradio] Building custom RFNoC block
Date: Thu, 24 Mar 2016 17:57:08 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0

On 03/24/2016 06:34 AM, William Healey wrote:
> -- ========== Full list of RFNoC blocks: ============
> -- * 0/Radio_0
> -- * 0/Radio_1
> -- * 0/AddSub_0
> -- * 0/FIR_0
> -- * 0/FFT_0
> -- * 0/Window_0
> -- * 0/NullSrcSink_0
> -- * 0/LogPwr_0
> -- * 0/MovingAverage_0
> -- * 0/VectorIIR_0
> -- * 0/KeepOneInN_0
> -- * 0/Test_0
> -- * 0/FIFO_0

This is good -- UHD is picking up your new block and all. The GNU Radio
part should be easy in comparison.

> To try to get the block to appear in GRC I  made copies of the cpp
> (uhd/host/lib/rfnoc/test_ctrl_impl.cpp), hpp
> (uhd/host/include/uhd/rfnoc/test_ctrl.hpp) and xml
> (uhd/host/include/uhd/rfnoc/blocks/test.xml) files used by the default
> FIR filter and again slightly customized them for my test block. After
> editing the files I also had to make changes to
> uhd/host/include/uhd/rfnoc/CMakeLists.txt and
> uhd/host/lib/rfnoc/CMakeLists.txt so that the new cpp and hpp files
> would be included when I rebuilt UHD. After rebuilding UHD the blocks
> still did not appear in GRC though.

Yes, they're unrelated. Note you don't need the .cpp and .hpp files for
simple blocks.

> To get the test block to appear in GRC I had to add files to my gr-ettus
> directory (gr-ettus/include/ettus/rfnoc_test_cci.h  
> gr-ettus/lib/rfnoc_test_cci_impl.cc  
> gr-ettus/lib/rfnoc_test_cci_impl.h   gr-ettus/grc/uhd_rfnoc_test.xml)
> and update some makefiles (gr-ettus/include/ettus/CMakeLists.txt  
> gr-ettus/lib/CMakeLists.txt   gedit
> gr-ettus/build/grc/cmake_install.cmake). With the updated files, I
> rebuilt gr-ettus and the test block now appeared in GNU Radio Companion.

This is also good; looks on you're on the right path.
> Now, even though I could add the test block to a flow graph when I tried
> to run the design I received an error about there being no module
> ettus.test. To fix this problem I had to edit gr-ettus/swig/ettus_swig.i
> and add lines for the test block. After rebuilding gr-ettus again the
> error went away, but was replaced with a new one: RuntimeError: Block
> control is not of requested type. I believe this error is caused by a
> lack of certain xml files. Looking in the directory

I don't think so; given your uhd_usrp_probe output. I suspect some
reference to the fir block in your test code.

Your list of files is correct. I think you're nearly there. Check for
any FIR references in your test block.

Cheers,
Martin




reply via email to

[Prev in Thread] Current Thread [Next in Thread]