I am searching for some hints on how to get working OP25 (Boatbod version - downloaded from git a couple of weeks ago) on a Raspberry Pi 3 running Raspbian Buster. The signal is received using a common RTL2838 usb key.
My goal is to decode a DMR unencrypted signal on the Raspberry and play the audio using the analog output. I have no doubts about the frequency of the signal and the possibility to decode it because I have been able to get it working on a common pc using gqrx and DSD+ on wine.
Logging the execution of multi_rx.py something seems to get decoded correctly, for example I can find rows like these:
and some line with voice data:
The problem is that I don't hear anything and I have some doubts on how to configure it correctly.
So far I understood that (please correct me if I am wrong):
I tried with:
Your help will be greatly appreciated - Thank you.
My goal is to decode a DMR unencrypted signal on the Raspberry and play the audio using the analog output. I have no doubts about the frequency of the signal and the possibility to decode it because I have been able to get it working on a common pc using gqrx and DSD+ on wine.
Logging the execution of multi_rx.py something seems to get decoded correctly, for example I can find rows like these:
Code:
12/27/20 18:29:23.138410 [-1] Slot(1), CC(7), Data Type=9, gly_errs=0
12/27/20 18:29:23.138436 [-1] Slot(1), CC(7), IDLE
12/27/20 18:29:23.204433 [-1] Slot(0), CC(7), Data Type=9, gly_errs=0
12/27/20 18:29:23.204602 [-1] Slot(0), CC(7), IDLE
12/27/20 18:29:23.232538 [-1] Slot(1), CC(7), Data Type=9, gly_errs=0
12/27/20 18:29:23.232713 [-1] Slot(1), CC(7), IDLE
12/27/20 18:29:23.309000 [-1] Slot(0), CC(7), Data Type=9, gly_errs=0
12/27/20 18:29:23.309155 [-1] Slot(0), CC(7), IDLE
12/27/20 18:29:23.326471 [-1] SLCO=0x0, NULL MSG
12/27/20 18:29:23.326668 [-1] Slot(1), CC(7), Data Type=9, gly_errs=0
12/27/20 18:29:23.326719 [-1] Slot(1), CC(7), IDLE
12/27/20 18:29:23.342941 [-1] Slot(0), CC(7), Data Type=9, gly_errs=0
12/27/20 18:29:23.343141 [-1] Slot(0), CC(7), IDLE
O12/27/20 18:29:23.512014 [-1] Slot(1), CC(7), Data Type=9, gly_errs=0
and some line with voice data:
Code:
12/27/20 20:43:41.548739 [-1] Slot(1), CC(7), Data Type=9, gly_errs=0
12/27/20 20:43:41.548904 [-1] Slot(1), CC(7), IDLE
12/27/20 20:43:41.560564 [-1] Slot(0), CC(7), PI(0), EMB lcss(1), qr_errs=0
12/27/20 20:43:41.560751 [-1] Slot(0), CC(7), BS VOICE
12/27/20 20:43:41.560812 [-1] AMBE 55 34 40 90 68 db 80 errs 0 err_rate 0.000000
12/27/20 20:43:41.560902 [-1] AMBE b8 21 a0 b9 2b f0 80 errs 0 err_rate 0.000000
12/27/20 20:43:41.560956 [-1] AMBE c8 21 88 f8 aa f1 00 errs 0 err_rate 0.000000
O12/27/20 20:43:41.638785 [-1] Slot(1), CC(7), Data Type=9, gly_errs=0
12/27/20 20:43:41.638938 [-1] Slot(1), CC(7), IDLE
12/27/20 20:43:41.662326 [-1] Slot(0), CC(7), BS VOICE
12/27/20 20:43:41.662520 [-1] AMBE 8c 28 6e 40 ca 11 80 errs 6 err_rate 0.006384
12/27/20 20:43:41.662607 [-1] AMBE c6 1b 4a 41 02 12 80 errs 7 err_rate 0.013513
12/27/20 20:43:41.662685 [-1] AMBE 82 0d 25 85 c9 75 00 errs 8 err_rate 0.021349
The problem is that I don't hear anything and I have some doubts on how to configure it correctly.
So far I understood that (please correct me if I am wrong):
- to decode DMR I must use multi_rx.py, because rx.py works only for OP25
- multi_rx.py does not support the '-U' to enable built-in udp audio player, therefore some specific configuration has to be used in the json file
I tried with:
- setting in the json file different "destination" in the "channels" section, for example
- udp://127.0.0.1:56120 -> it didn't work. In the log I find the following line: op25_audio:
pen_socket(): enabled udp host(127.0.0.1), wireshark(56120), audio(56120) - that according to something I found in this forum is a wrong behavior, in fact nothing on port 56120 is listening
- file://out1.raw -> I tried this just for curiosity, to check the output. Strangely it didn't work either, the file gets written but just few bytes while I was expecting something more after some VOICE received. By the way, how could I read the raw file once written?
- udp://127.0.0.1:56120 -> it didn't work. In the log I find the following line: op25_audio:
- using the "audio" section in the json file, with this content:
Code:
"audio": {
"module": "sockaudio.py",
"instances": [
{
"instance_name": "audio0",
"device_name": "default",
"udp_port": 23456,
"audio_gain": 1.0,
"number_channels": 1
}
]
}
In this case in pavucontrol a Python application appears as output, but again, no audio when VOICE is received.
Could you help me with some hints? I don't want to stream the content, but just play it locally (possibly also save it as audio file). It's really not clear to me which is the correct way to configure OP25 in such a case (and in general with multi_rx.py), should I use "destination" in the "channels" section or the "audio" section? Is it better to use liquidsoap? (but I don't need to stream the audio on another pc...). Should multi_rx.py be used in conjunction with some other programs piping the audio to it? (aplay for example).Your help will be greatly appreciated - Thank you.


