WheezyE / Winelink

Installation scripts for running Winlink (RMS Express/Trimode & VARA) on non-Windows computers. Wine & Box86 make this project possible.
68 stars 18 forks source link

VARA crashes while updating propagation estimates #79

Closed grahowe closed 9 months ago

grahowe commented 9 months ago

I am running this on a Xubuntu laptop. Whenever I begin to update the propagation estimate tables in VARA HF, it crashes and gives the following error:

The program RMS Express.exe has encountered a serious problem and needs to close. We are sorry for the inconvenience. ... Unhandled exception: 0x0eedfade in 32-bit code (0x7b012207)

I have tried uninstalling and reinstalling the software. It works on a VM albeit it has glitchy audio output. I can manually enter in callsigns and frequencies but cannot download the propagation estimates. I'm not sure if anyone else has had this issue.

WheezyE commented 9 months ago

The last time I saw this error it was from a frequency in the Winlink stations database that was entered incorrectly. Someone had submitted their station info in kHz instead of Hz (I think - it was some magnitude off) and the small frequency crashed D-VOACAP.

Microsoft .NET (on windows) can handle the SEH exceptions that D-VOACAP’s Delphi code throws but winemono doesn’t know how to, so crashes Winlink.

The fix was to wait for Winlink to find the error and update the bad frequency in their database. (You could do that manually if you find the right frequency in your Winlink stations database and change it to a larger number). More info here: https://github.com/WheezyE/Winelink/issues/16 and here: https://bugs.winehq.org/show_bug.cgi?id=52131

grahowe commented 9 months ago

Thank you for the feedback. This script has taken the headache and frustrations out of installing Winlink, WINE, and anything else I'll need to run Winlink on my Linux machine - I appreciate it very much! I did go ahead and read through the links you've linked and I think I'll try running the command again and seeing if the .dat file has that exception. I'll comment back to see if anything has changed!

grahowe commented 9 months ago

Okay so I've added it to my VM (Linux Mint this time) and I found the problem you've given me a link to! There is an entry indeed entered incorrectly in KHz rather than Hz. However, whenever I try to edit the file and save it, Winlink keeps referring back to the internet to update the faulty RMS Channels.dat file and continues to crash. In specific, the faulty channel is listed like this:

KC5KCT | EM22HG | 7100 | 53 | 00-23 | PUBLIC, where 7100 is supposed to be 7100000.

Any ideas on how to edit it and save it as a revised dat file within the Linux system? I have already tried to change it to a .txt file, edit this out, and rename it back to a .dat file.

Thank you so much for the response on this too, it has helped me out a lot!!!

EDIT: The exact same entry exists on my Windows machine's dat file too! Also I just looked at Winlink's online database and that frequency doesn't exist on that station. There's only one on 80m

grahowe commented 9 months ago

I think I can work with what I have so far now that I know what is going on. I got it up and running on my machine last night!

I can choose a station by going into the map menu, albeit it will continue to tell me that the path quality is 0 since I can't revise the .dat file correctly. It still works and I have been heard on air with it. So despite the limitations present, I'd say it works! I can manually enter in station frequencies and callsigns from the online list on Winlink's website. I just think that there is a bug on Winlink.org's side as you mentioned earlier.

I appreciate the help and for the heavy lifting you've done with this script!

EDIT: It looks like Winlink has finally updated their website, so everything is working well. Thank you and I'll go ahead and mark this as done! You've been a great help!

WheezyE commented 1 month ago

Just updating this thread with older news from 12/04/2024:

Summary: Kate (KD2ROS) discovered a crash in the channel selection browser https://github.com/WheezyE/Winelink/issues/16. Eric (KI7POL) tracked this crash to Alex (VE3NEA)'s dvoa.dll (which is included for free in RMS Express) which throws Delphi exceptions during certain erroneous calculation conditions. These Delphi exceptions are seen by wine-mono as "SEH exceptions" and cause wine-mono to crash when they occur. Bent (LA9RT) discovered that cross-compiling the dvoa.dll source code avoids this SEH exception crash. The Winlink devs then included the cross-compiled dvoa.dll in RMS Express. Great work team!

Bent updated the WineHQ bug tracker, the VARA groups.io, and the Winlink devs.

From the RMS Express changelog (RMS Express Revision History.txt)

Rev 1.7.11.1    Dec 4, 2023
    For a Vara HF peer-to-peer session, channel bandwidth can be set by selecting from the Bandwidth combobox on the session menu bar.
    Fix a problem using the specified location for the X-Location header line if there is no GPS dongle attached.
    You can now double click a marker on the RMS map to select that RMS and the channel with the best propagation estimate.
    Included new version of the dvoa.dll that is used to compute propagation estimates.  This version appears to work correctly with the WINE emulator.  Thanks to Bent, LA9RT.
    Change Packet/Vara FM channel display to show frequencies down to 1 Hz resolution.

In other news, I might be tracking another breaking change in RMS Express that crashes wine-mono while downloading channel browser stuff.