# Frequency-shift keying **Frequency-shift keying** is a digital modulation method that carries data by switching a constant-amplitude [[Carrier_wave|carrier]] between a small set of discrete frequencies, one frequency for each symbol value, rather than by varying its phase or its amplitude. The simplest and most common form uses just two tones, a mark tone for a binary 1 and a space tone for a 0, so that demodulating the signal is a matter of telling which of the two tones is present at any moment. The microsim on this page lets the reader pull the two tones apart or push them together, watch the modulated waveform switch between them, and see how the choice reshapes the signal's spectrum. FSK is, in effect, [[Frequency_modulation|frequency modulation]] restricted to a finite set of allowed frequencies, and because the carrier's amplitude never changes, it is a constant-envelope modulation, which makes it tolerant of the kind of gain drift and fading that would corrupt an [[Amplitude-shift_keying|amplitude-shift-keyed]] signal and lets a receiver decode it without tracking the carrier's phase the way coherent [[Phase-shift_keying|phase-shift keying]] does. That robustness, together with the modest circuitry a non-coherent FSK receiver needs, is why the technique keeps turning up in low-cost, low-power and legacy links even where more bandwidth-efficient schemes exist. FSK is one specialisation of the broader idea of [[Signal_modulation|keying a carrier to carry digital data]], and the tone spacing a design chooses feeds directly into how much of a shared [[Communication_channel|communication channel]] the resulting signal occupies. ## Modulating and demodulating In its simplest, binary form, FSK sends one bit per symbol by switching the transmitted tone between two frequencies: a mark tone, conventionally standing for a 1, and a space tone standing for a 0, so the transmitted signal is `cos(2*pi*f(t)*t + phase)` with `f(t)` equal to whichever of the two tones the current bit calls for. A non-coherent detector — typically a discriminator or a pair of tone filters followed by an energy comparison — can recover the bits without ever needing to reconstruct a phase reference for the carrier, which is the main reason FSK receivers can be built so simply. How the transmitter switches between the two tones matters as much as which two tones it picks. A continuous-phase implementation keeps the carrier's phase running smoothly across every bit boundary, changing only its instantaneous frequency; a discontinuous implementation instead resets the phase at the start of each bit, which is simpler to build from two independent oscillators but sprays extra energy into sidebands far from the two tones because of the abrupt jump. Everything about the resulting spectrum is governed by one dimensionless number, the modulation index `h = (f1 - f0) * Tb`, the tone spacing measured in units of the bit period: continuous-phase FSK with `h = 0.5` is the tightest spacing whose tones stay [[Orthogonality|orthogonal]] under coherent detection,[^ell156] and the sketch itself labels `h = 1` as Sunde's classic FSK, the wider spacing at which a simple non-coherent receiver can separate the tones reliably. Demodulation follows whichever assumption the transmitter used: a coherent receiver correlates the incoming waveform against local copies of both tones and picks the larger response, while a non-coherent receiver measures each tone's energy independently and compares the two, trading a few decibels of performance for a much simpler design that never has to track the carrier's phase at all — binary FSK detected this way has bit-error probability `P_b = (1/2)*exp(-Eb/(2*N0))`, a milder curve than coherent detection's Gaussian-tail formula for the same energy per bit.[^ell158] The same modulation index also sets how much spectrum the signal needs: Carson's rule estimates the occupied bandwidth as `B ~ Rb*(h + 2)`, so pulling the tones farther apart to ease detection always costs bandwidth back, exactly the trade-off the sketch's separation control puts in the reader's hand. ## Variations FSK's core idea supports many variations, most of them adjusting either how many tones are used or how smoothly the transmitter moves between them. Multiple frequency-shift keying, also called M-ary or multilevel FSK, spreads a symbol across more than two tones so that each symbol carries `log2 M` [[Binary_number|bits]] instead of one; unlike M-ary PSK or QAM, where a bigger constellation always demands more energy per bit for the same error rate, non-coherent M-ary FSK actually needs *less* Eb/N0 as M grows, because the extra tones add more directions in signal space for a noisy sample to be pushed into before it is mistaken for the wrong one.[^ell158] Continuous-phase frequency-shift keying is the smooth-phase implementation already described above, chosen whenever spectral cleanliness matters more than circuit simplicity; minimum-shift keying is the special case at the tightest orthogonal spacing, `h = 0.5`. Gaussian frequency-shift keying passes the bit stream through a Gaussian-shaped [[Low-pass_filter|low-pass filter]] before it modulates the carrier, rounding off the instantaneous-frequency steps so the transmitted spectrum falls away faster outside the occupied channel; Bluetooth's Basic Rate radio uses this scheme for exactly that reason. Gaussian minimum-shift keying combines the two ideas — Gaussian pre-filtering at the `h = 0.5` spacing — and is the modulation the GSM cellular standard uses on its radio link. Audio frequency-shift keying keeps both tones inside the audio passband of an ordinary voice channel or radio rather than shifting the radio's own carrier frequency directly, the trick that let early dial-up modems and amateur-radio radioteletype ride as plain [[Sound|sound]] over equipment built only to carry a voice. ## Applications FSK's constant envelope suits transmitters that are small, battery-powered, or otherwise built around a cheap, efficient amplifier rather than a linear one. Weather-balloon radiosondes report pressure, temperature and humidity back to the ground on an FSK telemetry link that such a transmitter can drive; short-range remote controls for garage doors and similar devices use it, or plain on-off keying, for the same reason. At the opposite extreme of the radio spectrum, the very low and extremely low frequency bands used to reach a submerged submarine's antenna are far too narrow and noisy for anything but the slowest, most robust signalling, and naval very-low-frequency transmitters have historically used FSK, sending only a handful of bits per minute, to push a message through seawater that attenuates almost everything else.[^cn-vlf] Amateur radio operators use an audio-tone variant of the same idea, described above as audio frequency-shift keying, to carry slow digital modes such as radioteletype over an ordinary voice transmitter rather than switching the radio's own carrier frequency directly. Public weather-alert broadcasting works the same way: a digital header carrying the alert type and the affected area is sent as an audio FSK burst ahead of the spoken warning, so that receivers built only to decode two tones can trigger an alarm before a listener ever hears a word.[^cn-same] ## Caller ID and remote metering standards Telephone networks and electricity or gas meters both need to send a short digital message over a line that was built for continuous analogue voice, not bursts of data, and FSK survives that mismatch better than amplitude-based signalling because a tone decoder only has to tell two frequencies apart rather than calibrate to an absolute level that the local loop's resistance and length can shift. Caller-identification systems exploit exactly that: in the United States, the calling number rides on a Bell-202-style tone pair sent into the silent gap around the first ring, under a scheme originally issued by Bellcore and carried forward by its successor, Telcordia Technologies;[^cn-telcordia] in the United Kingdom, British Telecom specified a broadly similar arrangement using the tone pair of the older V.23 modem standard, delivered in the same kind of gap around the first ring.[^cn-bt] The European Telecommunications Standards Institute later set out a common on-hook data-transmission [[Communication_protocol|protocol]] so that caller-display equipment built by different manufacturers would interoperate across member countries regardless of whose national network it was plugged into,[^cn-etsi] and in the United Kingdom the Cable Communications Association separately published a compatible variant of the signalling for delivery over cable-television companies' own telephony lines rather than the incumbent carrier's copper.[^cn-cca] Remote metering equipment borrows the same idea in the other direction, using an FSK burst to report a reading or an alarm condition back over a [[Communication_channel|line]] that otherwise carries nothing but voice. ## Microsims The primary microsim plots the modulated waveform above a live spectrum computed by a small [[Discrete_Fourier_transform|discrete Fourier transform]] run on the sampled signal. **SEPARATION** sets how far apart the mark and space tones sit, expressed as the modulation index `h`; **CYCLES/BIT** sets the centre frequency, in carrier cycles per bit, around which the two tones sit; **NOISE** adds Gaussian noise before the waveform is analysed. A "phase: continuous" toggle switches between the smooth-phase and reset-phase implementations described above, a "randomize bits" button refills the bit pattern, and a "scroll" toggle animates the trace. The spectrum pane marks both landmark separations named in the sketch, `h = 0.5` for minimum-shift keying and `h = 1` for Sunde's classic FSK, so the two spectral lobes can be watched pulling apart, or the discontinuous-phase spectrum's extra sidelobes appearing, as the controls move. A three.js companion renders the same binary FSK signal as a helix that switches pitch with every bit. *Try:* Turn "phase: continuous" off and watch the waveform jump at every bit edge while the spectrum sprouts extra sidelobes that the continuous-phase version does not have. ## Wikipedia : Wikitube **Strict pair:** [Wikipedia](https://en.wikipedia.org/wiki/Frequency-shift_keying) : [Wikitube](https://en.wikitube.io/wiki/Frequency-shift_keying) Skeleton mirrored at revision 1372921099. Prose, emphasis and the microsims are Wikitube's own. ## See also - [[Communication_channel]] - [[Signal_modulation]] - [[Amplitude-shift_keying]] - [[Phase-shift_keying]] - [[Orthogonality]] - [[Constellation_diagram]] - [[Communication_protocol]] ## References [^ell156]: Ellingson, S. *Radio Systems Engineering – Revised First Edition*. 2023, pp. 156–157 (PDF pages). Open Textbook Library: https://open.umn.edu/opentextbooks/textbooks/radio-systems-engineering . CC BY-NC. [^ell158]: Ellingson, S. *Radio Systems Engineering – Revised First Edition*. 2023, p. 158 (PDF pages). Open Textbook Library: https://open.umn.edu/opentextbooks/textbooks/radio-systems-engineering . CC BY-NC. [^cn-vlf]: Citation needed: a primary source for naval VLF/ELF submarine-communication FSK link parameters and typical achieved data rate. [^cn-same]: Citation needed: the standards document specifying the audio-FSK header format and bit rate used by public weather-alert broadcasting. [^cn-telcordia]: Citation needed: the Telcordia (formerly Bellcore) generic requirements document and revision defining the U.S. Bell-202-tone calling-number-delivery format. [^cn-bt]: Citation needed: the British Telecom specification number for UK calling-line-identification signalling. [^cn-etsi]: Citation needed: the ETSI standard number for the pan-European on-hook data-transmission / calling-line-identification format. [^cn-cca]: Citation needed: the Cable Communications Association's published specification for calling-line identification over cable-telephony lines. ## External links - [Frequency-shift keying — live sketch](https://editor.p5js.org/sciencenibber/full/vRlSifY1L) - [Frequency-shift keying — editor](https://editor.p5js.org/sciencenibber/sketches/vRlSifY1L) <!-- Hubs: Signal_processing. Portals: PORTAL_Signal_Processing. Signal Processing portal wave 1 · 2026-09-17 · drafted. -->