Giter VIP home page Giter VIP logo

gr-cdma's People

Contributors

anastas avatar fengzhe29888 avatar yang-sec avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gr-cdma's Issues

Build error with printf in switched_peak_detector_fb_impl.cc

I see this error saying "printf" is unknown:

/SOMEDIRNAMES/gr-cdma/lib/switched_peak_detector_fb_impl.cc: In member function ‘virtual int gr::cdma::switched_peak_detector_fb_impl::work(int, gr_vector_const_void_star&, gr_vector_void_star&)’:
/home/raj/Desktop/B210_testing/gr-cdma/lib/switched_peak_detector_fb_impl.cc:101:100: error: ‘printf’ was not declared in this scope
          printf("SOMETHING IS WRONG: noutput_items %d < look_ahead %d\n",noutput_items,d_look_ahead);

It is on Ubuntu 14.04 with gcc 4.8.4-2ubuntu1~14.04.3. I guess on some other OS, stdio.h is somehow included implicitly, but not on mine. It can't hurt to include the header, so:

diff --git a/lib/switched_peak_detector_fb_impl.cc b/lib/switched_peak_detector_fb_impl.cc
index 1d68f58..64682f2 100644
--- a/lib/switched_peak_detector_fb_impl.cc
+++ b/lib/switched_peak_detector_fb_impl.cc
@@ -23,6 +23,7 @@
 #endif

 #include <gnuradio/io_signature.h>
+#include <stdio.h>
 #include "switched_peak_detector_fb_impl.h"

 namespace gr {

cdma_rx.grc is not stable

hello anastas
these days,i am using your gr-cdma model with usrp b200,when i run cdma_rx.grc,there are some problems.
the problem is that this model is not stable,sometimes i run this model and it worked well,
but sometimes i run this model ,it dose not work well,the grc crashed,the error message is

gr::log::info:Detected an invalid packet at item (3807)
message debug info

F

when i shield

if (!d_header_formatter->header_parser(in, tags)) {
GR_LOG_INFO(d_logger, boost::format("Detected an invalid packet at item %1%") % nitems_read(0));
message_port_pub(msg_port_id, pmt::PMT_F);
} else {
pmt::pmt_t dict(pmt::make_dict());

then recompile the gr-cdma,there always have the output of error message.
the file i altered is gr-cdma/lib/packet_headerparser_b2_impl.cc
i want to know what the prolem is,why i change the source code of gr-cdma,there still have the error message.
and why the grc is not stable, i think a grc should be boole,work well or not,why this grc just work well sometimes.
thank you

Need an instance for cdma.fifo file

Dear all,
I am using the gr-cdma blocks. For running the gnuradio file of cdma_rx.grc, one need 2 usrp to make the cdma.fifo file, but I have only one (N210). I would be pleased if someone can send me an example of cdma.fifo file for my tests?
best regards,
Siavash Ahmadi

Not able to run make from cd-build directory

/usr/local/include/gnuradio/basic_block.h:94:17: error: ‘rpcbasic_sptr’ was not declared in this scope
std::vector<rpcbasic_sptr> d_rpc_vars; // container for all RPC variables
^~~~~~~~~~~~~
/usr/local/include/gnuradio/basic_block.h:94:17: note: suggested alternative: ‘top_block_sptr’
std::vector<rpcbasic_sptr> d_rpc_vars; // container for all RPC variables
^~~~~~~~~~~~~
top_block_sptr
/usr/local/include/gnuradio/basic_block.h:94:30: error: template argument 1 is invalid
std::vector<rpcbasic_sptr> d_rpc_vars; // container for all RPC variables
^
/usr/local/include/gnuradio/basic_block.h:94:30: error: template argument 2 is invalid
lib/CMakeFiles/gnuradio-cdma.dir/build.make:86: recipe for target 'lib/CMakeFiles/gnuradio-cdma.dir/packet_headerparser_b2_impl.cc.o' failed
make[2]: *** [lib/CMakeFiles/gnuradio-cdma.dir/packet_headerparser_b2_impl.cc.o] Error 1
CMakeFiles/Makefile2:174: recipe for target 'lib/CMakeFiles/gnuradio-cdma.dir/all' failed
make[1]: *** [lib/CMakeFiles/gnuradio-cdma.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2

Could you suggest us with some steps to run make so that we could proceed with the cdma implementation ? Thanks in advance.

Make with errors.

I followed the complie instructions.
After I typed "make", I got the following errors:

[ 47%] Generating doxygen xml for cdma_swig_doc docs
/bin/sh: 1: cdma_swig_doc_swig_docs/Doxyfile: Permission denied
make[2]: *** [swig/cdma_swig_doc_swig_docs/xml/index.xml] Error 126
make[1]: *** [swig/CMakeFiles/cdma_swig_swig_doc.dir/all] Error 2
make: *** [all] Error 2

hello ...

i want to build GPS signal receiver and transmitter using CDMA multiple access in gnuradio . so what do u suggest me

Errors on running cdma_txrx.grc

Hello Anastas,

I am using GNU Radio Companion 3.7.13 on Ubuntu 18.04.
I have build the GNU Project by source and installed all dependencies separately and have successfully built the anastas/gr-cdma project as well.

As mentioned on the Repo I reloaded all the blocks
"cdma_tx_hier.grc",

"chopper_correlator.grc",

"cdma_rx_hier.grc",

and Tried to load application cdma_txrx.grc. However it is giving the following errors:

CDMA PARAMETERS : for adaptive coded modulation
Traceback (most recent call last):
File "/home/rslab/gr-cdma/apps/cdma_txrx.py", line 33, in
from gnuradio.wxgui import forms

File "/usr/local/lib/python2.7/dist-packages/gnuradio/wxgui/forms/init.py", line 36, in
from forms import \

File "/usr/local/lib/python2.7/dist-packages/gnuradio/wxgui/forms/forms.py", line 64, in
class _form_base(pubsub, wx.BoxSizer):

TypeError: Error when calling the metaclass bases
multiple bases have instance lay-out conflict

Can you help on this matter.

Some questions for gr-cdma

Hi Anastas
I am very interested in your gr-cdma and would like to ask you the following questions:
1、I want to implement two TX and two RX. Can I change the training sequence to a second TX;
2、As far as I understand, CDMA is spreading the system to pulse_ data times, if the system symbol rate is 100k and the BW of CDMA is 800k, is that correct;
3、I saw that you have used a communication frequency of 2.2GHz. I have tried to change the communication frequency to 500kHz, but the data at the receiving end was not output after passing through Stream CRC32, which means that this part was not decoded correctly. Do you know why?
That's all my questions, thank you very much

Demodulate wcdma

Would it be possible to utilise this to capture and demodulate a wcdma signal? If yes are any changes required?

Vector Source - File Source

Hello Anastas,
I am replacing the vector source block by file source block to transmit files on other formats (audio, image, text). But the receiver does not get any type of file. can you help me please.

Scrambling in cdma_tx_hier1.grc

Hi Achilleas

I'm using your cdma project for quite some time now. Works great and lots of learning opportunities out of this project. Just a quick question:
at the output of cdma_tx_hier1, you're using a simple "add" operation instead of the "xor" required for scrambling. If I'm not wrong, you're using the long "training" sequence as a scrambling sequence, right?

Many thanks,
Zak

Using packet error calculator

Hi, I really appreciate this repository as it gave an intuitive insight into the working mechanism of a cdma system. However, I would like to use the packet error calculator developed in your system for OFDM example in GNURADIO. I have currently tried using the packet error calculator block by attaching it with stream tagged to pdu block. However, I couldn't get a message printed on the terminal for packet error loss. therefore, May I know what i might be doing wrong and how you could guide me on making this block work. thanks

CDMA multiple transmitters - one receiver, how to separate the sequences?

Hi Anastas

I'm wondering if it's possible to implement a scenario where a Rx receives CDMA packets from multiple Tx nodes. My questions are
1- How can the receiver distinguish between different users ? is it by using different sets of cp.pulse_training and cp.training?
2- How can I mix the sequences generated by each Tx in the channel ? can this be done by a simple addition?
I've attached a diagram explaining further what I plan to do.

Many thanks in advance,
Zak

cmda question

umts cell search

Hello ,
Please advise if i can use gr-cdma to scan UMTS cells and then decode BCH and return cells information , if that available or not , if not please give me point of start to use your App for this targrt , just starting point and some guides from you will help

Getting started with gr-cdma

Hi Anastas et al
First, let me thank you for your huge efforts and contributions to this project..
I'm a PhD student studying amateur radios for space applications. I tried to run you CDMA example on Ubuntu 16.04 and I'm failing miserably. Your project worked flawlessly on Windows tho
I followed the detailed installation instructions but the main issue I'm getting is:
Param - Import(import):
Import "import cdma" failed.
and
import cdma.cdma_parameters as cp

if someone can help me with this, I'll be eternally grateful
ps. I followed the conversations from 3 years ago but none of the solutions actually worked

Attribute error: packet_header2

I'm having trouble installing your OOP package. When I try to import cdma in Python I get the following error

>>> import cdma CDMA PARAMETERS : for adaptive coded modulation Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/local/lib/python2.7/dist-packages/cdma/__init__.py", line 34, in <module> import cdma_parameters File "/usr/local/lib/python2.7/dist-packages/cdma/cdma_parameters.py", line 110, in <module> local_header_obj = cdma.packet_header2(bits_per_header,length_tag_name,num_tag_name, header_mod.bits_per_symbol(),tcm_type_selector_default, "tcm_type") AttributeError: 'module' object has no attribute 'packet_header2'
I followed your guide for installing.

Part of the cdma_parameters.py that I changed
prefix="/home/ubuntu/Dropbox/Faks/ISRM/prvi_letnik/Ponavljanje/ARP2/Project/Code/gr-cdma/"

My directory:
drwxrwxr-x 2 ubuntu ubuntu 4096 may 21 16:06 build_cdma
drwxrwxr-x 12 ubuntu ubuntu 4096 may 21 16:19 gr-cdma

I'm running Ubuntu 16.04 and using the current version of the gr-cdma.

Detected an invalid packet at item 0

Hello anastas,
When running the "cdma_txrx", I keep getting the "INFO: Detected an invalid packet at item 0". What does this imply? Is it like you mentioned before that it does not find a valid packet header?
Thank you.

unable to import cdma due to hard-coded prefix

The prefix for the gr-cdma directory is a hard-coded, absolute path on line 90 of cdma_parameters.py:

prefix="/home/anastas/gr-cdma/" # put the prefix of your gr-cdma trunk

This results in a non-existent file when trellis.fsm() is called.

This should be added to the README or changed to use either a relative path or the prefix configured by PyBOMBs.

Builds properly, but cdma_txrx throwing error

<<<<<<<<<<<<>>>>>>>>>>>
Everything built properly following the steps in the README, but when I try to run the cdma_txrx script, I get the following error:
CDMA PARAMETERS : for adaptive modulation
bits_per_header= 36
symbols_per_header= 36

bits_per_coded_symbol = [2, 3] for [uncoded QPSK, rate 2/3 cc &8PSK] respectively.

payload_bytes_per_frame= 50
symbols_per_frame= 260
trellis_coded_payload_symbols_per_frame= 216 for [uncoded QPSK, rate 2/3 cc &8PSK] respectively.

trellis_coded_payload_bytes_per_frame= [54, 81] for [uncoded QPSK, rate 2/3 cc &8PSK] respectively.

additional_symbols_per_frame= 8 for [uncoded QPSK, rate 2/3 cc &8PSK] respectively.

additional_bytes_per_frame= [1, 1] for [uncoded QPSK, rate 2/3 cc &8PSK] respectively.

you have wasted [0.01818181818181818, 0.012195121951219513] percent of bytes per payload for [uncoded QPSK, rate 2/3 cc &8PSK] with this symbols_per_frame setting.

training_length = 260

Normalized frequency interval = 0.000240384615385
Normalized frequency unsertainty range = [ -0.00240384615385 , 0.00240384615385 ]
Using Volk machine: avx_64_mmx_orc
Traceback (most recent call last):
File "/home/lts/gr-cdma/apps/cdma_txrx.py", line 583, in
tb = cdma_txrx()
File "/home/lts/gr-cdma/apps/cdma_txrx.py", line 230, in init
acq=onoff,
File "/home/lts/.grc_gnuradio/cdma_rx_hier.py", line 60, in init
pulse_data=cp.pulse_data,
File "/home/lts/.grc_gnuradio/chopper_correlator.py", line 50, in init
self.cdma_vector_insert2_0_0 = cdma.vector_insert2(((Q-1)_(0,) ), (N+pulse_L)_Q +1 , (N+pulse_L)*Q +1)
AttributeError: 'module' object has no attribute 'vector_insert2'

Done

I am running Ubuntu 14.04 x64 in a VM. GR is ver 3.7.7.1

Make issue in newest commit

I am trying to build the newest commit and make causes the following error:

Scanning dependencies of target gnuradio-cdma
[ 4%] Building CXX object lib/CMakeFiles/gnuradio-cdma.dir/packet_header2.cc.o
/opt/cdma/v070615/playback/source/gr-cdma-master/lib/packet_header2.cc: In member function ‘virtual bool gr::cdma::packet_header2::header_formatter(long int, unsigned char_, const std::vectorgr::tag_t&)’:
/opt/cdma/v070615/playback/source/gr-cdma-master/lib/packet_header2.cc:74:7: error: ‘d_crc_impl’ was not declared in this scope
d_crc_impl.reset();
^
/opt/cdma/v070615/playback/source/gr-cdma-master/lib/packet_header2.cc: In member function ‘virtual bool gr::cdma::packet_header2::header_parser(const unsigned char_, std::vectorgr::tag_t&)’:
/opt/cdma/v070615/playback/source/gr-cdma-master/lib/packet_header2.cc:140:7: error: ‘d_crc_impl’ was not declared in this scope
d_crc_impl.reset();
^
make[2]: *** [lib/CMakeFiles/gnuradio-cdma.dir/packet_header2.cc.o] Error 1
make[1]: *** [lib/CMakeFiles/gnuradio-cdma.dir/all] Error 2
make: *** [all] Error 2

import cdma

import cdma
CDMA PARAMETERS : for adaptive coded modulation
Traceback (most recent call last):
File "", line 1, in
File "/usr/local/lib/python2.7/dist-packages/cdma/init.py", line 34, in
import cdma_parameters
File "/usr/local/lib/python2.7/dist-packages/cdma/cdma_parameters.py", line 127, in
bits_per_coded_symbol=[int(math.log(trellis.fsm(fsm[i]).O(),2)) for i in range(len(payload_mod))]
File "/usr/lib/python2.7/dist-packages/gnuradio/trellis/trellis_swig.py", line 544, in init
this = _trellis_swig.new_fsm(*args)
RuntimeError: fsm::fsm(const char *name): file open error

So yes I saw you asking someone for the prefix location and I ended up fixing the issue by changing the prefix install and now all the blocks are ready to compile. This is going to be exciting.

How to compile cdma module with existing gnuradio ?

Hi,

I had successfully installed gr-cdma module. Just had one question about instruction in the installation which says

-- For each of the blocks listed below, open them into gnuradio-companion and compile each one (using the button in GRC that looks like a sphere and a pyramid with an arrow between them) and then reload each time (using the button that looks like a circular arrow)

"cdma_tx_hier.grc",

"chopper_correlator.grc",

"cdma_rx_hier.grc",

-- Reload all blocks in grc

-- Load the application "cdma_txrx.grc" and have fun

How can i do that. Each files opened has missing modules. I am not very sure how do integrate this.
compile_error

Build failure

[ 29%] Built target gnuradio-cdma
[ 38%] Built target test-cdma
[ 45%] Built target _cdma_swig_doc_tag
[ 48%] Generating doxygen xml for cdma_swig_doc docs
/bin/sh: 1: cdma_swig_doc_swig_docs/Doxyfile: Permission denied
swig/CMakeFiles/cdma_swig_swig_doc.dir/build.make:64: recipe for target 'swig/cdma_swig_doc_swig_docs/xml/index.xml' failed
make[2]: *** [swig/cdma_swig_doc_swig_docs/xml/index.xml] Error 126
CMakeFiles/Makefile2:312: recipe for target 'swig/CMakeFiles/cdma_swig_swig_doc.dir/all' failed
make[1]: *** [swig/CMakeFiles/cdma_swig_swig_doc.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2

I did it twice following README.md with the same result. What is wrong ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.