Hey, I'm pretty new to linux and am probably missing something obvious. I was having trouble getting PAT to connect to WINMOR TNC running within ExaGear Desktop.
I'm using a Raspberry Pi Zero W (I know, I know... I'll probably move to a Pi3B+ soon here). I can get the WINMOR TNC dialog box open (yes, it runs super slow) by running it from within ExaGear Desktop. I had to install Internet Explorer 6 (via zenity) before I could install dotnet20, but it worked.
I configured WINMOR TNC to have 0.0.0.0
port for listening.
Side-note: I have to run WINMOR TNC (in exagear) before I run another terminal window to run ./piardopc
and another terminal window to run pat interactice --http
, or else PiARDOPc doesn't let WINMOR TNC load for some reason.
Here's the error message I get when I try to send a message through WINMOR protocol in Pat (through the "website" interface created by the Pi, accessable from my laptop on the same network)
2018/06/07 07:09:45 WINMOR TNC initialization failed: read tcp 127.0.0.1:36034->127.0.0.1:8500: i/o timeout
Just in case it's helpful to anybody on Google trying to get WINMOR to at least open on their Raspberry Pi, here's my current process for installing ExaGear, WINMOR, PiARDOPc, Pat on my Raspberry Pi Zero W
Install ExaGear. Inside ExaGear, install Wine + Winetricks + Internet Explorer 6 + .NET 2.0 + Winmor TNC (WINMOR)
Install an x86 emulator (ExaGear is five times faster than Qemu, but ExaGear costs about $30 for a license - demo for 3 days)
$ sudo apt-get install exagear-desktop
[ references: ExaGear vs Qemu https://www.youtube.com/watch?v=0yZ5UiQyeFA ]
[ references: https://docs.eltechs.com/install-and-configure-exagear-desktop/how-to-install-exagear-desktop-trial ]
[ references: How to install ExaGear trial https://www.youtube.com/watch?v=INrFbDgo2mY ]
Run ExaGear to enter its guest system
$ exagear
You are now inside ExaGear's guest system - you're "inside the x86 world" in the terminal, ...which is also very slow to install things in. You can check to see if you're in ExaGear ("i686") or regular Raspbian (armv7L) by typing $ arch
Update linux packages inside the ExaGear guest system.
$ sudo apt-get update
I recommend skipping "sudo apt-get upgrade" since it's not really needed and TAKES ABOUT THREE HOURS(!) But I did do this step not knowing how long it would take.
Install Wine inside ExaGear (this will run for at least two hours)
$ sudo apt-get install wine
...
Configuration file '/etc/pulse/client.conf'
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : start a shell to examine the situation
The default action is to keep your current version.
*** client.conf (Y/I/N/O/D/Z) [default=N] ?
Keep the original /etc/pulse/client.conf file (press N then enter)
...
saned.service load error (Invalid argument) <--scanner issue, ignore for now
Once the installation process is finished make sure that you have the Eltechs build of Wine installed:
$ wine -version
wine-2.0-eltechs
[ references: https://ubuntuforums.org/showthread.php?t=972445 ]
!$ exit
!$ sudo reboot
!$ exagear
Now you can run .exe files with Wine and get x86 Windows programs installed and running on your Raspberry Pi.
[references: https://hackaday.io/project/21023-run-wine-on-raspberry-pi/details ]
Install the latest winetricks (Make sure you don't have it installed)
$ sudo apt-get remove winetricks
$ wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
$ chmod +x winetricks
$ sudo mv -v winetricks /usr/local/bin
Fake the installation of internet explorer 6. There's probably a more elligant way to do this step by just installing reg keys, but this is how I did it
? $ winetricks fakeie6 <-- TRY THIS FIRST
? $ winetricks ie6 <-- TRY THIS SECOND
? $ sudo apt-get install cabextract <-- not sure if this step is needed
? $ sudo apt-get install zenity <-- SLOWEST WAY, TRY THIRD
? (Choose install application, next, cancel, install a windows app or component, next, ???, Internet Explorer 6)
Ensure wine is set up with a win32 environment (The RM command will delete your previously installed wine applications):
$ rm -rf ~/.wine; WINEARCH=win32 wineboot
DON'T INSTALL the Wine Mono Installer when prompted. DON'T INSTALL Gecko too, why not?
fixme:urlmon:InternetBindInfo_GetBindString not supported string type 20
fixme:ntdll:NtLockFile I/O completion on lock not implemented yet
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:mscoree:LoadLibraryShim error reading registry key for installroot
fixme:urlmon:InternetBindInfo_GetBindString not supported string type 20
fixme:ntdll:NtLockFile I/O completion on lock not implemented yet
err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
fixme:iphlpapi:NotifyIpInterfaceChange (family 0, callback 0x6a0cb608, context 0x9386c0, init_notify 0, handle 0x116e794): stub
wine: configuration in '/home/pi/.wine' has been updated.
Hit CTRL+C and ENTER
$ ^C
Install .NET 2.0 (if you get an error, you may need to update winetricks. However, different versions of winetricks break some apps...)
$ winetricks dotnet20
Keep clicking "Retry" whenever that comes up.
[ refences: https://askubuntu.com/questions/17821/how-to-install-or-mock-internet-explorer?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa ]
Download a winmor installation from: ftp://autoupdate.winlink.org/WINMOR%20TNC/
Extract the winmor installation into ~/.wine/drive_c/winmor
Start WINMOR TNC
$ wine ~/.wine/drive_c/winmor/WINMOR\ TNC.exe
Configuration of audio devices must be done under WINMOR's "Help > Basic Setup" dialog tab.
The default configuration of winmor only listens for traffic on localhost. If you plan on running Pat and WINMOR on different machines you'll need to ensure that winmor is set up to listen on the correct network interface. A simple solution can be to set it to listen on all interfaces by setting the "TCP Address" to 0.0.0.0 (under WINMOR's "Basic Setup" dialog).
The WINMOR TNC uses port 8500 and 8501 by default.
Enter your callsign, gridsqure, and soundcard output (avoid pulseaudio; ALSA works fine)
For changes to WINMOR's configuration to take effect, you'll need to restart the application (Help > Close)
[references: https://github.com/la5nta/pat/wiki/WINMOR-TNC ]
Exit the terminal window.
Start ardop
Open a terminal or use ssh.
Navigate to the folder where you downloaded piardopc. Run using the command...
$ ./piardopc
(note: If running both Winmor and Ardop, Winmor must be run from within its ExaGear environmet before ardop is started. Otherwise Winmor won't start.)
Start Pat
From another terminal window run ...
$ pat interactive --http
This starts Pat in interactive mode, and the http server.
Interactive mode lets you start and stop listeners and some other neat stuff.
Test from your web browser.
Open a web browser on a device connected to the same network as your pi.
go to [the ip adress of the Pi]:8080.