IQ stream busy - again...

  • 1
  • Question
  • Updated 3 years ago
  • Answered
Hi All,

I have three different computers I have run SmartSDR on and on each I've at one point in time accessed an IQ stream.

I reported a while back that IQ stream 1 was busy.  Got a little help from someone that suggested making sure my default playback device was not set to IQ stream.  Checked that.  I didn't have a lot of time so I moved on and used another stream.  IQ stream 1 kept reporting busy.

Yesterday and today I decided to go for a clean install on my development system due to several years of loading various stuff.  So I started with a fresh SSD, installed Win10 (I have to use it and support it for work) and went through the process to reload the things I use the most.

I loaded SmartSDR 1.6.x last.  I also loaded CW skimmer and SDR bridge.  

I went to configure CWSkimmer and found I could not use ANY of my IQ streams.  ALL reported busy when I tried to access and use them.  They all say in use by another computer.   But NO OTHER COMPUTER was actively doing anything.

It seems that IQ streams once accessed by a remote computer are tied up even if that remote computer is not really using them.

So just now I was on my newly reloaded dev computer trying to run CW skimmer.  No luck because ALL FOUR IQ STREAMS are busy.

I remembered last night that I have been running on my SurfaceBook.  The surface book was running but not running SmartSDR or anything that should have accessed IQ streams.  When I had been using with with CW skimmer I had to use IQ stream 4 since 1, 2, and 3 were busy.

So just now I shutdown the surface book completely.  I restarted on my dev computer SmartCAT and DAX.  Now I can use IQ stream 4 on this computer.

I have no idea where to go to release streams 1, 2 and 3.

Anyway to me this seems like a bug somehow that a remote computer can hold on to a stream even when it is not actually running any software that should use that stream.

I'm not sure if this analysis is correct but I'm baffled.  I did do a factory reset, and went and shutdown every other computer I'd ever run and perhaps used an IQ stream on.

Now I can use all four channels, sort of...  Any thoughts on what is going on?
Photo of Mark - WS7M

Mark - WS7M

  • 1282 Posts
  • 483 Reply Likes

Posted 3 years ago

  • 1
Photo of Jim Gilliam

Jim Gilliam

  • 924 Posts
  • 217 Reply Likes

Just out of curiosity, maybe you could disable all the network adapters temporarily on all devices and see if all the IQ streams get unassigned.

Jim, K6QE

(Edited)
Photo of Walt - KZ1F

Walt - KZ1F

  • 3040 Posts
  • 645 Reply Likes
As I recall sysinternal will map open file handles to owning processes. What do you mean by sort of?
Photo of Mark - WS7M

Mark - WS7M

  • 1282 Posts
  • 483 Reply Likes
Jim, I'll take a look at that.

Walt: It seems that if I wait long enough, one or more seem to get "unbusy".  Not sure how that is happening.

I have not used sysinternals for some time.  I will check that out.
Photo of Tim - W4TME

Tim - W4TME, Customer Experience Manager

  • 9186 Posts
  • 3541 Reply Likes
Official Response
This isn't a bug.  The situation is really straightforward once you realize that the DAX client is the software using the DAX channel resource.

In the radio there are only 4 or 2 DAXIQ resources based on the radio model.  If you install SmartSDR on multiple PCs, the DAX client installs and autostarts when you boot the multiple PCs.  

So if you enable a DAXIQ stream on a PC and do not disable it before you shut it down, when you boot that PC again and DAX starts, it will request a DAXIQ stream from the radio and if available will take ownership of it.  So while you think the PC isn't doing anything, it actually has allocated a DAXIQ resource. And if you reboot the radio, when it boots back up, the active DAX clients will automatically reconnect to the radio and reestablish their DAXIQ connection.

So if you start DAX and there are no more available DAXIQ streams available, the request to connect to one will be rejected because they are all taken.

To resolve this, you can (a) make sure you disable the DAXIQ channel when you stop using DAXIQ on the PC, (b) either not install DAX on all the other PCs by opting out of it on the SmartSDR for Windows installer or (c) go into the Startup folder and delete the DAX shortcut to prevent it from auto starting when the PC boots up.
Photo of Mark - WS7M

Mark - WS7M

  • 1282 Posts
  • 483 Reply Likes
Thanks Tim,

You are not supposed to be working on a Saturday!  Stop it!  Go do something fun!  

But hey thanks... that does explain it.  I did look at my Surface Book and all of them were on.  That explains why when I shutdown the surface book my dev computer could access them.
Photo of Tim - W4TME

Tim - W4TME, Customer Experience Manager

  • 9186 Posts
  • 3541 Reply Likes
It's Saturday?  I thought it was another weekday. ;-)
Photo of Mark - WS7M

Mark - WS7M

  • 1282 Posts
  • 483 Reply Likes
I am ashamed to admit that one day a number of years ago (the 80's to be exact) I got up, showered, drove to work thinking how little traffic there ways, got into the office (I was usually first in anyway), made coffee and got to work.

It wasn't until I run date on my computer did I notice it was Saturday.
Photo of Tim - W4TME

Tim - W4TME, Customer Experience Manager

  • 9186 Posts
  • 3541 Reply Likes
I haven't made it that far, but during a network site hot cut project where we were working 20 hour days consecutively, I did get up, shower. get dressed and went down stairs to have breakfast.  It was only after I asked the nice lady at the front desk where was the complimentary USA Today, only to be told they don't print them on weekends.  I went back upstairs, got back in bed and slept for 12 hours.
Photo of KY6LA - Howard

KY6LA - Howard, Elmer

  • 3735 Posts
  • 1599 Reply Likes
@TIM

This issue goes back to my suggestion a few months ago that we really need the ability to shut down SSDR on a remote computer -  This incident shows that we need to also add the ability to shut down DAX remotely as well..

When running WAN from a remote location, it becomes absolutely necessary to be able to temotely kill processes on the base or other connected computers...