Skip to main content

Online Simulator for ASK, FSK, and PSK Signal Generation


Interactive Digital Signal Processing (DSP) Tutorial and Simulator for ASK, FSK, and BPSK modulation techniques.
Try our new Digital Signal Processing Simulator!   •   Interactive ASK, FSK, and BPSK tools updated for 2025.

Digital Modulation Visualizer: ASK, FSK, & BPSK Simulator

Learn and visualize binary modulation techniques (ASK, FSK, BPSK) in real-time with adjustable carrier and sampling parameters. Perfect for DSP students and engineers.

1. ASK (Amplitude Shift Keying) Simulator Digital
2. FSK (Frequency Shift Keying) Simulator Digital
3. BPSK (Binary Phase Shift Keying) Simulator Phase

Modulation Workflow & Mathematics Theory

Mathematical Background

1. Amplitude Shift Keying (ASK)

The signal is represented by changing the amplitude of the carrier wave. For Binary ASK:

$$s(t) = \begin{cases} A \cos(2\pi f_c t) & \text{for bit 1} \\ 0 & \text{for bit 0} \end{cases}$$

2. Frequency Shift Keying (FSK)

The frequency of the carrier is shifted between two discrete values ($f_0$ and $f_1$):

$$s(t) = \begin{cases} \cos(2\pi f_1 t) & \text{for bit 1} \\ \cos(2\pi f_0 t) & \text{for bit 0} \end{cases}$$

3. Phase Shift Keying (PSK)

The phase of the carrier is shifted by 180° ($\pi$ radians) to represent different bits:

$$s(t) = \begin{cases} \cos(2\pi f_c t) & \text{for bit 1 (0 rad)} \\ \cos(2\pi f_c t + \pi) & \text{for bit 0 (\(\pi\) rad)} \end{cases}$$

⚠️ Simulation Constraints & Rules

To ensure a valid and visually clear simulation, the following digital signal processing (DSP) rules must be followed:

  • Nyquist Criteria: The Sampling Frequency ($f_s$) must be at least twice the Carrier Frequency ($2 \times f_c$). For a smooth visual curve, $f_s \ge 10 \times f_c$ is recommended.
  • Carrier vs. Message: The Carrier Frequency should be much higher than the Bit Rate ($f_c \gg R_b$). In these simulators, Bit Duration is fixed at 1s ($R_b = 1$ bps).
  • Aliasing Warning: If $f_s < 2f_c$, the output waveform will suffer from aliasing, appearing as a lower-frequency distorted wave.
  • Phase Continuity: These simulators use "Sudden Phase Transition" (Non-coherent) modeling for simplicity.

Try Other Interactive Online Simulators

MATLAB Codes for ASK, FSK, and PSK

View MATLAB Codes for ASK, FSK, and PSK =>

Modulation FAQ & Help

Why is BPSK more noise-resistant than ASK?

BPSK relies on phase shifts (180 degrees) rather than amplitude. Since noise typically affects the amplitude of a signal, BPSK remains more recognizable to a receiver even in high-interference environments.

What is the Nyquist rate in these simulations?

The Nyquist rate requires the sampling frequency to be at least twice the highest frequency component. In our simulator, if your Carrier is 10Hz, your Sampling must be at least 20Hz.



Contact Us

Name

Email *

Message *

Popular Posts

BER vs SNR for M-ary QAM, M-ary PSK, QPSK, BPSK, ...(MATLAB Code + Simulator)

Bit Error Rate (BER) & SNR Guide Analyze communication system performance with our interactive simulators and MATLAB tools. 📘 Theory 🧮 Simulators 💻 MATLAB Code 📚 Resources BER Definition SNR Formula BER Calculator MATLAB Comparison 📂 Explore M-ary QAM, PSK, and QPSK Topics ▼ 🧮 Constellation Simulator: M-ary QAM 🧮 Constellation Simulator: M-ary PSK 🧮 BER calculation for ASK, FSK, and PSK 🧮 Approaches to BER vs SNR Calculation What is Bit Error Rate (BER)? The BER indicates how many corrupted bits are received compared to the total number of bits sent. It is the primary figur...

MIMO Channel Matrix | Rank and Condition Number

MIMO / Massive MIMO MIMO Channel Matrix | Rank and Condition...   The channel matrix in wireless communication is a matrix that describes the impact of the channel on the transmitted signal. The channel matrix can be used to model the effects of the atmospheric or underwater environment on the signal, such as the absorption, reflection or scattering of the signal by surrounding objects. When addressing multi-antenna communication, the term "channel matrix" is used. Let's assume that only one TX and one RX are in communication and there's no surrounding object. Here, in our case, we can apply the proper threshold condition to a received signal and get the original transmitted signal at the RX side. However, in real-world situations, we see signal path blockage, reflections, etc.,  (NLOS paths [↗]) more frequently. The obstruction is typically caused by building walls, etc. Multi-antenna communication was introduced to address this issue. It makes diversity app...

UGC NET Electronic Science Previous Year Question Papers with Solutions

Home / Engineering & Other Exams / UGC NET 2026 PYQ ⬇️ Download Papers and Solutions 📋 Exam Pattern 💡 Preparation Tips ❓ FAQs 📊 Exam Highlights: Electronic Science (88) Feature Details Junior Research Fellowship (JRF) ₹37,000 + HRA per month Eligibility M.Sc/M.Tech in Electronics (55%) Validity of Certificate JRF (3 Years) | Lectureship (Lifetime) 📥 Download UGC NET Electronics PDFs Complete collection of previous year question papers, answer keys and explanations for Subject Code 88. Start Downloading 📂 View All Question Papers June 2025 - Question Paper Download PDF June 2025 - Solved Paper + Explanation ...

MATLAB Code for OTFS (Orthogonal Time Frequency Space)

MATLAB Code for OTFS (Orthogonal Time Frequency Space) %% Clear workspace clc; clear; close all ; %% Step 1: OTFS Parameters N_delay = 4; % Number of delay bins (rows) N_doppler = 4; % Number of Doppler bins (columns) N_sym = N_delay * N_doppler; modOrder = 4; % QPSK SNR_dB = 20; % Noise level %% Step 2: Generate random data symbols data = randi([0 modOrder-1], N_sym, 1); txSymbols = pskmod(data, modOrder, pi/4); disp( 'Transmitted Delay-Doppler symbols:' ); disp(reshape(txSymbols, N_delay, N_doppler)); %% Step 3: Map Delay-Doppler → Time-Frequency (ISFFT) % ISFFT: Inverse Symplectic Finite Fourier Transform % 1. Take IDFT along Doppler (columns) % 2. Take DFT along Delay (rows) ddSymbols = reshape(txSymbols, N_delay, N_doppler); % Step 3a: IDFT along columns (Doppler) tfGrid = ifft(ddSymbols, N_doppler, 2); %IFFT (accross columns) along Doppler → spreads in time (Delay → Time) %FFT (accross rows)along Delay → spreads in frequency (Delay → Frequency) % Step 3b: DFT along ...

How to Mount Google Drive in Google Colab

How to Mount Google Drive in Google Colab Google Colab provides temporary storage during a session. Any files stored in the /content directory will be deleted when the runtime disconnects. To store datasets, trained models, and results permanently, it is recommended to mount your Google Drive in Colab. Mounting Google Drive allows your notebook to access files directly from your Drive and save outputs there so they remain available even after the Colab session ends. Step 1: Import the Drive Module First import the Google Colab drive module. from google.colab import drive Step 2: Mount Google Drive Run the following command to mount your Google Drive. from google.colab import drive drive.mount('/content/drive') After running the command: A link will appear in the output. Click the link and log in to your Google account. Copy the authentication code provided. Paste the code back into the notebook. Or, a Google authentication page will a...

OFDM Symbols and Subcarriers Explained

This article explains how OFDM (Orthogonal Frequency Division Multiplexing) symbols and subcarriers work. It covers modulation, mapping symbols to subcarriers, subcarrier frequency spacing, IFFT synthesis, cyclic prefix, and transmission. Step 1: Modulation First, modulate the input bitstream. For example, with 16-QAM , each group of 4 bits maps to one QAM symbol. Suppose we generate a sequence of QAM symbols: s0, s1, s2, s3, s4, s5, …, s63 Step 2: Mapping Symbols to Subcarriers Assume N sub = 8 subcarriers. Each OFDM symbol in the frequency domain contains 8 QAM symbols (one per subcarrier): Mapping (example) OFDM symbol 1 → s0, s1, s2, s3, s4, s5, s6, s7 OFDM symbol 2 → s8, s9, s10, s11, s12, s13, s14, s15 … OFDM sym...

Online Pulse Code Modulation (PCM) Simulator

Instructions for Pulse Code Modulation (PCM) Note: Use the input fields to enter values. Step 1: Generate Message Step 2: Plot Quantized Signal Step 3: Generate PCM Signal Message Frequency (Hz): Sampling Frequency (Hz): Quantization Levels: Generate Message Quantized PCM Quantization SNR (dB): Demodulation Cut-off Frequency Demodulate PCM Quantization Table Calculate Bits Levels Step Min Mid Max SNR Print Online Signal Processing Simulations Home Page >