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
GCC port with FFT, spectrogram and various fixes by pmos69 and marcosin
Alternative user interface by gabonator1
GCC port of the default firmware by tmbinc
Frequency response plotter by jpa
FFT example application by gabonator1
Logic analyzer by jpa
Pawn programming environment and various applications by jpa
Port of SYS to gcc: 
Tetris by LinX
- "Simple Mode" - where only the most basic functions are available to help people without experience.
- 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|
|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 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|
|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 [](http://www.st.com/internet/mcu/product/164492.jsp)|
|(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.
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.
**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.
(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 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.
|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.
Seeedstudio Blog 
More photos on flickr 
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.