Hi everyone,
This is a technical post!
JS8Call is a popular Amateur Radio software application providing “keyboard to keyboard chat” over HF/SSB. It was created by Jordan Sherer, KN4CRD, initially in 2018 and for general use in 2020. It now has pseudo-standard frequency ranges in most MF/HF Amateur bands. In addition to chat it supports transmission of position reports, short emails and SMSs. It also supports message relaying. It supports multiple concurrent chats in a single 3kHz “channel”.
|
Chatting to a Ham station 2500nm away on 25W |
JS8Call was written primarily for licensed Amateur operators. However the app allows use of non-Amateur callsigns and frequencies. So HF/SSB-equipped bluewater cruisers with Marine HF/SSB equipment and licenses can use the app. The range of JS8 far exceeds that of voice HF/SSB, and at much lower transmit power levels.
To learn about JS8Call, RTFM (Read The Fine Manual) downloadable
here. Note that JS8call is the app and JS8 is the Jordan Sherer-designed 8-FSK modulation scheme.
Both are designed for use in weak signal propagation conditions.
The section below describes our JS8Call setup. The subsequent section describes potential use of JS8call in Marine Bands, allowing non-Amateur operators to use JS8call.
Setup
Setting up JS8call is very simple with a modern Amateur HF/SSB rig. These rigs include USB sound cards and serial ports. The only tricky part is setting audio levels on computer and HF/SSB. Marine HF/SSB rigs lack the integrated sound card. See the Marine Bands Use section.
But first take a look at Jordan's Getting Started page
here. I filled in the JS8Call Settings pages as below. You will need to modify for your station-specific information (most importantly callsign and location) and preferences.
General/Station Settings
Set your callsign and your location! Location is defined in an Amateur-standard format called Maidenhead Grid Locator/Square. See the Marine Bands Use section below.
General/Behavior Settings
General/Networking&Autoreply
Radio Cat Control Settings
Set these to suit your HF/SSB.
Radio Rig Options Settings
Set these to suit your HF/SSB.
Audio Settings
Set these to suit your computer peripherals (eg sound card & serial cable).
Note that your computer’s and HF/SSB’s audio settings must be setup too.
Reporting Settings
The API allows use of “add on” software for various purposes including reporting. We don’t currently use the API.
Frequencies Settings
The default frequencies are for Amateur-band use, so do NOT use them without an Amateur license.
See the Marine Band Use section below for information on JS8Call Configurations which help avoid transmitting on unlicensed frequencies.
Saved Messages Settings
These messages provide a quick and easy means of sending common messages. Most important for us is the @APRSIS message which sends our position into the APRS network, ending up at www.aprs.fi.
Notifications Settings
These settings define events which trigger an audio notification on your computer.
UI Settings
We left these settings at their defaults.
Marine Bands Usage
Use of JS8 on Marine MF/HF channels is NOT formally approved. However an array of 3kHz channels are defined for fax, data and other special transmissions. Their use with JS8 appears legitimate.
What is needed is agreement in the cruiser community on which of the several channels in each marine band should be the default. Some are used for other purposes which we should not disrupt. As with voice channels, check if the channel’s busy before transmitting.
Here’s an image showing a subset of the 8MHz Marine Band Fax/Data/Special channels. Three of them were in use, and not for JS8. So care is required.
|
Several fax/data/special channels in use (and not for JS8) |
Interfacing
This is the toughest part of using JS8Call. Cables are needed and they are probably not commercially available. They are not difficult to make but require careful research of which HF/SSB connector pins to use. One alternative which comes with cables for many Icom Marine HF/SSBs is a Tigertronics
SignaLink.
Fundamentally, four connections are required:
* Serial port between computer and HF/SSB to control frequency, mode etc
* PTT (push to talk) from computer to HF/SSB, sometimes using a serial port control line
* Tx Audio from computer to HF/SSB
* Rx Audio from HF/SSB to computer
Here's a home-made cable for an Icom IC-M710. It connects a USB Sound Card to the HF/SSB's Remote jack.
|
Partial cable harness for Icom IC-M710 |
Position
Current position is necessary when using JS8Call. Other stations need to know your location to judge their performance. Position is entered using a Maidenhead Grid Locator/Square string. Programs exist to convert between latitude:longitude and Grid.
I use a python script to do the translation. It connects to our boat’s WiFi hotspot which carries NMEA0183 data including position. It samples the position and converts it to Grid, displaying it on screen, as below.
|
Running the Script |
Heartbeats
Heartbeats are JS8Call’s mechanism for stations to check how well their transmissions are working. Sending a HB should elicit a set of replies from stations, with each giving the SNR (Signal to Noise Ratio) of your signal at their location. These are very useful in judging which band is working best at any given time.
To send a Heartbeat simply click on the HB button and wait a few seconds for the transmission to occur.
Group Calling
JS8Call supports a range of groups. They provide a means of ‘focussing’ your calls. For marine use the @MM group (for Maritime Mobile) is suggested. Other alternatives are the standard regional groups such as @DX/OC (for Long Distance, Oceana).
After transmitting a group call you may get a response. You can then start to chat with that station directly.
Chat
JS8Call calls this “direct messaging”, meaning one station sends a message specifically to another. All stations can read all direct messages in the channel/band they’re tuned to. Direct messages are the way to ‘chat’ between stations.
In addition to looking for stations on the air using a Group Call you can directly call a specific station by typing in their callsign and clicking on the SEND button.
Direct messages are not quick. Think SLOW keyboard! But they are reliable and effective at long range. Think about your messages and keep them short. This ain’t WhatsApp!
Position Reporting
JS8Call supports several position reporting methods. We use APRSIS in which numerous Amateur shore stations monitor JS8 and forward @APRSIS messages via the internet to
aprs.fi This allows anyone to view your position reports. We maintain this as a backup to our satellite-based Starlink and Zoleo Messenger.
JS8Call position reporting is only available to licensed amateurs since the monitoring stations are on Amateur bands.
Power
We generally use 25W transmit power when bluewater cruising. When in coastal waters we often reduce this to 10W. In contrast we use 50W on voice channels. We usually get 2-4x the range with JS8 compared to voice.
The IC-7300 screenshot below shows a well-formed JS8 transmission. Note the nice ’tight’ signal and high peak. If your signal is broad and low your audio levels are poor or (in the case of IC-7300s) you have set your Rig Options => Mode to USB instead of Data/Pkt.
|
Good Tx Signal |
Gotchas
A problem emerged in setting up JS8Call for marine bands use. We could define marine band frequencies within the app. But when changing to any of them a Rig Control Error occurred, sometimes with an Audio Error too. This was with JS8Call controlling our IC-7300.
The workaround to the problem was to program the marine band frequencies into the IC-7300. We could then switch to MEMO mode (JS8Call controls the rig in VFO mode) and JS8Call 'followed' the manual changes we made.
No doubt other issues will emerge!
Configurations
With everything up and running we cloned our default JS8Call configuration. We renamed the old to our Amateur callsign and the new to our Marine callsign. Then we tidied up the Frequencies settings to help avoid accidental transmission on the 'wrong' frequencies.
This post has briefly summarised JS8Call. It is a very capable app. RTFM to learn more! There may be problems using it in Marine Bands, and it may prove impossible. But we're having a go! It would be great to be able to chat with non-Amateur bluewater cruisers on Marine Bands while on passage.
Overall we find JS8Call a very useful tool. We have run it on MacOS and on Windows (both natively). I am a licensed Amateur. Systems like JS8Call make it even more attractive for cruisers to be so.