[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] UCLA Zigbee PHY transmission on usrp2 : Segmentat
From: |
csp |
Subject: |
Re: [Discuss-gnuradio] UCLA Zigbee PHY transmission on usrp2 : Segmentation fault |
Date: |
Tue, 20 Jul 2010 09:10:16 -0700 (PDT) |
Dear all,
I got some more information,
I am using a 64-bit kernel. After debugging with gdb,
I am getting segmenation fault with this message :
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffe77fe710 (LWP 2184)]
0x00007ffff338b059 in ucla_delay_cc::work (this=<value optimized out>,
noutput_items=3584, input_items=<value optimized out>,
output_items=<value optimized out>) at ucla_delay_cc.cc:60
60 out[j] = gr_complex (real(in[j]), imag(in[j-d_delay]));
Kindly help me out, how to get out of this issue.
-Sundeep
csp wrote:
>
> Dear all,
>
> I am trying to implement Zigbee on usrp2 (Daughter board - RFX2400),
> using ULCA ZIGBEE PHY from
> https://cgran.org/browser/projects/ucla_zigbee_phy/branches/septikus
>
> I have modified the <
> https://cgran.org/browser/projects/ucla_zigbee_phy/branches/septikus/src/examples/cc2420_txtest.py>
> a little bit, to test the transmission on USRP2, but i am getting
> segmentation fault something like this :
>
> send message 1:
> Segmentation fault
>
> However, receiver seems to work fine.
> I have attached the python script for reference.
>
> Some more details ,
> OS : Ubuntu 10.04 LTS (Desktop)
> Gnuradio and all the software were updated two days back.
> --enable-single and --enable-shared configure options taken care during
> fftw installation.
>
> Could someone please help me out soon with this issue.
>
> Thanks in advance,
> Sun
>
> #!/usr/bin/env python
>
> #
> # Transmitter of IEEE 802.15.4 RADIO Packets.
> #
> # Modified by: Thomas Schmid, Sanna Leidelof
> #
>
> from gnuradio import gr, eng_notation
> from gnuradio import usrp2
> from gnuradio import ucla
> from gnuradio.ucla_blks import ieee802_15_4_pkt
> from gnuradio.eng_option import eng_option
> from optparse import OptionParser
> import math, struct, time, sys
>
>
>
> class transmit_path(gr.top_block):
> def __init__(self, options):
> gr.top_block.__init__(self)
>
>
> self.normal_gain = 28000
>
> self.u = usrp2.sink_32fc(options.interface, options.mac_addr)
> dac_rate = self.u.dac_rate();
> self.set_gain(self.u.gain_max()) # set max Tx gain
> self._data_rate = 2000000
> self._spb = 2
> self._interp = int(128e6 / self._spb / self._data_rate)
> self.fs = 128e6 / self._interp
>
> self.u.set_interp(self._interp)
>
>
> # transmitter
> self.packet_transmitter =
> ieee802_15_4_pkt.ieee802_15_4_mod_pkts(self, spb=self._spb, msgq_limit=2)
> self.gain = gr.multiply_const_cc (self.normal_gain)
>
> self.connect(self.packet_transmitter, self.gain, self.u)
>
> #self.filesink = gr.file_sink(gr.sizeof_gr_complex, 'rx_test.dat')
> #self.connect(self.gain, self.filesink)
>
> def set_gain(self, gain):
> self.gain = gain
> self.u.set_gain(gain)
>
>
> def send_pkt(self, payload='', eof=False):
> return self.packet_transmitter.send_pkt(0xe5, struct.pack("HHHH",
> 0xFFFF, 0xFFFF, 0x10, 0x10), payload, eof)
>
> def main ():
>
>
> parser = OptionParser (option_class=eng_option)
>
> parser.add_option ("-c", "--cordic-freq", type="eng_float",
> default=2415000000,
> help="set Tx cordic frequency to FREQ",
> metavar="FREQ")
> parser.add_option ("-r", "--data-rate", type="eng_float",
> default=2000000)
> parser.add_option ("-f", "--filename", type="string",
> default="rx.dat", help="write data to FILENAME")
> parser.add_option ("-g", "--gain", type="eng_float", default=35,
> help="set Rx PGA gain in dB [0,70]")
> parser.add_option ("-N", "--no-gui", action="store_true",
> default=False)
> parser.add_option("-e", "--interface", type="string", default="eth0",
> help="select Ethernet interface, default is eth0")
> parser.add_option("-m", "--mac-addr", type="string", default="",
> help="select USRP by MAC address, default is auto-select")
>
>
> (options, args) = parser.parse_args ()
>
> tb = transmit_path(options)
> tb.start()
>
> for i in range(10):
> print "send message %d:"%(i+1,)
> tb.send_pkt(struct.pack('9B', 0x1, 0x80, 0x80, 0xff, 0xff, 0x10,
> 0x0, 0x20, 0x0))
> #this is an other example packet we could send.
> #tb.send_pkt(struct.pack('BBBBBBBBBBBBBBBBBBBBBBBBBBB', 0x1, 0x8d,
> 0x8d, 0xff, 0xff, 0xbd, 0x0, 0x22, 0x12, 0xbd, 0x0, 0x1, 0x0, 0xff, 0xff,
> 0x8e, 0xff, 0xff, 0x0, 0x3, 0x3, 0xbd, 0x0, 0x1, 0x0, 0x0, 0x0))
> time.sleep(1)
>
> tb.wait()
>
> if __name__ == '__main__':
>
> main ()
>
> _______________________________________________
> Discuss-gnuradio mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>
--
View this message in context:
http://old.nabble.com/UCLA-Zigbee-PHY-transmission-on-usrp2-%3A-Segmentation-fault-tp29212715p29216121.html
Sent from the GnuRadio mailing list archive at Nabble.com.