Hi,

I have added a usrp_block_impl::_cmd_handler_freq2 which adds "args" to the 
tune_request object:

void usrp_block_impl::_cmd_handler_freq2(const pmt::pmt_t& freq_,
                                        int chan,
                                        const pmt::pmt_t& msg)
{
    double freq = pmt::to_double(freq_);
    ::uhd::tune_request_t new_tune_reqest(freq);
    if (pmt::dict_has_key(msg, cmd_lo_offset_key())) {
        double lo_offset =
            pmt::to_double(pmt::dict_ref(msg, cmd_lo_offset_key(), 
pmt::PMT_NIL));
        new_tune_reqest = ::uhd::tune_request_t(freq, lo_offset);
    }

    new_tune_reqest.args = ::uhd::device_addr_t("mode_n=integer");
    _update_curr_tune_req(new_tune_reqest, chan);
}

This makes gnuradio crash when I send the "freq2" message together with 
"looffset". The segfault happens in usrp_block_impl::_cmd_handler_looffset. For 
reference, the gdb backtrace is shown here: 
https://paste.ubuntu.com/p/wYG54D5QRy/

Is there anything wrong with that?

Thanks,
Luke


PS: I wanted to confirm: If I want to use integer-N PLL with a given stepsize, 
do I really have to add this to every single tune_request_t object or could I 
add it to the the device addr string of the USRP Source/Sink device? 
(Disclaimer: this doesn't seem to work though ...)




_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to