by ScopeFun

Open Source All-in-One Instrumentation

$65,550 raised

of $29,500 goal

222% Funded! Order Below

Product Choices


Aluminum ScopeFun

A ScopeFun board in a custom made aluminum enclosure. USB cable included. All units will be delivered pre-calibrated.


Recent Updates

As Featured In

Five Benchtop Tools in One Open Source Device

ScopeFun is an affordable, open source, all-in-one instrumentation platform. It provides the following tools:

  • Oscilloscope
  • Arbitrary waveform generator
  • Spectrum analyzer
  • Logic analyzer
  • Digital pattern generator

Fast Sampling, Large Memory Buffer, Low Noise

A Xilinx Artix-7 FPGA and a Cypress EZ-USB FX3 controller allow the board to interface with a PC while maintaining fast data rates. Samples are buffered using 512 Megabytes of DDR3 SDRAM. The main hardware specifications are:

  • Two analog oscilloscope channels (10-bit)
  • 500 million samples per second (MSPS) Real-Time Sampling rate (single channel) / 250 MSPS (dual channel)
  • 2.0 billion samples per second (GSPS) Equivalent-Time Sampling (ETS) rate
  • 128 million samples per channel of memory buffer
  • Two analog generators (200 MSPS, 12-bit)
  • 12 digital channels (used for the logic analyzer and the digital pattern generator)
  • USB 3.0 interface

The accompanying software runs on Windows, Linux, and Mac. It also provides a Server Mode that supports remote connections over an IP network. This allows the transfer of samples from nearly anywhere. It is also possible to interface with the hardware directly from Python scripts using the provided Python API.

The design is completely open source (software, firmware, and hardware) which facilitates the creation of highly customized test and measurement scenarios that are not possible with traditional equipment.

Features & Specifications

  • Oscilloscope
    • Channels: Two
    • Analog bandwidth (-3 dB): 100 MHz
    • Real-time sampling rate: 250 MSPS dual channel / 500 MSPS single channel
    • Equivalent time sampling (ETS): 2.0 GSPS
    • Resolution: 10 bits
    • Min. sensitivity: 0.098 mV
    • Voltage ranges (with 1× probe): 10 mV to 2 V per division
    • Memory depth: 128 million samples per channel
  • Arbitrary Waveform Generator
    • Channels: Two
    • Update rate: 200 MSPS
    • Output amplifier bandwidth: 30 MHz
    • Output impedance 50 Ohm
    • Resolution: 12 bits
    • Max. output voltage: +/- 2 V
    • Custom waveform length: 32,768 samples per channel
  • Spectrum Analyzer
    • Channels: Two
    • Frequency range: DC to 125 MHz
  • Logic Analyzer
    • Channels: 12*
    • Maximum toggle rate: 125 MHz
    • Maximum sampling rate: 250 MSPS
    • Memory depth: 128 million samples per channel
  • Digital Pattern Generator
    • Channels: 12*
    • Maximum toggle rate: 125 MHz
    • Maximum update rate: 250 MSPS
    • Custom waveform length: 32,768 samples per channel
  • Primary Components
    • FPGA: Xilinx Artix-7 XC7A35T
    • Memory: 512 MB DDR3 SDRAM
    • Connectivity: Cypress FX3 USB 3.0
  • Software
    • Multi-platform: Windows, Linux, and Mac
    • Server mode: remotely connect to the ScopeFun over an IP network
    • Python API: read samples and control the ScopeFun directly from Python
    • Advanced signal rendering: 3D frame history and virtual persistence

* The logic analyzer and digital pattern generator share the same 12 channels.


Two analog channels are available as oscilloscope inputs. Both analog inputs are protected against over-voltages up to +/- 50 V. Input coupling selection is available (DC, AC, GND) and is controlled through software. Input signals can be adjusted for gain and offset to allow measurements of voltages from 100 mV to 20 V (full scale) which gives a minimum input resolution of 0.098 mV. Each analog channel is sampled at 250 MSPS with 10-bit analog-to-digital converter (ADC). Two ADC’s can be configured for sampling in interleaved mode which provides a single channel sampling speed of 500 MSPS.

The ScopeFun also supports Equivalent Time Sampling (ETS) which provides a sampling speed of 2.0 GSPS for repetitive signals.

Arbitrary Waveform Generator

Two analog outputs are available as AWGs and can generate signals up to +/- 2 V. Both AWG outputs are protected against short circuit and over-voltages up to +/- 25 V. AWG outputs have 50 Ohm impedance which allows them to be used with a wide array of equipment. It is possible to select waveform shape, frequency, level and offset through the software. The chosen settings are immediately reflected in FPGA control registers. Digital samples are generated inside the FPGA and transferred to onboard dual digital-to-analog converters (DACs) at 200 MSPS per channel. Sine wave output is generated with the help of the CORDIC algorithm so that outputs of arbitrary frequency can be obtained. Other simple signals are derived from counters. Users can also provide custom waveform samples and upload them to the FPGA’s internal memory (BRAM). Scaling of the analog output (level and offset) is achieved with FPGA DSP blocks.

Logic Analyzer / Digital Pattern Generator

A 12-bit digital interface is sampled at 250 MHz and logically divided into two 6-bit channel groups. Each channel group can be independently selected as input (to the logic analyzer) or as output (from the digital pattern generator). Digital interface voltage can be adjusted to as low as 1.25 V or as high as 3.3 V, though inputs are designed to accept up to 5 V. The selected interface voltage is also available on dedicated output pins and can be used as a low power voltage supply. Custom digital samples for the digital pattern generator can be uploaded to the FPGA, and an internal clock divider is available to control the output frequency. It is also possible to override individual outputs, at any time, with a logic ‘LOW’ or a logic ‘HIGH’.

Python API

The Python API gives direct access to ScopeFun functions directly from Python. This provides a simple way to create highly customized test scenarios without modifying the software source code. A Python script could be used to automate measurements, for example, or to post-process captured data. To demonstrate this feature, we have written a short Python script that captures samples from one of the analog inputs and plots a histogram of the captured signal.

Comparison Table

ScopeFun PicoScope 3203D MSORed PitayaSmartScopeOpenScope
Open Source
Firmware/SoftwareYES No YES YES YES
HardwareYES No No No No
Primary Components
FPGAXilinx Artix-7 XC7A35T -Xilinx Zynq 7010Spartan-6 XC6SLX4-
USBUSB 3.0 USB 3.0 USB 2.0 USB 2.0 USB 2.0
RAM512 MB DDR3 -512 MB DDR3 8 MB SDR -
Channels2 2 2 2 2
Analog Bandwidth100 MHz 50 MHz 40 MHz 30 MHz 2 MHz
Max. Real-time Sampling Speed500 MSPS 1 GSPS 125 MSPS 100 MSPS 6.25 MSPS
Equivalent Time SamplingYES (2.0 GSPS) YES (2.5 Gsps) No No No
Memory Depth128 MS 64MS 16 KS 4 MS 32 KS
Resolution10-bit 8-bit 14-bit 8-bit 12-bit
Min. Voltage Sensitivity0.098 mV 0.156 mV 0.122 mV 0.625 mV -
Input couplingAC, DC, GND AC, DC DC AC, DC DC
Arbitrary Waveform Generator
Channels2 1 2 1 1
Update Rate200 MSPS 20 MSPS 125 MSPS 50 MSPS 10 MSPS
Custom Signal Data Points32 K 32 K 16 K 2 K 25 K
Output Range±2 V ±2 V ±1 V 0 to +3.3 V ±1.5 V
Resolution12-bit 12-bit 14-bit 8-bit 10-bit
Logic Analyzer
Channels12* 16 8* 8 10*
Sampling Speed250 MSPS 500 MSPS 12 MSPS 100 MSPS 10 MSPS
Memory Depth128 MS 64 MS 1 MS 4 MS 32 KS
Digital GPIO
Channels12* -16* 4 10*
Digital Pattern GeneratorYES No No YES No
Digital Pattern Generator Buffer Size32 KS - - 2 KS -
Update Rate250 MSPS - - 100 MSPS -
Price $850 $800 $360 $260 $99

* Digital channels share the same I/O pins.


Backers who support us at the Aluminum ScopeFun level will receive a fully assembled and ready-to-use ScopeFun with an aluminum enclosure. This enclosure protects the ScopeFun and provides shielding against EMI to help ensure low noise measurements.

Support & Documentation



We make high-end, open source instrumentation.

Dejan Priversek

David Kosenina

See Also

Subscribe to the Crowd Supply newsletter, highlighting the latest creators and projects: