-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
i checked out 328 from the svn source and now I get this when trying
to build.
make[2]: Leaving directory `/home/matt/op25/blocks/src/lib'
Making check in python
make[2]: Entering directory `/home/matt/op25/blocks/src/python'
make check-TESTS
make[3]: Entering directory `/home/matt/op25/blocks/src/python'
Traceback (most recent call last):
File "./qa_op25.py", line 24, in <module>
import op25
File "/home/matt/op25/blocks/src/lib/op25.py", line 24, in <module>
_op25 = swig_import_helper()
File "/home/matt/op25/blocks/src/lib/op25.py", line 16, in
swig_import_helper
import _op25
ImportError: /home/matt/op25/blocks/src/lib/.libs/_op25.so: undefined
symbol: _ZNK4ldu23lcfEv
FAIL: run_tests
==================
1 of 1 test failed
==================
make[3]: *** [check-TESTS] Error 1
make[3]: Leaving directory `/home/matt/op25/blocks/src/python'
make[2]: *** [check-am] Error 2
make[2]: Leaving directory `/home/matt/op25/blocks/src/python'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/home/matt/op25/blocks/src'
make: *** [check-recursive] Error 1
matt@matt-Inspiron-1525:~/op25/blocks$
I cant shake it; any help will be much appreciated.
- --
- ------
Matt D
- ------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.21 (GNU/Linux)
Comment: MacGPG2 - http://www.gpgtools.org/macgpg2.html
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
iQEcBAEBAgAGBQJSp30lAAoJECrdp7MWSIVbcDcH/0BdZHVshXzC1m72OfXYw4bV
r1rYlYSKJCC2yslR2aM12Bf4tiEwapHRuATpNTdm+6a8FeM5nXPy/e/0N327PB42
JJ9aFLLE0e0f1KBgKwg3WJwpjEl2tSyVfr16bn1BrkpukwDHIXylyFkPQQSAeQGK
3FkWkAf10ivDbyJHUqF8wAIiSmoz8satXAvR+lkS2n0WLXQqxAUPfwzOj+/IdLza
HY3lFhkn+FAvThzCewmiX9pYGzSW6jU3ZdbCRXgtkRus+srIxSkhrBRSZ1u1L5BK
mfeVuNobRp+LMZ8OWBN79XiJ1ySPPj6ZHAxx4CKy3DqvOlg3VHEOSxemYKINBgg=
=QR5x
-----END PGP SIGNATURE-----
I'm pleased to announce a major new OP25 release, which may be downloaded at http://mattrobert.com/Wireless/op25-gr3.7-0.01.tar.gz
The code has been completely reorganized with the following key changes:
1) This release of OP25 is compatible with GNU Radio version 3.7 (or newer)
2) The build system has been changed from autotools/autoconf to cmake
3) Support for gr-osmosdr has been added. This means that (in addition to USRP support) hardware support is extended to all devices supported by osmosdr (see http://sdr.osmocom.org/trac/wiki/GrOsmoSDR for a complete list of supported hardware)
4) Experimental trunk tracking support for IMBE voice channels now included (optimized for LSM/CQPSK) in the signal scope application
Not all pieces (in particular the python scripts) have been converted to the new format yet. Other pieces (for example the Wireshark plugin) should continue to be downloaded from the SVN repository while we work on pulling them into to the new codebase.
Please excuse the mess - we're working to make improvements and this release is the first step in that process. These code updates will be released as tarballs for the interim period until we can our GIT repository is established. Please notify the list of questions or problems with this new release.
For more information about the trunking and voice support which has been added to the scope.py app see the wiki page at http://op25.osmocom.org/trac/wiki.png/wiki/SignalScopePage
Hey guys,
Can anyone please explain to me what is going on in bch.cc? I am trying
to figure out what ECC is used in there and where it is used exactly.
Thanks
--
------
Matt D
------------
Hey guys,
I deleted my whole op25. checked out a new one. applied Balint's patch,
made some simple changes to the hdu.cc ldu1.cc ldu2.cc and tdu.cc files,
and built with no errors at all. the changes i made:
string
hdu::duid_str() const
{
cout << "HDU";
return string("HDU");
}
string
ldu1::duid_str() const
{
return string("LDU1");
cout << "LDU1";
}
string
ldu2::duid_str() const
{
cout << "LDU2";
return string("LDU2");
}
string
tdu::duid_str() const
{
cout << "TDU";
return string("TDU");
}
all i get in terminal when i hear the noise is a few HDUs. No LDU1s or
any of the others. There should be like 400 "TDU's.
I have been unable to figure what i am doing wrong. Any guidance will
be very much appreciated. Thanks.
--
------
Matt D
------------
Hey guys,
Is anyone getting garbage in the traffic pane UI? I deleted my whole
op25. checked out a fresh version. r328 if i remember right. did the
whole bootstrap, configure, make check, sudo make install dance; and i
am getting garbage in the UI. my logfile looks like this:
2013-11-04 11:02:15.797525 HDU Unknown (0) 0xb13f Unknown (0xc4) 0x5f73
2013-11-04 11:05:10.612410 HDU Unknown (0) 0xed38 Unknown (0x9) 0x73f5
2013-11-04 11:09:21.108211 HDU Unknown (0) 0x8100 Unknown (0x77) 0x1dec
2013-11-04 11:09:21.108955 HDU Unknown (0) 0x61 Unknown (0xa5) 0x7300
2013-11-04 11:09:21.281898 HDU Unknown (0) 0x2ba6 Unknown (0xff) 0x63f7
2013-11-04 11:09:21.460865 HDU Unknown (0) 0x63 Unknown (0x8) 0x7100
2013-11-04 11:09:21.650893 HDU Unknown (0) 0xae6f Unknown (0x7c) 0xed67
2013-11-04 11:09:21.834137 HDU Unknown (0) 0x85 Unknown (0x19) 0x6500
2013-11-04 11:09:22.022031 HDU Unknown (0) 0xf984 Unknown (0x6) 0x360c
as you can see, none of these fields are good data except the date/time.
the HDU should only show up once in while. So something is repeatedly
putting "HDU" and the nonsense data onto the thread to the GRC. In
addition to that i did a:
string
hdu::duid_str() const
{
cout << "HUD\n" ;
return string("HDU");
}
in the hdu.cc and as expected i hundreds of "HUD"s print in the
terminal. so similarly i did a:
string
ldu1::duid_str() const
{
return string("LDU1");
cout << "LDU1\n" ;
}
in the ldu1.cc. and i get no "LDU1"s in the terminal. Ive done this
whole routine 3 times and have got the same result. something weird is
going here that was not with previous versions. like i said the HDU
packets should only come up once in a blue. it would seem that
snapshot() is firing off way to many pickles without getting the right
data in to them.
i have not been able to figure what i am doing wrong here. can someone
please do a fresh install and see if the snapshot() and the traffic pane
play nice for them?
Thanks
--
------
Matt D
------------
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
hey guys,
in the op25 traffic pane, the thread that waits for new data to be
received, waits to receive the pickled values for the fields in the
traffic tab, can someone please tell me exactly where the thread gets
its pickle from?? it is a c++ map right? the pickle i mean. does
anyone know what file that comes from?
beucase i commented out the functions in the pickle.cc pickle.h, in
op25/blocks/src/lib rebuilt same as stated on osmocom and i am still
getting updated data in the python UI. how can this be??
is the pointer to that thread: gr_msg_queue_sptr d_msgq; i cant
comment out anything in the snapshoit_du_handler beucase it wont biuld
if i do.
THanks!
- --
- ------
Matt D
- ------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.21 (GNU/Linux)
Comment: MacGPG2 - http://www.gpgtools.org/macgpg2.html
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
iQEcBAEBAgAGBQJSaId/AAoJECrdp7MWSIVbvVgIAIp0MFwgbyzTDuxBuQLHcqkG
WuMT3o7u7ShiS0j1uXjUaaBGSl/55qn98jTLDMMLZIBKdTqDv0czPlWLEHRQTijM
wFuftN53zC1E2+USxLqyvNGV1UjkAxMlvY4liKDAfR4LCdWUrVRHJsUTzgOQ8/gw
CgsV9UAevVHyhzW/s5c7NT+iHNdfLgmlyhNLMOS3D2z1zQLnEy4dUotOey0V7KxX
Wfc89vdlmaSriAywNt/JaqMFkP9eU+Csh5rwOV87WU6jqOBiXV6WutIyW0F+gnRx
DVgaxfXDwaKrVOaUwQtpaXicXrCLVAKJLX/Z78Lewqbu8nW2Fl3lc4qhXCj8jJs=
=cwsj
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
hello,
has anyone seen this error??? :
*** glibc detected *** /usr/bin/python: free(): invalid pointer:
0xaea02a58 ***
======= Backtrace: =========
/lib/i386-linux-gnu/libc.so.6(+0x75ee2)[0xb75a7ee2]
/usr/lib/i386-linux-gnu/libstdc++.so.6(_ZdlPv+0x1f)[0xb69a6adf]
/usr/lib/i386-linux-gnu/libstdc++.so.6(_ZNSs4_Rep10_M_destroyERKSaIcE+0x1b)[0xb6a0e7bb]
/usr/lib/i386-linux-gnu/libstdc++.so.6(+0xb0800)[0xb6a0e800]
/usr/lib/i386-linux-gnu/libstdc++.so.6(_ZNSsD1Ev+0x2e)[0xb6a0e86e]
/usr/local/lib/python2.7/dist-packages/gnuradio/_op25.so(_ZN19snapshot_du_handler6handleEN5boost10shared_ptrI9data_unitEE+0x2a6)[0xb2d79e56]
/usr/local/lib/python2.7/dist-packages/gnuradio/_op25.so(_ZN17data_unit_handler6handleEN5boost10shared_ptrI9data_unitEE+0x54)[0xb2d78c74]
/usr/local/lib/python2.7/dist-packages/gnuradio/_op25.so(_ZN16voice_du_handler6handleEN5boost10shared_ptrI9data_unitEE+0x66)[0xb2d7b116]
/usr/local/lib/python2.7/dist-packages/gnuradio/_op25.so(_ZN15op25_decoder_bf14receive_symbolEh+0x18c)[0xb2d92bec]
my guess is the memory mix up is happening here:
void
snapshot_du_handler::handle(data_unit_sptr du)
{
if(d_msgq) {
string snapshot(du->snapshot());
if(snapshot.size() > 0) {
const size_t snapshot_sz = snapshot.size() + 1;
gr_message_sptr msg = gr_make_message(/*type*/0,
/*arg1*/++d_data_units, /*arg2*/0, snapshot_sz);
char *snapshot_data = reinterpret_cast<char*>(msg->msg());
memcpy(snapshot_data, snapshot.c_str(), snapshot_sz);
d_msgq->handle(msg);
}
}
data_unit_handler::handle(du);
}
but wait the issue gets more interesting than 'du' pointing to an
invalid location:
to try to see if i could stop op25 from giving this dying error, i
commented out all of the snaphot()s in the hdu, ldu1, ldu2, and tdu.
but i am still getting all of the pickled data in the python UI.
¿¿ WTH ??!! can someone please explain to me what i am missing here?
- --
- ------
Matt D
- ------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.21 (GNU/Linux)
Comment: MacGPG2 - http://www.gpgtools.org/macgpg2.html
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
iQEcBAEBAgAGBQJSZ9MgAAoJECrdp7MWSIVbPrsIAKJF/SZ5SY7F54sykWLHxFyB
eJmCW7q9PhsSshC6UU0+ogrYrVvmp2Du/PaNgfqQlMPJmsslJMe2RRRDul2jaosW
I9ZcAzRDXxaTfHP1g+SqIqfLGlvW7LRydq/Hpzczj6UD6GnkyMz6eaWNKuw+cis7
ZsqmaJZYzxDDfFvD5wm1xAnV1VUPSlwENV9BRUo+40TQBWs4nmJI/rge7BPByH6f
ttASLCERBDPX9gts9PeWtF1nnYgFR6rubDAKbc6sG7byi/TPGvbOIjrGKd/r9wEx
QobOYPxf0uKdkH4V2FRUhDMdJX/rR8fv109KFLr2K7eyAziyqEMqXwjNC9IH3iA=
=FWv5
-----END PGP SIGNATURE-----
Software prerequisites include GNU Radio 3.7; also cmake; as well as the current list of build packages listed on the build instructions page http://op25.osmocom.org/trac/wiki.png/wiki/BuildInstructionsPage
Once this is done and the tar.gz file has been downloaded and unpacked from
http://mattrobert.com/Wireless/op25-gr3.7-0.01.tar.gzThe two subdirectories, gr-op25 and gr-op25_repeater must be built as follows
cd ......./gr-op25
mkdir build
cd build
cmake ../
make
sudo make install
[repeat the above commands for gr-op25_repeater]
cd ......./gr-op25_repeater
mkdir build
cd build
cmake ../
make
sudo make install
Well - in the previous message I failed to give credit that is due to Jeff Long who contributed the changes to gr-op25 for the GNU Radio 3.7 conversion effort. Many thanks for this contribution which represents a lot of tedious effort! Was great seeing you again at the 2013 GRCon in Boston!
Also, sorry the previous announcement was formatted strangely, the opportunity to 'preview' postings has been removed :-( Here is another try - maybe the scrollbars will disappear this time
Max
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
I'm pleased to announce a major new OP25 release, which may be
downloaded at http://mattrobert.com/Wireless/op25-gr3.7-0.01.tar.gz
The code has been completely reorganized with the following key changes:
1) This release of OP25 is compatible with GNU Radio version 3.7 (or newer)
2) The build system has been changed from autotools/autoconf to cmake
3) Support for gr-osmosdr has been added. This means that (in addition to
USRP support) hardware support is extended to all devices supported
by osmosdr (see http://sdr.osmocom.org/trac/wiki/GrOsmoSDR for a
complete list of supported hardware)
4) Experimental trunk tracking support for IMBE voice channels now
included (optimized for LSM/CQPSK) in the signal scope application
Not all pieces (in particular the python scripts) have been converted
to the new format yet. Other pieces (for example the Wireshark plugin)
should continue to be downloaded from the SVN repository while we work
on pulling them into to the new codebase.
Please excuse the mess - we're working to make improvements and this
release is the first step in that process. These code updates will
be released as tarballs for the interim period until we can our GIT
repository is established. Please notify the list of questions or
problems with this new release.
For more information about the trunking and voice support which has
been added to the scope.py app see the wiki page at
http://op25.osmocom.org/trac/wiki.png/wiki/SignalScopePage
I am trying to use the OP25 blocks for a C++ program. I have everything running fine as a .GRC. I also have a makefile to bundle everything up into a library.
I am confused which C++ blocks I should be using - should it be op25_fsk4_demod_ff.cc connected to op25_decoder_ff.cc ?
op25_decoder_ff.h get exported to /usr/include/ however only op25_decoder_bf.cc is included in the Makefile.am
There is no op25_fsk_demod_fb.cc so I am not sure how I would connect the decoder_bf block in.
What are the correct C++ blocks to use to replicate the "OP25 FSK4 Demod" & "OP25 Deocder" Python Blocks?
Are there any C++ programs I could use as an example?
Thanks for any pointers!
- Luke
Hey,
I am interested in writing the shortened hamming decoder and rs decoder
for the LC information. Is there any sort of reference manuals that
describe how the shortened hamming code is implemented? From looking at
the op25 lib; op25_hamming.h in particular, it looks like its being done
bitwise in
hamming_15_decode function. i just really don't know what that giant
encoding array & the small decoding array are and how those relate to
the generator matrices in the tia pdf?
i think i kind of have to know what those are about before i can proceed
to write a decoder of the LCWs. But thereafter i suspect it shouldn't be
to hard.
the matrix algebra approach is how i understand how to decode hamming
codes and that approach is not used in op25. furthermore I am not sure
if implementing an algebraic approach would be appropriate (ie. fast
enough) for our use here?
so it would be a big help if I knew how exactly the hamming_15_decode
function works, and in particular what those to arrays (encoding &
decoding) are, and where they come from, and how the generator and
parity matrices (or functions) are utilized?
Thanks!
--
------
Matt D
------------
on my most recent crash there was a little more information than before.
after the memory map in the shell where the crash occurred there is now
this message:
^CTraceback (most recent call last):
File "/usr/local/bin/gnuradio-companion", line 63, in <module>
ActionHandler(args, Platform())
File
"/usr/local/lib/python2.7/dist-packages/gnuradio/grc/gui/ActionHandler.py",
line 70, in __init__
gtk.main()
and the new from gdb:
warning: .dynamic section for
"/usr/local/lib/python2.7/dist-packages/gnuradio/gr/_gnuradio_core_runtime.so"
is not at the expected address (wrong library or version mismatch?)
--
------
Matt D
------------
Hi,
When compiling i did 'configure --enable-debugging'.
so the memory error finally crashed op25 and the core file dumped. i
ran 'sudo gdb /home/matt/OP25_GRC/op25_grc.py /home/matt/core.8995'.
I hardly got anything out of gdb (i attached a copy of what was in
terminal) but it did say the /home/matt/OP25_GRC/op25_grc.py was not in
executable format: file format not recognized.
What am I doing wrong here?
--
------
Matt D
------------
Sorry to drag up an ancient thread. I was wondering what specific modifications were needed for the general_work function of op25_decoder_ff.cc?
Does only returning synthesized frames work or does IMBE expect for some empty results to be inserted where there is no data to smooth things out? I am trying something similar using DSD and the WAV files I record with only synthesized data do not sound as good as audio played back with empty frames returned when no data is available.
Thanks for any tips you have!
Luke
--- In op25-dev(a)yahoogroups.com, "Balint" <balint256@...> wrote:
>
> Dear all,
>
> I've uploaded to the Files section of the board a new 'audio_p25_rx.py',
> which is the original file modified to output IMBE audio, and read/write
> WAV/float data files (since I don't have a USRP and use a discriminator
> tap).
>
> Some notes:
>
> # wx must be set to 'nongl' mode (widgets are the older non-OpenGL type)
>
> # Make sure your ~/.gnuradio/config.conf has a '[wxgui]' section, which
> contains the line 'style=nongl'
>
> #
>
> # Voice output requires the environment variable 'IMBE' set to 'soft', AND
> modification to op25_decoder_ff.cc to prevent
>
> # excessive zero values being output (which chops up the real output
> stream and produces too much silence) - this can
>
> # be done by only producing 'general_work' output values when actual voice
> data is synthesised (i.e. return the number
>
> # of synthesised samples produced and don't pad the output buffer with
> silence)
>
> #
>
> # If you want to capture using Wireshark, don't forget to run this as root!
>
> # Use the '-w' wait option, then start Wireshark and begin capturing, then
> return to your terminal and hit any key.
>
>
>
> In addition, I've found that software_imbe_decoder dies sporadically at
> 'decoder/src/lib/software_imbe_decoder.cc:1022'. I believe this is because
> the class member variable 'OldL' is left un-initialised, and used as such on
> line 1018. Adding 'OldL = 0;' to the class constructor (line 756) appears to
> fix the problem (and causes the 'OldL == 0' check on line 1005 to kick in).
>
>
>
> Please let me know if you try the new Python code and have any problems.
>
> Balint
>
i tried building with './configure --enable-debug'
got the following errors:
bch.cc: In function 'int bchDec(bit_vector&)':
bch.cc:33:8: warning: variable 'root' set but not used [-Wunused-but-set-variable]
bch.cc: At global scope:
bch.cc:170:29: error: redefinition of 'const int bchGFexp [64]'
bch.cc:8:18: error: 'const int bchGFexp [64]' previously defined here
bch.cc:177:29: error: redefinition of 'const int bchGFlog [64]'
bch.cc:15:18: error: 'const int bchGFlog [64]' previously defined here
bch.cc:184:25: error: redefinition of 'const int bchG [48]'
bch.cc:22:18: error: 'const int bchG [48]' previously defined here
bch.cc: In function 'int bchDec(bit_vector&)':
bch.cc:190:5: error: redefinition of 'int bchDec(bit_vector&)'
bch.cc:28:5: error: 'int bchDec(bit_vector&)' previously defined here
bch.cc: At global scope:
bch.cc:332:29: error: redefinition of 'const int bchGFexp [64]'
bch.cc:8:18: error: 'const int bchGFexp [64]' previously defined here
bch.cc:339:29: error: redefinition of 'const int bchGFlog [64]'
bch.cc:15:18: error: 'const int bchGFlog [64]' previously defined here
bch.cc:346:25: error: redefinition of 'const int bchG [48]'
bch.cc:22:18: error: 'const int bchG [48]' previously defined here
bch.cc: In function 'int bchDec(bit_vector&)':
bch.cc:352:5: error: redefinition of 'int bchDec(bit_vector&)'
bch.cc:28:5: error: 'int bchDec(bit_vector&)' previously defined here
make[4]: *** [bch.lo] Error 1
make[4]: Leaving directory `/home/matt/op25/blocks/src/lib'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/home/matt/op25/blocks/src/lib'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/matt/op25/blocks/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/matt/op25/blocks'
make: *** [all] Error 2
indeed on inspection of the bch.h code i noticed some things. straightaway i saw that the code was not surrounded with the standard:
#ifndef INCLUDED_BCH_H
#define INCLUDED_BCH_H
#endif
so i added this and the make error is gone. i am confused as to why the header file is so spartan? no declarations?
Thanks!
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Date:2013-08-14
For a number of reasons[0], I've recently changed my email provider
and set up a new OpenPGP key. As a result I shall be immediately
transitioning away from my ten-year old PGP key.
The old key will be revoked very soon, and so I would like all future
correspondence to use the new one. I would also like this new key to
be re-integrated into the web of trust. This message is signed by
both keys to certify the transition.
The old key was:
pub 1024D/AE445B2E 2004-10-25
Key fingerprint = E27B 3AF7 C367 74C2 FFF0 40B7 5BB6 809B AE44 5B2E
and the new key is:
pub 4096R/0E7A0087 2013-08-14
Key fingerprint = AB4C DD88 559B B3AC DF63 DC76 AE2F F214 0E7A 0087
To fetch the full key from a public key server, you can simply do:
gpg --keyserver keys.riseup.net --recv-key 0E7A0087
If you already know my old key, you can now verify that the new key is
signed by the old one:
gpg --check-sigs 0E7A0087
If you don't already know my old key, or you just want to be extra
sure, you can check the fingerprint against the one above:
gpg --fingerprint 0E7A0087
If you are satisfied that you've got the right key, and the UIDs match
what you expect, I'd appreciate it if you would sign my key. You can
do that by issuing the following command:
**
NOTE: if you have previously signed my key but did a local-only
signature (lsign), you will not want to issue the following, instead
you will want to use --lsign-key, and not send the signatures to the
keyserver
**
gpg --sign-key 0E7A0087
I'd like to receive your signatures on my key. You can either send me
an e-mail with the new signatures (if you have a functional MTA on
your system):
gpg --export 0E7A0087 | gpg --encrypt -r 0E7A0087 --armor | mail -s
'OpenPGP Signatures' <smg(a)hush.com>
Additionally, I highly recommend that you implement a mechanism to keep
your key
material up-to-date so that you obtain the latest revocations, and other
updates
in a timely manner.
I also highly recommend checking out the excellent Riseup GPG best
practices doc, from which I stole most of the text for this transition
message ;-)
https://we.riseup.net/riseuplabs+paow/openpgp-best-practices
Please let me know if you have any questions, or problems, and sorry
for the inconvenience.
Steve Glass
0. https://www.debian-administration.org/users/dkg/weblog/48
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.14 (GNU/Linux)
iEYEARECAAYFAlILarcACgkQW7aAm65EWy7Y3ACgu55BvaS59A3l41uDsXkrIUMi
a7AAmwTlctyIdAWDj7vXH9InucqIqGlMiQIcBAEBAgAGBQJSC2q3AAoJEK4v8hQO
egCHpJoQAKLyqNRvosqXiiiV4HvxeiiaYlzfkv6CejfynBD5vO4RR+nzim002T7I
ezCmPObO+6PtA0go3qkYn94YIKxqn1RK+ctMmWAF5utAQ0V6bEGMseIwvdzuWt4x
aoaHxdDng1ZaQJO9xS6U/SCm34vg0dQlCW+4sSiMg/GsQ2+wv71wThh81T37DuBX
bDGz53ZMA/wz/W52YJkSaEn+k+R/Js1FSFpNuCvn2NT2wZiWr05H2KKMCUgHitbi
cWA8uFD4Z4EshWJHHlRX3hdB8HygQ8N1rVb83GZjZxMGEUEfVC88ZUSt6al3ACfN
Ix9uM3xbKJ7thrl0NwrvQG/Z+ecmUyjENBeXQBwne86TzVx3E9mgoDdER7pf+zpe
rqXvMSfa+ONSghHkm9u5UCli5/kduG/0gW3eeuqCtXq08c0zJe0NzGsWUSYVNZmI
oeq1erVNpo7zzo7XHGPA8Yq3nfgFPV6A/3ivfmema/J17ngWMtym5CGy8EpJelRv
J4QNRBUGVRKBgrlX+3AvDXvtQznE/NZqE1ugbzGrdimZsxR5d5FcBJU+1+jgZ/OJ
ur//OBHPfDvF15RtiYOCi66IPC5AUrOK0gcw+x/9VHkd6olU7dJDXxx5N58/VNnm
weB+JNY3doQuch4lQVqQ5r484KzfoUS2r7ZC/o/xo2aA6kvanwpZ
=OoMf
-----END PGP SIGNATURE-----
hey,
i made some code to show information from the data units; some in the
c++ (ldu1.h, ldu1.cc, etc) and some in the python (traffic panel). now
when i leave it running for a somewhat extending period of time op25
dies with what i think is some sort of memory error:
*** glibc detected *** /usr/bin/python: free(): invalid pointer:
0xb7698434 ***
======= Backtrace: =========
/lib/i386-linux-gnu/libc.so.6(+0x75ee2)[0xb7567ee2]
/usr/lib/i386-linux-gnu/libstdc++.so.6(_ZdlPv+0x1f)[0xb696eadf]
/usr/lib/i386-linux-gnu/libstdc++.so.6(_ZNSs4_Rep10_M_destroyERKSaIcE+0x1b)[0xb69d67bb]
/usr/local/lib/python2.7/dist-packages/gnuradio/_op25.so(_ZN19snapshot_du_handler6handleEN5boost10shared_ptrI9data_unitEE+0x236)[0xb2ce6de6]
/usr/local/lib/python2.7/dist-packages/gnuradio/_op25.so(_ZN17data_unit_handler6handleEN5boost10shared_ptrI9data_unitEE+0x54)[0xb2ce5c74]
/usr/local/lib/python2.7/dist-packages/gnuradio/_op25.so(_ZN16voice_du_handler6handleEN5boost10shared_ptrI9data_unitEE+0x66)[0xb2ce8116]
/usr/local/lib/python2.7/dist-packages/gnuradio/_op25.so(_ZN15op25_decoder_bf14receive_symbolEh+0x18c)[0xb2cffbec]
/usr/local/lib/python2.7/dist-packages/gnuradio/_op25.so(_ZN15op25_decoder_bf12general_workEiRSt6vectorIiSaIiEERS0_IPKvSaIS5_EERS0_IPvSaIS9_EE+0x4b)[0xb2cffddb]
/usr/local/lib/libgnuradio-core-3.6.3.1.so.0.0.0(_ZN17gr_block_executor17run_one_iterationEv+0xa09)[0xb6aa5529]
/usr/local/lib/libgnuradio-core-3.6.3.1.so.0.0.0(_ZN18gr_tpb_thread_bodyC1EN5boost10shared_ptrI8gr_blockEEi+0x4b1)[0xb6ac7aa1]
/usr/local/lib/libgnuradio-core-3.6.3.1.so.0.0.0(+0xb335b)[0xb6ac235b]
/usr/local/lib/libgruel-3.6.3.1.so.0.0.0(+0x32e46)[0xb6c6ae46]
/usr/lib/libboost_thread.so.1.49.0(+0xb96c)[0xb68f096c]
/lib/i386-linux-gnu/libpthread.so.0(+0x6d4c)[0xb76c5d4c]
/lib/i386-linux-gnu/libc.so.6(clone+0x5e)[0xb75e0dde]
======= Memory map: ========
i omitted the huge memory map. i have no idea what to do with this sort
of back trace. any guidance will be much appreciated.
Cheers,
Matt
hey,
i am having major problems here. i was testing some code i put into the
ldu1 files to get the unit ids. after many installations of the revised
ldu1 files my work was halted. first my grc got stuck on start up. now
it starts and dies in a flash and prints out like a thousand errors that
essentially, i think, say that op25 is not installed; or that it is
installed incorrectly.
i have been trying to remedy this all weekend. i uninstalled and
reinstalled op25 and gr-baz and grc3.6.3. multiple times. i am fresh out
of ideas. i attached the traceback stuff, if you can, please take a
peek. any guidance would be much appreciated.
--
Matt D
------------
Hey,
In the hdu.cc file there is a function 'apply_rs_correction'. I am
interested in finding out how this works. What is confusing me is that
I know it works. But I have been looking at this code and to me it
seems to do essentially nothing???
// apply a different kind of correction
void
hdu::apply_rs_correction(bit_vector& frame)
{
// pre-processor if statement that is *always false* (0 == false)
#if 0
*// so this code is not included in the final compiled program
static itpp::Reed_Solomon rs(6, 8, true);
const size_t rs_codeword[][6] = {
};
const size_t nof_codeword_bits = sizeof(codeword_bits) /
sizeof(codeword_bits[0]);
// the end of the pre-processor if statement
#endif
// and that's it for this function? -- so this function is actually
empty in the compiled program???
}
I am putting comments in the code trying to understand it. What am i
missing here?
--
Matt D
------------
Hey,
I am trying to get a handle on the data in the Link Control Word. The
LCW is 72 bits right? On transmission the 72 bit LCW is serialized into
12 hex bits. And then it is encoded with a (24,12,13) RS code to yield
24 hex bits. The 24 hex bits are then encoded with a (10,6,3) shortened
Hamming code to yield 240 bits total.
Is it known how the bits are serialized? Or better yet is there an
existing function for unserializing/serializing that will work here?
And the Hamming and RS codes: does anyone have functions for decoding
(10,6,3) Hamming and (24,12,13) RS code?
If these decoders do not exist already, where should I start?
Thanks!
--
Matt D
------------
Hey,
Does anyone know whats up with the LCFs??? There are only 2 examples in
the Daniels manual. I have been unable to find out anything about the
remaining LCFs.
Thanks
--
Matt D
------------
I've had some people request that I submit the P25 CAI Wireshark
dissector upstream for inclusion in Wireshark. It makes sense to me
since it is quite stable. Do others agree?
My only concern is that we currently use an unassigned UDP port and
encapsulate P25 CAI in UDP. Should we try to get an official pcap data
link type (DLT) instead? Are there reasons to prefer UDP over our own
DLT? If so, should we pursue standardizing a UDP port number?
Mike
Hi folks,
A quick update: I've added to gr-baz <https://github.com/balint256/gr-baz>
some new OP25 blocks.
I've split up the combined 'Decoder' block into the FSK4 and actual decoder
(simple) parts.
I've also added the traffic pane - you'll see how it fits together in the
sample/OP25.grc
Make sure you back up your old GRC file before you update so you don't end
up in a nasty XML merge conflict!
For those people that aren't hearing any audio, check if the traffic pane is
showing you anything.
For those wondering about talk of patches, instructions are here:
http://wiki.spench.net/wiki/OP25
If you use r307+patch, you can also check the console to see if decoder
information starts appearing to see if valid frames are being detected.
Balint
Hi guys.
First thank everybody for helping me those previous week.
I'm really stuck on something now that I can't understand:
When I' using the file source in OP25.grc everything seems working perfectly, I got the 4 ligns in the Dibits and I can hear someone speaking.
HOWEVER when I use my USRP B100 here is the situation: I have 4 perfect lignes but NO AUDIO.
Moving from the File source to the USRP, I dont touch any audio sink frequency or interpolation of the Rational Resampler or Channel rate so logicaly the probleme should not be coming from here..
Im pretty sure that I applied the patch r307. Furthermore this patch is also to make the audio work wich is the case with the file source so what..?
Any suggestions please? Why the audio is working with the files source but not with the USRP?
Thank you very much
Souf
Hi everyone,
I am sort of weary of updating to using next branch (3.7) from 3.6.3
because I don't want lose my balance and get dumped. But I was told
there is a feature there I may need.
So is anyone using OP25 with 3.7 successfully?
Cheers,
--
Matt D
------------
Hi guys,
I have a pretty straight forward question. In directory
op25/blocks/src/lib there is a file called logfile_du_handler.h and the
comments within say that the code writes frames to a log file and that
the name of the log file is d_log. How do we access this log file?
Thanks a bunch
--
Matt D
------------
Hi guys,
I managed to fix the error about the PYTHONPATH, thanks to Matt and Steve. It was still not working after setting the PYTHONPATH but I understood that I had to copy some files like OP25.py in a new directorie /usr/local/lib/python2.7/dist-packages/gnuradio and create here the directorie OP25. It stoped showing the import error.
However I have now this error and any hint and help are welcome:
-------------------------------------
File "/usr/local/lib/python2.7/dist-packages/baz/op25.py", line 88, in create
raise Exception("Could not find a decoder to use")
Exception: Could not find a decoder to use
-------------------------------------
I made some searches in the previous discussion but I could not find anything.
Any Idea?
ps: I still have not applied the patch yet (maybe it's the reason?).. On the spench website they said to apply it to "the svn source" is it this one: ~/gnuradio/gr-baz ?
Thanks in advance for you awnsers
SouF
Hi everyone,
Has anybody seen this on a wireshark frame? :
Packet Data Unit[Dissector bug, protocol P25 CAI: packet-p25cai.c:1453:
failed assertion "state != -1"]
Thanks,
--
Matt D
------------
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
I am currently using GNUradio v3.6.3. IF I in move to v3.6.4.1 will
this break my OP25?
I am trying to install mulitmode.py but the make dies with
"grcc:error:no such option:-d" so I think I may need the new GNUradio.
- --
Matt D
- ------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with undefined - http://www.enigmail.net/
iQEcBAEBAgAGBQJRW3SXAAoJEIC13XTKWhPP5SoIALzM67gvzTxBuZDXkYqgoeDs
VWmwUQd1yx5WNJ96thCOEITZStHBdpeA8R+xMP51vo3EN0sl36N89JlBCrSjzPpX
UAwGy+eEgSTK+Nz8/10G86ciM8qls4qD2YxWhZGkhCRcETQhcg+zkqqu7ofFAu8X
EfSq/+1RICoq/7c2jJC5cIJRsCUt1sGvhkYUlCvv6tGgLDiGaPM2DNltrTJOexUb
G5hY/Pf1bOBxow+EwzyQWstLdB/sSRMV716fdOsV/Nsi7U/LMmXvnwIl52nLyN7K
MvRs03Yx4n7QZ7Bc5R5eMINOu5tl2yixlicu83wYrfmvtqFD7fiKl1EjCyRGLAY=
=HQkr
-----END PGP SIGNATURE-----
Hi everybody
I'm a graduate student working on a project and I have to realise a reception with an USRP of P25 standart communications.
I have basics knowledge in linux and I have been struggeling those days to make work gnu radio and gr-baz (with op25 module..).
I tried many distribution: Ubuntu 12.10/ 32 and 64 bits and now I'm on Ubuntu 12.04 (64) and still have problem while compiling gnu radio..
I understood that there are a lot of dependency problems due to the different versions of Ubuntu and gnuradio.
My question is simple, wich Ubuntu version should I take in order to make the gnuradio build script work without problems and gr-baz get installed without issues?
Thank you very much
Souf
Hi everybody!
I would have thought that there would be samples the web but i have been unable to find any and the link on osmocom is broken. I am in need of some signal samples so i can familiarize myself with the scopes and how the signals look in them. I want to start with P25 but I really need to be familiar with all sorts of signals so sharing of any kind of signal will be much appreciated.
Thanks!
Matt
----------------------
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello everyone!
I would like to bring back one of the tabs in the old OP25; the tab
that displayed all the ids and wut-not. I had the old version somehow
but I uninstalled it and deleted it so i cant even have a look at the
code behind that tab. Would it be possible to add that tab to the new
OP25? If so that would be something I would like to try to do.
I was also wondering if it would be possible to add the 'correlation'
tab from the signal scope app to the new OP25?
Thanks,
Matt D
- ------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with undefined - http://www.enigmail.net/
iQEcBAEBAgAGBQJRVP0JAAoJEIC13XTKWhPPs9sH/jYai1wYYZ0Xx+7eKJkg/PEQ
qtL0LIZc9QOwmokbuoA8pbiidW2VFPmNzWvhfp48eWECnNIknwbJ/wR8CRNOBdnO
caf4AzvnosvlmwwnEOp7Y6XdnbK1FIhapQ/PBGhkycFM6HctwS4pcvj1YzCYp0gS
fGnAwu9MkSiGfNf0Nt7clblK9cWYZ7ZNE0EjFg+edqI+g8na2thXaABUxMSTVm73
DSe9Me2u+owSWyYwuaQgG4DmQrQivsOsWbVnKXR5BcRYHGQ/r16IQboblUHOplEL
axdXHDY9nsjNHH54hYPs4uWxninsyhfwXftFH4DRwdrc2AT7S8NAJvX96+gI8rY=
=8yVZ
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello everyone!
I just wanted to say that I have been using OP25 with wireshark for a
while now and I want thank all you guys who endeavored to put OP25
together. And thank all of you guys very much for being patient and
helping me to clean myself of my errors which were many because I
never even used Linux before trying OP25 with GNUradio.
Thank you very much!
- --
Matt D
- ------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with undefined - http://www.enigmail.net/
iQEcBAEBAgAGBQJRU6sRAAoJEIC13XTKWhPP7zgIAKGtd2SZ2Fcg2PfjP1+Jykd2
zmCj137X0Z3pg43VH97mWKH0WtDZpC7s2h5MWBoIJg+dOswMXfliA7UoQaqVThqn
25mRURRPaYf07oFGZni5CH+6t7zvvbKduFDSdk5/Ze6HvrgijsKymVLvBSizwNjJ
gbhDkn17rHmSAS2v856zYG/3XFzhIdhkL/4181H2+C9gqGqx2OpTuBSYclUFAPVn
YQJT55dJhPe9ib1x6qeoLHRTCGAC86iav2yciqGLSP5QHPZMLmr3lSGeOEaCapA6
+jK3JMLYpHLZYD/oU/QnxKcSYkzNLgqPO8m3NInFhY8tnTwSvKnrMklFl8E9lyY=
=rQMr
-----END PGP SIGNATURE-----
Hello everybody, osmocom is down (sad) so I cant look for the answer
there. How do I tunnel the gnu radio into wireshark? is there a sink
that goes to an ip address or a usb port or something? I am stuck here
without the instructions on osmo.
Thanks,
Matt
-----------------
Hi guys. I set the sample rate at 1.024M because the RTL2832's minimum sample rate is 900k, the decimation at 32 and the samp_per_sym st 8 so I get a channel rate in the decoder of 38.4k. I watch the the FFT Plot until the carrier freq pops up, I center that channel on zero, narrow the bandwith a little, looks like good 4FSK. So then I go to the Dibits tab, change the marker to dots and there is the four lines streaming across the scope perfectly, not one dot out of place. But no audio. What am I doing wrong?
Thanks,
Matt
Hello everybody. I am trying to figure out why I get no audio from OP25. So I hooked up a scope plot to the audio output of the OP25 block. And nothing, the line is flat. Any ideas as to why OP25's audio output is dead?
Thanks,
Matt
----------
Hi everybody! Using the scripts on osmocom i put wireshark on my machine. The download, unpack, patch, build and install all went with no problem. Now trying to run wireshark the start up fails with this error:
ERROR:about_dlg.c:271:splash_update: assertion failed: (ul_sofar <= ul_count)
Has anyone dealt with this error or know any sort of solution?
Cheers,
Matt
Hi guys! I am wondering what is the optimal sampling rate for capturing of P25 transmissions. My main problem (aside from not getting audio) is that, while I can successfully capture at upwards of 2.0M, I can only play back at around 56k without greying out the gui. I am a little confused about this because I thought the throttle would control the clock speed for play back. Any suggestions on configuring the settings would be greatly appreciated.
Cheers,
Matt
-------------
Hello everyone! I am getting another weird error here. i received my USB e4k tuner and it was working. On OP25 i was using the scopes trying to figure how to get the four lines of dots and with RTL_FM i was getting audio, although the quality was bad. So i shut it down and i went out try on high ground but the signal was still weak. So i shut it down again, put myself within line of sight of the tower, and started it up and now OP25 dies like this:
Traceback (most recent call last):
File "/home/matt/gr-baz/gr-baz-master/samples/op25_grc.py", line 595, in <module>
tb = op25_grc()
File "/home/matt/gr-baz/gr-baz-master/samples/op25_grc.py", line 339, in __init__
self.gr_freq_xlating_fir_filter_xxx_0 = gr.freq_xlating_fir_filter_ccc(decim, (firdes.low_pass(1, samp_rate, xlate_bandwidth/2, 1000)), xlate_offset+xlate_offset_fine-fine_click_freq-auto_tune_offset_freq, samp_rate)
File "/usr/local/lib/python2.7/dist-packages/gnuradio/gr/gnuradio_core_general.py", line 6871, in low_pass
return _gnuradio_core_general.firdes_low_pass(*args, **kwargs)
IndexError: gr_firdes check failed: 0 < fa <= sampling_freq / 2
I have no idea how OP25 (same for RTL_FM) goes from working to failing with this error. Anyone have any ideas about this error?
Cheers,
Matt
Hello everybody! I want to use the SignalScope; especially the correlation tab looks very useful. However, i cant get numpy with the script on the SignalScope page. Any recommendations?
Hi everybody! I am in the process of collecting some signals. Do I want FM discriminator output or digital IQ? I dont know what kind of file to feed to the file source block: .wav or .mp3 or what?
Thanks,
Matt
----------------
I'm not much of a coder but I can assist in taking captures of a p25 phase II system. There is a site near me.
I have a gnuradio setup using rtlsdr dongles. Let me know how and what you would like me to capture. There are audio channels and a Motorola trunking control channel on this site. I've done some basic decoding of the control channel with some windows apps already but haven't tried anything with gnuradio yet.
Keith
ikj1234i <ikj1234i(a)yahoo.com> wrote:
>
>
>Hello Stevie
>
>Good to hear from you - this sounds like a good idea, for sure.
>
>It's always tempting to take such an opportunity as this to rewrite the entire system from scratch :)
>
>I think another piece to add to the puzzle that perhaps might be broken out as a separate item of concern would be UHD support.
>
>Mostly I think that would affect our py code but not so much our C++ blocks.
>
>Also when you added the fsk4 demod block to the op25 core it took me longer than it should but as of a few days ago I checked in several remaining stragglers to svn, all of our py code is now upgraded to use the in-tree version. I think there may have been one or two _very_ old ones that still use Franks' p25 and RD-LAP protocol handlers, but those apps date back to the days before our project had its own protocol processing...
>
>Also for GR 3.6 in addition to cmake there is a new directory structure that apps are to conform to.
>
>Looking further out there is some very exciting new stuff coming in GR for handling packet-oriented streams with timed transmission features. This looks like it should be a good fit for our repeater work, but will require effort to make use of the new capability.
>
>Finally, we're interested in P25 phase II, and are looking for RF captures of various phase II scenarios.
>
>Best
>
>Max
>
>--- In op25-dev(a)yahoogroups.com, Steve Glass <stevie.glass@...> wrote:
>>
>> Hi Everyone
>>
>> I think its time to organize a drive to move the code to the latest version
>> of GNURadio. The OP25 codebase is suffering badly from bit rot and that
>> needs fixing. GNURadio has evolved and developed many new features we've
>> not properly kept up with. Fixing the codebase will mean that we can get
>> people working with much less hassle than at present.
>>
>> I've created a wiki
>> page<http://op25.osmocom.org/wiki/wiki/ReengineeringPage>to act as the
>> starting point. I shall start opening tickets this week and
>> start mapping out the direction of the exercise. For now I want to focus
>> the effort on the core OP25 components and we can use GRC as our top-level
>> test harness. Take a look and take part in the discussion.
>>
>> Atb
>>
>> Steve
>>
>
>
>
>
>------------------------------------
>
>Yahoo! Groups Links
>
>
>
Hi Everyone
I think its time to organize a drive to move the code to the latest version
of GNURadio. The OP25 codebase is suffering badly from bit rot and that
needs fixing. GNURadio has evolved and developed many new features we've
not properly kept up with. Fixing the codebase will mean that we can get
people working with much less hassle than at present.
I've created a wiki
page<http://op25.osmocom.org/wiki/wiki/ReengineeringPage>to act as the
starting point. I shall start opening tickets this week and
start mapping out the direction of the exercise. For now I want to focus
the effort on the core OP25 components and we can use GRC as our top-level
test harness. Take a look and take part in the discussion.
Atb
Steve
using the command in terminal:
cd ~/src/op25/python
./audio_p25_rx.py -a
i get this error:
Using Volk machine: ssse3_32
Traceback (most recent call last):
File "./audio_p25_rx.py", line 1044, in <module>
app = stdgui2.stdapp(p25_rx_block, "APCO P25 Receiver", 3)
File "/usr/local/lib/python2.7/dist-packages/gnuradio/wxgui/stdgui2.py", line 38, in __init__
wx.App.__init__ (self, redirect=False)
File "/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/_core.py", line 7981, in __init__
self._BootstrapApp()
File "/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/_core.py", line 7555, in _BootstrapApp
return _core_.PyApp__BootstrapApp(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/gnuradio/wxgui/stdgui2.py", line 42, in OnInit
self._max_noutput_items)
File "/usr/local/lib/python2.7/dist-packages/gnuradio/wxgui/stdgui2.py", line 64, in __init__
self.panel = stdpanel (self, self, top_block_maker, max_nouts)
File "/usr/local/lib/python2.7/dist-packages/gnuradio/wxgui/stdgui2.py", line 86, in __init__
self.top_block = top_block_maker (frame, self, vbox, sys.argv)
File "./audio_p25_rx.py", line 97, in __init__
self.__init_gui(frame, panel, vbox)
File "./audio_p25_rx.py", line 298, in __init_gui
self.slicer = op25.fsk4_slicer_fb(levels)
AttributeError: 'module' object has no attribute 'fsk4_slicer_fb'
can anybody help me with this error please?