Hi,
I am a new learner of gnuradio. I want to know how gnuradio do carrier
sensing. In the following function,
def carrier_sensed(self):
“”"
Return True if we think carrier is present.
“”"
#return self.probe.level() > X
return self.probe.unmuted()
I don’t know what is the C++ source code for probe.unmuted, can anyone
tell
me where to find it? I want to know how C++ get RSSI and process it to
get
whether carrier is present or not.
Thanks~
Fengyuan Gong
Maybe I’m misunderstanding your question.
It looks to me like line 59 of gr_probe_avg_mag_sqrd_c.cc is calling
the filter function. So “input” in that function is just the value
that is being passed in there.
Hi, Ben,
From line 59 of gr_probe_avg_mag_sqrd_c.cc, mag_sqrd is the “input”
variable. mag_sqrd comes from pointer in at line 58. Pointer in comes
from
pointer input_item at line 55. I know &input_item is a parameter of
function
work at line 52. My question is that where will work function be called
and
what value will be passed for the argument &input_item?
Thanks~
Fengyuan
The basic idea in gnuradio is that you’re stringing signal processing
blocks together. There’s some scheduling going to work out when
different blocks are doing number crunching which I know nothing
about. Each block has a “work” or a “general_work” function that is
called by the scheduler (I think) when it is that block’s turn to
crunch numbers. “input_items” is the data that is being passed from
the previous block in the flow graph to this block. I’m fairly new to
gnuradio too so if you need more detailed info than that, then I won’t
be much help.
Cheers,
Ben