[[PROTOCOL_OVERVIEW]] === Overview All QSO modes except ISCAT benefit from the use of structured messages. Each such message consists of two 28-bit fields for callsigns and a 15-bit field for a grid locator, report, acknowledgment, or a "`73`" sign-off indicator. Alternatively, a 72^nd^ bit flags a message containing arbitrary alphanumeric text, up to 13 characters. Special formats allow other information such as add-on callsign prefixes (e.g., ZA/K1ABC) or suffixes (e.g., K1ABC/4) to be encoded. The basic aim is to compress the most common messages used for minimally valid QSOs into a fixed 72-bit length. To be useful, this kind of lossless message compression requires use of a strong forward error correcting (FEC) code. Different FEC codes are used for each mode. These modes require good synchronization of time and frequency between transmitting and receiving stations. As an aid to the decoders, each protocol includes a "`synch vector`" of known symbols along with the information-carrying symbols. Generated waveforms for all of the _WSJT-X_ modes have continuous phase and a constant envelope. [[JT4PRO]] === JT4 FEC in JT4 uses a strong convolutional code with constraint length K=32, rate r=1/2, and a zero tail. This choice leads to an encoded message length of (72+31) x 2 = 206 information-carrying bits. Modulation is 4-tone frequency-shift keying (4-FSK) at 11025 / 2520 = 4.375 baud. Each symbol carries one information bit (the most significant bit) and one synchronizing bit. The pseudo-random sync vector is the following sequence: 000011000110110010100000001100000000000010110110101111101000 100100111110001010001111011001000110101010101111101010110101 011100101101111000011011000111011101110010001101100100011111 10011000011000101101111010 The two 32-bit polynomials used for convolutional encoding have hexadecimal values f2d05351 and e4613c47. [[JT9PRO]] === JT9 FEC in JT9 uses the same strong convolutional code aa JT4: constraint length K=32, rate r=1/2, and a zero tail, leading to an encoded message length of (72+31) × 2 = 206 information-carrying bits. Modulation is nine-tone frequency-shift keying, 9-FSK at 12000.0/6912 = 1.736 baud. Eight tones are used for data, one for synchronization. Eight data tones means that three data bits are conveyed by each transmitted information symbol. Sixteen symbol intervals are devoted to synchronization, so a transmission requires a total of 206 / 3 + 16 = 85 (rounded up) channel symbols. The sync symbols are those numbered 1, 2, 5, 10, 16, 23, 33, 35, 51, 52, 55, 60, 66, 73, 83, and 85 in the transmitted sequence. Tone spacing of the 9-FSK modulation for JT9A is equal to the keying rate, 1.736 Hz. The total occupied bandwidth is 9 × 1.736 = 15.6 Hz. [[JT65PRO]] === JT65 A detailed description of the JT65 protocol was published in {jt65protocol} for September-October, 2005. A Reed Solomon (63,12) error-control code converts 72-bit user messages into sequences of 63 six-bit information-carrying symbols. These are interleaved with another 63 symbols of synchronizing information according to the following pseudo-random sequence: 100110001111110101000101100100011100111101101111000110101011001 101010100100000011000000011010010110101010011001001000011111111 The synchronizing tone is normally sent in each interval having a "`1`" in the sequence. Modulation is 65-FSK at 11025/4096 = 2.692 baud. Frequency spacing between tones is equal to the keying rate for JT65A, and 2 and 4 times larger for JT65B and JT65C. For EME QSOs the signal report OOO is sometimes used instead of numerical signal reports. It is conveyed by reversing sync and data positions in the transmitted sequence. Shorthand messages for RO, RRR, and 73 dispense with the sync vector entirely and use time intervals of 16384/11025 = 1.486 s for pairs of alternating tones. The lower frequency is the same as that of the sync tone used in long messages, and the frequency separation is 110250/4096 = 26.92 Hz multiplied by n for JT65A, with n = 2, 3, 4 used to convey the messages RO, RRR, and 73. [[QRA64_PROTOCOL]] === QRA64 Still to come ... [[SLOW_SUMMARY]] === Slow Mode Summary [[SLOW_TAB]] .Parameters of Slow Modes [width="90%",cols="3h,^3,^2,^1,^2,^2,^2,^2,^2,^2",frame=topbot,options="header"] |=============================================================================== |Mode |FEC Type |(k,n) | Q| Mod | Baud |BW (Hz)|fSync|TxT (s)|S/N (dB) |JT4A |K=32, r=1/2|(206,72)| 2| 4-FSK| 4.375| 17.5 | 0.50| 47.1 | -23 |JT9A |K=13, r=1/2|(206,72)| 8| 9-FSK| 1.736| 15.6 | 0.19| 49.0 | -27 |JT65A |RS |(63,12) |64|65-FSK| 2.692| 177.6 | 0.50| 46.8 | -25 |QRA64A|QRA |(63,12) |64|64-FSK| 1.736| 111.1 | 0.25| 48.4 | -28 | WSPR |K=32, r=1/2|(162,50)| 2| 4-FSK| 1.465| 5.9 | 0.50|110.6 | -29 |=============================================================================== Frequency spacing between tones, total occupied bandwidth, and approximate threshold signal-to-noise ratios are given for the various submodes of JT4, JT9, JT65, and QRA64 in the following table: Submode Spacing BW S/N (Hz) (Hz) dB ---------------------------- JT4A 4.375 17.5 -23 JT4B 8.75 35.0 -22 JT4C 17.5 70.0 -21 JT4D 39.375 157.5 -20 JT4E 78.75 315.0 -19 JT4F 157.5 630.0 -18 JT4G 315.0 1260.0 -17 JT9 1.7361 15.625 -27 JT65A 2.6917 177.6 -25 JT65B 5.3833 355.3 -24 JT65C 10.767 710.6 -23 QRA64A 1.736 111.1 -28? QRA64B 3.472 222.2 QRA64C 6.944 444.4 QRA64D 13.889 888.9 QRA64E 27.228 1777.8 JT4 and JT65 signal reports are constrained to the range –1 to –30 dB. This range is more than adequate for EME purposes, but not enough for optimum use at HF. S/N values displayed by the JT4 and JT65 decoders are clamped at an upper limit –1 dB, and the S/N scale becomes significantly nonlinear above –10 dB. JT9 allows signal reports in the range –50 to +49 dB. It manages this by taking over a small portion of "`message space`" that would otherwise be used for grid locators within 1 degree of the south pole. The S/N scale of the present JT9 decoder is reasonably linear (although it's not intended to be a precision measurement tool). === ISCAT ISCAT messages are free-form, up to 28 characters in length. Modulation is 42-tone frequency-shift keying at 11025 / 512 = 21.533 baud (ISCAT-A), or 11025 / 256 = 43.066 baud (ISCAT-B). Tone frequencies are spaced by an amount in Hz equal to the baud rate. The available character set is ---- 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ /.?@- ---- Transmissions consist of sequences of 24 symbols: a synchronizing pattern of four symbols at tone numbers 0, 1, 3, and 2, followed by two symbols with tone number corresponding to (message length) and (message length + 5), and finally 18 symbols conveying the user's message, sent repeatedly character by character. The message always starts with +@+, the beginning-of-message symbol, which is not displayed to the user. The sync pattern and message-length indicator have a fixed repetition period, recurring every 24 symbols. Message information occurs periodically within the 18 symbol positions set aside for its use, repeating at its own natural length. For example, consider the user message +CQ WA9XYZ+. Including the beginning-of-message symbol +@+, the message is 10 characters long. Using the character sequence displayed above to indicate tone numbers, the transmitted message will therefore start out as shown in the first line below: ---- 0132AF@CQ WA9XYZ@CQ WA9X0132AFYZ@CQ WA9XYZ@CQ W0132AFA9X ... sync## sync## sync## ---- Note that the first six symbols (four for sync, two for message length) repeat every 24 symbols. Within the 18 information-carrying symbols in each 24, the user message +@CQ WA9XYZ+ repeats at its own natural length, 10 characters. The resulting sequence is extended as many times as will fit into a Tx sequence. === MSK144 Standard MSK144 messages are structured in the same way as those in the slow modes, with a 72 bits of user information. Forward error correction is implemented by first augmenting the 72 message bits with an 8-bit CRC calculated from the message bits. The CRC is used to detect and eliminate most false decodes at the receiver. The resulting 80-bit augmented message is mapped to a 128-bit codeword using a (128,80) binary low-density-parity-check (LDPC) code designed by K9AN specifically for this purpose. Two 8-bit synchronizing sequences are added to make a message frame 144 bits long. Modulation is Offset Quadrature Phase-Shift Keying (OQPSK) at 2000 baud. Even-numbered bits are conveyed over the in-phase channel, odd-numbered bits on the quadrature channel. Individual symbols are shaped with half-sine profiles, thereby ensuring a generated waveform with constant envelope, equivalent to a Minimum Shift Keying (MSK) waveform. Frame duration is 72 ms, so the effective character transmission rate for standard messages is up to 250 cps. MSK144 also supports short-form messages that can be used after QSO partners have exchanged both callsigns. Short messages consist of 4 bits encoding a signal report, R+report, RRR, or 73, together with a 12-bit hash code based on the ordered pair of "`to`" and "`from`" callsigns. Another specially designed LDPC (32,16) code provides error correction, and an 8-bit synchronizing vector is appended to make up a 40-bit frame. Short-message duration is thus 20 ms, and short messages can be decoded from very short meteor pings. The 72 ms or 20 ms frames of MSK144 messages are repeated without gaps for the full duration of a transmission cycle. For most purposes, a cycle duration of 15 s is suitable and recommended for MSK144. The modulated MSK144 signal occupies the full bandwidth of a SSB transmitter, so transmissions are always centered at audio frequency 1500 Hz. For best results, transmitter and receiver filters should be adjusted to provide the flattest possible response over the range 300Hz to 2700Hz. The maximum permissible frequency offset between you and your QSO partner ± 200 Hz. === Fast Mode Summary .Parameters of Fast Modes [width="90%",cols="3h,^3,^2,^1,^2,^2,^2,^2,^2,^2",frame="topbot",options="header"] |============================================================================= |Mode |FEC Type |(k,n) | Q| Mod | Baud |BW (Hz)|fSync|TxT (s)|S/N (dB) |ISCAT-A | - | - |42|42-FSK| 21.5 | 905 | 0.17| 1.176 | |ISCAT-B | - | - |42|42-FSK| 43.1 | 1809 | 0.17| 0.588 | |JT9E |K=32, r=1/2|(206,72)| 8| 9-FSK| 25.0 | 225 | 0.19| 3.400 | |JT9F |K=32, r=1/2|(206,72)| 8| 9-FSK| 50.0 | 450 | 0.19| 1.700 | |JT9G |K=32, r=1/2|(206,72)| 8| 9-FSK|100.0 | 900 | 0.19| 0.850 | |JT9H |K=32, r=1/2|(206,72)| 8| 9-FSK|200.0 | 1800 | 0.19| 0.425 | |MSK144 |LDPC |(128,72)| 2| OQPSK| 2000 | 2000 | 0.11| 0.072 | -5 |MSK144 Sh|LDPC |(32,16) | 2| OQPSK| 2000 | 2000 | 0.20| 0.020 | -5 |=============================================================================