DSO Quad


DSO Quad also known as DSO203 is a pocket size 4 channel digital oscilloscope for common electronic engineering tasks. It’s based on ARM cortex M3 (STM32F103VCT6), providing 72MS/s sampling rate with integrated FPGA and high speed ADC. An internal 2MB USB disk can be used to store waveform captures, user applications and to upgrade firmware.


  • Pocket size and light weight
  • Two 36MS/s analog channels, Upto 72MS/s if configured to single channel.(Upgrade to Two 72MS/s analog channels, Upto 144MS/s if configured to single channel from .sys version v1.31)
  • Two digital channels
  • Signal Generator
  • Various Triggering Option
  • Easy waveform storage
  • Firmware upgrade
  • User applications
  • Open source

Source(s): Features support

Application Ideas

User applications

Ongoing projects:

Idea Collection


  • “Simple Mode” - where only the most basic functions are available to help people without experience.
  • “Multimeter mode” - basic multimeter functions (AC/DC VOM, peak/rms/delta would be nice)

    • Detailed at https://github.com/PetteriAimonen/QuadPawn/wiki/Advanced-Volt-Meter
    • Protocol analysis/data capture - Serial, I2C, SPI, CAN
    • LCR (uH, uF and R) measurement capability - The inbuilt signal generator makes this a natural. Three methods exist, all requiring an external component(s) Example
    • Semiconductor Analyzer - Use the DAC to test and chart the voltage response of a diode / transistor (and simply identify components, such as transistor pinout and polarity)
    • RF spectrum analyzer
    • A 2D X-Y mode that plots the analog channels against each other on two axes with a digital channel optionally functioning as a “beam” enable/disable.
    • Something seems to exist? Not in APP2.50 yet.
  • A DMX Decoder/Analyser and generator (used in conjunction with an external RS485 IC) would make this a VERY useful gadget for theatre techs.

  • Television mode (analog TV) : Display frame/field/line (select field A/B) or line number. Display vectorscope diagram. Display content (ie: the TV image).

  • Synchronization with a second DSO Quad for a 4 channel analog/digital signal, perhaps similar USBscope50 [moved from HARDWARE]

use ‘wave out’ to generate a pulse/step when master unit triggers, use C/D as trigger for slave(s)

  • Create USB remote control software, such that if LCD breaks, you can still use it with PC software. [moved from HARDWARE]
  • Stream data to PC - Use PC as storage buffer, with additional processing power. A PC could decode I2C words and other protocols where the Quad wouldn’t. [moved from HARDWARE]

  • White noise function - add to the functions generator


  • A spectrum analyzer displaying a view from a frequency/time perspective
  • Fast Fourier Transform, would be nice and easy for viewing spectrum data of a single signal.


  • SDR (Software defined radio) note we only have USB full speed (12Mb/s)

  • Preamplifier 10x badly needed!!!

  • Add bezel buttons for easier to access menus.
  • Add 2 more analog channels, Perhaps via USB dongle.

  • Add port for expansion devices, such that and add-on device can offer more capabilities, like RF generation, or a function generator that is capable of larger amplitudes. In particular a +5v and 3.3v output would be useful.


  • Service application for technical support staff. Could split the screen and display instructions like “Check if port 3, pin 5 has a signal, if not xyz might be broken”. There could be a next button and for each step the text, the right timescale, trigger values etc. are selected
  • My phone is ARM based, perhaps make a USB version of this and an app for my phone, that allows my phone to be the display / insured touch screen display.
  • Simple math functions on both analog channels and generated signal.

  • Two totally ground separated input would enable measureing inputs, which are not the same ground referenced. (like in the Velleman two-channel personal scope)

  • Input overvoltage protection diode should be added to protect device form HV spikes

  • Oversampling and its software implementation could decrease noise, and increase effective bit depth

  • Special technique equivalent time sampling, could increase bandwidth for repetitive signals

  • Non-storage mode which constantly sweeps the visible area instead of storing into a huge offscreen buffer. I set the sample rate to 50ms in the current version (eg. to look at an audio signal) it only updates the screen once every few seconds, it should update continuously.

  • Please add more ideas…

See also information on application development for the DSO Quad


Analog channel * 2 [CH_A] [CH_B]
Digital channel * 2 [CH_C] [CH_D]
Vertical Scale 20mV-10V/div (1-2-5 step) on x1 probe / 200mV -100V/div (1-2-5 step) on x10 probe
Vertical resolution 8 bit
Input coupling AC/DC
Max input voltage 80Vpp (x1 probe) / 400Vpp (x10 probe)
Storage 4K per channel / 8K on single channel
Software trigger type edge, pulse, level (to be added)
Hardware trigger type edge
Trigger source CH1/CH2/EXT
Trigger mode Auto, Normal, Single, SCAN, None
Test Signal generator 10Hz to 8MHz 2.8Vpp Square Wave, duty cycle 10~90% adjustable / 10Hz to 20kHz 2.8Vpp Sine, Square, Sawtooth, Triangle wave
Storage internal 2MB USB disk, BMP, DAT file
Auto measure Vmax, Vmin, Vpp, Vavr, Vrms, Freq, Period, Pulse, Duty
Cursor measurement Level, Voltage
Display mode CH1, CH2, EXT, CH1+CH2, CH1-CH2
Sampling mode real time
Sampling rate 30S/s - 72MS/s
Power LiPo battery
Dimension 98 * 60 * 14.5 (mm)
Weight 80g (without battery)
Accesories within Pack 2 mcx osilloscope probe, 2 mcx digital probe


Please add links to core components data-sheets like

CPU 72 Mhz - ARM 32-bit Cortex™-M3 CPU - STM32F103VC [[2]](http://www.st.com/internet/mcu/product/164492.jsp)
FPGA ICE65F_VQ100 [[3]](http://www.siliconbluetech.com/media/downloads/iCE65L04DiCEDatasheet.pdf)
ADC AD9288-40 [[4]](http://www.analog.com/static/imported-files/data_sheets/AD9288.pdf)
OP-Amps OPA2354 [[5]](http://www.datasheetcatalog.org/datasheet/texasinstruments/opa354.pdf)
(add more here)


Improper operation of this device could result in physical injury and/or damage to the device. Note all necessary precautions, and be sure to read all documentation before using the device.

Upgrading firmware

Please note that this procedure currently only works under Windows. Instructions For Linux are here. (2011-04-29) If we can get the upgrade disk to work on Linux and Mac, it would be quite easy to write an application to automate this process for less experienced users. It might even be possible to have the upgrade program check the hardware version to prevent uploading the wrong firmware.

Where to find firmware

Track the latest version to firmware at: http://garden.seeedstudio.com/index.php?title=DSO_Quad:Upgrading_Firmware#Firmware_List you can always download the latest version of firmware

You could also build the firmware from source.

Version warning

WARNING: It is important that you use the firmware for your particular hardware version. The hardware version is shown on the splash screen when you boot the device. Ask for help in the forums if you can’t determine your hardware version. If you upload the wrong firmware, you could brick the device.

Upgrade procedure

(Windows only) Connect the DSO Quad to your PC with a mini USB cable. Hold down the “>||” (play/pause) button while turning on the device. Your device is now in firmware upgrade mode, and a USB disk should appear on your system. You copy the firmware files one at a time, and each time you copy a new file, the device will disconnect to prepare the file. When the disk reconnects, the extension of the file you uploaded will change (“.rdy” means the upload worked properly).

The order that you upload the files in DOES matter. Start by uploading the .hex files (order unimportant). To upload the .BIN files, you need to first upload the corresponding .ADR file. This tells the device where to put the binary file (e.g. upload CFG_FPGA.ADR first, then upload xxxxFPGA.BIN immediately after). If you make a mistake, delete all the files and start again.

When you’re finished uploading all the firmware files, turn off the device to complete the upgrade. When you boot the device again, your firmware versions should be updated. If you get an error at the splash screen, try uploading the firmware again, carefully following the instructions above.

More details and Linux instructions here: DSO_Quad:Upgrading_Firmware

File Descriptions

File Type Filename Format Description
FPGA File xxxxFPGA.BIN configuration data for the FPGA
Logo File logo_xxx.BIN Create any 16 color 64*256 .BMP file (filesize = 46.9KB), and change the extension to .INF. This is the image displayed on the splash screen.
System File SYS_xxxx.hex ??? (description needed)
Application File APP_xxxx.hex ??? (description needed)
Address File xxxx.ADR These files tell the device where to put the next .BIN file you upload. There is one for the FPGA file, and one for the LOGO file. The files are named so that you know which goes with which.

note: as newer versions become available, these filenames may appear slightly different. The x’s represent values that could change over time.

Memory layout

Begin End Size note
0x00000 0x03fff 16384 DFU
0x04000 0x0bfff 32768 SYS
0x0c000 0x13fff 32768 APP1 (default)
0x14000 0x1bfff 32768 APP2
0x1c000 0x23fff 32768 APP3
0x24000 0x2bfff 32768 APP4
0x2c000 0x3d7ff 71680 FPGA bitstream (Datasheet says maximum size is 533KBit, so this is a bit large)
0x3d800 0x3ffff 10240 Logo (bmp, 256x64, 4 bit)

Note: The flash base address is 0x08000000, but is mirrored by the chip at 0x00000000 when BOOT0 is low.

  1. Seeedstudio Blog [6]

  2. More photos on flickr [7]

  3. DS203 application in BMW inspection (Chinese, translated automatically in to english) [Original page ] - Some guys working for BMW inspected the car with a DSO203, besides the palm size and handy performance, DSO203 operates perfectly in inspecting the BWM bus:FlexRay.


Help us make it better

Welcome to the new documentation system of Seeed Studio. We have made a lot of progress comparing to the old wiki system and will continue to improve it to make it more user friendly and helpful. The improvement can't be done without your kindly feedback. If you have any suggestions or findings, you are most welcome to submit the amended version as our contributor via Github or give us suggestions in the survey below, it would be more appreciated if you could leave your email so that we can reply to you. Happy Hacking!