Teach the properties of waves by visualizing amplitude-modulated (AM) and frequency-modulated (FM) signals in the time and frequency domains using software-defined radios on the COSMOS testbed.
This tutorial is part of the COSMOS Education Toolkit series and targets the MS-PS4-1 Next Generation Science Standard. Students use two SDR nodes on the COSMOS testbed as a transmitter–receiver pair to observe FM signals in real time. The experiment is driven entirely through a web interface served by the toolkit software; no manual command-line radio configuration is required.
One node acts as the FM receiver: it listens on a selected center frequency (400 MHz, 2.4 GHz, or 5 GHz), demodulates the incoming FM signal, and streams the audio over TCP. The other node acts as the FM transmitter. Students switch roles, observe the spectrum display, and record their findings before sharing out as a class.
The tutorial assumes the COSMOS Education Toolkit setup steps (web server, GNU Radio flowgraphs, etc.) have already been completed by following the Education Toolkit parent tutorial.
After completing this tutorial you will be able to:
| Difficulty | Beginner |
| Estimated time | 45 min |
| Domain / sandbox | Sandbox 1 — console.sb1.cosmos-lab.org |
| Topic group | Education Toolkit |
| Last verified | Node names and image verified 2026-08-03 (lesson not re-run end-to-end) |
Background knowledge
Account & access
Devices / nodes
| Resource | Role | Qty | Notes |
|---|---|---|---|
sdr2-s1-lg1 |
Node #1 (receiver or transmitter) | 1 | SDR node on the Main Rooftop SDR deployment; USRP Krypton 2974 via PCIe |
sdr2-md1 |
Node #2 (transmitter or receiver) | 1 | SDR node on the Main Rooftop SDR deployment; USRP Krypton 2974 via PCIe |
Disk images
| Image | Load onto | Provides |
|---|---|---|
education-toolkit.ndz |
sdr2-s1-lg1, sdr2-md1 |
COSMOS Education Toolkit web server + GNU Radio FM flowgraphs |
Software components
| Component | Version | Source |
|---|---|---|
| COSMOS Education Toolkit | As shipped in education-toolkit.ndz |
Preinstalled in the toolkit image; web UI at http://localhost:8081 (node #1) / http://localhost:8082 (node #2) |
| GNU Radio | As shipped in education-toolkit.ndz |
Preinstalled in toolkit image |
| TCP audio client | As shipped in education-toolkit.ndz |
Attached to the toolkit — connects to the forwarded audio port (8101 node #1 / 8102 node #2) |
Spectrum / RF
Center frequency options: 400 MHz, 2.4 GHz, or 5 GHz (selected in the web interface). Experiment is conducted over the air between the two nodes. Ensure the reservation covers the chosen frequency band.
Two SDR nodes (sdr2-s1-lg1 and sdr2-md1) on sandbox 1 transmit and receive FM signals over the air. Each node serves its interface on port 80, forwarded to the student's laptop as http://localhost:8081 (node #1, sdr2-s1-lg1) and http://localhost:8082 (node #2, sdr2-md1) by the toolkit setup. The receiver node additionally opens a TCP server on port 8100, forwarded as 8101 (node #1) / 8102 (node #2), to stream demodulated audio back to the student's local machine.

The toolkit web server and GNU Radio back-end must already be running as described in the Education Toolkit parent tutorial. Once that is complete:
sdr2-s1-lg1 and sdr2-md1 on sandbox 1 and log into the console:ssh <username>@console.sb1.cosmos-lab.org
omf stat -t sdr2-s1-lg1,sdr2-md1
http://localhost:8081 for node #1 (sdr2-s1-lg1), http://localhost:8082 for node #2 (sdr2-md1). If the setup was done correctly you will see the toolkit home page. 
In the toolkit web interface, press the Science radio button to open the science lesson plan page.
Select Grade 8.

Note: The toolkit contains 100+ lesson plans and labs. Only a subset currently supports remote experimentation via the COSMOS website; the selection grows over time.
Select Signal Transmission from the Grade 8 lesson list.
The lesson page shows:
Expand the Remote Experiment section on that page to reveal the START/STOP controls for each node.

Press START under the receiver panel on either Node #1 (sdr2-s1-lg1) or Node #2 (sdr2-md1).
8100 to stream the audio back to the local host.In this tutorial Node #1 is
sdr2-s1-lg1and Node #2 issdr2-md1. If Node #1 is the receiver, then Node #2 will be the transmitter, and vice versa.
Start the TCP client application on the student's local machine (distributed as part of the toolkit) to connect to the remote receiver and play back the incoming audio.
At this point students should hear noise only — the transmitter has not yet been started.
Press START under the transmitter panel on the other node (whichever node is not the receiver in Step 2).
The transmitter begins sending an FM signal on the same center frequency.
Observe the spectrum display in the web interface and record observations. Students should note changes in both the time-domain waveform and the frequency-domain spectrum as the transmitter comes on.
![]() |
![]() |
|---|---|
| (a) FM signal at the transmitter | (b) FM signal at the receiver |

When the experiment is complete, press STOP on both the transmitter and the receiver nodes.
Students compare their observations of the FM signal and state their interpretations. After all students complete their handouts, conduct a class share-out of observations and comments.
Press STOP on both nodes through the toolkit web interface, then power off from the console:
omf tell -a offh -t system:topo:allres
(No omf save needed unless the toolkit image was modified.)
| Symptom | Likely cause | Fix |
|---|---|---|
Web interface at http://localhost:8081 / 8082 does not load |
Toolkit web server not started | Follow the Education Toolkit setup tutorial to start the server on the node |
Audio client cannot connect to port 8100 |
Receiver not yet started, or firewall/SSH tunnel misconfigured | Confirm the receiver node shows RUNNING in the web UI; verify the SSH tunnel forwarding port 8100 |
| No FM signal visible on the spectrum display | Transmitter not started, or center frequency mismatch between TX and RX | Confirm START was pressed on the transmitter panel and both nodes use the same frequency |
| Spectrum shows signal but audio is noise | Demodulation parameter mismatch | Stop both nodes and restart; verify toolkit software version |
Author(s): Panagiotis Skrimponis (NYU), Nikos Makris (NYU); COSMOS team · Last verified: Not re-run end-to-end; image access restored and node names verified 2026-08-03 · Tested image/release: education-toolkit.ndz (Sep 2020) · Tags: education, education-toolkit, fm, am, signal-transmission, grade-8, waves, sdr