Closed geelongmicrosoldering closed 2 years ago
Have a look at https://github.com/DanielO/multimon-ng/blob/master/example/multipager.py
How do I take advantage of that? I tried firing it up on my system and got an error about a missing module. I poked about and couldn't find any documentation.
What missing module?
Also, I wrote it for Python 2.7 and haven't tried upgrading it yet, what version of Python are you using?
It was written so I could get some experience with GNURadio Python blocks, not as a released product, hence the lack of documentation.
Have a look at https://github.com/DanielO/multimon-ng/blob/master/example/multipager.py
I only just noticed this today. Copied the script, installed some dependencies, got it working straight away.
Love your work!
That saves me so much time. Now just need to play with your script to block numeric pages, the channels i am not interested in etc.
I asked for 4 or 5 channels, you gave me "all the channels".
Thanks a bunch. If we ever meet, I will definitely find you a puppy
Have a look at https://github.com/DanielO/multimon-ng/blob/master/example/multipager.py
How do I take advantage of that? I tried firing it up on my system and got an error about a missing module. I poked about and couldn't find any documentation.
just install the missing modules. I already had gnuradio, python2.7.
I just had to replace /usr/local/bin/ with /usr/bin/ in a few places, and install python-daemon and trollius with pip:
pip install trollius
pip install python-daemon
Great, glad it works. It does "all channels" because that's just easier but you could disable some with some more hacking. Also pretty easy to filter them out in the DB.
Great, glad it works. It does "all channels" because that's just easier but you could disable some with some more hacking. Also pretty easy to filter them out in the DB.
oh i wasn't complaining, i was just showing you went above and beyond :)
ill have a play, might do an array of block channels to iterate or something. not really sure how i will approach it yet.
if i do anything cool that may be useful for anyone ill fork it or post here
Ok, I've done this in a really hacky way.. I'd like to redo it oneday, but better...
I wont fork it because I've bastardized it, and its somewhat embarrasing. However, when people do things and then never present the result its always frustrating for the next guy. So, here's what i ended up with:
Added support for blocklist file
Usage: -b blocklist.txt
or --blocklist blocklist.txt
eg blocklist.txt:
148887500.0
148862500.0
148837500.0
Removed POCSAG2400, FLEX, NUMERIC Because I didn't need it,but you may. It's only been removed from multimon-ng parameters, so it can be added back easily
Added support for Pagermon (this is the hacky bit..)
Note: You require the next 3 parameters to be provided, or none at all
Usage: -u "http://127.0.0.1/api/messages"
or --pmurl "http://127.0.0.1/api/messages"
(URL of Messages API for Pagermon Instance)
Usage: -k ABCD1234
or --pmapikey ABCD1234
(API Key of Messages API for Pagermon Instance)
Usage: -S sources.txt
or --pmsrclist sources.txt
(CSV file of frequency, source name for Pagermon)
Note: If a source is not included in this file, but gets decoded, the source will appear in pagermon as "UNK"
eg sources.txt:
"148812500.0","HOSPITAL"
"148787500.0","AMBULANCE"
"148762500.0","SOMETHING"
Usage: -U MyServer
or --pmuuid MyServer
(UUID for sending messages to Pagermon Instance (Optional, If you don't provide it, this will be the devices MAC))
csv
time
json
requests
uuid
Example Usage:
./multipager.py -a rtl -f 148762500 -c 12 -r 65 -b blocklist.txt -u "http://127.0.0.1/api/messages" -k ABCD1234 -S sources.txt -U MyServer
Or in my case (because I expect it to break now that i've touched it):
cd ~/multipager && while true; do ./multipager.py -a rtl -f 148762500 -c 12 -r 65 -b blocklist.txt -u "http://127.0.0.1/api/messages" -k ABCD1234 -S sources.txt -U MyServer;sleep 5;done
(set cwd to wherever script is, run it, and then do it again indefinitely any time it crashes after a 5 second delay
This seems to be working for me in intial testing, but i'll run it for a while to be sure. If I ever get around to redoing it, but better, I'll fork your one.
Thanks for your code @DanielO !!
I'll leave this open for a little while, then close
New Script: multipager_new.py.txt
(edited this a few times because i suck at code block formatting)
Closing because i was able to get this working successfully, although it could use some work
Ok, I've done this in a really hacky way.. I'd like to redo it oneday, but better...
I wont fork it because I've bastardized it, and its somewhat embarrasing. However, when people do things and then never present the result its always frustrating for the next guy. So, here's what i ended up with:
Hi there.,
I stumbled across this and don't know how to proceed. My Linux skills are basic. I am using a Raspberry pi 3b+ and have the pager frequency 153.050 decoding nicely.
I would like to add 147.8, 153.025, 153.350 to be simultaneously decoded by multimon.
I installed the pip dependencies mentioned but don't know what to do with the script or how to edit it/ run it.
Could you help me out please? I'm really stuck.
Thanks in advance.
Kind Regards
You can't add frequencies to it per se - you set a centre frequency and a number of evenly spaced channels and it decodes those channels in parallel.
Unfortunately it's more of a proof of concept rather than a completed application so it's not very user friendly.
Hi Daniel thanks for your response.
OK I understand. I had been playing with RTL_airband on the hope I could get it to work. I may go back to Openear/PDW on windows pc and just feed multiple pipes from SDRUno.
The idea of multimon-ng and the rpi / dongle was the fact it was compact and not too bulky, it could also be left on without having to worry about a large pc.
I will keep searching around for another way to achieve this, again thanks for your response
Hey guys, is it somehow possible to use the multipager option together with boswatch https://github.com/Schrolli91/BOSWatch by Schrolli91?
Right now I use Boswatch and have 2 RTL-Dongles running. I really would like to add more, but my raspberry does not handle more than 2. And it would really be nice to free up one of the rtl-dongles for other projects. multipager would be a perfect solution for this.
Hey guys, is it somehow possible to use the multipager option together with boswatch https://github.com/Schrolli91/BOSWatch by Schrolli91?
My German is rusty, but i think i got the gist of how BOSWatch works. You probably could, but it doesn't look like doing so would be very user friendly, given how the script works.
I feel like pagermon would be a better fit if you are primarily decoding pocsag/flex/multimon-ng supported protocols. The modifications i wrote above will feed a pagermon server directly. You can monitor a bunch of adjacent channels with 1 rtl-sdr. It also uses multimon-ng to decode, much like BOSWatch.
The issue you may run into, and it looks like someone above would have had, is that the channels have to be adjacent. You can block out ones you arent using, but if they are 5mhz apart, its not going to be achievable with an cheap rtl-sdr. So it really depends on the 2 frequencies you wish to monitor, how far apart they are, and if the space between them is divisible by the channel bandwidth (12.5?25khz?)
It will take some time to get working. Youll probably have to install some dependencies, mess around with different python versions, or change some source code to suit your needs. But once its working, it can take the place of 12 seperate dongles/antennas, so its worth persisting with.
If you had a wider bandwidth SDR, you could probably monitor a huge number of channels. Your only limit is hardware/resources.
Thank you for your informations. I will have a look at pagermon. The Main goals are decoding the messages and forward them to an alarm-server which than alarms via push messages.
The frequencies are in a range of 3,13MHz from deepest to highest frequency. Two of them are 0,24MHz apart - so these two should be fine with any SDR.
I have several noelec-RTL-SDR, some NEW-GEN-RTL-Dongles and an Airspy-HF+ Right now a Raspberry 3b takes both SDRs. I would get a Pi5 with 8 GB RAM wich could be powerful enaugh. Or I can setup an Intel PC with an older i5 - quadcore.
The frequencies are in a range of 3,13MHz from deepest to highest frequency. Two of them are 0,24MHz apart - so these two should be fine with any SDR.
It sounds like both of those things will be an issue. 10mhz apart means a single sdr would need more than 10mhz bandwidth, so you would have to use multiple sdrs
0.24mhz might be within the scope of a single sdr, but its not an evenly spaced channel arrangement. If there were 0.225/0.25mhz apart it would be ok, but if you used this script with a centre frequency right between the two 0.24mhz channels, both channels would be misaligned. It may still work, but it might not work very well
Less of an issue and more a cry for help from someone experienced with multimon-ng.
I'm trying to implement multimon-ng to decode multiple pager frequencies with a single rtl-sdr dongle. I know i can do this with multiple dongles using rtl_fm, and piping it into multimon-ng.
In theory, this could be done with rtl_airband, and I could potentially monitor a bunch of frequencies in the same band. The problem is i just cant seem to get this working. i can output all of the streams to either a raw IQ file, wav file, or pulse audio sink. i can then have a script for multimon-ng to load a file, or pipe the audio from the sink into it.
I've tried all approaches but i just can't seem to get multimon-ng to decode anything. Is anyone able to get this working? I potentially want to monitor 4 or 5 POCSAG frequencies in the same band, and it seems wasteful to have a separate dongle for each freq. If someone were to get this working, it would be super useful for many, and i would probably kiss your feet or give you a puppy.
Many thanks if anyone has some free time to look into this