Re: [sparksdr] Abridged summary of

Skip to first unread message

Juergen Sturhahn

Oct 12, 2022, 1:41:24 PM10/12/22

Hi Alan,

after looking at the screenshots again and the audio bursts between 180 and 300 Hz I have tried to use VB cable instead of VAC, something I could do by myself. Indeed: the bursts have disappeared now and the difference between SparkSDR FT8 and DigiU is between 2 and 3 dB (average) only, a situation I can live with somehow. I don't know if this is specific for my situation or if others have similar findings, but if so, a note in the user manual could be helpful for others who want to use SparkSDR.

Today I have found another issue, however, after I tried to use 4 instances of SparkSDR FT8 together with sparksdr2dxc to have my own skimmer and using DigiU at the same time. Every time when I changed the frequency in DigiU to go from e.g. 20 to 10 m sparksdr2dxc stopped working and I had to restart the program. I don't know if this is caused by the websocket which is used for this feature (telnet cluster) or if there might be a problem in the program itself. Might be that somebody can duplicate this behaviour so that it can be evaluated a little bit better.


Juergen, DL8LE

Am 12.10.2022 um 15:13 schrieb
"" <>: Oct 11 11:27PM -0700

Hi Juergen,
are you using the same vac for two virtual receivers at the same time? If
so all sorts of odd things could happen, at best the audio from both will
be added together.
Brian VK4BAP <>: Oct 12 03:21AM -0700

Hi Alan,
I hadn't seen that you have now added RawIQ to the modes. Is there any
documentation? I'm happy to use VAC - just set (like DigiU) Audio Output to
cable A input, Audio Input to cable B ...more
You received this digest because you're subscribed to updates for this group. You can change your settings on the group membership page.
To unsubscribe from this group and stop receiving emails from it send an email to

Josh Logan

Oct 12, 2022, 5:23:16 PM10/12/22
to Juergen Sturhahn, SparkSDR

I have seen sparksdr2dxc crash, I run it in a PowerShell while true loop, so when it crashes it just starts right back up.

73, KD7HGL

You received this message because you are subscribed to the Google Groups "SparkSDR" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To view this discussion on the web visit

Oct 13, 2022, 2:46:32 AM10/13/22
to SparkSDR
Hi Juergen and Josh,
you could try turning off the resampler in digiu mode to see if that is affecting the audio , if you have impulse noise the agc may be reducing the gain, you could test by turning it off and setting the gain manually.  Spark does have an advantage in local decoding by avoiding any vac issues and applying an optimised 'after the event' agc to the whole data block, but when I test here the difference is small.

The spark logs might help in finding the cause of the sparksdr2dxc crash. 

73 Alan M0NNB

Juergen, DL8LE

Oct 13, 2022, 9:55:39 AM10/13/22
to SparkSDR
Hi Alan,

there is no change in the audio bursts after trying your proposals when using vac. Therefore I assume it is really a vac issue, might be in combination with my Asus notebook. As the VB virtual cable is working without problems, I can live with this situation. I have also asked DG3YCB, who is a member of the developing team of WSJT-X and made a very nice improved version of WSJT-X, to consider using the raw data. He is telling me, however, that they have other priorities at the moment because of the huge effort needed to implement this.

Regarding the sparksdr2dxc problem I have looked into the logs but - very sorry for this - cannot make the right conclusions from the log:

12.10.2022 19:42:58 v2.0.17.0
Sending Discovery on
12.10.2022 19:42:58 v2.0.17.0
Sending Discovery on
12.10.2022 19:42:58 v2.0.17.0
SparkServe Start
The underlying listener has failed to start.
Void startReceiving()
   at WebSocketSharp.NetCore.Server.WebSocketServer.startReceiving()
   at WebSocketSharp.NetCore.Server.WebSocketServer.start(ServerSslConfiguration sslConfig)
   at WebSocketSharp.NetCore.Server.WebSocketServer.Start()
   at SparkSDR.Models.SparkServe.Start(wirelessModel model)
Normalerweise darf jede Socketadresse (Protokoll, Netzwerkadresse oder Anschluss) nur jeweils einmal verwendet werden.
Void UpdateStatusAfterSocketErrorAndThrowException(System.Net.Sockets.SocketError, System.String)
   at System.Net.Sockets.Socket.UpdateStatusAfterSocketErrorAndThrowException(SocketError , String )
   at System.Net.Sockets.Socket.DoBind(EndPoint , SocketAddress )
   at System.Net.Sockets.Socket.Bind(EndPoint )
   at System.Net.Sockets.TcpListener.Start(Int32 )
   at System.Net.Sockets.TcpListener.Start()
   at WebSocketSharp.NetCore.Server.WebSocketServer.startReceiving()
12.10.2022 19:42:58 v2.0.17.0

The process cannot access the file 'C:\Users\Jürgen\AppData\Roaming\m0nnb\SparkSDR2\qsolog\sparksdrqsolog.db' because it is being used by another process.
Microsoft.Win32.SafeHandles.SafeFileHandle CreateFile(System.String, System.IO.FileMode, System.IO.FileAccess, System.IO.FileShare, System.IO.FileOptions)
   at Microsoft.Win32.SafeHandles.SafeFileHandle.CreateFile(String , FileMode , FileAccess , FileShare , FileOptions )
   at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String , FileMode , FileAccess , FileShare , FileOptions , Int64 )
   at System.IO.Strategies.OSFileStreamStrategy..ctor(String , FileMode , FileAccess , FileShare , FileOptions , Int64 )
   at System.IO.Strategies.FileStreamHelpers.ChooseStrategyCore(String , FileMode , FileAccess , FileShare , FileOptions , Int64 )
   at System.IO.Strategies.FileStreamHelpers.ChooseStrategy(FileStream , String , FileMode , FileAccess , FileShare , Int32 , FileOptions , Int64 )
   at System.IO.FileStream..ctor(String , FileMode , FileAccess , FileShare , Int32 , FileOptions )
   at LiteDB.Engine.FileStreamFactory.GetStream(Boolean canWrite, Boolean sequencial)
   at LiteDB.Engine.StreamPool.<>c__DisplayClass3_0.<.ctor>b__0()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode )
   at System.Lazy`1.ExecutionAndPublication(LazyHelper , Boolean )
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.get_Value()
   at LiteDB.Engine.DiskService..ctor(EngineSettings settings, Int32[] memorySegmentSizes)
   at LiteDB.Engine.LiteEngine..ctor(EngineSettings settings)
   at LiteDB.ConnectionString.CreateEngine()
   at LiteDB.LiteDatabase..ctor(ConnectionString connectionString, BsonMapper mapper)
   at LiteDB.LiteDatabase..ctor(String connectionString, BsonMapper mapper)
   at SparkSDR.Models.QSOLog..ctor(String filename)
   at radio.wirelessModel..ctor()

Therefore I re-start sparksdr2dxc again every time I change the band in DigiU which is not convenient but at least a way to continue listening and using this nice feature (again: thanks to Andy and to you!).


Juergen, DL8LE
Reply all
Reply to author
0 new messages