Re: [Gnss-sdr-developers] Getting gnss-sdr working with ADALM-Pluto
An open source software-defined GNSS receiver
Brought to you by:
carlesfernandez
From: Will S. <wsi...@go...> - 2022-07-11 20:19:19
|
Thank you Cinaed! I've been working with gnuradio-3.8 for the time being, but I'm now coming back to try with maint-3.10. After another try I was able to build with 3.10, but using the example config file <https://github.com/gnss-sdr/gnss-sdr/blob/main/conf/gnss-sdr_GPS_L1_plutosdr_realtime.conf> I get a seg fault. To be clear, you were able to run gnss-sdr with pluto without issue? I'm able to trace the seg fault back to this volk function <https://github.com/gnuradio/volk/blob/237a6fc9242ea8c48d2bbd417a6ea14feaf7314a/kernels/volk/volk_16i_s32f_convert_32f.h#L81>, where I found inputPtr is invalid. The volk function is called from here <https://github.com/gnuradio/gnuradio/blob/b44e28a8e5041dcb22812a8c514bcc0d88857150/gr-iio/lib/fmcomms2_source_impl.cc#L247> - which seems to be assuming there are two channels, while for pluto, total_channels=1. Note the d_device_buf array is populated here <https://github.com/gnuradio/gnuradio/blob/b44e28a8e5041dcb22812a8c514bcc0d88857150/gr-iio/lib/device_source_impl.cc#L312>, which seems to assume output_items.size=channel_list.size. I'm continuing to work with 3.8 for the time being, curious if anyone's run into or has thoughts on the issue I'm seeing. Thanks again! Will On Wed, Jun 29, 2022 at 6:37 PM Cinaed Simson <cin...@gm...> wrote: > Hi Will - I'm running gnuradio-3.10 and I was able to run pluto by > installing libad9361-dev > > apt install libad9361-dev > > There was no longer a need to install pluto and gr-iio OOT from source - > like I had to do running gnuradio-3.8 - pluto is support by gnuradio-10. > > I'm running Debian bookworm - or version 12. > > -- Cinaed > > On 6/29/22 11:46, Will Silberman via GNSS-SDR-developers wrote: > > Following up on this - I may have made some progress since asking this > question yesterday. > > I decided to try installing the most recent version of gnuradio, and then > installing gr-iio separately, and along with a few other minor changes, > gnss-sdr seems to now compile without issue. I'm still working on running > it with the pluto device as input. > > As for the changes I needed to make: > - Instances of 'boost::shared_ptr' in gr-iio needed to be switched to > 'std::shared_ptr'. > - Remove subdirectory python/iio from gr-iio build > - GNURADIO_API_IIO needed to be switched to 'FALSE' in > gnss-sdr/CMakeLists.txt > <https://github.com/gnss-sdr/gnss-sdr/blob/main/CMakeLists.txt#L3039>. > > Once I verify gnss-sdr is running as expected with pluto I'll look > into updating the code and documentation. > > Thanks again, > Will > > On Tue, Jun 28, 2022 at 4:44 PM Will Silberman <wsi...@go...> > wrote: > >> Hi, >> >> I'm trying to get gnss-sdr working with ADALM-Pluto as an input source. I >> built and installed gnss-sdr with -DENABLE_PLUTOSDR as described here >> <https://gnss-sdr.org/docs/sp-blocks/signal-source/#implementation-plutosdr_signal_source>, >> but get this error: >> >> plutosdr_signal_source.h:28:10: fatal error: gnuradio/iio/pluto_source.h: >> No such file or directory >> 28 | #include <gnuradio/iio/pluto_source.h> >> >> As pluto_source.h doesn't exist in gnuradio/gr-iio/include/gnuradio/iio/ >> <https://github.com/gnuradio/gnuradio/tree/main/gr-iio/include/gnuradio/iio>, >> I tried installing https://github.com/analogdevicesinc/gr-iio directly >> (which required downgrading gnuradio to v3.8), following >> https://wiki.analog.com/resources/tools-software/linux-software/gnuradio. >> But this results in the same error about missing pluto_source.h. >> >> I also found in cmake/Modules/FindGNURADIO >> <https://github.com/gnss-sdr/gnss-sdr/blob/main/c> that gr-iio is only >> included in gnss-sdr if the installed gnuradio version is >3.8.99. So it >> seems like installing the standalone gr-iio requires gnuradio v3.8, while >> gnss-sdr is requiring v>3.8.99. >> >> I tried removing the >3.8.99 restriction, but this just leads to more >> errors, and I suspect I'm going the wrong way: >> >> plutosdr_signal_source.cc: In member function ‘virtual void >> PlutosdrSignalSource::connect(gr::top_block_sptr)’: >> pllutosdr_signal_source.cc:174:31: error: no matching function for call >> to ‘gr::top_block::connect(gr::iio::fmcomms2_source<std::complex<float> >> >::sptr&, int, gnss_shared_ptr<gr::block>&, int)’ >> 174 | top_block->connect(plutosdr_source_, 0, valve_, 0); >> >> Any idea what I might be missing here? I suspect the documentation about >> using the pluto signal source >> <https://github.com/gnss-sdr/gnss-sdr/blob/main/c> is incorrect in >> saying the gr-iio component in gnuradio is ready to go, since it doesn't >> actually include the relevant headers. >> >> Thank you! >> Will >> > > > _______________________________________________ > GNSS-SDR-developers mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/gnss-sdr-developers > > > _______________________________________________ > GNSS-SDR-developers mailing list > GNS...@li... > https://lists.sourceforge.net/lists/listinfo/gnss-sdr-developers > |