JS8Spotter for JS8Call

Last updated 10/24/2023. Special thanks to KE0DHO, KF0HHR, N0GES, N6CYB, KQ4DRG, NK8O, N0YJ, KI6ESH, N4FWD, WB5TEX, KQ4HQD, and everyone else who has contributed


Introduction Videos

Useful and more brief than the training videos.


Training Videos

These are the most updated videos. They're more in-depth (long), and they correspond to the main features of JS8Spotter.


1: Introduction

2: Profile-Based Activity Search

3: APRS Commands

4: Offline Maps

5: Expect Subsystem

6: MC Forms

Overview

Potential users should already be familiar with JS8Call by KN4CRD. JS8Call decodes activity on the left Band Activity pane, and attempts to place relevant activity in the center Message Pane. Callsign activity and other related information is placed in the right Call Activity pane. In all of this, it is likely that the operator will miss or lose track of activity that is relevant. That is where JS8Spotter comes in.

JS8Spotter was created to fill gaps in the JS8Call feature set. It can help users sort and track band activity, send APRS messages more easily, view stations on an offline map, send custom automated responses, and even implement simple forms. Data is stored in an SQLite database file, which is easily accessed via SQLiteStudio (export features are also built-in to JS8Spotter, for easy save or copy without having to open the database file.)

While useful, JS8Spotter does not pretend to be a fix-everything solution. Above all, JS8Spotter does not attempt to dumb-down JS8Call or make it more accessible to those who are having a hard time learning it. Rather, it extends the utility of JS8Call by filling gaps in the JS8Call feature set. It was written by a hobbyist programmer, who hopes that hobbyist operators will enjoy it and find it useful. JS8Spotter is distributed under an MIT license, and may be used and distributed free of charge.


The Manual

A manual (v0.4 updated 10/14/23) is handy when you don't have the time or bandwidth to watch videos. I'm partial to manuals myself, to be honest. Here's a manual for JS8Spotter, that covers the basics of how everything works. It's sure to have errors, please feel free to let me know when you spot them.

Manual v0.5 for JS8Spotter v1.07b (PDF)


JS8Spotter Features

  • Profile-Based Activity Search - The primary function of JS8Spotter. The ability to create search terms, save, export, and review band activity traffic that you want to track.
  • ARPS Commands - Simple interfaces to send Email, grid, and POTAGW via APRS and JS8Call, without having to remember the syntax and type it in manually.
  • Map - A very basic offline map that gives you a general picture of grid coordinates that are gathered from band activity.
  • Visualize Waterfall - Quickly view a visual of JS8Call traffic over time, in a simulated waterfall display.
  • Expect - A subsystem that allows you to store more than just "INFO?" and "STATUS?" responses. Create as many auto responses as you'd like. Forms are also stored here.
  • MCForms - Multiple Choice Forms, forms for JS8Call, for those who find value in forms. You may read more about MCForms here, or view all published forms here.
  • MCForms Gateway - Optionally auto-submit any forms you collect to your own easy-to-create gateway server. Do whatever you want with the data.
  • Changelog - View changes per build.

Download Latest

You may download the latest build of JS8Spotter below. It is installer free and may be run directly after the zip file is extracted. Both downloads work in Windows or Linux:

JS8Spotter v1.07b (main) CX_Freeze Windows Executable + Source (for Windows or Linux) -- Built on Win10 64-bit, but should work on 32-bit systems up to Win11. Virustotal scanned clean.
JS8Spotter v1.07b (alternate) PyInstaller Windows Executable + Source (for Windows or Linux) -- Built on Win10 64-bit, but should work on 32-bit systems up to Win11. See virus scanning false positive notes below.
JS8Spotter v1.07b Source For use on systems where you intend to run the python file directly using the python interpreter. Contains no compiled executable file.

Install / Upgrade Notes

Several people have reached out to me with questions, issues, and resolutions. I will need to work through a few emails to capture them all, but I'll share what I have for now:

  • For updates from 1.04b/1.05b/1.06b to 1.07b you may retain your js8spotter.db file. No changes have been made to the database format.
  • Thank you to Ed, WG5F and Mike, AD0YM of the 4SQRP group for noting that if you receive an error related to a missing vcruntime140.dll file, the fix is to install the Microsoft Visual C++ Redistributable 2015-2022 package.
  • Some users have attempted to manually copy JS8Spotter into the C:\Program Files\ folder. This will usually create file access issues resulting in errors opening the js8spotter.db file when loading the program. It is recommended that you keep your install outside system-controlled locations.
  • If you attempt to double-click the .zip file after downloading, and then double-click the .exe file to run, the supporting library files won't be available to the program. You must extract / unpack the zip file before running the program.


Previous Versions

The following are previous builds of JS8Spotter:

JS8Spotter v1.06b JS8Spotter v1.06b Source Only
JS8Spotter v1.05b
JS8Spotter v1.04b JS8Spotter v1.04b Source Only
JS8Spotter v1.03b JS8Spotter v1.03b Source Only
Download even older versions here

Notes

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Virus scanning note: You should always scan every program you download with a reputable virus scanner. I scan all posted files with VirusTotal.com, which uses ALL of the major virus scanning engines. Version 1.07b was scanned and reports clean on all engines *when using the cx_freeze build*. The pyinstaller build reports issues 6 of 65 engines. These are surely false positives, and they are expected with pyinstaller, but you should be aware of this when deciding which build you want to use.

Platform note: I currently use JS8Call on both Windows and Linux platforms. This program should behave properly on both.

Upgrade notes: When upgrading JS8Spotter, you may wish to retain your database. A migration tool will be included with builds that require changes.