PACKET
PACKET - Robust PACKET
Packet, also known as FSK300, AFSK1200, BPSK300, QPSK600, BPSK1200, QPSK2400, AX.25 and IL2P, is a packet based protocol derived from X.25 and HDLC computer network protocols. Packet radio is a synchronous system in which data is transmitted in frames.
There are a number of variants that exist. For HFHigh Frequency (3-30 MHz), FSK300, BPSK300 and QPSK600 are typically used, while at VHFVery High Frequency (30-300 MHz) and above, AFSK1200, BPSK1200, and QPSK2400 are typically used, though these are by no means set.
Early History[edit]
Teletype machines were first developed in the 1930’s. As soon as they became available on the surplus market, hams began to use them on the air.
It wasn’t difficult to get started. You just needed to add a simple modem which was called a “terminal unit.”
It was not a efficient way to send text. First you would turn on the transmitter and it would sit there transmitting a 100% duty cycle carrier. The frequency would shift by 170 HzHertz (Hz), unit of frequency, defined as one cycle per second (1 Hz). in a certain pattern for each key pressed. There was no error detection so you would often see garbled messages.
It used a 5 bit code, commonly known as “baudot.” This allows only 32 different combinations, not enough for all letters and digits. Some of the codes were for control functions like carriage return, line feed, or bell. 26 of the codes were for letters. A “shift” control code was used to get digits or special characters instead of letters. If noise clobbered the shift or unshift code, you would see digits and special characters instead of letters or vice versa.
In 1978 Canadian hams began experimenting with a much different method of sending data over the air. Rather than keeping the transmitter on and sending one character at a time, it was sent in a short package (or “packet”).
Each transmission contained:
- Source address. (e.g. ham callsign)
- Destination address.
- Optional repeater addresses.
- Control / protocol bytes.
- Information part.
- Error checking (FCS, CRC).
With RTTYRadio TeleTYpe we had only a simple modem to convert between digital data and audio tones. When a key was pressed the corresponding code was sent immediately.
We now have some brains in between the terminal and modem to implement the protocol used over the air. This device is called a Terminal Node Controller (TNC).
The operator could take a while to compose a message but the complete message gets sent in a short burst.
This new approach offers many advantages.
- Rather than tying up a radio channel with one person typing a character at a time, a message could be sent in a short burst.
- Each packet contains information about where it came from and where it should be going.
- This allows many people to share one frequency.
- Error detection provided confidence that the data was not corrupted.
- The TNC would send acknowledgements when data was received correctly an perform retries when it doesn’t get thru the first time.
- Data was not limited to printable characters. You can send files such as JPEG images.
American ham radio operators had a disadvantage. The FCC did not allow the ASCII code to be used over ham radio until 1980. Special permission was required to perform the same type of experimentation as the Canadians.
The Vancouver Amateur Digital Communications Group made their design available as a bare printed circuit board. It was necessary to gather up all the other parts which discouraged most.
In 1983, Tucson Amateur Packet Radio (pronounced tapper) introduced their TNC-1 kit which made it a lot easier.
- All parts including modem and power supply.
- Documentation about 2 inches thick.
- $350 not including case.
They threw a lot of hardware at the problem. About 27 integrated circuits. This was later available as the Heathkit HD-4040.
The TNC-2 came along a couple years later. It was smaller and cheaper. MFJ and others produced products based on this design. For a while, everyone was churning out new TNC products.
Today, the 20th Century TNCs are pretty much extinct. You can now get better results and more features at lower cost by connecting your radio to the “soundcard” interface of a computer (e.g. Raspberry Pi) and using software, such as Dire Wolf, to decode the signals. You can also take advantage of an emerging breed of hardware DSP based KISS modems such as NinoTNC, which handle audio processing in hardware but defer bitstream processing to the host, which offer comparable levels of performance in hardware with the simplicity, reliability and compatibility of a physical modem.
300 BaudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. Packet[edit]
Legacy 300 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. packet uses FSKFrequency-Shift Keying modulation with a 200Hz shift and a 300 BdBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. symbol rate (seldom seen with 600 BdBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second.). On amateur frequencies above 30 MHzMegaHertz (MHz) 10^6 Hz, higher speeds such as 1200 and 9600 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. are typically used. In the US, until 2024 it was illegal for hams to use speeds above 300 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. on frequencies below 28 MHzMegaHertz (MHz) 10^6 Hz due to FCC regulations.
Today, BPSKBinary Phase-Shift Keying (1 bit per symbol) (binary phase shift keying, 1 bit per symbol), and QPSKQuadrature Phase-Shift Keying (2 bits per symbol) (quadrature phase shift keying, 2 bits per symbol) implementations are present and are entering wider use. BPSK300 is around 7dB more sensitive than FSK300, with QPSK600 around 3dB less sensitive than BPSK300 (although more sensitive to accurate frequency matching in current implementations).
In addition, IL2P is being used to augment AX.25, with a further variant IL2P+CRC adding a checksum to prevent AX.25 corruption.
1200 BaudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. Packet[edit]
Legacy 1200 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. packet, common to 2m APRSAutomatic Packet Reporting System, an amateur radio-based system for real time tactical digital communications of information of immediate value in the local area and "traditional" TNCs, uses FSKFrequency-Shift Keying modulation with a 1000Hz shift and 1200 BdBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. symbol rate. There are a number of variations that exist of PACKET-1200, including a PSKPhase-Shift Keying-based satellite version, although these are rare in practice. 1200 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. AFSKAudio Frequency-Shift Keying packet can be seen particularly in the VHFVery High Frequency (30-300 MHz) band with indirect FMFrequency Modulation modulation, commonly with APRSAutomatic Packet Reporting System, an amateur radio-based system for real time tactical digital communications of information of immediate value in the local area. Required FMFrequency Modulation channel spacing is 12.5 kHzKiloHertz (kHz) 10^3 Hz.
There now exist phase-shift keying 1200 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. modes: BPSKBinary Phase-Shift Keying (1 bit per symbol) (1200bps) and QPSKQuadrature Phase-Shift Keying (2 bits per symbol) (2400 bpsBits per second (bps)). These are designed for use in an SSBSingle-sideband modulation voice channel although do offer a small advantage over AFSKAudio Frequency-Shift Keying in an FMFrequency Modulation voice channel.
IL2P and, preferentially, IL2P+CRC are now also seen on VHFVery High Frequency (30-300 MHz)/UHFUltra High Frequency (300-3000 MHz), layered over any/all of the above modulations.
PACKET-2400 and PACKET-4800[edit]
These are just some more variants of PACKET that operate on 2400Bd and 4800Bd.
9600 BaudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. Packet[edit]
The variant of 9600 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. packet which uses GFSKGaussian Frequency-Shift Keying with a 4800 HzHertz (Hz), unit of frequency, defined as one cycle per second (1 Hz). and 9600 BdBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. symbol rate is known as G3RUH, after its inventor. This form of packet can be seen in the UHFUltra High Frequency (300-3000 MHz)-SHF band. Required FMFrequency Modulation channel spacing is 25kHz, and very flat audio response across the whole of the audio passband is required to transmit and decode it.
G3RUH packet can be combined with IL2P+CRC as above.
Samples[edit]
300 BaudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. Packet[edit]
300 bpsBits per second (bps)/baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. FSKFrequency-Shift Keying | 300 bpsBits per second (bps) BPSKBinary Phase-Shift Keying (1 bit per symbol) IL2P+CRC | 300 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. / 600bps QPSKQuadrature Phase-Shift Keying (2 bits per symbol) IL2P+CRC |
---|---|---|
Additional 300 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. FSKFrequency-Shift Keying Samples:
1200 BaudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. Packet[edit]
1200 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. AFSKAudio Frequency-Shift Keying (legacy FMFrequency Modulation packet, APRSAutomatic Packet Reporting System, an amateur radio-based system for real time tactical digital communications of information of immediate value in the local area) | 1200 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. IL2P+CRC BPSKBinary Phase-Shift Keying (1 bit per symbol) | 1200 baudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. / 2400 bpsBits per second (bps) IL2P+CRC QPSKQuadrature Phase-Shift Keying (2 bits per symbol) |
---|---|---|
Variants:
1200 Zero Crossing 600Hz/1200Hz |
1200 Zero Crossing 1200Hz/2400Hz |
1200 PSKPhase-Shift Keying Satellite 600Hz/1200Hz |
1200 FX469 1200Hz/1800Hz |
---|---|---|---|
2400 and 4800 BaudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. Packet[edit]
PACKET 2400 FX469 1200Hz/2400Hz |
PACKET 4800 FX469 2400Hz/4800Hz |
---|---|
9600 BaudBaud (unit symbol Bd) is the unit for symbol rate or modulation rate in symbols per second. Packet[edit]
PACKET 9600 |
---|
Another Packet 9600 sample:
Decoding Software[edit]
- Hobby Level Software
- Professional Equipment/Software
- go2DECODE
- go2MONITOR
- Hoka 300-32
- Krypto500
- Wavecom W-Code
- WinRadio Advanced Digital Suite
- WinRadio Universal FSK Decoder
- Rohde&Schwarz CA100
Additional Links[edit]
- HF Digital "Tower of Babel"
- RadioRaft PACKET
- WAVECOM Database: PACKET 300
- WAVECOM Database: PACKET 1200
- WAVECOM Database: PACKET 9600
- shoc Database: PACKET 300
- MultiPSK PACKET