BlueDV issues on Ubuntu 21 and Mono 6.8 #bluedv #linux


Dave Slotter, W3DJS
 

I am a long-time user of BlueDV under Windows. However, I am trying to run version 1.0.0.9609 under a modern version of Ubuntu Linux and am running into a number of issues. (Yes, I know 9610 is available, but repackaging the Windows version for Linux is a chore / pain.)

There are two issues:
1) GUI is mangled on 4K display
2) Cannot access sound hardware (i.e. crashes)


1) Mangled GUI
I have included an inline image of the BlueDV GUI to show the mangled display I am observing when the main display is set to 4K. Dragging the window to a non-4K display doesn't correct it.

Main window:
Screenshot from 2022-02-27 21-11-59.png

Preferences window (I have redacted sensitive information):
Screenshot from 2022-02-27 21-14-38.png

About Box:
Screenshot from 2022-02-27 21-19-59.png

2) Sound Crashes
a. When attempting to click "Mute spk" checkbox, BlueDV crashes:

Dump:

dave@Pluto:/usr/local/BlueDV$ mono BlueDV.exe
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: cHRM chunk does not match sRGB
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: cHRM chunk does not match sRGB
System.NotSupportedException: This functionality is only supported on Windows Vista or newer.
  at NAudio.CoreAudioApi.MMDeviceEnumerator..ctor () [0x00018] in <554b80148c284b99953f098db496ebd4>:0
  at BlueDV.Form1.checkBox1_CheckedChanged (System.Object sender, System.EventArgs e) [0x00000] in <52d530c3007f4ac8aac38af99ba2ae9b>:0
  at System.Windows.Forms.CheckBox.OnCheckedChanged (System.EventArgs e) [0x0001c] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.CheckBox.set_CheckState (System.Windows.Forms.CheckState value) [0x00032] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.CheckBox.OnClick (System.EventArgs e) [0x00042] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.ButtonBase.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) [0x00081] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.CheckBox.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) [0x00000] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message& m) [0x0007e] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) [0x0016f] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.ButtonBase.WndProc (System.Windows.Forms.Message& m) [0x0004e] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.Control+ControlWindowTarget.OnMessage (System.Windows.Forms.Message& m) [0x00000] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) [0x0000b] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.NativeWindow.WndProc (System.IntPtr hWnd, System.Windows.Forms.Msg msg, System.IntPtr wParam, System.IntPtr lParam) [0x0008e] in <a3daa9b84fd241a497578a25f68bc3c7>:0
 
b. When clicking on "AMBE" menu, BlueDV crashes (the first time):

Dump:
dave@Pluto:/usr/local/BlueDV$ mono BlueDV.exe
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: cHRM chunk does not match sRGB
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: cHRM chunk does not match sRGB
System.DllNotFoundException: winmm.dll assembly:<unknown assembly> type:<unknown type> member:(null)
  at (wrapper managed-to-native) NAudio.Wave.WaveInterop.waveOutGetNumDevs()
  at NAudio.Wave.WaveOut.get_DeviceCount () [0x00000] in <554b80148c284b99953f098db496ebd4>:0
  at BlueDV.soundcard.listPlayDevices () [0x00000] in <52d530c3007f4ac8aac38af99ba2ae9b>:0
  at BlueDV.Form1.aMBEToolStripMenuItem_Click (System.Object sender, System.EventArgs e) [0x00010] in <52d530c3007f4ac8aac38af99ba2ae9b>:0
  at System.Windows.Forms.ToolStripItem.OnClick (System.EventArgs e) [0x0001c] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.ToolStripMenuItem.OnClick (System.EventArgs e) [0x00017] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.ToolStripMenuItem.HandleClick (System.Int32 mouse_clicks, System.EventArgs e) [0x00000] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.ToolStripItem.FireEvent (System.EventArgs e, System.Windows.Forms.ToolStripItemEventType met) [0x00061] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.ToolStripItem.FireEvent(System.EventArgs,System.Windows.Forms.ToolStripItemEventType)
  at System.Windows.Forms.ToolStrip.OnMouseUp (System.Windows.Forms.MouseEventArgs mea) [0x00057] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message& m) [0x0007e] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) [0x0016f] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.ScrollableControl.WndProc (System.Windows.Forms.Message& m) [0x00000] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.ToolStrip.WndProc (System.Windows.Forms.Message& m) [0x00000] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.MenuStrip.WndProc (System.Windows.Forms.Message& m) [0x00000] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.Control+ControlWindowTarget.OnMessage (System.Windows.Forms.Message& m) [0x00000] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) [0x0000b] in <a3daa9b84fd241a497578a25f68bc3c7>:0
  at System.Windows.Forms.NativeWindow.WndProc (System.IntPtr hWnd, System.Windows.Forms.Msg msg, System.IntPtr wParam, System.IntPtr lParam) [0x0008e] in <a3daa9b84fd241a497578a25f68bc3c7>:0

4) System Information
Here is the relevant information to aid debugging:

dave@Pluto:/usr/local/BlueDV$ cat /etc/os-release 
PRETTY_NAME="Ubuntu 21.10"
NAME="Ubuntu"
VERSION_ID="21.10"
VERSION="21.10 (Impish Indri)"
VERSION_CODENAME=impish
ID=ubuntu
ID_LIKE=debian
UBUNTU_CODENAME=impish

dave@Pluto:/usr/local/BlueDV$ uname -a
Linux Pluto 5.13.0-30-generic #33-Ubuntu SMP Fri Feb 4 17:03:31 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

dave@Pluto:/usr/local/BlueDV$ mono --version
Mono JIT compiler version 6.8.0.105 (Debian 6.8.0.105+dfsg-3.2 Wed Jun 30 05:34:49 UTC 2021)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
TLS:           __thread
SIGSEGV:       altstack
Notifications: epoll
Architecture:  amd64
Disabled:      none
Misc:          softdebug 
Interpreter:   yes
LLVM:          supported, not enabled.
Suspend:       hybrid
GC:            sgen (concurrent by default)

dave@Pluto:/usr/local/BlueDV$ ls -l
total 19872
-rw-r--r-- 1 dave dave   32768 Jul  2  2017 AGauge.dll
-rw-r--r-- 1 dave dave   28672 Apr  8  2017 AquaGauge.dll
-rw-r----- 1 dave dave    1048 Feb 27 20:50 BlueDVconfig.ini
-rwxr-xr-x 1 dave dave 8354816 May 25  2021 BlueDV.exe
-rw-r--r-- 1 dave dave    8800 Mar  7  2021 BlueDV.exe.config
-rw-r--r-- 1 dave dave    2281 Feb 27 20:31 BMhosts.txt
-rw-r--r-- 1 dave dave    7865 Feb 27 20:30 DCS_Hosts.txt
-rw-r--r-- 1 dave dave   34681 Feb 27 20:30 DExtra_Hosts.txt
-rw-r--r-- 1 dave dave   30040 Feb  2  2017 digital.ttf
-rw-r--r-- 1 dave dave 8426519 Feb 27 20:31 dmrid.csv
-rw-r--r-- 1 dave dave   15459 Feb 27 20:30 DPlus_Hosts.txt
drwxr-xr-- 2 dave dave    4096 Feb  9 18:22 en
-rw-r--r-- 1 dave dave   26734 Feb  2  2017 en_us.ambe
-rw-r--r-- 1 dave dave     754 Feb 27 20:31 fcs_masters.txt
-rw-r--r-- 1 dave dave      62 May 10  2020 fcs.txt
-rw-r--r-- 1 dave dave    3078 Feb 27 20:31 FreeDMR_Hosts.txt
-rw-r--r-- 1 dave dave     375 May  2  2021 HBLink.txt
-rw-r--r-- 1 dave dave     295 Sep 14  2018 HBLink.txt.EXAMPLE
-rw-r--r-- 1 dave dave    1278 Feb 27 20:30 JPN_Hosts.txt
-rw-r--r-- 1 dave dave  513536 Jan 31  2020 NAudio.dll
-rw-r--r-- 1 dave dave  700336 Nov  9  2019 Newtonsoft.Json.dll
-rw-r--r-- 1 dave dave   14848 Feb  2  2017 ProgressBarEx.dll
-rw-r--r-- 1 dave dave  100864 Feb  2  2017 ToggleSwitch.dll
-rw-r--r-- 1 dave dave 1644118 Feb  2  2017 web_hi_res_512.ico
-rw-r--r-- 1 dave dave   16896 Oct 26  2017 WebSockets.Common.dll
-rw-r--r-- 1 dave dave  244224 Aug 17  2015 websocket-sharp-with-proxy-support.dll
-rw-r--r-- 1 dave dave   14848 Oct 26  2017 WebSockets.Server.dll
-rw-r--r-- 1 dave dave   14583 Feb 27 20:31 xlx_DMRMaster.txt
-rw-r--r-- 1 dave dave   33678 Feb 27 20:30 XLX_Hosts.txt
-rw-r--r-- 1 dave dave   11495 Feb 27 20:30 XLXYSF_Hosts.txt

(Notice there is no SoundCardIn or SoundCardOut configured in the INI below like the Windows version has in its config file.)

dave@Pluto:/usr/local/BlueDV$ cat BlueDVconfig.ini

[GENERAL]
myCall=W3DJS
comport=/dev/ttyUSB0
invertDTR=0
saveQSOLog=1
RXTXColors=1
StartProtocol=None
dvdongle=1
frequency=434300000
modeTimerRF=10
modeTimerNet=5
DVMEGAPower=254
longitude=[REDACTED]
latitude=[REDACTED]
alwaysOnTop=0
invertRXTXColors=1
language=English

[AMBE]
AMBEtype=AMBE3000
AMBEspeed=230400
AMBEDMRid=[REDACTED]
enableAMBEServer=0
AMBEServerHost=192.168.1.1
AMBEServerHostPort=2460
enableRoger=1
comport=/dev/ttyUSB0
PTTKeying=0
PTTCOMPort=
enableRXIndicator=1
RXIndicator=RTS
RXIndicatorHighLow=HIGH
PTTIndicator=CTS
PTTIndicatorHighLow=HIGH
killswitch=5
DSTARSlowDataText=BlueDV by PA7LIM    

[DMR]
dmrid=[REDACTED]
dmridsimplemode=[REDACTED]
DMRmaster=74.91.114.19
DMRpassword=[REDACTED]
DMRplusmaster=213.202.229.40
DMRplusPort=55555
DMRplusPassword=passw0rd
qrg=0
autostart=1
noInbandData=0
DMRtypeSelection=BM

[FUSION]
autostart=0
QTHlocation=[REDACTED]
defaultYSFReflector=AmericaLink
defaultFCSReflector=FCS00401
autostartProtocol=YSF

[DSTAR]
autostart=0
DSTARmodule=C
APRS=1
defaultReflector=REF030C


--
- Dave, W3DJS
-- Lifetime Member of ARRL & GARS and curator of HamPi, the ham radio software distribution for the Raspberry Pi --

--
- Dave, W3DJS
-- Lifetime Member of ARRL & GARS and curator of HamPi, the ham radio software distribution for the Raspberry Pi --

Join ambe@nw-digital-radio.groups.io to automatically receive all group messages.