Hi Maria, The UHD "register_property" callback function (in this case a lambda function that calls peek) only gets executed when the "dirty" property gets marked "clean". Otherwise, if you query the property when it is already considered "clean" by UHD, it simply returns the current property value (without executing this "peek"). So, my workaround is to force UHD to know that the property is "dirty" by setting it to something different than the current value. This is admittedly a hack. If gnuradio offers another mechanism for calling custom RFNoC block functions (different from using properties as you have done), this may be the most straightforward solution. Rob
On Tue, Dec 12, 2023 at 11:55 AM <[email protected]> wrote: > Hi Rob, > > Thanks for your answer. > > I’m not 100% sure but what I think is that the get_int_property function > in python/gnuradio calls the peek function in c++/UHD as I have to write > that on my block controller: > > > register_property(&_test_reg, this > <https://lists.ettus.com/empathy/thread/63G6RSRBYHD666IP2PG6OOFSZC47ZQX6> { > > int test_reg = this->regs().peek32(REG_TEST_ADDR); > this->_test_reg.set(test_reg); }) > > But as you said, probably do it through the get_int_property does not > update the value. > > I will try the workaround you suggest and see. > > Kind regards, > > Maria > _______________________________________________ > USRP-users mailing list -- [email protected] > To unsubscribe send an email to [email protected] >
_______________________________________________ USRP-users mailing list -- [email protected] To unsubscribe send an email to [email protected]
