An oscilloscope draws a graph of voltage against time. This guide walks through every control on the simulator, in the order you would normally reach for them: get a trace on the screen, size it, then steady it with the trigger. If you have used a bench oscilloscope, the controls will be familiar — they are named and grouped the same way.
1. Reading the display
The screen is divided into a graticule of 10 horizontal by 8 vertical divisions. You never read voltages off a scale printed on the screen; instead you count divisions and multiply by the volts-per-division and seconds-per-division settings. This is the single most important habit to build.
A trace 3 divisions tall at 500 mV/div is 3 × 0.5 V = 1.5 V peak-to-peak. One cycle spanning 4 divisions at 200 µs/div has a period of 4 × 200 µs = 800 µs, so its frequency is 1/800 µs = 1.25 kHz.
Markers and readouts around the graticule:
| What you see | Meaning |
|---|---|
| 1 2 on the left edge | Ground reference for each channel — the level the trace sits at with 0 V input. Moved by Vertical position. |
| T on the right edge, with a dashed line | Trigger level, drawn in the colour of the trigger source channel. |
| ▼ on the top edge | Trigger point in time. Everything left of it happened before the trigger. |
| TRIG'D | A valid trigger was found; the trace is stable. |
| AUTO | No valid trigger, but Auto mode is sweeping anyway. The trace will drift. |
| WAIT | Normal mode with no valid trigger. The last triggered trace is frozen on screen. |
| STOP | Acquisition halted. What you see is the last captured record. |
| Bottom strip | Volts/div and coupling per channel, and the trigger summary. |
| Top right | Time/div and the current sample rate. |
2. The signal source
On a real bench you would connect a probe to a circuit or a function generator. Here, each channel has a built-in source that plays the same role. The Signal source section of each channel panel is the circuit under test, not part of the oscilloscope — changing it is like changing what you have probed.
- Waveform
- Sine, square, triangle, ramp, DC or noise.
- Frequency
- 1 Hz to 10 MHz. Drag the slider for coarse changes, or type an exact value in the box.
- Amplitude
- Peak amplitude in volts. A 2 V amplitude sine swings from −2 V to +2 V, so its peak-to-peak value is 4 V.
- Source DC offset
- Adds a steady DC voltage to the waveform. This is what makes the difference between AC and DC coupling visible.
- Noise
- Adds random noise, as a percentage of amplitude. Useful for seeing why the trigger needs a sensible level, and why noisy signals are harder to measure.
3. Vertical controls
One set per channel; they control how the voltage axis is drawn.
- Channel on/off (switch in the panel header)
- Shows or hides the channel. Turn a channel off when it is in the way — it keeps running, so the trigger can still use it.
- Volts / div
- The vertical scale, in a 1‑2‑5 sequence from 1 mV to 10 V per division. Smaller values magnify the trace. Aim for a waveform filling roughly 6 of the 8 divisions: large enough to read accurately, with room left to see the peaks.
- Vertical position
- Slides the trace up and down without changing its size, so you can separate two channels or line a feature up with a graticule line. Zero puts the channel's ground back at the centre. Moving the trace does not change any measurement.
- Coupling — DC / AC
-
DC shows the signal as it really is, DC content included.
AC blocks the DC component and shows only the variation
around it. Use AC when a small ripple rides on a large DC level: a 100 mV
ripple on 12 V is invisible at a scale that fits 12 V, but switch to AC and
you can magnify the ripple on its own.
Remember that in AC coupling the trace no longer tells you the signal's true DC level — Vavg will read close to zero whatever the offset.
4. Horizontal controls
- Time / div
- The horizontal scale, 50 ns to 500 ms per division. Smaller values zoom in on a shorter stretch of time. A good starting point shows two or three complete cycles: enough to see the shape and measure a period, not so many that the trace becomes a solid band.
- Horizontal position
- Moves the trigger point left or right, letting you inspect what happened before or after it. The ▼ marker moves with it, and the readout shows the shift in both divisions and time. Zero re-centres the trigger.
Pre-trigger data. Because the scope is always recording, it can show you the signal before the trigger happened. Push the horizontal position to the right and you are looking back in time — one of the genuinely useful things a digital scope can do that an analogue one cannot.
5. Trigger controls
The trigger is what turns a smear into a readable waveform, and it is where most beginners get stuck. The scope redraws the screen many times a second. Without a trigger, each sweep starts at an arbitrary point in the waveform and the picture will not sit still. The trigger tells the scope where in the signal each sweep should start: at the moment the voltage crosses a chosen level in a chosen direction. Every sweep then starts at the same point in the cycle, and the waveform appears frozen.
- Source
- Which channel the scope watches for that crossing. It does not have to be a channel you are displaying.
- Level
- The voltage the signal must cross. It must lie between the peaks of the signal — a level above the highest peak or below the lowest can never be crossed, and the scope will never trigger. The dashed line and the T marker show where it sits.
- Slope
- Rising ↑ triggers on the way up through the level, Falling ↓ on the way down. Switching slope flips the waveform left-to-right about the trigger point.
- Mode
-
Auto — sweeps regardless, so you always see something. If
it cannot trigger, the trace free-runs and drifts. Best for finding an
unknown signal.
Normal — sweeps only on a valid trigger. If triggering stops, the display holds the last good trace and reads WAIT. Best for a signal you have already found, and the honest way to tell whether you are really triggering.
Single — arms once, captures the first valid trigger, then stops. Use it for one-off events; press Single again to re-arm.
Why the trace drifts. If the display slides sideways, you are not triggering. Check that the level lies between the signal's peaks — switching to Normal mode makes this unambiguous, because an untriggered display freezes instead of pretending.
6. Run, Stop, Single and Autoscale
- Run / Stop
- Starts and halts acquisition. While stopped you can still change scales and pan through the captured record — a frozen trace is not a picture, it is data.
- Single
- Arms for one capture, then stops on the first valid trigger.
- Autoscale
- Measures the active channels and sets volts/div, vertical position, time/div and trigger level to sensible values in one press. Use it to recover when you are lost — but do the setup by hand while you are learning, because Autoscale hides exactly the reasoning you are practising.
- Reset
- Returns every control to its power-on state.
7. Math (combined channels)
Displays a third trace computed from the other two: CH1 + CH2 or CH1 − CH2, drawn in purple with its own volts/div and vertical position. The subtraction is the useful one in practice: it gives you the voltage difference between two points, the measurement you would otherwise need a differential probe for.
Math works on the signals themselves, not on where you have positioned the traces, so moving a channel up or down does not change the result.
8. Automatic measurements
Below the display, each active channel reports:
| Reading | Meaning |
|---|---|
| Vpp | Peak-to-peak voltage — the full swing from lowest to highest. |
| Vavg | Average (mean) voltage, i.e. the DC component. |
| Vrms | Root-mean-square voltage — the value that determines power delivered. |
| Vmax | Highest voltage reached. |
| Freq | Frequency, from the spacing of level crossings. |
| Period | Time for one cycle — the reciprocal of frequency. |
Measurements only see what is on the screen. Zoom in until less than one full cycle is displayed and Freq correctly gives up and shows —; Vpp will report only the part of the swing you can actually see. Always frame the waveform properly before trusting a reading — and check the automatic values against your own division counting.
9. Saving screens and data
The Export panel does what the USB socket on the front of a bench scope does: it takes the captured waveform away with you, either as a picture of the screen or as the numbers behind it.
Screen image
Choose PNG or JPEG, then press Save screen image. The file contains the graticule, every visible trace, the markers and all the on-screen annotation, rendered at 1800 × 1440 pixels regardless of the size of your browser window — so a screenshot pasted into a lab report is always the same size and always sharp. PNG is the better choice for a report: it is lossless, so the thin traces and small text stay crisp. Use JPEG only if you need a smaller file.
You must stop the acquisition first. The button stays greyed out while the scope is running, exactly as a real instrument refuses to save a screen that is still changing. Press Stop (or Space), or use Single to freeze on one event, and the button becomes available.
Waveform data (CSV)
Download CSV writes the record that is currently displayed as a comma-separated table, ready for Excel, Google Sheets, MATLAB, or pandas.read_csv(). The first row is a header; there is one row per data point:
| Column | Contents |
|---|---|
| Time (s) | Time relative to the trigger point, so it is negative to the left of the trigger marker and zero at it. |
| CH1 (V) | Channel 1 voltage — present only when Channel 1 is switched on. |
| CH2 (V) | Channel 2 voltage — present only when Channel 2 is switched on. |
Switch a channel off and its column disappears; with both channels on you get three columns sharing one time base, which is what you want for comparing two signals or plotting one against the other.
Data points sets how many rows the file has, from 10 to 100 000. The points are spread evenly across the ten horizontal divisions on screen, so the exported record always covers exactly what you can see — change Time/div or Horizontal position and the exported window changes with it.
Asking for more points does not create more information. The note under the button tells you how many samples were actually acquired. Request more rows than that and the extra values are interpolated between real samples — the file gets bigger, the waveform does not get more detailed. To capture genuinely finer detail, use a faster Time/div, which raises the sample rate.
The voltages are the signal at the input, before Vertical position is applied — that control only moves the trace on the screen, so it does not change the exported numbers. Coupling is applied: exporting an AC-coupled channel gives you the signal with its DC component removed, just as the screen shows it. The math trace is not exported; export the two channels and combine them in your own tool.
10. Worked examples
Getting your first stable trace
- Turn on Channel 1 and set the source to a 1 kHz sine, 2 V amplitude.
- Set Volts/div so the waveform fills most of the screen height — at 2 V amplitude (4 V peak-to-peak), 1 V/div gives 4 divisions.
- Set Time/div to show a few cycles. One cycle of 1 kHz lasts 1 ms, so 200 µs/div puts two cycles across the screen.
- Set the trigger source to CH 1 and the level to 0 V — mid-way between the peaks.
- The status should read TRIG'D and the trace should be motionless.
Measuring amplitude and frequency by hand
- Count the vertical divisions from the lowest point of the trace to the highest, then multiply by Volts/div. That is Vpp.
- Count the horizontal divisions for one complete cycle — easiest between two rising crossings of the centre line — and multiply by Time/div. That is the period.
- Frequency is 1 ÷ period.
- Check both against the measurement panel. If they disagree, you have almost certainly miscounted divisions or misread a scale.
Seeing what AC coupling does
- Give Channel 1 a 1 V amplitude sine with a Source DC offset of 3 V.
- In DC coupling at 1 V/div the trace sits 3 divisions high and may run off the screen. Vavg reads about 3 V.
- Switch coupling to AC. The trace drops back around the centre line and Vavg falls to near zero — the DC has been blocked.
- Now reduce Volts/div to magnify the 1 V sine. This is exactly how you inspect a small ripple riding on a large supply voltage.
Catching a single event
- Set the trigger level somewhere the signal crosses only occasionally.
- Set mode to Single.
- The scope arms, captures the first crossing, and stops — the status changes to STOP.
- Pan through the captured record with Horizontal position to examine what happened before and after the trigger.
11. Keyboard shortcuts
| Space | Run / Stop |
| A | Autoscale |
| S | Single |
| 1 2 | Turn Channel 1 / Channel 2 on or off |
| ← → | Horizontal position (hold Shift for coarse steps) |
12. Troubleshooting
| Symptom | Likely cause and fix |
|---|---|
| Nothing on screen | The channel is switched off, its amplitude is zero, or the trace is off-screen. Check the channel switch, then press Autoscale. |
| Trace slides sideways | Not triggering. Move the trigger level between the signal's peaks and check the trigger source is the channel you are watching. |
| Flat line at the top or bottom edge | Volts/div is too small, or the vertical position pushed the trace off. Increase volts/div, or press Zero on the position control. |
| Trace is a solid band | Time/div is too slow — hundreds of cycles are packed into the screen. Reduce time/div until a few cycles are visible. |
| Frequency reads much lower than expected | Aliasing: the sample rate is too low for the signal. Reduce time/div — the sample rate rises with it and the true waveform reappears. |
| Freq shows — | Less than one full cycle is on screen, or the signal has no periodic crossings (DC, noise). Increase time/div. |
| Display frozen, reads WAIT | Normal mode with no valid trigger. Correct the trigger level, or switch to Auto to see the signal again. |
| Vavg is zero on a signal with obvious DC | The channel is AC coupled. Switch to DC coupling to see the true level. |
| Save screen image is greyed out | The acquisition is still running. Press Stop or Space first — a screen capture is only allowed of a frozen display. |
| The CSV has fewer columns than expected | Only channels that are switched on are exported. Turn the channel on and download again. |
13. How the simulation behaves
The simulator models the signal path of a real digital scope rather than simply plotting a formula, so several real-world effects appear on their own:
- The sample rate follows the timebase (shown top right) and is capped at 1 GSa/s. At the fastest sweeps you can see the individual samples, and at slow sweeps a fast signal will alias — just as it would on the bench.
- Triggering is done on the captured samples, with the crossing point interpolated between them. That interpolation is what keeps a triggered trace steady.
- The scope always records more than one screen, which is what makes pre-trigger viewing possible.
Deliberate simplifications, so you know where the model stops:
- Channels have unlimited bandwidth and no input loading; there is no probe attenuation setting.
- AC coupling is an ideal DC block. A real input also sags the flat tops of low-frequency square waves.
- There is no measurement of rise time, duty cycle or phase, and no cursors.