Looking for an explanation, File Source -> GMSK MOD -> GMSK Demod -> Head Block -> File sinks
Works fine, terminates after x number of bytes have been transferred and returns. However: File Source -> Packet Encoder -> GMSK MOD -> GMSK Demod -> Packet Decoder -> File sinks Does not return after head block limit (just hangs). Seams like the packet encode/decode block is not exiting? Attached flow-graph.
from gnuradio import blocks from gnuradio import analog from gnuradio import digital from gnuradio import eng_notation from gnuradio import gr from gnuradio import uhd from gnuradio.eng_option import eng_option from gnuradio.filter import firdes from grc_gnuradio import blks2 as grc_blks2 from optparse import OptionParser import time import datetime class Client(gr.top_block): def __init__(self): gr.top_block.__init__(self, "client") ####### VARIBLES ####### self.receiveFile = "/home/ken/out.txt" self.sendFile = "/home/ken/in.txt" self.sample_rate = 250000 ####### BLOCKS ####### self.sendBlock_FileSource = blocks.file_source(gr.sizeof_char*1, self.sendFile, True) self.sendBlock_PacketEncoder = grc_blks2.packet_mod_b(grc_blks2.packet_encoder(samples_per_symbol=2, bits_per_symbol=1, access_code="",pad_for_usrp=True,),payload_length=0,) self.sendBlock_GMSKMod = digital.gmsk_mod(samples_per_symbol=2,bt=0.35,verbose=False,log=False,) self.receiveBlock_GMSKDemod = digital.gmsk_demod(samples_per_symbol=2,gain_mu=0.175,mu=0.5,omega_relative_limit=0.005,freq_error=0.0, verbose=False,log=False,) self.receiveBlock_FileSink = blocks.file_sink(gr.sizeof_char*1, self.receiveFile, False) self.receiveBlock_FileSink.set_unbuffered(False) self.receiveBlock_PacketDecod = grc_blks2.packet_demod_b(grc_blks2.packet_decoder(access_code="",threshold=-1,callback=lambda ok, payload: self.receiveBlock_PacketDecod.recv_pkt(ok, payload),),) self.throttle = blocks.throttle(gr.sizeof_char, self.sample_rate) self.src = analog.sig_source_f(self.sample_rate, analog.GR_COS_WAVE, 1000, 1, 0) self.receiveHead = blocks.head(gr.sizeof_char*1, 12) ####### CONNECTIONS ####### #self.connect(self.sendBlock_FileSource, self.sendBlock_PacketEncoder, self.sendBlock_GMSKMod, self.receiveBlock_GMSKDemod, self.receiveBlock_PacketDecod, self.receiveHead, self.receiveBlock_FileSink) self.connect(self.sendBlock_FileSource, self.sendBlock_GMSKMod, self.receiveBlock_GMSKDemod, self.receiveHead , self.receiveBlock_FileSink) if __name__ == '__main__': parser = OptionParser(option_class=eng_option, usage="%prog: [options]") (options, args) = parser.parse_args() tb = Client() tb.start() print "hello" tb.wait()
_______________________________________________ Discuss-gnuradio mailing list [email protected] https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
