Hi All,
Been trying to get wireshark patched and running for op25, without much success. The latest version for which there seems to be a patch is wireshark-1.8.5, which I did get built and running without the op25 patch or plugin. The problem seems to be with getting the plugin and patch via subversion. Trying to follow the posted instructions (from http://op25.osmocom.org/trac/about/wiki/WireSharkPagehttp://op25.osmocom.org/trac/about/wiki/WireSharkPage) works until attempting to execute
svn checkout http://op25.osmocom.org/svn/trunk/wireshark/plugins/p25 p25
at which point it just hangs for a while, and finally comes back and says that it's unable to connect to a repository at that url. There was what appears to be a mirror listed at http://www.sedition.org.auhttp://www.sedition.org.au which no longer seems to be operational.
I'm probably missing something simple, so I hope someone can point me in the right direction to get this working.
Thanks!
Below is a guide to the install process, please supply feedback so that it can be improved...
First, the testing has been done on the PI 3 "B" with the default install of Raspbian. You'll need to edit the /etc/apt/sources.list file; the file contains the needed "deb-src" line in it, but it's commented out. To fix, edit the file and remove the '#' so the 'deb-src' appears in column one of the file. Save the file, then proceed with the install as follows, first installing the OP25 prerequisites:
sudo apt-get update
sudo apt-get build-dep gnuradio
sudo apt-get install gnuradio gnuradio-dev gr-osmosdr librtlsdr-dev libuhd-dev libhackrf-dev libitpp-dev libpcap-dev git
then install OP25
cd ~
git clone https://git.osmocom.org/op25https://git.osmocom.org/op25
git checkout max
cd op25
mkdir build
cd build
cmake ../
make
sudo make install
sudo ldconfig
The previous generation OP25 application (scope.py) is being deprecated soon; instead we now use the new rx.py. This app is discussed in the README file that's in the OP25 repo that you checked out:
op25/gr_op25_repeater/apps/README
Max
While I still remembered the steps it took for me to get OP25 running, I
thought I would document them on my "John's Geekblog" blog. I broke it
into multiple parts; part 1 is at http://blog.febo.com/wp/?p=158.
I would welcome any additions/corrections!
I also recorded a few minutes of scanning last night -- it was Friday
evening and things were hopping so there are a number of missed
messages. That video is at https://www.youtube.com/watch?v=_1jO3yM0MIA
You may note that my GUI looks a bit different than yours. I spent some
time fiddling around to give more display space for the talkgroup tag.
I have no idea what I actually did (WX GUI is incomprehensible to me),
but I finally came up with a result that doesn't look too bad.
Thanks again for all the help!
John
Hi --
After looking at the archives, I think I may need to use a different software branch, but here's where I stand:
1. Downloaded OP25 from the oscomcom site.
2. Built without any problems on Mint 17.04 with Gnuradio 3.7.11. Computer is an i7 laptop with 8GB RAM. I'm using an RTL-SDR dongle for now; I can try a USRP but wanted to start with the simpler hardware.
3. Cobbled up .tsv files for local P25 system (Ohio MARCS-IP, Montgomery County site, C4FM). This site has 30 channels and the 2.4 msps rate of the dongle can't catch them all, but I am covering the control channel pllus several more channels.
4. Scope.py seems to run fine with all windows looking proper. Selecting some tabs causes timeout errors on the console, but those stop when I switch tabs..
5. I seem to be tuned to the control channel (853.600) and see a not-terrible constellation.
6. But I don't see any traffic decoding, much less get any audio (I know that the 30 channels at this site are spread over a bandwidth greater than the RTL-SDR dongle can provide; I can bring a USRP to the game but for now would be happy just to decode control data.
I'd appreciate any help, particularly on what the scope.py command line should look like. And should I be using a version other than what is on the Osmocom site?
Thanks much,
John Ackermann N8UR
jra(a)febo.com
Per my other note, I'm now hearing all sorts of stuff from the Ohio
MARCS-IP system. I have a few much more minor questions now:
1. What's the best way to capture the "traffic" output to a file? I
want to build a list of the frequencies and talkgroups actually used.
2. Can the whitelist and blacklist entries in trunk.tsv point to files,
or do I need to list each talkgroup separately on the system line in
trunk? (I'd like to build a list of the maybe 50 out of 350 local
talkgroups that I care to hear.)
3. What's needed to be able to put scope.py in /usr/local/bin to avoid
the need to go down into op25/op25/gr-op25_repeater?
4. I'm seeing occasional aU underruns on the console; I assume that's
normal. I also see one or two talkgroups with badly chopped up audio
that trigger a lot of aU. Is my guess correct that those are encrypted?
Thanks for the help; this is going to be fun to play with.
John
If anyone is experimenting with the latest Max branch and the new rx.py app, you may have noticed that phase 2 tdma audio isn't working yet. I have some quick and dirty code that implements the missing bits if anyone wishes to try it out. The three modified files can be found in my google drive:
https://drive.google.com/open?id=0B-...DFrTGx4Vkh3em8https://drive.google.com/open?id=0B-9lC78gYedOMDFrTGx4Vkh3em8
p25_frame_assembler_impl.cc
p25p2_tdma.h
p25p2_tdma.cc
Drop them into the op25/op25/gr-op25_repeater/lib directory, perform a 'make install' (from the build directory) and then add "-2" into the rx.py command line to enable tdma decode.
Hi all,
OP25 (specifically scope.py) doesn't seem to work out of the box with
the latest version of GNU Radio, seemingly because it relies on
deprecated components (WX widgets). Today I was able to massage the
code to get it semi-functional with 3.7.11 using my own custom flow
graph, which was reverse engineered from the scope.py application. When
I tune it to a voice channel of a Phase I system I am able to hear
audio, which I consider a success.
The changes I made to the code base are located here[0], and attached
to this email is my flow graph. I hope that this is helpful to people
new to the project.
I do have some questions though:
1. How can this flow graph be optimized? I am not a radio expert by any
means, and while this flow graph works, I don't know *why* it works.
Importantly, the MPSK Receiver block is deprecated and set to be removed
in a future release[1], so I'd like to change it to something more
idiomatic.
2. What do the veriables "beta", "gain_mu", "alpha", "gain_omega",
"if_rate", and "symbol_deviation" mean? How were they chosen? Why do
they work?
--
Alex
[0] https://github.com/centromere/op25
[1] https://github.com/gnuradio/gnuradio/issues/1083
Trying to get op25 on a new latop that has 12.04 (tried to install 10.04
but network drivers wont load).
Installed with the :
http://op25.osmocom.org/trac/wiki.png/wiki/InstallInstructionsPage
First issue was math header was not found, included it in
op25/gr-op25_repeater/lib/gardner_costas_cc_impl.cc
The with the new gcc naowing became an error so I disabled it with
make CXX_FLAGS="-Wno-narrowing"
Which got me to what seems to be libboost cant be linked.
[ 65%] Linking CXX shared library libgnuradio-op25_repeater.so
/usr/bin/ld: CMakeFiles/gnuradio-op25_repeater.dir/vocoder_impl.cc.o:
relocation R_X86_64_PC32 against symbol
`_ZN2gr13op25_repeater12vocoder_implC1EbbiPcib' can not be used when making
a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
op25/gr-op25_repeater/lib/CMakeFiles/gnuradio-op25_repeater.dir/build.make:593:
recipe for target 'op25/gr-op25_repeater/lib/libgnuradio-op25_repeater.so'
failed
make[2]: *** [op25/gr-op25_repeater/lib/libgnuradio-op25_repeater.so] Error
1
CMakeFiles/Makefile2:644: recipe for target
'op25/gr-op25_repeater/lib/CMakeFiles/gnuradio-op25_repeater.dir/all' failed
make[1]: ***
[op25/gr-op25_repeater/lib/CMakeFiles/gnuradio-op25_repeater.dir/all] Error
2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
Any ideas. Seems like I need to rebuild libboost?
Thanks,
Dylan
Hello,
Let's say you're scanning the airwaves in the frequency range of a
known P25 system and come across a spike in power at one particular
band that never shuts off.
* You should think that you've located a control channel, correct?
* If so, is it safe to say that the upstream and downstream channels
are side-by-side (one contiguous frequency band)?
* What is the most accurate way of determining whether what you've
discovered is a Phase I or Phase II system?
* When someone keys up a radio, is the following sequence of events
accurate?:
1. The radio sends a packet via the upstream control channel
indicating that it wishes to speak.
2. The fixed site sends a packet via the downstream control channel
indicating a frequency X on which it wants the speaker to transmit.
3. The fixed site sends a packet via the downstream control channel
instructing all radios in the talk group to tune in to a frequency Y.
4. The speaker transmits on frequency X, and the fixed site acts as a
repeater, re-broadcasting the audio to frequency Y.
--
Alex