[Bug 52340] New: wine-mono + RMS Express: COM Port errors connecting to radios
https://bugs.winehq.org/show_bug.cgi?id=52340 Bug ID: 52340 Summary: wine-mono + RMS Express: COM Port errors connecting to radios Product: Wine Version: 7.0-rc4 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: mscoree Assignee: wine-bugs(a)winehq.org Reporter: eric.wheez(a)gmail.com Distribution: --- Hello again, I just wanted to report in a "not implemented" exception in wine-mono. I believe that "System.IO.Ports.SerialPort.set_ReceivedBytesThreshold" not implemented in wine-mono is causing RMS Express to not be able to control the radio (channel selection and "push-to-talk"/"PTT" switch) over USB connection. Normal behavior is for RMS Express to tell the radio what radio channel to send/receive on & when to transmit/listen (via PTT switch). This behavior is working on RMS Express via Windows. This behavior is also working with RMS Express on Debian 10 VM with wine & .NET 4.6 (I had to set `sudo adduser $USER dialout && sudo reboot` to set permissions for the COM port for the user account so before channels/PTT worked .NET 4.6 though). The not implemented exception pops up in the linux terminal with wine-mono exactly at the same time that the (known-working-with-.NET4.6) COM port is said to be inaccessible. I've included the short log of the wine-mono not implemented exception at the of this post. [Setup] OS: Debian 10 (VMware Workstation on a Windows laptop) Wine: wine-7.0-rc4 devel Wine Mono: wine-mono 2f50d2c (https://nightly.link/madewokherd/wine-mono/actions/artifacts/131614059.zip) Program: Winlink Express 1.5.44.0 Radio: Yaesu FT-891 transceiver (with dummyload attached directly to radio - no feed line so I don't accidentally send signals) Details: - FT-891 connected to PC via USB cable (and make sure VMWare has the USB line routed into the VM instead of the host PC) - I set the FT-891's on-board settings to data 'baud' 9600. - I set in/out audio devices in ARDOP settings on the PC. Thank you again! And here's to 2022 being better than the previous two years :) Cheers ---- wine-mono not implemented exception log: ``` WINE_MONO_TRACE=E:System.MissingMethodException MONO_INLINELIMIT=0 WINE_MONO_HIDETYPES=1 wine RMS\ Express.exe ... [00000024:] EXCEPTION handling: System.NotImplementedException: The method or operation is not implemented. "<unnamed thread>" tid=00000024 this=04570120 , thread handle : 01df5788, state : not waiting at System.IO.Ports.SerialPort.set_ReceivedBytesThreshold (int) [0x0000f] in <117354a27af94c36af91c072a84e6fb8>:0 at (wrapper remoting-invoke-with-check) System.IO.Ports.SerialPort.set_ReceivedBytesThreshold (int) [0x00032] in <117354a27af94c36af91c072a84e6fb8>:0 at RMS_Express.Radio.OpenControlPort () [0x000b3] in <25c56d5497bc4490bd1b5395b173c5df>:0 at RMS_Express.Radio.SetRadio () [0x0014f] in <25c56d5497bc4490bd1b5395b173c5df>:0 at RMS_Express.Radio.SetFrequency (int,string) [0x00021] in <25c56d5497bc4490bd1b5395b173c5df>:0 at (wrapper remoting-invoke-with-check) RMS_Express.Radio.SetFrequency (int,string) [0x00033] in <25c56d5497bc4490bd1b5395b173c5df>:0 at RMS_Express.ArdopSession.Ardop_Activated (object,System.EventArgs) [0x00823] in <25c56d5497bc4490bd1b5395b173c5df>:0 at System.Windows.Forms.Form.OnActivated (System.EventArgs) [0x0001f] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Form.set_Active (bool) [0x000a6] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Form.WmActivate (System.Windows.Forms.Message&) [0x0001a] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Form.WndProc (System.Windows.Forms.Message&) [0x001b8] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Control/ControlNativeWindow.OnMessage (System.Windows.Forms.Message&) [0x00001] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Control/ControlNativeWindow.WndProc (System.Windows.Forms.Message&) [0x000b3] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.NativeWindow.Callback (System.Windows.Forms.Message&) [0x00025] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.NativeWindow.Callback (System.Windows.Forms.Message&) [0x00032] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.NativeWindowProc.Callback (intptr,int,intptr,intptr) [0x00037] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at (wrapper native-to-managed) System.Windows.Forms.NativeWindowProc.Callback (intptr,int,intptr,intptr) <0x00067> at <unknown> <0xffffffff> at (wrapper managed-to-native) System.Windows.Forms.SafeNativeMethods.ShowWindow (System.Runtime.InteropServices.HandleRef,int) <0x00012> at System.Windows.Forms.Control.SetVisibleCore (bool) [0x00061] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Form.SetVisibleCore (bool) [0x000d1] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Control.set_Visible (bool) [0x00001] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Control.Show () [0x00001] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at RMS_Express.ArdopSession.ShowSession () [0x00000] in <25c56d5497bc4490bd1b5395b173c5df>:0 at RMS_Express.Main.StartSession () [0x005fd] in <25c56d5497bc4490bd1b5395b173c5df>:0 at RMS_Express.Main.mnuSession_Click (object,System.EventArgs) [0x00000] in <25c56d5497bc4490bd1b5395b173c5df>:0 at System.Windows.Forms.ToolStripItem.RaiseEvent (object,System.EventArgs) [0x0001b] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.ToolStripItem.OnClick (System.EventArgs) [0x00001] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.ToolStripMenuItem.OnClick (System.EventArgs) [0x0001d] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.ToolStripItem.HandleClick (System.EventArgs) [0x00051] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.ToolStripItem.HandleMouseUp (System.Windows.Forms.MouseEventArgs) [0x000fd] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.ToolStripItem.FireEventInteractive (System.EventArgs,System.Windows.Forms.ToolStripItemEventType) [0x00053] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.ToolStripItem.FireEvent (System.EventArgs,System.Windows.Forms.ToolStripItemEventType) [0x00103] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.ToolStripItem.FireEvent (System.EventArgs,System.Windows.Forms.ToolStripItemEventType) [0x00033] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.ToolStrip.OnMouseUp (System.Windows.Forms.MouseEventArgs) [0x0007d] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Control.WmMouseUp (System.Windows.Forms.Message&,System.Windows.Forms.MouseButtons,int) [0x001c3] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message&) [0x005a0] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.ScrollableControl.WndProc (System.Windows.Forms.Message&) [0x00043] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.ToolStrip.WndProc (System.Windows.Forms.Message&) [0x00128] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.MenuStrip.WndProc (System.Windows.Forms.Message&) [0x00056] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Control/ControlNativeWindow.OnMessage (System.Windows.Forms.Message&) [0x00001] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Control/ControlNativeWindow.WndProc (System.Windows.Forms.Message&) [0x000b3] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.NativeWindow.Callback (System.Windows.Forms.Message&) [0x00025] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.NativeWindow.Callback (System.Windows.Forms.Message&) [0x00032] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.NativeWindowProc.Callback (intptr,int,intptr,intptr) [0x00037] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at (wrapper native-to-managed) System.Windows.Forms.NativeWindowProc.Callback (intptr,int,intptr,intptr) <0x00067> at <unknown> <0xffffffff> at (wrapper managed-to-native) System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW (System.Windows.Forms.NativeMethods/MSG&) <0x00012> at System.Windows.Forms.Application/ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop (intptr,int,int) [0x001d7] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Application/ThreadContext.RunMessageLoopInner (int,System.Windows.Forms.ApplicationContext) [0x00282] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Application/ThreadContext.RunMessageLoop (int,System.Windows.Forms.ApplicationContext) [0x0001a] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.Application/ThreadContext.RunMessageLoop (int,System.Windows.Forms.ApplicationContext) [0x00033] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at System.Windows.Forms.Application.Run (System.Windows.Forms.ApplicationContext) [0x00006] in <ff4fde3cd5024947a0edb51b0ef7fff6>:0 at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun () [0x00044] in <e344caf534bf4ffb982376a141ed987b>:0 at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel () [0x00035] in <e344caf534bf4ffb982376a141ed987b>:0 at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run (string[]) [0x0001b] in <e344caf534bf4ffb982376a141ed987b>:0 at RMS_Express.My.MyApplication.Main (string[]) [0x0000f] in <25c56d5497bc4490bd1b5395b173c5df>:0 at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr) [0x00027] in <25c56d5497bc4490bd1b5395b173c5df>:0 ``` -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 Eric <eric.wheez(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |dotnet, hardware, source URL| |https://github.com/WheezyE/ | |Winelink/issues/17 --- Comment #1 from Eric <eric.wheez(a)gmail.com> --- Just a bit more info - I have a github tracker for this one here too if more context helps: https://github.com/WheezyE/Winelink/issues/17 - ARDOP is open source, but RMS Express isn't. I believe these USB "CAT Control" commands to the radio being send by RMS Express (even though ARDOP is being used to play audio) -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 Eric <eric.wheez(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |eric.wheez(a)gmail.com -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 Eric <eric.wheez(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Distribution|--- |Debian -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 --- Comment #2 from Esme Povirk <madewokherd(a)gmail.com> --- I'm confused by Mono's SerialPort class. According to MSDN, this method is supposed to control how many bytes need to be in the buffer before the DataReceived event fires. There is an internal OnDataReceived method that fires this event, but I can't find anything that calls that method. I expect that if the program is using this, it probably needs it to work. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 --- Comment #3 from Esme Povirk <madewokherd(a)gmail.com> --- Yeah, I don't think this event is implemented in Mono. Maybe we can import it from referencesource or corefx. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 --- Comment #4 from Esme Povirk <madewokherd(a)gmail.com> --- I made a PR importing this from corefx, it should have a build available in the next few hours: https://github.com/madewokherd/mono/pull/22 -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 Esme Povirk <madewokherd(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |madewokherd(a)gmail.com -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 Eric <eric.wheez(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED --- Comment #5 from Eric <eric.wheez(a)gmail.com> --- That was it!! That fixed the PTT control from the computer to the radio! Selecting a channel in the channel browser in RMS Express changes the dial frequency on the radio too. Awesome work. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 Esme Povirk <madewokherd(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|FIXED |--- Status|RESOLVED |UNCONFIRMED --- Comment #6 from Esme Povirk <madewokherd(a)gmail.com> --- The Winehq bug is not resolved until the fix is in a Wine Mono release that makes its way into Wine. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 --- Comment #7 from Eric <eric.wheez(a)gmail.com> --- Oh yeah, good call! I am continually amazed at your work and appreciate your help. I've sent winehq another donation too to help say thank you. I'll resolve this after the merge. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 --- Comment #8 from Eric <eric.wheez(a)gmail.com> --- *after the merge and final release -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 Esme Povirk <madewokherd(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Fixed by SHA1| |1f8eb4a9c28417ee98f90aa8a5a | |95177088d082a Resolution|--- |FIXED --- Comment #9 from Esme Povirk <madewokherd(a)gmail.com> --- Fixed in Wine Mono 7.2.0. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52340 Alexandre Julliard <julliard(a)winehq.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED --- Comment #10 from Alexandre Julliard <julliard(a)winehq.org> --- Closing bugs fixed in 7.6. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
WineHQ Bugzilla