N3FJP Software Networking Help
Introduction and Background
The Network Status Display form is used to set up networking of multiple PCs to a common data file. If you are running your software 'Stand Alone', there is nothing that you'll need to configure here.
If you are interested in networking N3FJP software for a multi op contest, DXPedition or you just want to access your log from multiple PCs simultaneously at your home or club station, please read on!
There's lots of explanation below, including how to network your PCs, enable the band status and messaging. If you are setting up for Field Day it is a MUST READ, but in short, to network multiple PCs, simply put your log file in a location that is accessible to all the PCs you wish to network by clicking File > Save As. Then, from the other PCs, click File > Open, navigate to the file and select it. Any contacts you enter should appear on all PCs in a minute or less (depending on the refresh rate you set). That's all there is to it!
Here is a video overview of how to set up networking with all my contesting software and Amateur Contact Log too.
For the rest of the story, some of the emphasis is on Field Day as that environment is the ultimate test of any network, but the information below applies to networking all of my software.
Now Two Methods - File Share and TCP
There are now two methods for networking my software - File Share and TCP. File Share has been used very successfully since I first introduced the networking versions of my software in the late 1990s with the vast majority of users. I added TCP in July, 2013 as a second networking option that should help the few groups who encountered file share problems resulting from slow network connections and / or intermittent network connectivity.
Following Field Day 2013, I received lots of great reports from the vast majority of groups who networked with File Share using my new C# rewrite (Field Day Contest Log 4.0), but I did receive a few reports from a very small percentage of folks (only 7 groups, but that is 7 too many), who had intermittent problems with the program occasionally or frequently reporting 'unable to execute the SQL command'.
It appears that these problems were related to intermittent network connectivity, power surges (one group specifically reported all was fine until they experienced a power surge) and / or RF interference. Other possible causes include Windows firewall restricting access and anti virus software delaying the communication and resulting in timeouts, which becomes more likely when using wireless.
Access Requirements, Stable Networks and Field Day Challenges!
Access databases require solid, fast, uninterrupted networks to work properly. If even one of your networked PCs has a slow / intermittent connection, all the PCs will suffer, waiting their turn and eventually timing out, as the database struggles to service the problem PC. Several groups commented that as soon as they found and fixed the problem PC, everything came to life and worked great.
Networking in environments such as Field Day with the potential for power surges from generators, lots of stray RF, wireless connections near the end of the transmitter range, intermittent connectivity drops for any number of reasons, PCs of sometimes questionable performance with multiple flavors of virus protection / Internet security software, using temporary, untested network setups is challenging! In addition to your operating skills, Field Day will fully test the performance of your network too!
So, while the existing File Share networking option works fine on stable, fast networks, I decided to add another networking option, TCP. TCP provides a second alternative for folks who may be struggling with intermittent network connectivity, which inhibits the normal, fast performance of the file sharing method.
The TCP method overcomes the delayed file share response problem since only one PC is actually connected to the file with the TCP method, ideally on its local hard drive. This eliminates file network communication and sharing delays. That said, even TCP can't overcome a network environment that is so unstable that even TCP communications become unreliable. While the TCP option may be more forgiving, a reasonably stable network is required for any networking option!
Field Day Network Stability - Lessons Learned
Our software will only be as stable as the network on which you run it. All PCs and network hardware must be on UPS equipment!
While many clubs are successfully using WiFi networks, the small percentage of networking problem reports we receive are almost all from those attempting to use WiFi. The problem with WiFi is all the RF our Amateur Radio transmitters generate at the Field Day site that interferes with the ability of the WiFi device's ability to correctly receive and decode transmissions from one network device to another. That's why in most cases LAN cables are an effective remedy.
Your likelihood of success is better using LAN cables. With all the work that goes into setting up for Field Day, you don't want to be dealing with network connectivity problems and frustrated club members, when you should be having fun logging Qs! We've heard from clubs over the years who have learned this the hard way and are very happy they have switched to LAN cables.
Don't risk the fun and success of your Field Day on the uncertain reliability of WiFi in an RF charged environment.
Comparing File Share and TCP
In summary, the two options can be compared as follows:
File Share:
- The tried and true, most extensively tested method, proven to work fine, supporting multiple connections on stable, fast networks that have NO DROP in connectivity.
- Requires all PCs to each navigate to and select the shared data file on the network by clicking File > Open, navigating to the shared file (with file and directory permissions set to update, not just read) and selecting it. Setting up file sharing and permissions on your network is required for File Share.
- Does NOT require enabling Status and Chat functions (though you will likely want to enjoy those features too.)
- Updates to the clients appear based on the refresh rate you set in the Settings > Refresh Rate option.
- Global updates to the file such as resequencing the counter, sorting or global removal of duplicates (all from the File menu options) should only be done when one PC is connected to the file. There is no way for the software to tell if other clients are connected to the data file, so make sure all other clients are disconnected before performing these functions.
- All PCs must select the same networking method. You can not mix and match! Either use File Share or TCP for every PC.
TCP:
- First coded in July 2013, this option piggybacks on the functionality of the Status and Chat functions, to distribute adds, edits and deletes via TCP.
- All PCs must enable the Status and Chat functions, which connect to the server on port 1000. If you have virus / Internet protection software, you must set your protection software on the server and EVERY client to allow this program to communicate on port 1000.
- Does NOT require each client to navigate to the log file, so you don't have to worry about file share permissions.
- The server should host the file locally on its hard drive, not over the network, to eliminate any possibility of network file access delays. Choose your PC with the fastest processor and most RAM for the server.
- While loading the file may take longer via TCP, All Adds, Edits and Deletes should appear within one second on all clients.
- ONLY the SERVER will and have the ability to perform many of the File menu options. This can be an advantage or disadvantage, depending on which functions you want the clients to be able to perform.
- If your Network Status Display Form version reads 1.2 or later, in addition to the server, the TCP clients can also be set to write backups.
- All PCs must select the same networking method. You can not mix and match! Either use File Share or TCP for every PC.
- With the TCP method, more will be asked of the server, so processor timed sending of CW may be less precise.
Setting Up File Share
For file share, to network multiple PCs, sharing and updating a common log file from multiple clients simultaneously, from the main form, simply click File > New > Start a New Contest with a New Database and save the file to a location that is accessible to all the PCs on your network.
From the other PCs, click File > Open, navigate to the file you just created and select it.
That's all there is to it! Every PC should see a QSO entered from any client within one minute or less, depending on your refresh rate and provided there isn't a value being typed in the call field.
If one or more of your clients are unable to update the database, make sure you have enabled the proper sharing and permissions, etc. If a client can see the database and read records, but can't add any, it is likely that your permissions for either the log file, the folder and / or drive on which it resides are set to Read, not Update. Changing your permissions to Update will correct that. You'll find more information on fixing common SQL file errors here. For more information on how to enable sharing, please Google 'Setting up a Home Network'.
Notice that you haven't touched any of the settings on the Network display form. If you just want to share the data file, see all the contacts that everyone logs and get a continually updated, current combined score for all the stations, you've already done all you have to do for File Share!
You don't have to enable the Status / Chat functions for File Share, but you will likely want to. That way you can see what bands other folks are on at a glance, send messages and get band overlap alerts. Please see the Enabling Band Status and Chat Functions section below.
I have some additional general networking set up and sharing tips here.
Setting Up TCP
To set up TCP, make sure the Station Name that the sever is running on and Server Name are IDENTICAL and correct for the server. If your server PC happened to be named Phoenix, the entry on your server would look like this:
For the rest of the clients, be sure that the Station Name is the name of the client station and that the Server Name is entered correctly. If your client happened to be named affirmatech-2 and your Server Name was Phoenix, the entry would look like this:
Then click the TCP networking method option and check the Enable Status / Chat functions as shown here.
Note, if you forget to also set your server to TCP and erroneously leave it on File Share, it will appear that you are logging contacts on your clients when you press enter, but they are not being saved anywhere. The server is relaying the ads by TCP as it does with all TCP data, but thinks you are in File Share, so it expects the clients to be adding the records to the file. Conversely, the clients think the server is saving their data, since they are in TCP mode. To be sure you are set up properly, enter some test data in a client, close the program, reopen it and see if your data appears. All PCs must select the same networking method. You can not mix and match!
Enabling Band Status and Chat Functions (for either networking method)
The Network Status Display form provides a display of the stations on each band and the ability to send a chat message. The functions this form provides are not required for File Share networking and can remain disabled for File Share, but they are REQUIRED for TCP Networking.
To enable band status and chat (regardless of the networking method you choose):
- You can follow the graphics for Setting Up TCP above. All will be identical unless you are using the file share method, in which case you would select File Share instead of TCP.
- Enter any name that you would like this station to be called in This Station's Name field (for TCP Networking, the server name and station name MUST be identical).
- Enter the exact name of the PC that will be used as the message server in the Server Name field (not the station name the server is using to identify itself if different (the server can't use an alternate name in TCP mode)). With the file share method, to set the message server to the same PC that is hosting the log file, click Set Message Server to Log File Host. If the button is disabled, it is already set to the PC hosting the log file. The PC hosting the log file and the PC acting as the message server can be different PCs with file share, but should be the same for TCP.
- Click the Enable Status / Chat Functions check box.
- If all is set correctly, you will connect to the server, or if this PC is acting as the server, you should see the clients connect within 1 minute. If for any reason you don't, click in the Server Name field (that will disable the attempt), correct it accordingly and then click the enable checkbox again.
Other Helpful Notes and Tips
- I've had good reports from folks running both wired connections and wireless. That said, it appears the folks who attempt wireless have trouble more frequently, even when the client is in very close proximity to the server. While RFI getting into wired LAN cables happens occasionally, I've had more problem reports from folks trying wireless. In many cases they follow up by saying they fixed the problem by replacing the wireless with cable.
- Connections are on port 1000, so if you have any trouble connecting, make sure your virus protection software is allowing the connection (on both server and client machines).
- If the server is turned off, the clients will recognize that within one minute and attempt to reconnect automatically.
- To send a message, type your message in the message field and then press enter. All messages are seen on all PCs regardless of the Message To field; however, a message box will only appear on the main form of the receiving PC if the Message To field either identifies that station or is left blank. When blank, a broadcast message is assumed and the message box will appear on the main form of all the PCs.
- The list box of PCs shows all the PCs that have connected to the server.
- Clicking the Sync Clocks button will set all the PCs currently connected and running this program to the current date and time of this PC if they have enabled the Status / Chat function. Note that the software must be running with Administrator privileges on all systems for this function to work with later operating systems.
- If you are unable to log any contacts at all and consistently receive "unable to execute SQL Command", your folder permissions are set to read, so you can see the file, but not update. Setting your permissions properly will correct that.
- With later operating systems, groups often find it easier to attach and share an external hard drive or thumb drive to their server, than share their server's C drive.
- TCP Networking is NOT recommended for Amateur Contact Log. For proper functionality and to fully enjoy all the feature's of AC Log, please select File Share.
- Keep ALL network equipment (especially your PCs, router and / or hubs) on a UPS! Power fluctuations on the network and PC shut downs due to power loss will damage your data file, cause the loss of a block of records within your database or corrupt it completely. If your PCs go down each time your generator runs out of gas, data loss is just a matter of time!
- Don't wait until the Saturday morning of Field Day to install and test out the software on your network! If you haven't already done so, get the PCs together before Field Day, hook them up and make sure that each PC is able to access and update the common data file. Problems solved very easily in a relaxed atmosphere can seem insurmountable when the clock is ticking.
Copyright 1997-2013, N3FJP Software - Affirmatech, Inc