[USRP-users] Re: Offset tuning on E310 RFNoC

2021-08-26 Thread Marcus D. Leech

On 2021-08-26 11:37 p.m., Jonathon Pendlum wrote:

Hi Jorn,

The offset frequency is implemented in the DDC block controller, see: 
https://github.com/EttusResearch/uhd/blob/UHD-3.14.L/host/lib/rfnoc/ddc_block_ctrl_impl.cpp#L194 
.


Jonathon
To amplify on what Jonathon said above, the approach would be to use 
set_rx_frequency to be desired-frequency+desired-offset (or 
-desired-offset), then use
  the DDC tuning to rotate the resulting baseband in the appropriate 
direction and desired-offset magnitude to bring it to zero offset.


In multi-usrp without RFNOC, this is taken care of automatically, and 
you generally don't have to worry about the math, which not only 
involves the simple-case above,
  but factoring-in things like minimum tuning step-size for the 
hardware being used.  Jonathon, do the RFNOC controllers "understand" 
things like step size, or does

  the user have to handle that themselves?




On Thu, Aug 26, 2021 at 2:06 AM Skorstad, Jørn > wrote:


Hello. I am using the UHD library 3.14.1 and C++ to control an
E310 radio. Without using RFNoC blocks it is possible to tune to
an offset frequency, using uhd::usrp::multi_usrp::set_rx_freq
(const tune_request_t &tune_request, size_t chan = 0). However,
when the software is using RFNoC blocks, it is only possible to
change RX center frequency:
uhd::rfnoc::rf_control::core_iface::set_rx_frequency(const double
/freq/, const size_t /chan/ ).

Is it possible to achieve the same offset tuning functionality
using RFNoC blocks? Have tried using set_rx_lo_freq(), but it
throws an exception, saying it is not supported on this model. I
have an RFNoC image with radio, DDC, window and FFT blocks on.

Jorn

___
USRP-users mailing list -- usrp-users@lists.ettus.com

To unsubscribe send an email to usrp-users-le...@lists.ettus.com



___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


[USRP-users] Re: Running rfnoc replay example on n310

2021-08-26 Thread Jonathon Pendlum
Hi Tellrell,

Can you post the exact steps you are following?

Jonathon

On Wed, Aug 25, 2021 at 8:59 PM Tellrell White via USRP-users <
usrp-users@lists.ettus.com> wrote:

> From looking at the whole printout to the screen, it seems as though UHD
> functions as well as boost functions are not being seen, hence the
> "undefined reference" messages. I'm unclear as to why this is happening at
> the moment. This is a complete printout below.
>
>
> tw@tw-virtual-machine:/usr/local/share/uhd/images/y$ sudo make
> rfnoc_replay_samples_1_from_file
> [sudo] password for tw:
> g++ rfnoc_replay_samples_1_from_file.cpp   -o
> rfnoc_replay_samples_1_from_file
> /tmp/ccXdJ5o0.o: In function `_main(int, char**)':
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x34e): undefined reference to
> `boost::program_options::options_description::m_default_line_length'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x359): undefined reference to
> `boost::program_options::options_description::m_default_line_length'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x3a0): undefined reference to
> `boost::program_options::options_description::options_description(std::__cxx11::basic_string std::char_traits, std::allocator > const&, unsigned int,
> unsigned int)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x3cd): undefined reference to
> `boost::program_options::options_description::add_options()'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x3f1): undefined reference to
> `boost::program_options::options_description_easy_init::operator()(char
> const*, char const*)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x45d): undefined reference to
> `boost::program_options::options_description_easy_init::operator()(char
> const*, boost::program_options::value_semantic const*, char const*)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x488): undefined reference to
> `boost::program_options::options_description_easy_init::operator()(char
> const*, boost::program_options::value_semantic const*, char const*)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x4d3): undefined reference to
> `boost::program_options::options_description_easy_init::operator()(char
> const*, boost::program_options::value_semantic const*, char const*)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x51e): undefined reference to
> `boost::program_options::options_description_easy_init::operator()(char
> const*, boost::program_options::value_semantic const*, char const*)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x569): undefined reference to
> `boost::program_options::options_description_easy_init::operator()(char
> const*, boost::program_options::value_semantic const*, char const*)'
> /tmp/ccXdJ5o0.o:rfnoc_replay_samples_1_from_file.cpp:(.text+0x5b4): more
> undefined references to
> `boost::program_options::options_description_easy_init::operator()(char
> const*, boost::program_options::value_semantic const*, char const*)' follow
> /tmp/ccXdJ5o0.o: In function `_main(int, char**)':
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x817): undefined reference to
> `boost::program_options::variables_map::variables_map()'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x877): undefined reference to
> `boost::program_options::store(boost::program_options::basic_parsed_options
> const&, boost::program_options::variables_map&, bool)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x8a4): undefined reference to
> `boost::program_options::notify(boost::program_options::variables_map&)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x941): undefined reference to
> `boost::program_options::operator<<(std::ostream&,
> boost::program_options::options_description const&)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0xa18): undefined reference to
> `uhd::device_addr_t::device_addr_t(std::__cxx11::basic_string std::char_traits, std::allocator > const&)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0xa31): undefined reference to
> `uhd::rfnoc::rfnoc_graph::make(uhd::device_addr_t const&)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0xa91): undefined reference to
> `uhd::rfnoc::block_id_t::block_id_t(unsigned long,
> std::__cxx11::basic_string,
> std::allocator > const&, unsigned long)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0xcf7): undefined reference to
> `uhd::rfnoc::block_id_t::block_id_t(std::__cxx11::basic_string std::char_traits, std::allocator > const&)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0xd3c): undefined reference to
> `uhd::rfnoc::block_id_t::match(std::__cxx11::basic_string std::char_traits, std::allocator > const&)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0xeef): undefined reference to
> `uhd::rfnoc::block_id_t::block_id_t(unsigned long,
> std::__cxx11::basic_string,
> std::allocator > const&, unsigned long)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+0x127f): undefined reference
> to `uhd::device_addr_t::device_addr_t(std::__cxx11::basic_string std::char_traits, std::allocator > const&)'
> rfnoc_replay_samples_1_from_file.cpp:(.text+

[USRP-users] Re: Offset tuning on E310 RFNoC

2021-08-26 Thread Jonathon Pendlum
Hi Jorn,

The offset frequency is implemented in the DDC block controller, see:
https://github.com/EttusResearch/uhd/blob/UHD-3.14.L/host/lib/rfnoc/ddc_block_ctrl_impl.cpp#L194
.

Jonathon

On Thu, Aug 26, 2021 at 2:06 AM Skorstad, Jørn  wrote:

> Hello. I am using the UHD library 3.14.1 and C++ to control an E310 radio.
> Without using RFNoC blocks it is possible to tune to an offset frequency,
> using uhd::usrp::multi_usrp::set_rx_freq (const tune_request_t
> &tune_request, size_t chan = 0). However, when the software is using RFNoC
> blocks, it is only possible to change RX center frequency:
> uhd::rfnoc::rf_control::core_iface::set_rx_frequency(const double *freq*,
> const size_t *chan* ).
>
>
>
> Is it possible to achieve the same offset tuning functionality using RFNoC
> blocks? Have tried using set_rx_lo_freq(), but it throws an exception,
> saying it is not supported on this model. I have an RFNoC image with radio,
> DDC, window and FFT blocks on.
>
>
>
> Jorn
> ___
> USRP-users mailing list -- usrp-users@lists.ettus.com
> To unsubscribe send an email to usrp-users-le...@lists.ettus.com
>
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


[USRP-users] Re: Python documentation / interfacing with GPSDO

2021-08-26 Thread Philip Balister
Be careful, zeus is *very* out of date and on many current distros, you
will need to use something like pyrex (https://github.com/garmin/pyrex)
to set up a container to do the build in.

Philip

On 8/26/21 5:47 PM, thebouleoffo...@gmail.com wrote:
> So actually what I’ve done is use the OpenEmbedded system to build my own 
> SDK. This was both a fun and not a fun process. This way I can compile new 
> packages for my radio and let it deal with the dependencies. So far I’ve 
> added influxdb, ntp, and gnss-sdr to my E320. I started with the instructions 
> at https://github.com/carlesfernandez/oe-gnss-sdr-manifest, using the zeus 
> yocto linux release, and have been hacking off the unnecessary bits (e.g. 
> X11) to reduce the size. I still haven’t gotten it to where I’m comfortable 
> loading the entire image it produces onto my radio, but I can at least copy 
> the individual compiled tarballs of stuff I want out of the work directory, 
> or use the new sdk with all the libraries I need.
> 
> 
> ___
> USRP-users mailing list -- usrp-users@lists.ettus.com
> To unsubscribe send an email to usrp-users-le...@lists.ettus.com
> 
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


[USRP-users] Re: Python documentation / interfacing with GPSDO

2021-08-26 Thread thebouleoffools
So actually what I’ve done is use the OpenEmbedded system to build my own SDK. 
This was both a fun and not a fun process. This way I can compile new packages 
for my radio and let it deal with the dependencies. So far I’ve added influxdb, 
ntp, and gnss-sdr to my E320. I started with the instructions at 
https://github.com/carlesfernandez/oe-gnss-sdr-manifest, using the zeus yocto 
linux release, and have been hacking off the unnecessary bits (e.g. X11) to 
reduce the size. I still haven’t gotten it to where I’m comfortable loading the 
entire image it produces onto my radio, but I can at least copy the individual 
compiled tarballs of stuff I want out of the work directory, or use the new sdk 
with all the libraries I need.
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


[USRP-users] Re: Python documentation / interfacing with GPSDO

2021-08-26 Thread Marcus D. Leech

On 2021-08-26 10:10 a.m., thebouleoffo...@gmail.com wrote:


In case anyone is searching this in the future for the E320, I managed 
to get time sync working in the background by cross compiling NTP and 
configuring ntp.conf to use the loopback address for the GPSDO:



|# GPS Serial data reference server 127.127.28.0 minpoll 4 maxpoll 4 
fudge 127.127.28.0 time1 0.0 refid GPS # GPS PPS reference server 
127.127.28.1 minpoll 4 maxpoll 4 prefer fudge 127.127.28.1 refid PPS |


___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com
It would be super if there were package repos for OE-based systems, but 
alas, there aren't


So for many things, you need to pull the source, and cross-compile. 
Thanks for posting this to the list.
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


[USRP-users] Re: Python documentation / interfacing with GPSDO

2021-08-26 Thread thebouleoffools
In case anyone is searching this in the future for the E320, I managed to get 
time sync working in the background by cross compiling NTP and configuring 
ntp.conf to use the loopback address for the GPSDO:

```
# GPS Serial data reference
server 127.127.28.0 minpoll 4 maxpoll 4
fudge 127.127.28.0 time1 0.0 refid GPS

# GPS PPS reference
server 127.127.28.1 minpoll 4 maxpoll 4 prefer
fudge 127.127.28.1 refid PPS

```
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com