EliasOenal / multimon-ng

GNU General Public License v2.0
923 stars 206 forks source link

Flex Group messge decoding #41

Closed Caveman192 closed 6 years ago

Caveman192 commented 8 years ago

I've got multimon working almost perfectly. Only when decoding a FLEX group message, the actual message contents is missing the last 2 or 3 characters.

I use a discriminator tap wich is split into 2 (seperatly amplified) outputs with level control. The first goes into a Windows machine running PDW, the second to a Linux Ubuntu 14.04 running Multimon.

These are the logs from both MultiMon and PDW. Note the missing characters in the last line of MultiMon.

Log from MultiMon: FLEX: 2016-01-22 14:23:58 1600/2/A 06.006 [001220619] UNK 00000000 FLEX: 2016-01-22 14:23:58 1600/2/A 06.006 [001220499] UNK 00000000 FLEX: 2016-01-22 14:24:00 1600/2/A 06.007 [3746629632] ALN 0wTest fijne dienst 20

Log from PDW: 15:24:14 22-01-16 06/007 GROUP-1 Test fijne dienst 20120 1220619 MKA Midden- en West-Brabant (Ambu 20-119) 1220499 MKA Midden- en West-Brabant (Monitorcode)

Any thought on this ?

Best regards,

joper112 commented 8 years ago

I have the same problems anyone a fix?

EliasOenal commented 8 years ago

Please provide a sample showing the issue.

joper112 commented 8 years ago

FLEX: 2016-03-03 18:24:39 1600/2/A 06.022 [001420999] UNK 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 FLEX: 2016-03-03 18:24:39 1600/2/A 06.022 [001420059] UNK 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 FLEX: 2016-03-03 18:22:34 1600/2/A 05.083 [000120998] UNK 00000000 00000000 00000000 00000000 00000000 00000000 FLEX: 2016-03-03 18:22:34 1600/2/A 05.083 [000120095] UNK 00000000 00000000 00000000 00000000 00000000 00000000 FLEX: 2016-03-03 18:22:58 1600/2/A 05.096 [001420999] UNK 00069ba6 00018411 00018411 0003841f 0003841f 0003841f 0003841f FLEX: 2016-03-03 18:22:58 1600/2/A 05.096 [001420059] UNK 00069ba6 00018411 00018411 0003841f 0003841f 0003841f 0003841f FLEX: 2016-03-03 18:22:58 1600/2/A 05.096 [000401998] UNK 00069ba6 00018411 00018411 0003841f 0003841f 0003841f 0003841f 001fffff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 FLEX: 2016-03-03 18:22:58 1600/2/A 05.096 [000400627] UNK 00069ba6 00018411 00018411 0003841f 0003841f 0003841f 0003841f 001fffff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 FLEX: 2016-03-03 18:22:58 1600/2/A 05.096 [000400561] UNK 00069ba6 00018411 00018411 0003841f 0003841f 0003841f 0003841f 001fffff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 FLEX: 2016-03-03 18:22:58 1600/2/A 05.096 [000400294] UNK 00069ba6 00018411 00018411 0003841f 0003841f 0003841f 0003841f 001fffff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 FLEX: 2016-03-03 18:06:26 1600/2/A 01.079 [001201999] UNK 00002a03 00063b1a 000c69aa 0012d74f 0012d705 0012d521 FLEX: 2016-03-03 18:06:26 1600/2/A 01.079 [001201925] UNK 00002a03 00063b1a 000c69aa 0012d74f 0012d705 0012d521 FLEX: 2016-03-03 18:06:26 1600/2/A 01.079 [001201441] UNK 00002a03 00063b1a 000c69aa 0012d74f 0012d705 0012d521 FLEX: 2016-03-03 18:06:26 1600/2/A 01.079 [001201301] UNK 00002a03 00063b1a 000c69aa 0012d74f 0012d705 0012d521 FLEX: 2016-03-03 18:06:26 1600/2/A 01.079 [001201300] UNK 00002a03 00063b1a 000c69aa 0012d74f 0012d705 0012d521 FLEX: 2016-03-03 18:06:26 1600/2/A 01.079 [001200198] UNK 00002a03 00063b1a 000c69aa 0012d74f 0012d705 0012d521 FLEX: 2016-03-03 18:06:26 1600/2/A 01.079 [001200191] UNK 00002a03 00063b1a 000c69aa 0012d74f 0012d705 0012d521 FLEX: 2016-03-03 18:06:28 1600/2/A 01.080 [001423001] UNK 00034413 00001be7 0014a83a 000827c9 000d9031 000cd9b1 00196120 001a3772 00193961 001bb4f3 001b32e7 000d19a0 001ca120 00187265

This is what i get

EliasOenal commented 8 years ago

I meant a sample of the signal prior decoding. A capture of the audio.

joper112 commented 8 years ago

I used a lot of commands but i dont get a .wav file. can you help me?

mvdswaluw commented 8 years ago

Try this... https://github.com/EliasOenal/multimon-ng/compare/master...mvdswaluw:patch-1

joper112 commented 8 years ago

I still get the unk 000000

joper112 commented 8 years ago

Can you stil help me. When you need à sample i need thee Command. I dont know how to get à sample

Shaggs commented 7 years ago

Use a sound recorder to record your output. On windows use the stanard sound recorder. On linux I have no idea what to use so google it.

muratcorlu commented 7 years ago

I have same problem. I get lots of UNK rows. I don't have any windows machines. How can I solve that problem?

I use raspberrypi to get and parse signals. My command is

rtl_fm -f 169.65M -M fm -s 22050 -p 83 -g 40 | multimon-ng -a FLEX -t raw /dev/stdin

Output is generally like that:

FLEX: 2017-03-19 17:55:29 1600/2/A 13.121 [001220641] UNK 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 17:55:29 1600/2/A 13.121 [001220499] UNK 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:00:07 1600/2/A 00.013 [001180000] ALN TESTOPROEP HOOFDSYSTEEM GMC BN (1)
FLEX: 2017-03-19 18:00:07 1600/2/A 00.013 [001180000] ALN TESTOPROEP BACK-UP SYSTEEM GMC BN (2)
FLEX: 2017-03-19 18:00:29 1600/2/A 00.025 [000120999] UNK 00000000 00000000
FLEX: 2017-03-19 18:00:29 1600/2/A 00.025 [000120175] UNK 00000000 00000000
FLEX: 2017-03-19 18:03:44 1600/2/A 01.001 [001523154] ALN A2 Ambulancepost Gouda Zuider IJsseldijk 50 GDA 2808PB VWS 16154 Ritnr: 45288
FLEX: 2017-03-19 18:03:51 1600/2/A 01.005 [000120999] UNK 00000000
FLEX: 2017-03-19 18:03:51 1600/2/A 01.005 [000120194] UNK 00000000
FLEX: 2017-03-19 18:05:14 1600/2/A 01.049 [000502999] UNK 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:05:14 1600/2/A 01.049 [000502620] UNK 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:05:14 1600/2/A 01.049 [000500898] UNK 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:05:14 1600/2/A 01.049 [000500868] UNK 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:05:14 1600/2/A 01.049 [000500850] UNK 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:05:29 1600/2/A 01.057 [000605310] UNK 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:05:29 1600/2/A 01.057 [000605070] UNK 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:05:29 1600/2/A 01.057 [000605069] UNK 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:05:29 1600/2/A 01.057 [000604002] UNK 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:06:18 1600/2/A 01.083 [000502999] UNK 00000000 00000000 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:06:18 1600/2/A 01.083 [000500898] UNK 00000000 00000000 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:06:18 1600/2/A 01.083 [000500868] UNK 00000000 00000000 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:06:18 1600/2/A 01.083 [000500850] UNK 00000000 00000000 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:07:19 1600/2/A 01.116 [000923113] UNK 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:07:19 1600/2/A 01.116 [000923100] UNK 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
FLEX: 2017-03-19 18:07:53 1600/2/A 02.006 [001503902] UNK 00000000
FLEX: 2017-03-19 18:07:53 1600/2/A 02.006 [001500142] UNK 00000000
FLEX: 2017-03-19 18:10:07 1600/2/A 02.077 [001180000] ALN TESTOPROEP BACK-UP SYSTEEM GMC BN (2)
FLEX: 2017-03-19 18:11:49 1600/2/A 03.004 [001420999] UNK 00000000
FLEX: 2017-03-19 18:11:49 1600/2/A 03.004 [001420043] UNK 00000000
FLEX: 2017-03-19 18:15:07 1600/2/A 03.109 [001180000] ALN TESTOPROEP HOOFDSYSTEEM GMC BN (1)
FLEX: 2017-03-19 18:15:07 1600/2/A 03.109 [001180000] ALN TESTOPROEP BACK-UP SYSTEEM GMC BN (2)
o commented 7 years ago

+1 same here

Decoding FLEX GROUP messages prints lines starting with UNK's. ALPHA (one line) messages works fine.

joper112 commented 7 years ago

Is there a solution for the group messages? Im using it for my demotica system when my pager code comes my lights going on but i dont get the group messages so it doesnt work....

EliasOenal commented 7 years ago

I think it has been established that it's currently broken. I personally never used the FLEX decoder and it was contributed to multimon-ng by Craig Shelley. For it to get fixed someone has to step up and implement it. After all this is an open-source project with quite a volatile community, people just chime in and out as they please.

muratcorlu commented 7 years ago

Thanks for your information @EliasOenal

@craigshelley do you have any suggestion? If not, I'll try to learn debugging C :)

craigshelley commented 7 years ago

Hi, It's been a while since I last looked at this code but if I recall, UNK is displayed as a fallback if the message type is unknown, or hasn't been implemented in the code. The raw message data is then printed without decoding. It shouldn't be that difficult to add another message type. I'd need to familiarise myself with group messages, as they weren't very common in the signals that I was using during development.

Have a search through the code for UNK, it should be possible to make group messages be displayed as text.

Regards,

-- Craig

On 22 Mar 2017 10:26, "Murat Çorlu" notifications@github.com wrote:

Thanks for your information @EliasOenal https://github.com/EliasOenal

@craigshelley https://github.com/craigshelley do you have any suggestion? If not, I'll try to learn debugging C :)

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/EliasOenal/multimon-ng/issues/41#issuecomment-288356913, or mute the thread https://github.com/notifications/unsubscribe-auth/AL3CwPlxoqQaX6yEpVpldvpiFxUgPlz4ks5roPdRgaJpZM4HKZeI .

joper112 commented 7 years ago

Does someone a update?

Zanoroy commented 7 years ago

@muratcorlu Could you please record some raw data and send it to me, I think I have resolved this issue and would like to test it.

muratcorlu commented 7 years ago

@Zanoroy can you give me a quick information about how can I record raw data for you? I'm running it on a raspberrypi.

Zanoroy commented 7 years ago

Are you using RTL_FM to demodulate the radio stream?

If you are you can collect raw input for me by typing the following: rtl_fm -f ####M -s 22050 -p -19 > demodulatedfm.bin

Obviously change the #### to your receive frequency. Once you have a few minutes (or until you think we should have recevied a few pages over the air) hit ctrl-c and send me the file.

muratcorlu commented 7 years ago

Here is a record for a few minutes: demodulatedfm.bin.zip

That screenshot shows some p2000 messages that parsed in the same period on http://www.livep2000.nl/monitor/ : image

Zanoroy commented 7 years ago

@muratcorlu Could you collect more data, I was able to decode that file without issue.

muratcorlu commented 7 years ago

@Zanoroy Another record for longer period: demodulatedfm2.bin.zip

Zanoroy commented 7 years ago

@muratcorlu if you this version and recompile you will get your group messages correctly.

demod_flex_2.zip

Shaggs commented 7 years ago

@Zanoroy confirming fix works 100% on linux side by side with pdw. on FLEX 1600 didnt miss a beat good work all :) bye bye windows and pdw

Zanoroy commented 7 years ago

@muratcorlu I have updated the baseline code of demod_flex.c and the latest version is here https://github.com/zanoroy/multimon-ng/ this should resolve all outstanding issues that I am aware of now. I hope it works well for you.

Cheers

muratcorlu commented 7 years ago

@Zanoroy thank you!

Calimerorulez commented 7 years ago

@Zanoroy: I tested too, and works perfectly! Thanks!