discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] FSK and GFSK signal decoding


From: Gunther Ferdinand
Subject: Re: [Discuss-gnuradio] FSK and GFSK signal decoding
Date: Tue, 19 Apr 2011 16:07:48 -0700 (PDT)

Hi Nick,
 
    thank you very much for your answers.

>From a development perspective, you're probably best off in Linux, but
>Windows and Cygwin with C++ and Python will work as well. You will
>probably encounter significant difficulty trying to get Visual Basic to
>work in this application.
 
I will paly with it on Windows with UHD, and C++. I will use Visual C++ to make GUI and code.
 
>The USRP is not going to give you bytes of user data, it's going to give
>you (almost) raw samples as received from the air after downconversion
>from 433MHz. As a result, it is up to you to perform the following tasks
>to get your data back:

>* Coarse frequency estimation
>* Demodulation
>* Preamble detection
>* Fine frequency synchronization
>* Symbol synchronization
>* Symbol slicing
>* Framing
 
Wow, quite many things to do. OK, it will give me samples of the received signal that I will have to interprete, meaning to use some GNUradio functions to process those raw samples (like demodulation). Anyway it's quite difficult to imagine how usefull data will be extracted from signal samples. I suppose I would have to know what I'm expecting, to be able to identify my data between those raw samples.

>Gnuradio provides blocks to help you with most of these tasks, but
>you'll have to understand their basic operation in order to use them. I
>recommend a good digital communications textbook for the theory and
>discussion of the above operations: I found Sklar's "Digital
>Communications" to be pretty helpful.
 
Yes, I know there are many books related to digital communications, I have a lot of books, each one full of formulas, that doesn't help me very much, I would like to understand the whole process from the point of view more close to GNURadio, and programming.

>For an example of a simple GMSK receiver, you can check out the AIS
>receiver I wrote at https://www.cgran.org/wiki/AIS . It's a pretty
>simple receiver example which gives an example of how Python and C++
>interact in Gnuradio, and how the various components of a complete
>receiver are written in Gnuradio-land. There are other applications
>doing similar things in the Gnuradio examples. gr-pager is one that
>comes to mind.
 
Thank you very much. I'm used to software development (FPGA, microcontrollers, etc.) so I will learn much more from source code than any other place, to tell you the truth I hate those books full of math formulas, maybe it make sense for those working on telecommunication field, but not to me. Thank you again for the examples.
 
>The API documentation is the first place to look, along with the
>examples we include in UHD. For your application, though, it sounds like
>you'll want to use UHD with Gnuradio, so the Gnuradio examples are your
>best bet for seeing how implementations are done in the "real world".
 
Thank you very much.
Gunther Ferdinand.


From: Nick Foster <address@hidden>
To: Gunther Ferdinand <address@hidden>
Cc: address@hidden
Sent: Sun, April 10, 2011 4:33:52 PM
Subject: Re: [Discuss-gnuradio] FSK and GFSK signal decoding

On Sun, 2011-04-10 at 03:49 -0700, Gunther Ferdinand wrote:
> Hi,

>    we have an USRP1 with a WBX card and we would like to get some data
> received on 433MHz from a homemade module. It sends a data packet each
> 5 seconds. The packet is constructed like this:
> <PREAMBLE><SYNC><HEADER><DATA LENGTH><DATA><CRC>, where DATA
> represents some information collected on that module. We intend to
> work on Windows not Linux, it much more user friendly. We don't really
> know how to start all this therefore we would appriciate any help. We
> installed UHD, GNURADIO and other needed things, but I couldn't find
> any help file with some explained examples. What could be easyer, to
> make some application (in C++, VisualBasic, etc.), to use Python or
> other solutions. Anyway when we will get data into the PC we need to
> do some math operations and display it.

>From a development perspective, you're probably best off in Linux, but
Windows and Cygwin with C++ and Python will work as well. You will
probably encounter significant difficulty trying to get Visual Basic to
work in this application.


>  So, the biggest problem is that we don't really understand how we
> could get that data. We have that module that sends some packets. If
> we set the USRP1 through UHD to 433MHz (what other parameters should
> we set), when it will receive some RF signals it will starts to pass
> it to the application (run with python or made with other development
> softwares). The USRP will send some data (byte 1; byte 2; byte
> 3; ..... ) as many as it receives. From that data we will get out our
> DATA and check CRC, HEADER, etc.

The USRP is not going to give you bytes of user data, it's going to give
you (almost) raw samples as received from the air after downconversion
from 433MHz. As a result, it is up to you to perform the following tasks
to get your data back:

* Coarse frequency estimation
* Demodulation
* Preamble detection
* Fine frequency synchronization
* Symbol synchronization
* Symbol slicing
* Framing

Gnuradio provides blocks to help you with most of these tasks, but
you'll have to understand their basic operation in order to use them. I
recommend a good digital communications textbook for the theory and
discussion of the above operations: I found Sklar's "Digital
Communications" to be pretty helpful.

For an example of a simple GMSK receiver, you can check out the AIS
receiver I wrote at https://www.cgran.org/wiki/AIS . It's a pretty
simple receiver example which gives an example of how Python and C++
interact in Gnuradio, and how the various components of a complete
receiver are written in Gnuradio-land. There are other applications
doing similar things in the Gnuradio examples. gr-pager is one that
comes to mind.


>  A help file would be very helpfull. Till now we have worked with
> many development softwares and with each one there were some kind of
> help files for beginners like us, to understand the basics. The
> problem is that we don't really undestand how UHD works, how could we
> use it with a VisualBasic environment for example. There's any such
> kind of help file or some web pages?

The API documentation is the first place to look, along with the
examples we include in UHD. For your application, though, it sounds like
you'll want to use UHD with Gnuradio, so the Gnuradio examples are your
best bet for seeing how implementations are done in the "real world".

--n

> Thank you very much.

> Gunther Ferdinand.
> _______________________________________________
> Discuss-gnuradio mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/discuss-gnuradio



reply via email to

[Prev in Thread] Current Thread [Next in Thread]