I present a "BEST OF CLASS", "Full-Featured" DIY-USB OSCILLOSCOPE which is "Truly DIY".

My aim is to provide a cheap Digital-Storage-Oscilloscope for Students, Budding Engineers and the Hobbyist.

This USB-Oscilloscope could be part of the laboratory equipment in educational establishments.

Build this DIY-Oscilloscope for just $15


Today 21 Nov 2014, my Instructable crossed 100000 Views!

At this Milestone I am happy to share all the source files (C, .Net & Python) at:


I wish to acknowledge the inputs from the following designs which have led to this optimized solution:

DPScope SE - the simplest real oscilloscope/logic analyzer on the planet, by womai, http://www.instructables.com/id/DPScope-SE-the-si...

DPScope - Build Your Own USB/PC-Based Oscilloscope,by womai

LCS-1M - A Full-Featured, Low-Cost Hobby Oscilloscope,by womai


Universal Analog Hardware Testbench, by me

Analog Experiments Anywhere,by me

Two-Channel PC Based Oscilloscope USB, by Gaurav Chaudhary

Responding to comments and suggestions from many members :

I am sharing the micro-controller fuse .Hex file for the dsPIC30F2020.

The Host PC software has been written in both 'Visual Basic.Net' and open source 'Python' providing a cross-platform GUI based solution for both Windows and Linux platforms.

Step 1: Specifications

Picture of Specifications
No of Channels Two
Analog bandwidth (Large Signal), 0.30/0.30/0.70 MHz ,For Gain 1/2/5
Analog bandwidth (Small Signal), 12/6/7 MHz ,For Gain 1/2/5
Input impedance 1 Meg Ohm
Input connection  3 mm Audio Jack
Vertical Scale 
+12.5V to -12.5V , Gain 1
+6.25V to - 6.25V, Gain 2
+2.50V to -2.50V,  Gain 5
 -12.5V to +7.50V ,  Gain 1
 -6.25V to +13.75V, Gain 2
-2.50V to +17.50V,  Gain 5
Sampling Rate  
1 Mbps to 20  Mbps ,1 uses/sample to 0.05usec/sample ,ETS  Mode (repetitive signals)
10bps to 500 kbps, 100ms/sample to 2uses/sample , Normal Mode
Ch1 / Ch2 / Auto

Trigger Polarity
Rising / Falling edge

Trigger Range
+12.5V to -12.5V, Gain 1
+6.25V to - 6.25V, Gain 2
+2.50V to -2.50V,  Gain 5
Display Modes
Ch1 + Ch2  vs. time 200 Samples each
Ch1 vs. time 200 Samples
Ch2 vs. time 200 Samples
XY Ch1 + Ch2 vs. time 200 Samples each
DFT Ch1 400 Samples
DFT Ch2  400 Samples
Capture Modes 
Single / Repeat / Store
Save Modes
Data to CSV Fig to multiple formats
PC Software
VB.Net 2.0  / Python 2.6/2.7 Virtual Com Port 115200 bps
Power Supply
USB +5V , 150 mA
1-40 of 112Next »
LZHV4 days ago

Hi ajoyraman, i stumbled across your wonderful project! I am just a little curious about the sampling rate. I've checked on-line and found out that dsPIC30F2020 has a conversion rate of 2000 kbps, and your project is able to sample 2 channels at 1M samples/s. Does it mean that this oscilloscope is able to produce the waveform for input signals of 1Mhz ?

ajoyraman (author)  LZHV4 days ago

To display a sampled-signal 15-20 samples are typically requires. So the 1M samples/s means we can comfortably view sine-waves at 75 kHz and square waves at 50 kHz.

I was thinking of building this, but I don't have a PIC programmer, and I'm also worried about the surface mount components and needing to make a circuit board. Has anyone come up with a kit based on this design? Or is anyone willing to sell a pre-made version?

ajoyraman (author)  jdchristensen8 days ago

I suggest you build the board as done by heartyGfx which avoids the smd components.


However, you need to solve the progremmer requirement.

1dum2dum16 days ago


Crispin241 month ago


I really like your project and would like to build it. Could you please send me the additional designs to crispin (at) gmx.net ?

Thank you

francisdc2 months ago

Dear Ajoy, what an amazing circuit ! A scope is magic - makes you see the invisible

I still remember begging my dad for a scope ... the cost was like an Apollo mission

He politely told me "why don't you build one - it'll save you a lot of money !"

And so good to see the responses from all over the world. Hope many people make it. There's something amazing about seeing signals on screen !

May I request you for gerber files too - I'm going to get my daughter to build it

Please send to wiznav@gmail.com - Cheers Francis da Cunha

NickO73 months ago

I would love to start to this project. could you send me the program files @ ocanan1@mail.gtc.edu

PakosP4 months ago

I would like to make this project.. Pls sent me the files email(pandogpakos@gmail.com)

Thank you

kh90055 months ago

I want to make this project. I would apreciate if you could send the files to:


joelp45 months ago

This is an excellent and useful diy project. Will i need a tool to program the chip? Can you please send the the gerber files to parkj315@gmail .com. Thanks.

joelp45 months ago

This is an excellent and useful diy project. Will i need a tool to program the chip? Can you please send the the gerber files to parkj315@gmail .com. Thanks.

SureshB56 months ago

i want to make this. please sent me gerber file on suresh.bhujang@gmail.com

SureshB56 months ago

I want to make this. I would apreciate if you could send the files to suresh.bhujang@gmail.com

ajoyraman (author) 1 year ago

JHx who has built a smd version of this scope says:

"i build your matchbox osciloscope and it worked ok from the begining. thank you."

He uses it as a automotive diagnostic tool.

The Gerber files are available on request.

Thanks JHx.

m2k2 ajoyraman1 year ago

I'd appreciate if you could send those files to m2k2@raz-dva.cz.

Thank you very much!

ajoyraman (author)  m2k21 year ago
Great ! You would be the 9th to build this scope. Files sent. Best wishes.

Dear ajoyraman,

Can you please send me the Gerber files. I would like to build one for myself. i have PM-ed you my mail ID.

Thank You!

Dear ajoyraman,

Can you please send me the Gerber files. I would like to build one for myself.

Thank You!

TiborH ajoyraman9 months ago

Dear ajoyraman,

Please send me a copy of the Gerbers to tido89 [at] gmail [dot] com.

Thank you!

Hi id also like to give it a try...

Could you send the files to trashbin2k@gmail.com

Thank you very much!

Hello Ajoy Raman, the SMD version looks really good and it seems to be a simple soldering work.

Could you please send me the PCB layout as both copper sides and both silkscreen (if existing)? I will try to make this design since I am a student and I need an oscilloscope to keep learning and designing at home. My e-mail is Rbruno96@hotmail.com

Thank you in advance.

hpladds ajoyraman9 months ago

I wonder how the parts list of this design differs from the original one?

hpladds hpladds9 months ago

Have I located the source of my confusion about the parts? The Bill of Materials and the Gerber file labels differ: (U1=J5), (U2=J5), (U5 U30=J1 J3), (U4=J3), (Y1=J10).

Also the probe connections and the reset bottons differ from project build to another project build.


ajoyraman (author)  hpladds9 months ago

When I built the snd version as per JHx hari. I used the component location and values as given in the gerber file. They are correct except for one component (150 Ohm to be changed to 10 Ohm which I have marked in pencil). I did not do a on-to-one comparision between the two designs. However I checked the wired circuit against my original circuits. I believe this is the best way to go about the fabrication. I am adding the top/bottom component layout from the gerber files.

Component Top.jpgComponent Bot.jpg
hpladds ajoyraman9 months ago

Thanks again, these schematics answer my questions.

JHx hari assigned different labels to the parts than your original design. For example: a dsPIC30F2020 is a "U4" on the original BOM. In schematic included here the dsPIC30F2020 is a "J3."

I was concerned that the different labels might indicate different parts -- SMD vs. DIP for example.

Thanks again -- as a noob -- I have more questions than the typical. Thanks for you understanding.

I would love a copy of your GBL files! paul@paulkruger.us

ajoyraman (author)  stuffdone1 year ago

I have sent you the Gerber files. Both my design and those kindly shared by JHx for the SMD version.

This project has now been successfully built by several members!!

Dear sir
Plz send me this project (layout and software)
Minhnghi (minhnghitang@gmail.com)
LucaS1 ajoyraman10 months ago

dear sir,

May you send me gerber files of both version?


Luca (luca.schenato.it@gmail.com)

Just in case someone needs to view gerber give this open source viewer a try.


sir please send gerber files on


Hi, can I also give it a try?
I'd appreciate if you could send those files to sabotenboy_london@goo.jp.

Thank you very much!

I would love too a copy of your GBL files! willy1142@gmail.com


Kindly advise the logic to adjust the mcp6s22 and what is the data packet format sent to the PC (just to configure how to interface an Android based oscilloscope like https://play.google.com/store/apps/details?id=com.... )

I would like to use the Pinguino board which uses PIC32MX440) so iI do appreciate the algorithm flow chart of the PIC program so I could port it to the Pinguino board and interface it to the Android app Oscilloscope Pro.

Thanks and Regards

ajoyraman (author)  mohammed.shalash.777 months ago

Kindly look at the files defining the interface-control ICD_Scope2.pdf, Readme_Scope2.doc



Very much appreciated.

Is it possible to get the hex code file for the PIC30F2020?


ajoyraman (author)  mohammed.shalash.777 months ago

The Hex code and documentation is at Step 13 and a link to the source code on the intro page

I'd like a copy of the Gerber files too if that is OK?


Thank you.

1-40 of 112Next »