|How many dropped frames to expect on a flex 6700|
Pre upgrade 0.04% dropped
Post fibre upgrade @ 3500km 0% (370 in 24million)
|By: marios added:08-11-2021 16:02|
|How to configure DH1TW's remote audio on a PC|
On the LOCAL PC (where the radio is )
Firstly navigate to this page
1. Download the latest release for windows eg 386 release
2. Extract all files in a folder on your LOCAL radio PC eg remoteAudio
3. Download NATS server from here eg nats-server-v2.6.4-windows-386.zip
4. Extract the files into the same folder as in 2 above
5. Open command prompt and run remoteAudio enumerate command from the remoteAudio folder
6. Note the sound cards found and look for the one that is connected to your radio eg Microphone (USB Audio CODEC). This is important for the config file
There are multiple host APIs. WASAPI seems to have low latency. MME tends to usually work with remote Audio. The Host API name appears in the enumerate command as follows. Ensure you copy it in the config file in the next step as shown below ie Windows WASAPI etc
If the sound card you are using to capture the audio from the radio is already the default you can use "default" for the device-name below. The name needs to match exactly as the enumerate function shows. For example, there is an extra space for the card shown above before the closing parenthesis.
7. Copy and paste the text below into notepad and modify the relevant fields that appear in red below. Save it in the same folder as all the other files and name it remoteAudio.toml
8. Ensure your soundcard is set to 48000 either 1 or 2 channels depending on whether you want 1 or 2 channels. To do this, go to START->settings-> choose sound-> scroll down to input devices. Ensure you have the right sound card selected and click Device properties and then from new screen additional device properties, Advanced tab and select 48000 1 or 2 channels.
9. You need to TCP port forward the port for remote audio eg 4222 in you router You need to look at your router manual on how to do this
10. From command prompt run the nats server
11. from another command prompt run remoteAudio.
remoteAudio.exe server nats --config remoteAudio.toml
If all is well, you should see the following screen. Occasionally you may get a sound card error in which case try a different card or hostAPI. MME usually works but has worse latency. If you get a non-sound card error try the command again. Occasionally you may have to try this command 2-3 times to get this to work.
On the REMOTE PC (where you are):
1. Download the latest release for windows eg 386 release
2. Extract all files in a folder on your REMOTE radio PC eg remoteAudio
3. You do NOT need NATS here
4. Copy and paste the config file in the box below in notepad , replace red text with your details and save it as remoteAudio.toml Ensure user and password are the same as you have defined in step 7 above
5. From your remote PC, start command prompt and navigate to the remote audio directory.
6. Execute: remoteAudio client nats --config remoteAudio.toml
if all is well you should see something like:
2021/06/27 19:01:47 webserver listening on localhost:9090
7. Open your browser and navigate to 127.0.0.1:9090
8. Click on the RX AUDIO button and if all is well button turns Green and you should hear your radio audio
BIG THANKS TO DH1TW for writing great software. Enjoy!
|By: marios added:27-06-2021 11:00 (modified: 07-11-2021 08:28)|
|Why you cant do (smooth) 2BSIQ with one flex (yet)!|
I really like my flex 6700. It's a great radio that allows me to operate very easily remote. Over the last 2 years I am pushing it to the limit and I have managed with the right filters to operate SO2R however my ultimate challenge is work 2BSIQ. No matter how hard I tried, the synchronisation is poor and here is why:
For people who do not know what 2BSIQ is , please read here.
In summary, you are running 2 QSOs in parallel in PERFECT synchronisation as shown in this diagram by CT1BOH:
Although the flex lets you switch both your TX and RX focus to theoretically achieve the above, the audio from the flex gets interrupted for approximately 160ms when the TX focus is changed and the radio is on TWO bands. Even without transmitting. The silence is present in BOTH VFOs/Slices.
This is the audio recording from the flex with a TX focus change on TWO bands:
It is important to note that this has nothing to do with latency. The brain can cope with latency, however the brain cannot cope with no audio. Essentially this means that as soon as you finish transmitting on the first band and try to transmit on the second band, the first 160ms of audio is lost. If for example you get called by CR6K at 40wpm, you will probably only hear R6K because C would have been sent during the 160ms period of silence. This will result in a repeat and the perfect synchronisation of 2BSIQ is lost.
This silence is present both locally and remote. If you have a flex try it: SO2R profile. Slice A on one band, slice B on second band, headphones each slice on one ear. Swap TX focus by clicking on the non-red TX button, notice a short silence when you press!
Flex suggest that this 160ms silence is needed for essential internal switching. That's a long switching interval....! They did say they may look into it. I hope its fixable!
I had an email to be told that it IS possible to use the flex for 2BSIQ with rates over 200/hr however the experience is not as good as you would expect on 2xK3s. Of course it is technically possible to do all the switching with flexes OTRSP but the audio pauses are disruptive. I have done it for a shortwhile too but the number of repeats as the first letter of someone's call is missed makes this so difficult to do. This is kind the point of my article. I am just hoping that flex is going to improve the audio silence soon.
|By: marios added:27-07-2021 16:14 (modified: 21-11-2021 10:51)|
|Investigating Flex 6700 total latency|
Inspired by Andy KU7T excellent write-up I wanted to look at my own flex radio 6700 setup and measure the TOTAL latency at around 3500km.
Whilst using the flex maestro remotely, there is a perceivable high audio latency which makes it extremely difficult to use for high rate contests. KU7T in his tests showed that the flex takes a mimimum of 48ms to process an RF signal and output it to the speakers at the front of the radio, so the minimum latency you can expect is around 50ms...
Questions to answer:
a) What is my station's Total Latency ie from Signal to Ear at 3500km for my 6700?
b) How does it compare with other remote stations?
Inspired by KU7T I measured the following setup :
6700--- ROUTER---ADSL------3500km----------FIBRE----- ROUTER---PC or Ipad or Maestro [no wifi anywhere]
To measure the latency I used a win 10 PC (@3500km from radio) with a behring uca-202 USB sound card attached to it. Any sound card with stereo line-in sound card should work.
The UCA202 uses RCA as inputs for L and R channels. I used 2x RCA to mono phono cables. One for the REFERENCE signal (real time) [L] and one for the test signal [R].
The test signals were one of following:
a) Maestro model A (running v 3.1.12 also 3.2.31), connected via ethernet, using audio from headphones output
b) Ipad Pro 2020, running smartSDR app (V3.9.12) with a VA-UC006 USB-C dock, ethernet and SoundBlaster SB1920 sound card with audio out
c) RemAud (by DF3CB) v2.1 encoding at PCM 22Khz, 16bit stereo (10ms buffer). I used my PCs integrated sound card and connected the RCA to phono cable from the headphone output of the PC to the R INPUT channel of the UCA202.
d) Imac late 2013 running Catalina, ethernet and smartsdr OS 1.4.32
e) iPhone X smartSDR 3.9.12 WIFI, iOS 14.4 (large audio buffer both enabled and dsiabled)
f) Windows 10 PC (i5-7400) runnung smartSDR 3.1.12 ethernet
Variables and other settings:
Filter sharpness (maestro menu->Phone/CW->filter options): Settings 1-4 (1=low latency)
Ipad/Iphone SmartSDR app was set to NO (disabled) Large audio buffer (Settings->extended Settings)
For real time reference I used a KX3 (@3500km from flex) with a 5m wire as an antenna and tuned onto any signal I could hear on 40m.
I then tuned the flex at exactly the same frequency and using audacity I captured BOTH signals as described by KU7T and calculated the latency.
Tip: In audacity select: show Length and end of selection at the bottom of the screen and time format hh:mm:ss + milliseconds
I measured differences on 2-3 different signal times to ensure repeatability.
To help answer the second question, I measured the latency from two of my friends' remote setups:
a) CR6K running remaud V2.1 8Khz PCM buffer 20ms
b) G5W running FTDX101 using yaesu SCU-LAN app with audio RX buffer set to minimum (100ms)
Network latency was obtained using the ping command. This is Round Trip Time. In my case in was 95ms ie approx 48 ms each way.
All values in ms
$ ping 95ms
^ Large audio buffer disabled
£ Large audio buffer enabled
With regards to other stations total latency:
CR6K total latency of 202ms ping time 46ms
G5W total latency of 199ms ping time 47ms
Other solutions tested:
DH1TW's Remote Audio solution on a raspberry pi streamed to the same software running on an imac (tested @ED1R) produced a total latency of 100ms and a non-network latency of 50ms which is pretty impressive... More experiments of this on the PC soon.
Results show an unacceptably high latency for maestro or stock smartSDR for the PC of 588ms/608ms. Using an Iphone X and Ipad Pro seems to have the best result with a total latency of 80 and 88ms respectively. The large audio buffer for iphone and Ipad for the low latency filter results in a latency of 107 and 150ms. Taking into account that the one way network latency is approx 48ms (ping time /2) then the non network latency (processing etc) for the ipad is hence 40ms which is comparable with what KU7T has published for the time it takes the 6600M to output audio from the speaker jack. This is an impressive 6.7x better than the best result achieved for the maestro or stock software. RemAud gives an alternative acceptable latency of 155ms. In his tests, KU7T showed that latency can be as low as 98ms using this technique.
For this experiment I made the assumption that the KX3 has no processing latency to output the signal.
It is interesting that the results above for the flex compare favourably with other non-flex remote solutions and it seems that a latency of 200ms or less is appropriate to allow efficient contest operations.
To achieve lowest total latency for the flex 6700 it seems that best option is to use an iOS/OSX based device such as an iphone or ipad (pro) or imac with smartSDR, large audio buffer disabled and flex filter options setting set to Low latency. The flex has the potential of being a great remote contest radio provided that the stock software/maestro is NOT used to stream audio. Based on these results my maestro is now demoted to smart control! The community is eagerly awaiting software improvements by flex on the remote side.
Many thanks to KU7T for sharing the methodology to the world and inspiring more experimentation. Also thanks to CT1ILT and G3BJ for allowing me access to their stations to make these measurements. DH1TW for his help with measuring Remote Audio solution.
Flex Helpdesk acknowledge that this is a known issue and is to do with Windows Audio latency issues beyond their control but are looking at possible solutions! Remaud which also uses windows seems to achieve a lower latency so it is theoretically possible to improve the flex software by changing the design.
Repeated mearements for the ipad and new measurements for iphone X and iMac added as well as reference measurements to CR6K and G5W.
Added windows smart SDR measurenents.
Added remote audio measurements
|By: marios added:22-02-2021 11:28 (modified: 11-04-2021 20:28)|