Server On Windows

How To Run Server On Windows


I was in discussion with Steven (VK2BOS) a few days ago while he was testing connections to my server and he mentioned various test he did to run Linux under Windows. He reported the usual performance issues with virtual machines and mentioned that a new packaged solution was available called andLinux.

I tested this solution on Windows XP and I have to say I am very impressed.

It provides a Linux system (Ubuntu in this case) but without having to resort to a virtual machine per say. Consequently the memory usage and overheads are minimal.

This is ideal in my opinion for operators who want a server without having to switch to Linux for all of their applications and don't have loads of CPU speed and memory to run virtual machines nor maybe the inclination to get these VMs setup and going.

I tested the server v1.01 configuration and on a dual-core 1.2Ghz laptop I was down to less than 10% - with Fldigi minimized - on the allocated CPU core (it cannot use multiple cores) and up to around 20% with Fldigi window visible and the waterfall on normal (THOR22 decoding).

The installation was quite strait forward too.

The key steps are:

1. Install andLinux. Change audio settings to allow for audio in.

2. Download and run the server install script.

3. Download and un-pack Fldigi

4. Run and configure.

Here are the details for each steps:

1. Install andLinux.

Details of andLinux are at http://www.andlinux.org/

I chose the minimal install with XFCE windows manager.

Direct link for download: http://downloads.sourceforge.net/andlinux/andlinux-beta2-minimal.exe

At installation, choose the default options, except (at your discretion) that I chose the COFS option for file sharing with the windows file system and manual launch of andLinux as an NT service.

Remember the username and password entered, they will be used later on.

This install will create among other shortcuts a small application launcher in the system tray.

Audio recording is disabled by default for some reason. Re-enable it by editing the default.pa file in the C:\Program Files\andLinux\pulseaudio\ directory (adjust for different install path).

In the default.pa file, change the statement "load-module module-waveout record=0" with "load-module module-waveout record=1".

Reboot the PC to ensure pulseaudio is using the latest configuration.

After Windows restart, if you chose the manual start of andLinux, start it now from the start menu (andLinux/Start andLinux).

You may have to give it a few seconds before proceeeding to the next step to ensure the Linux system is started (otherwise you get a "cannot connect" message).

2. Download and run the server install script.

From the andLinux application launcher in the system tray, launch a terminal. In the terminal, type firefox <enter> to bring the web browser from within Linux. You could do this from Windows but you would have to move files around after.

Navigate to the usual Pskmail wiki and download the server install script (serverinstaller-1.0.1.sh) found here: http://www.pskmail.it/mirror/sharon.esrac.ele.tue.nl/pub/linux/ham/pskmail/serverinstaller-1.0.1.sh (or a later version). It will be downloaded by default in the Desktop directory.

From a linux terminal window (see how to launch above), navigate to download folder, by default "cd Desktop <ENTER>". If you want to check that you have the install script there type "ls <ENTER>" (that is lower-case-L and lower-case-S) to see the content of the directory.

Change the permission of the script to execute with:

chmod +x serverinstaller-1.0.1.sh <ENTER>

Then run the script as the superuser with:

sudo ./serverinstaller-1.0.1.sh <ENTER>
Enter your password as provided during installation.

Press enter at all prompts until finished.

Make sure all users have execute & read access to the server executables (they are not always set as so in the distribution) with:

sudo chmod 777 /usr/local/share/pskmail_server/* <ENTER>

Also make sure the user's folder for pskmail configuration is own by the user and not root with:

sudo chown -R yourusername:yourusername .pskmail <ENTER>
Note the ":" between the two usernames and the "." before the pskmail folder name. Replace "yourusername" with the username you entered during andLinux installation.

3. Download and un-pack Fldigi

Back to the FireFox web browser window, navigate to Fldigi downloads. Download the Linux versions WITH pulseaudio (NOT the "npa" version).

In the previous Linux terminal, in the Desktop folder there should be the Fldigi download. Check with "ls <ENTER>". Extract the files with:

tar -xf fldigi-3.20.11.bin.tgz <ENTER>

4. Run

In the same terminal type:

cd <ENTER>
cd Desktop <ENTER>
./fldigi & <ENTER>
pskmail_server <ENTER>

This will launch Fldigi then the pskmail server. Here you are with a new server…

When Fldigi starts it will prompt for basic informations. You should strait away set the proper configuration as per the Pskmail manual (in tabs ID, Misc/sweetspot and Misc/pskmail).

But also you should change in the audio tab of the configuration the device used. Select PulseAudio and leave the "Server String" blank. Save the configuration.

Note that the server will ask for call details and GPS location every time it starts until you update the configuration file (pskmailrc.pl).

The easiest way to edit that document is to use the file manager called Thunar in the andLinux launcher (in the system tray). Once launched, press CTRL-H to show hidden files (the ones starting with a dot).

Double click on .pskmail to open that directory.

Find pskmailrc.pl and double click on it as this will open it for editing. Change the following lines below.

$ServerCall = "N0CAL";
replace NOCAL with your server name (e.g. VK2ETA-2).

$relay = "mysmtpserver";
replace mysmtpserver with your email smtp (outgoing) server name (i.e smtp.myisp.com).

my $latitude = "0000.00N"; # format: decimal degrees x 100 + decimal minutes xxxx.xxN
my $longitude = "00000.00E"; # format: decimal degrees x 100 + decimal minutes xxxxx.xxE
Enter your coordinates (even approximative) using the format above.

I also suggest you change the line $scanner = "S"; to $scanner = ""; so that changes of mode and scanning are disabled. You can enable this later when you are satisfied your server works.

All the rest can be left as is. Save and relaunch the pskmail_server: in the terminal window, press CTRL-C to stop the server and restart with a "pskmail_server <ENTER>".

To create launch icons in the Windows desktop do the following:

Right click on the normal Windows desktop, select new and shortcut. Enter the path to the program:

"C:\Program Files\andLinux\Launcher\andCmd.exe" Desktop/fldigi

Then click next and enter the name of the application: for example "Fldigi (Linux)" and click finish.

Repeat for the Pskmail server using the following path:

"C:\Program Files\andLinux\Launcher\andCmd.exe" xfterm4 pskmail_server

And "Voila". Great integration between double glazed Windows and LInux.

If you keep Fldigi minimized you will use minimum resources.

On my dual core 1.2GHz machine the whole exercise uses less than 25MB or RAM and less than 5% of the CPU on a dual core 1.2GHz laptop. Some modes are more CPU demanding than others. This was measured with THO22 as the listening mode. It seems that the PSKR modes are more CPU hungry.

Enjoy.

Thank you Steven (VK2BOS) for this great information. Steven is located around 50KM west of Sydney in the Blue Mountains and is interested in remote messaging application for WICEN, our emergency Amateur services in Australia.

73s, John (VK2ETA)

Additional information: How to access second sound cards (like USB sound adapters) and access the serial ports of the Windows system for rig control.

First for the serial port: With the default configuration, in C:\Program Files\andLinux\ directory there is a file called settings.txt which defines among other things the Windows devices that the Linux kernel connects to at start up.

To connect ttyS0 to com4 in Windows add the following line at the bottom of the setting.txt file mentioned above:

ttys0=COM4,"BAUD=115200 PARITY=n DATA=8 STOP=1 dtr=on rts=on"

WARNING: the line above says ttys0 (lower case "s"), but the Linus system sees ttyS0 (upper case "s"). This is not logical but this seems to be the way it works.

Of course adjust the BAUD and DATA (I suspect PARITY could be set too if not default) to whatever values you use for your rig.

After changes, save and stop then restart andLinux (from the startmenu/andLinux program list).

The limitations are:

a. The speed is fixed and cannot be changed inside Linux.

b. The control signals are fixed: here both RTS and DTR are permanently set to ON. Therefore it is not possible to use TX switching via these control signals.

If you need to switch your rig from the serial port (no radio VOX or extarnal VOX from the audio adapter), then you need a modified version of the server. Just post a request on the mailing list and we will send you the modified one. Hopefully we will have this feature integrated in future versions.

To enable the control of the frequency by the server edit the pskmailrc.pl file located in the .pskmail directory. See the wiki instructions.

You may have access restrictions to the serial port and need to issue the following command from a linux terminal (replace yourusername with whatever username you entered at andLinux install time:

sudo usermod -G yourusername,admin,lpadmin,dialout yourusername <ENTER>

Then stop and restart andLinux. This will add the default user to the dialout group and allow full access to the serial ports.

Now for the sound card:

It is easy to allocate a second sound card to the Linux application.

We are back to the default.pa file located by default in the C:\Program Files\andLinux\pulseaudio\ directory.

In that file that you open with a text editor (Notepad or Wordpad), find the line which says:

load-module module-waveout record=1

Now change that line by adding the device= statement like so:

load-module module-waveout device=1 record=1

Save the file and restart windows.

Here I assume that you have only two sound devices in your windows system. If you have more than two then the number after the device= could be 2,3,4 etc… for your second sound card. With device=0 being the primary sound card of your system which is the default.

You may have to experiment with different values and restart windows every time unfortunately since it needs to restart all drivers for the new configuration to be active.

Also note that you may (not likely but possibly) get a different device number depending whether your 2nd audio device is plugged in before Windows startup or after.

So when starting Windows ensure that all your sound devices - if they are removable like a USB device for example - are plugged in. Otherwise you may get a different device number.

import from old_wiki 23/12/2017

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License