Specs:
- 16384 point memory depth
- 4 ranges 1V, 2V, 5V, 10V, all full scale
- rising edge and falling edge trigger
- 7MHz bandwidth (+0.6dB, -3dB)
- 62.5MS/s
- Single Channel
- +/-4% of full scale DC Accuracy
Example Waveforms:
Here are some example waveforms captured with the NS1:



Frequency Response
Here is a measured frequency response for each of the ranges. The frequency response is shaped digitally via a 3 point FIR filter. That is, this is the overall system frequency response, not just the analog front end response.
Triggering
The system has two triggering modes, force trigger and normal trigger. Force trigger starts the capture when the trigger is initiated, whereas normal trigger waits for a trigger edge event before starting the capture. With normal trigger mode, the trigger event is recorded at the center of the capture. Normal trigger is achieved with a comparator and a settable trigger voltage as shown below:
Gain and Attenuation Settings
There are two attenuator settings and two gain settings. These are what scale the input signal to create the four possible ranges:
Software
Voltpeek is the software written to control and display the data that is sampled using NS1. Unlike other PC based oscilloscope software, Voltpeek is a command based UI. This is done because click and drag based UIs can be extremely annoying when they are controlling complicated processes. Voltpeek has a similar user interface to Vim. Different commands control the system, and the software can be put in adjustment mode. Adjustment mode is used to adjust the scales, cursors, and trigger level using the h
, j
, k
, and l
keys.
Prior Work
NS1 is not the first oscilloscope project to utilize the Pi Pico/RP2040 PIO and DMA peripherals to create a fast oscilloscope. Some similar projects that have done this are listed below:
https://hackaday.io/project/188051-rpscope
https://hackaday.io/project/191569-raspberry-pi-pico-super-simple-oscilloscope