Keyboard Shortcuts
ctrl + shift + ? :
Show all keyboard shortcuts
ctrl + g :
Navigate to a group
ctrl + shift + f :
Find
ctrl + / :
Quick actions
esc to dismiss
Likes
- Qradiolink
- Messages
Search
Re: QRadioLink connect to SVXReflector /SVXLink network
However, if it helps you, I've pushed a small temporary change for the UDPHi Waldek, Actually, please don't use that commit. It is very stupid and will not work, because it also tries to bind and listen to the remote IP address. I will write something that actually works when I have some time, hopefully sometimes this week. Adrian |
Re: QRadioLink connect to SVXReflector /SVXLink network
SP2ONG Waldek
Hi Adrian,
Yes Orange Pi Zero has not enough memory to run QRadioLink , maybe when we use Orange Pi Zero 3 with 2 or 4Gb RAM and OZPI Zero v3 has faster CPU it is possible run QradioLink but I use Orange Pi Zero v1.x which has 512 Mb RAM is not good for QRadioLink for this reason I am looking to connect audio svxlink via UDP across network :-) 73 Waldek |
Re: QRadioLink connect to SVXReflector /SVXLink network
On Sunday, 17 September 2023 09:31:18 EEST you wrote:
Hi Adrian,I understand. It would be interesting to try to run qradiolink on the Orange Pi zero. There is an USB 2.0 port, the CPU seems powerful enough, the only possible problem could be the amount of memory. I've never tried to run it on such a small board, but it is possible by starting in headless mode, where none of the GUI stuff will use up CPU. If you do try that, let me know how it works, I might use the information in future efficiency optimizations. Otherwise, if you build now the "next" branch on codeberg, the IP address of the VOIP server is used for UDP networking too. Good luck and let me know how it goes. I currently run it on the Rolink network and the performance seems ok. Best regards, Adrian |
Re: QRadioLink connect to SVXReflector /SVXLink network
SP2ONG Waldek
Hi Adrian,
toggle quoted message
Show quoted text
Nothing, or rather the fact that I have my FM hotspot permanently running on Orange Pi Zero, which runs svxlink connected to FM POLND ( ), so I decided that since I already have svxlink, it would be enough to add audio support to it via UDP and connect it to QRadioLink On Sat, Sep 16, 2023 at 06:05 PM, Adrian M wrote:
Obviously yes, you won't be able to use PTY squelch if running on separate |
Re: QRadioLink connect to SVXReflector /SVXLink network
On Saturday, 16 September 2023 19:01:40 EEST you wrote:
Hi Adrian,Hi Waldek, Obviously yes, you won't be able to use PTY squelch if running on separate machines. You can use CTCSS though. But just out of curiosity, what is preventing you from running svxlink on the same machine as qradiolink? Adrian I must use VOX in [Rx1] I know that it is not useful solution VOX |
Re: QRadioLink connect to SVXReflector /SVXLink network
SP2ONG Waldek
Hi Adrian,
Ok thanks, it will be useful to use UDP svxlink across network not only on local computer But I see you are defined "SVXLINK SQL path" in "General Setting" so if I will be use UDP via network not local machine it is not possible to use SQL PTY in QRadioLink so I must use VOX in [Rx1] I know that it is not useful solution VOX and I need to spend more time to adjust parameters VOX like SQl_HANGTIME=2500 VOX_FILTER_DEPTH=40 VOX_THRESH=600 |
Re: QRadioLink connect to SVXReflector /SVXLink network
On Saturday, 16 September 2023 12:32:08 EEST you wrote:
Hello Adrian,Hi Waldek, You're right, in the latest release it's only possible to use UDP audio from localhost. However, if it helps you, I've pushed a small temporary change for the UDP client here: on branch next. This will allow you to use the config file setting "voip_server" as the address for UDP audio. Or if you prefer from the Qt interface it's the address of the Mumble server. Just make sure to click Save in Settings after modifying that address. In a later release this address will be a separate setting to allow using different hosts for Mumble and UDP. Cheers, Adrian |
Re: QRadioLink connect to SVXReflector /SVXLink network
SP2ONG Waldek
Hello Adrian,
Sorry I haven't replied but I've been busy lately. Today I tried, but I understand that it is not possible to download audio via UDP from an address other than the local 127.0.0.1? I'm asking because I have my hostspt on OZPI and I also set it to support audio via UDP on an external address, but I don't see any way to set the IP address for UDP RX and TX I wanted to make sure that I have QradioLink on my other PC and I have communication via UDP audio with svxlink, which is on another PC. In Radio Setting I have UDP RX and TX audio ports set, can I set Ip addresses to SVXLINK in General Setting in RX audio args? I just don't know what the syntax is 73 Waldek |
Re: QRadioLink connect to SVXReflector /SVXLink network
Hi Waldek,
So the svxlink connection feature was released in version 0.8.10, but I was not satisfied with the carrier drops at the start of the transmission caused by flowgraph underruns. That issue should be fixed now in version 0.8.11 released today and the svxlink documentation in docs/ is updated. Note that network latency issues and packet loss can still cause carrier drops as there is no continuous carrier like on a real radio. Best, Adrian |
Re: QRadioLink connect to SVXReflector /SVXLink network
On Tuesday, 15 August 2023 12:53:06 EEST you wrote:
Please note that the MUTE_TX_ON_RX option is used in part and must beThe issue was not in svxlink (I think). It's more of a problem when using SQL_DET=VOX with UDP audio, because UDP datagrams stop arriving as soon as squelch is closed in qradiolink, and svxlink doesn't have a chance to do a vox detect on zero value samples. Anyway I've solved this now by setting SQL_DET=PTY and hooking qradiolink to this pseudo-tty. Hence a new setting in the General tab for SVXlink squelch PTY file path (needs to match PTY_PATH in svxlink.conf) Other important settings in svxlink are matching UDP ports, matching card sample rate and using CARD_CHANNELS=1 (mono audio). I think it works pretty well now, except for the short carrier drops in the first second or so of TX due to GNU radio underruns. I'm looking for ways to fix that. Below are some of my config values which you can use to test with the svxlink branch. If you confirm everything works fine I'll merge and release a new version. Start qradiolink headless with this command: qradiolink --headless --udp Or use the "UDP audio" button in the "Base station" tab while TX and RX are enabled. For simplex mode you need to disable Duplex in qradiolink and have a TX shift of zero Hz. ============= [GLOBAL] MODULE_PATH=/usr/lib/x86_64-linux-gnu/svxlink LOGICS=SimplexLogic,ReflectorLogic CFG_DIR=/etc/svxlink/svxlink.d TIMESTAMP_FORMAT="%c" CARD_SAMPLE_RATE=16000 CARD_CHANNELS=1 #LOCATION_INFO=LocationInfo LINKS=ReflectorUplink [SimplexLogic] TYPE=Simplex RX=Rx1 TX=Tx1 MODULES= CALLSIGN=YO8RZZ SHORT_IDENT_INTERVAL=10 LONG_IDENT_INTERVAL=30 #IDENT_ONLY_AFTER_TX=4 #EXEC_CMD_ON_SQL_CLOSE=500 EVENT_HANDLER=/usr/share/svxlink/events.tcl DEFAULT_LANG=en_US RGR_SOUND_DELAY=10 RGR_SOUND_ALWAYS=0 REPORT_CTCSS=103.5 #TX_CTCSS=ALWAYS MACROS=Macros FX_GAIN_NORMAL=0 FX_GAIN_LOW=-12 #ACTIVATE_MODULE_ON_LONG_CMD=4:EchoLink #QSO_RECORDER=8:QsoRecorder #ONLINE_CMD=998877 MUTE_RX_ON_TX=1 MUTE_TX_ON_RX=1 [ReflectorLogic] TYPE=Reflector HOST=localhost PORT=5302 CALLSIGN="yo8rzz" AUTH_KEY="password" JITTER_BUFFER_DELAY=500 DEFAULT_TG=226 MONITOR_TGS=226 TG_SELECT_TIMEOUT=99999 [ReflectorUplink] CONNECT_LOGICS=SimplexLogic:99:YO8RZZ,ReflectorLogic DEFAULT_ACTIVE=1 TIMEOUT=10 [Rx1] TYPE=Local #RX_ID=? AUDIO_DEV=udp:127.0.0.1:4937 AUDIO_CHANNEL=0 AUDIO_DEV_KEEP_OPEN=0 SQL_DET=PTY SQL_START_DELAY=100 SQL_DELAY=0 SQL_HANGTIME=0 #SQL_EXTENDED_HANGTIME=1000 #SQL_EXTENDED_HANGTIME_THRESH=15 SQL_TIMEOUT=1000 VOX_FILTER_DEPTH=10 VOX_THRESH=1 #CTCSS_MODE=2 CTCSS_FQ=103.5 #CTCSS_SNR_OFFSET=0 #CTCSS_OPEN_THRESH=15 #CTCSS_CLOSE_THRESH=9 #CTCSS_BPF_LOW=60 #CTCSS_BPF_HIGH=270 #SERIAL_PORT=/dev/ttyS0 SERIAL_PIN=CTS #SERIAL_SET_PINS=DTR!RTS #EVDEV_DEVNAME=/dev/input/by-id/usb-SYNIC_SYNIC_Wireless_Audio-event-if03 #EVDEV_OPEN=1,163,1 #EVDEV_CLOSE=1,163,0 #GPIO_PATH=/sys/class/gpio #GPIO_SQL_PIN=gpio30 PTY_PATH=/tmp/sql_pty #HID_DEVICE=/dev/hidraw3 #HID_SQL_PIN=VOL_UP SIGLEV_DET=NOISE SIGLEV_SLOPE=1 SIGLEV_OFFSET=0 #SIGLEV_BOGUS_THRESH=120 #TONE_SIGLEV_MAP=100,84,60,50,37,32,28,23,19,8 SIGLEV_OPEN_THRESH=30 SIGLEV_CLOSE_THRESH=10 DEEMPHASIS=0 #SQL_TAIL_ELIM=300 #PREAMP=6 PEAK_METER=1 DTMF_DEC_TYPE=INTERNAL DTMF_MUTING=1 DTMF_HANGTIME=40 DTMF_SERIAL=/dev/ttyS0 #DTMF_PTY=/tmp/rx1_dtmf #DTMF_MAX_FWD_TWIST=8 #DTMF_MAX_REV_TWIST=4 #1750_MUTING=1 #SEL5_DEC_TYPE=INTERNAL #SEL5_TYPE=ZVEI1 #FQ=433475000 #MODULATION=FM #WBRX=WbRx1 #OB_AFSK_ENABLE=0 #OB_AFSK_VOICE_GAIN=6 #IB_AFSK_ENABLE=0 [Tx1] TYPE=Local AUDIO_DEV=udp:127.0.0.1:4938 AUDIO_CHANNEL=0 AUDIO_DEV_KEEP_OPEN=1 PTT_TYPE=NONE PTT_PORT=/dev/ttyS0 PTT_PIN=DTRRTS #HID_DEVICE=/dev/hidraw3 #HID_PTT_PIN=GPIO3 #SERIAL_SET_PINS=DTR!RTS #GPIO_PATH=/sys/class/gpio #PTT_HANGTIME=1000 TIMEOUT=1000 TX_DELAY=0 #CTCSS_FQ=136.5 #CTCSS_LEVEL=9 PREEMPHASIS=0 DTMF_TONE_LENGTH=100 DTMF_TONE_SPACING=50 DTMF_DIGIT_PWR=-15 #MASTER_GAIN=0.0 #OB_AFSK_ENABLE=0 #OB_AFSK_VOICE_GAIN=-6 #OB_AFSK_LEVEL=-12 #OB_AFSK_TX_DELAY=100 #IB_AFSK_ENABLE=0 #IB_AFSK_LEVEL=-6 #IB_AFSK_TX_DELAY=100 |
Re: QRadioLink connect to SVXReflector /SVXLink network
SP2ONG Waldek
Please note that the MUTE_TX_ON_RX option is used in part and must be specified in [SmplexLogic]
This option is not used in the [GLOBAL] section See descriptions at MUTE_RX_ON_TX Set to 1 to mute the receiver when the transmitter is transmitting (default) or set it to 0 to make the RX active during transmissions. One might want to set this to 0 if the link is operating on a split frequency. Then the link can accept commands even when it¡¯s transmitting. The normal setting is 1, to mute the RX when transmitting. MUTE_TX_ON_RX Set to 1 to mute the transmitter when the squelch is open (default) or set it to 0 to make the TX active during squelch open. One might want to set this to 0 if the link is operating on a split frequency or if it¡¯s connected to some full duplex device. The normal setting is 1, to mute the TX when the squelch is open. |
Re: QRadioLink connect to SVXReflector /SVXLink network
SP2ONG Waldek
Yes but CARD_SAMPLE_RATE only supported sampling rates are: 16000 and 48000 it is not possible in this option select 8000 Hz
toggle quoted message
Show quoted text
Internally svxlink use 16 kHz (if I remember) On Tue, Aug 15, 2023 at 10:02 AM, Adrian M wrote:
|
Re: QRadioLink connect to SVXReflector /SVXLink network
It's already possible, I tested this by setting:One other important thing I noticed: in the [GLOBAL] section there is this config option: MUTE_TX_ON_RX=0 What I see on my svxlink version is that if I enable this (which makes sense for a simplex node) right after getting samples from the radio, the svxlink TX logic won't get enabled anymore when getting audio from svxreflector. So this means this option has to stay disabled otherwise the SDR won't transmit anything. The reason I'm sure this is svxlink, is that I can check that I don't receive any UDP datagrams anymore after the rx logic is activated via a radio PTT. Pretty important to note. Might be worth a bug report. Adrian |
Re: QRadioLink connect to SVXReflector /SVXLink network
On Tuesday, 15 August 2023 10:54:10 EEST you wrote:
Hi Adrian,It's already possible, I tested this by setting: CARD_SAMPLE_RATE=16000 in the [GLOBAL] settings. As far as I can tell, svxlink can do either 16000 or 48000. qradiolink now has a dropdown for UDP sample rate with the options 8000, 16000, or 48000 so it should work fine with either. Screenshot attached. Adrian |
Re: QRadioLink connect to SVXReflector /SVXLink network
SP2ONG Waldek
Hi Adrian,
In svxlink, it would be useful to be able to, for example, select the sampling frequency for the UDP stream AUDIO_DEV=udp:<ip>:<port>,<sample_rate> where default sample rate is 16 kHz AUDIO_DEV=udp:127.0.0.1:4321:8000 In many cases sample rate 8000 is sufficient and in the svxlink code it is possible to go to 8000 because it was done by DL1RHC in UsrpLogic |
Re: QRadioLink connect to SVXReflector /SVXLink network
Hi Waldek,
toggle quoted message
Show quoted text
I'm doing the direct UDP audio from svxlink to qradiolink. No USRP involved at the moment. I've solved it by adding a config option for UDP audio sample rate and resampling internally with speexdsp. RF to svxlink is fine now, but svxlink to RF has that issue with short interruptions in the first seconds due to buffer ping pong. I still need to refine the solution. If you want to try it out, check out the "svxlink" branch on codeberg. The solution will work with general UDP streaming not just svxlink, so aplay | nc will work as well. Adrian On 14 August 2023 17:15:27 UTC, SP2ONG Waldek <sp2ong@...> wrote:
Hi Adrian, |
Re: QRadioLink connect to SVXReflector /SVXLink network
SP2ONG Waldek
Hi Adrian,
toggle quoted message
Show quoted text
Note that UsrpLogic sends audio via UDP in 8 kHz USRP protocol and not 16 kHz , Because the standard in USRP used in DVSwitch/ Allstar Link is its own 8 khz audio and for this reason Adi DL1HRC made that audio via USRP is in 8 kHz On Sat, Aug 12, 2023 at 09:08 AM, Adrian M wrote:
But there's a couple of snags in the implementation of svxlink streaming which |
Re: QRadioLink connect to SVXReflector /SVXLink network
On Friday, 11 August 2023 21:13:21 EEST you wrote:
Hi Adrian,I figured it out eventually. I had a system instance of svxlink which was started by default (the init script is installed by apt). That was causing a conflict on the ALSA pulseaudio device. It works fine now, I've tested svxlink network to qradiolink TX.I need to refine the code and then move on to qradiolink RX to svxlink network. No, I mean svxlink to the network and M17 to RF. qradiolink now supports M17 RF tx/rx natively, so you can come in via M17 on the SDR RX and get output audio to a svxlink network. And viceversa, get audio from the svxlink network and transmit M17 over the air with the SDR. But there's a couple of snags in the implementation of svxlink streaming which are causing me some headaches. First of all qradiolink uses a sample rate of 8000 for audio (FM too) while svxlink can only go down to 16000. I've had to use speexdsp to resample audio internally. The second one is that qradiolink is designed to work with 40 ms sample packets (320 samples) while svxlink UDP streaming transmits somewhat arbitrary datagram sizes. This manifests into some buffer ping-pong at the start of the transmission and therefore some brief carrier drops (not good). Adrian |
to navigate to use esc to dismiss