capture wideband freq by rtl_sdr for freq hopping

570 views
Skip to first unread message

lion b.n

unread,
Apr 21, 2016, 6:03:56 PM4/21/16
to gr-gsm
hay
i try to decode hopping freq in GSM
i make this video to explain problem can u tall me how capture and channelize the data
youtube video
i used RTL_SDR2832Y R820T2

Piotr Krysik

unread,
Apr 22, 2016, 10:49:16 AM4/22/16
to gr-...@googlegroups.com
W dniu 22.04.2016 o 00:03, lion b.n pisze:
> hay
> i try to decode hopping freq in GSM
> i make this video to explain problem can u tall me how capture and
> channelize the data
> youtube video <https://www.youtube.com/watch?v=SzbyGobhGlk>
> i used RTL_SDR2832Y R820T2
>

In the video you are right to point that the example from
grgsm_channelizer help doesn't work. This is because I've changed
parameters of that command but didn't align the example with these
changes. The second command that you use should work - but it doesn't.
It probably means that there is a bug in the channelizer.

You can file the bug report on the github - otherwise I will do that but
it might take more time :).

Generally the applications (especially helper scripts) need some polishing.

--
Best Regards,
Piotr Krysik

Piotr Krysik

unread,
Apr 22, 2016, 1:45:55 PM4/22/16
to gr-...@googlegroups.com
W dniu 22.04.2016 o 16:49, Piotr Krysik pisze:
Hi lion,

After watching the video again - channels that you want to capture are
2.6MHz apart.

Here:

https://youtu.be/SzbyGobhGlk?t=157

you are recording on carrier frequency that is in the middle between
these channels (correct) but you are recording too narrow band (2MHz -
incorrect). You should record at least 2.8MHz but I would advise to use
3MHz. This is a bit over the reliable bandwidth of RTL-SDR but if this
is your only receiver - this is the best you can do currently.

lion b.n

unread,
Apr 23, 2016, 3:36:09 AM4/23/16
to gr-gsm
I try to capture at freq 927.8e6 then use channelizer to get ARFCN986 (927.4e6)
But still not working
And something also can u tell me how i can select bandwisth when capture
And what max bandwidth of rtl_sdr
I new in gnuradio and i study python now to make simple block
Thank u for ur helping

Piotr Krysik

unread,
Apr 23, 2016, 3:44:05 AM4/23/16
to gr-...@googlegroups.com
W dniu 23.04.2016 o 09:36, lion b.n pisze:
Hi,

Post the command that you use for capturing and command that you use for
decoding here. I will try to correct them if this is their fault.

lion b.n

unread,
Apr 23, 2016, 3:51:28 AM4/23/16
to gr-gsm
I think bcz my sample rate 2e6 so my bandwidth is 2e6

But i dont undrstand it if my sample rate is 2e6 and my capture at 927.4e6 thats mean i take (2/927.4) sample per cycle thats very low even i dont understand what relation to bandwidth bcz at in rtl_sdr source block there is a choose for ch0 bandwidth

lion b.n

unread,
Apr 23, 2016, 4:06:42 AM4/23/16
to gr-gsm
Sry for late i just retry command to sure no working but simple i use same command in video and change capture at 927.8e6
And in channelizer just 986
Capture
rtl_sdr name.bin -f 927.8e6 -g 40 -s 2e6
Then change to .cfile
grgsm_channelizer.py -i name11.cfile -f 927.8e6 986

Tomcsányi, Domonkos

unread,
Apr 23, 2016, 4:51:30 AM4/23/16
to lion b.n, gr-gsm
You seem to be missing some SDR and digital signal processing basic concepts, so let me give you some info:


2016. ápr. 23. dátummal, 9:51 időpontban lion b.n <maikel.1...@gmail.com> írta:

I think bcz my sample rate 2e6 so my bandwidth is 2e6

But i dont undrstand it if my sample rate is 2e6 and my capture at 927.4e6 thats mean i take (2/927.4) sample per cycle thats very low

This is not how it works. You need according to the Nyquist–Shannon sampling theorem twice as much bandwidt as the original signal to be able to fully construct the original signal. This means for a 200kHz GSM channel 400ksamples/sec. Since GSM uses a very robust coding you don't necessarily need twice as much, usually 200ksamples is enough. So you are not to compare your sampling rate to the carrier frequency but to the bandwidth of the signal.

I hope I made some stuff clear with this.

Cheers,
Domi 

Piotr Krysik

unread,
Apr 23, 2016, 5:31:00 AM4/23/16
to gr-...@googlegroups.com
W dniu 23.04.2016 o 10:06, lion b.n pisze:
What command do you use to decode? By default output sample rate is 1e6.
So to decode you should use something like:

grgsm_decode -s 1000000 (...)

lion b.n

unread,
Apr 23, 2016, 1:13:05 PM4/23/16
to gr-gsm
Yes i use grgsm_decode -s 1e6
And i also in channelizer use -o 2e6
And try in decode -s e26
But still no output
I want ask u if channelizer work with u and oroblem just with me

lion b.n

unread,
Apr 23, 2016, 1:14:32 PM4/23/16
to gr-gsm
Yes now i understand how sample rate related to bandwidth thanks man

Piotr Krysik

unread,
Apr 23, 2016, 1:24:57 PM4/23/16
to gr-...@googlegroups.com
W dniu 23.04.2016 o 19:13, lion b.n pisze:
Ok, so I really have to have a look at the channelizer :).

--
Piotr Krysik

Piotr Krysik

unread,
Apr 23, 2016, 3:22:09 PM4/23/16
to gr-...@googlegroups.com
W dniu 23.04.2016 o 19:13, lion b.n pisze:
I made a test capture in the E-GSM band and everything works. So I'm
unable to reproduce the problem.
Let's start from trying to decode ARFCN986 from wideband file (2MHz
sample rate is enough for this test)

First do:
grgsm_capture.py -f 927.7e6 -c wideband.cfile -s 2e6 -T 5
grgsm_channelize.py -i wideband.cfile -f 927.7e6 986 -s 2e6 -b E-GSM
cd wideband
grgsm_decode -c out_986.cfile -s 1e6 -f 927.7e6 -v

and check if this works.

lion b.n

unread,
Apr 25, 2016, 8:52:26 PM4/25/16
to gr-gsm
Thank u it work with me even i dont now where the broblem .. but max bandwidth 2.6e6 and thats not enough
But i really thank

anik...@gmail.com

unread,
Jun 15, 2017, 12:56:53 PM6/15/17
to gr-gsm
Hi, Piotr

Why is there a decoding with the frequency of wide recording and not channel? (927.7e6 instead of 927400e6) 
grgsm_decode -c out_986.cfile -s 1e6 -f 927.7e6 -v 

субота, 23 квітня 2016 р. 22:22:09 UTC+3 користувач Piotr Krysik написав:

Piotr Krysik

unread,
Jul 4, 2017, 12:15:53 AM7/4/17
to gr-...@googlegroups.com
Hi Anik,

This frequency is used for frequency offset correction computation (not
as indication of channel number). This should be carrier frequency on
which you make recording. If you use slightly incorrect value here (like
927.4e6) it should work as well - the frequency offset measurement error
will be increased by a tiny value.

Best Regards,
Piotr Krysik

W dniu 15.06.2017 o 18:56, anik...@gmail.com pisze:

lab.accesssolution

unread,
Jul 20, 2017, 5:32:34 AM7/20/17
to gr-gsm
Hi Piotr,

Does it always show results at terminal output when we decode the channelized files with grgsm_decode ... -v method?

I often get empty output at terminal console, but i can see some burst by visually checking the file with inspectrum (please check the attachment file)

Is there any other methods to verify the channelized files?

Thanks & Best Regards,

Erik
out_786.jpg

Piotr Krysik

unread,
Jul 22, 2017, 4:24:22 PM7/22/17
to gr-...@googlegroups.com
Hi,

Are you trying to decode other channels than beacon (C0) channels with
grgsm_decode? If yes - grgsm_decode doesn't work with other channels.
You will have to prepare flowgraph in gnuradio-companion to do this.

Best Regards,
Piotr Krysik

W dniu 20.07.2017 o 11:32, lab.accesssolution pisze:
> Hi Piotr,
>
> Does it always show results at terminal output when we decode the
> channelized files with grgsm_decode ... -v method?
>
> I often get empty output at terminal console, but i can see some burst
> by visually checking the file with inspectrum (please check the
> attachment file)
>
> Is there any other methods to verify the channelized files?
>
> Thanks & Best Regards,
>
> Erik
>
> Pada Selasa, 04 Juli 2017 11.15.53 UTC+7, Piotr Krysik menulis:
>
> Hi Anik,
>
> This frequency is used for frequency offset correction computation (not
> as indication of channel number). This should be carrier frequency on
> which you make recording. If you use slightly incorrect value here
> (like
> 927.4e6) it should work as well - the frequency offset measurement
> error
> will be increased by a tiny value.
>
> Best Regards,
> Piotr Krysik
>
> W dniu 15.06.2017 o 18:56, anik...@gmail.com <javascript:> pisze:

Access Lab

unread,
Jul 24, 2017, 9:57:43 PM7/24/17
to Piotr Krysik, gr-...@googlegroups.com
Hi Piotr,

In the earlier email, you give some hint that we can use grgsm decode to decode the channelized files that produced by grgsm_channelize.py.
For example, if i capture wideband signals that correlate to BCCH at ARFCN 794, and from SI 1 it has the following cell allocations: 780 786 794 809.

And, with the grgsm_channelize.py the following output files are produced:
out_780.cfile; out_786.cfile; & out_809.cfile.
If i'm not mistaken, in the previous email you give some hint that BCCH freq can be used to decode the output channelized files, for examples:
grgsm_decode -s 1e6 -f 1861.6e6 -c out_780.cfile -v (i suppose that it will show some output at terminal console)

The problem is i often get an empty output at terminal console, but if i visually check the files (for example using inspectrum) i can see some packet in the files.

Is there any methods to verify that the channelized files are cut perfectly, and for further process we can use the channelized files to decode voice on hopping channels?

--
You received this message because you are subscribed to the Google Groups "gr-gsm" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gr-gsm+unsubscribe@googlegroups.com.
To post to this group, send email to gr-...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gr-gsm/1c913c8b-f362-caf8-3f34-ea8fa3fba819%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Piotr Krysik

unread,
Aug 22, 2017, 12:35:14 AM8/22/17
to Access Lab, gr-...@googlegroups.com
Hi,

I don't remember writing that. grgsm_decode currently works with C0
(beacon) ARFCNs only.

There is example (without the captured data) of how to do hopping
processing here:

https://github.com/ptrkrysik/examples/blob/master/frequency_hopping/grgsm_hopping_example.grc

Best Regards,
Piotr Krysik

W dniu 25.07.2017 o 03:57, Access Lab pisze:
> Hi Piotr,
>
> In the earlier email, you give some hint that we can use grgsm decode to
> decode the channelized files that produced by grgsm_channelize.py.
> For example, if i capture wideband signals that correlate to BCCH at
> ARFCN 794, and from SI 1 it has the following cell allocations: 780 786
> 794 809.
>
> And, with the grgsm_channelize.py the following output files are produced:
> out_780.cfile; out_786.cfile; & out_809.cfile.
> If i'm not mistaken, in the previous email you give some hint that BCCH
> freq can be used to decode the output channelized files, for examples:
> grgsm_decode -s 1e6 -f 1861.6e6 -c out_780.cfile -v (i suppose that it
> will show some output at terminal console)
>
> The problem is i often get an empty output at terminal console, but if i
> visually check the files (for example using inspectrum) i can see some
> packet in the files.
>
> Is there any methods to verify that the channelized files are cut
> perfectly, and for further process we can use the channelized files to
> decode voice on hopping channels?
>
> 2017-07-23 3:24 GMT+07:00 Piotr Krysik <ptrk...@gmail.com
> <mailto:ptrk...@gmail.com>>:
> <mailto:anik...@gmail.com> <javascript:> pisze:
Reply all
Reply to author
Forward
0 new messages