Oscilloscopes For Modern Engineers? 337
Every few years someone asks this community for advice on oscilloscopes. Reader dawning writes "I've just graduated with a degree in Computer Engineering (and did a Comp Sci one while I was at it) and I'm finding myself woefully under-equipped to do some great hardware projects. I'm in major need of a good oscilloscope. I'm willing to put down $2,000 for a decent one, but there are several options and they all seem so archaic and limited. I'm happy to use something that must be controlled through a PC if that gives me more measuring features. What would you, my esteemed Slashdot colleagues, get for yourself?"
Kazkek (Score:5, Informative)
May I suggest you get a DAQ usb card and Labview from National Instruments. Probably some of the best investments you can do. You can do many things with a DAQ card and Labview including building your own digital Oscilloscope.
O-scope experiences. (Score:2, Informative)
See Slashdot circa 2001 (Score:4, Informative)
Building a Cheap Oscilloscope Using Your PC? [slashdot.org]
There are some interesting suggestions there.
I'm thinking that some of the more adventurous open hardware folks might think about working on a completely open hardware scope. I mean, what's better than being able to use open tools to build open projects?
Don't settle for USB scopes (Score:3, Informative)
The USB scopes are maddeningly horrible at triggering, at sample rates, and at aliasing. You're much, MUCH better off going with a stand-alone scope (LeCroy, Tektronix, Agilent) than any of the ones run by PC. LeCroy doesn't seem to provide much in the way of repair schematics, but Tektronix and Agilent are pretty good in that respect. I'd spring for one of the nicer Agilent/HP or Tektronix scopes, frankly, or even a LeCroy, but never something which is limited to being run by PC solely.
What are you looking for? (Score:3, Informative)
This is a bit light on the requirements, but there wasn't exactly a defined need.
So generally speaking you should form some criteria.
Number of inputs, frequency spectrum, what comparative features do you need.
Next, if you are willing to purchase something used and have it tuned/repaired there can be considerable savings. Up one level from this is a direct refurbishing company that guarantees a functional and re-tuned unit.
Now, we all enjoy new and shiny toys, but the trick is being honest with yourself.If it's going to be used for hobby grade activities then don't fall into the trap of wanting the same things you might use at the office. While I would like some of the severs I actually have at work I would not spend the several thousand it would take to actually purchase one of them.
That said I would generally avoid ebay because most refurb shops will sale you the same thing on their site without the wait.
USBee (Score:3, Informative)
USBee [usbee.com] has usb-based, software-driven oscilloscopes and logic analyzers to plug up with your computer. Not exactly the old, free-standing devices, but it might work for you. The price looks about right, too.
Handheld (Score:5, Informative)
I used to be a certified electronics calibration technician, and I've never noticed a difference between the analog and the digital.
If $2k is your budget, and not having any idea what you're going to be using it for, I highly recommend a handheld Fluke. They were just as reliable as the old analog ones, but with more features.
This is the model I'm referring to:
Fluke 125 [aikencolon.com]
Official Fluke 125 page [fluke.com]
aero2600
Best solution (Score:1, Informative)
Get a job someplace that has all the toys you want to play with.
Re:An old Tektronix is fine for a modern engineer (Score:4, Informative)
A new Tektronix oscilloscope will work as well. When I was an undergrad my colleagues were convinced that you need analog ones to make proper measurements, but I've had great success using digital ones. I actually prefer them.
Without a definition of what "good" means or what your needs are, I don't think that anyone can give you any sort of advice. I personally would never use one that had to be controlled through a PC. Having to drag a laptop or something all around the electronics of an experiment would be a major pain. (I've only used them in the context of the detector and apparatus signals in physics experiments.)
It depends on what you're designing. (Score:5, Informative)
I'm an EE who does electronics design for a living, and I've done audio, SMPS, digital, FPGA, you name it. And in each case, the "best scope to use" was different:
- For analog work, or for simple microcontroller debugging, something like a USBee will work great.
- If you're doing higher speed analog, lower-frequency RF or switching power supply design, I'm a huge fan of the Tektronix DPO series. I use a TDS3032.
- For digital work (debugging serial/parallel interfaces and whatnot) I use an old 100MHz "Mega Zoom" HP logic analyzer.
- If I'm doing a design with a big FPGA, bringing lots of extra signals to the FPGA during layout time and using something like Chipscope Pro (on Xilinx FPGAs) to watch what's going on has been extremely handy. No test equipment required!
I've found PC based scopes useless (Score:1, Informative)
I never found one I liked. They all seem very limited in the kinds of probes you can use, the triggers, or the refresh/display. I'm a software guy, so it's not like I am a hardware expert looking for some obscure features.
The best I've used are the ones with ethernet where you can access the data via an AJAX enabled webserver. Then zoom, pan, etc. It's all very slick and worked fine in a non-IE browser (Firefox), this gave me some PC access so I could show others the data I've collected, take screenshots, etc without having to swap a USB drive. If you get an older scope without networking, get one with USB or CF. Having a copy of your data is pretty important, and being able to paint on a picture to describe what you see to others is vital.
Answering myself... (Score:3, Informative)
Actually, there's at least company with open hardware oscilloscopes:
http://www.bitscope.net/ [bitscope.net].
Re:Kazkek (Score:3, Informative)
While I'm a gigantic LabVIEW fanboy, those USB DAQs don't have the bandwidth of a real oscilloscope. IIRC, most of those USB ones sample at 50 - 500 kS/s. Your low end digital scope will have a bandwidth of 20 MHz or more.
Re:An old Tektronix is fine for a modern engineer (Score:1, Informative)
I got a Tektronix 2432 on Ebay for less than $200 with 4 probes. The 2432 is a 300MHz capture scope that is not as well known as other older Tektronix scopes so it can be bought often very cheaply. People confuse it with a 2445 which is older and not a capture scope.
But first, you have to think about what you will do with a scope. I am a computer engineer and use my scope infrequently. When I was working with video I used it more often and when I build my own uController projects I often have to debug my PCB layout. But most times I could use a good multimeter or a counter. Another option is to use the uC itself as a scope. Data logging can be a problem if you want a lot of samples with a uC with limited memory.
But I agree, when you need a scope there is no substitute.
Re:Buy a cheap digital scope and a good analog sco (Score:3, Informative)
Personally I find traditional non-storage analog scopes pretty much useless for digital stuff. Really you can only use them if you can arrange for the signal in question to output a simple pattern that repeats infinitely.
Never used an analog storage scope but from what I hear they aren't exactly great for high speed stuff either.
One exception: if you can stretch your budget to get a used TDS3000 or TDS3000B series scope, that would be a good way to go.
There is one listed on ebay buy it now right now for the original posters budget of $2000
http://cgi.ebay.com/Tektronix-TDS3014-Digital-Oscilloscope-100MHz-w-HPIB-/300450756657?cmd=ViewItem&pt=BI_Oscilloscopes&hash=item45f442b831 [ebay.com]
Re:Tek 1012B (Score:3, Informative)
It's also worth pointing out that Rigol apparently makes some of Agilent's low-end scopes [circuitben.net] for them, so the fact that they aren't a household name doesn't mean all that much.
The Rigol scope has a lot of nice features that you wouldn't expect to find on a cheap scope -- it can take screenshots and store them to a USB thumb drive or print them to a USB printer, you can connect it to your computer to control it or acquire data via USB or RS-232, etc. It actually oversamples at 1 Gigasample/second -- there have been a number of EEVblog shows about it, talking about its performance, the parts that go into it (and the corners they did cut to get the price down!), etc. Google "eevblog rigol" to find the rest of them.
For what it's worth! (Score:3, Informative)
Re:My take (Score:4, Informative)
I agree with Andrew. I like having a stand alone instrument that data can be sent to the PC. It really depends on what you're going to be doing as to what you should buy... For $2k you can get a great deal on a used one (like from ebay) but you'll need to do some research first.
Dave does some good reviews here:
http://www.eevblog.com/episodes/ [eevblog.com]
Solved (Courtesy of Peter Hiscocks at TLUG) (Score:5, Informative)
... at http://gtalug.org/wiki/Meetings:2005-12 [gtalug.org], Peter demonstrated the virtual oscilloscope and virtual function generator applications, which are available as open source.
The hardware unit (approx 3 x 6 x 1" thick) is available at http://www.syscompdesign.com/CGR101.html [syscompdesign.com]
--dave
Triggering is the gold standard (Score:5, Informative)
The difference between a 'scope that is a joy to use and one that is useless and frustrating is triggering. Good triggering is what gives you ease-of-use. You can't see it if the 'scope can't trigger on it. This is especially true when you are trying to catch a glitch.
In my experience, Tektronix 'scopes have always been easier to use because they triggered better than the competition. We got a bunch of money once and decided to buy new oscilloscopes. Since we worked for the government, we had to write up a tender so there could be a fair competition. It drove us nuts. The specifications for the other brands were as good as those of the Tek 'scopes. We had used the competing 'scopes and hated them. We had to bend like pretzels to get a specification that would ensure that we got the 'scopes we wanted. The specifications just don't do a good job of describing how usable an oscilloscope is. (ditto for spectrum analyzers)
The Tek 'scopes were bullet proof. I could throw my 'scope in the back of a station wagon, drive to the airport, hop on a rented plane, fly five hundred miles, hike up a mountain and the Tek 'scope would ALWAYS work when I got to the job site.
These days, with digital 'scopes, a good test is to throw a nasty waveform at the 'scope and press the autoset button. If you're looking at something useful, the 'scope is good. If you're looking at garbage, the 'scope is garbage.
These days, I have an ancient Tek (circa 1970) 'scope on my bench at home. It works great for most of my home projects. At work, I have access to 'scopes that will do 1 GHz. My buds at the NRC have a 'scope that does 6 GHz. Somehow all the 'scopes are Tektronix.
Since I started in the industry in 1974, Tektronix has made the best oscilloscopes. Some of their other stuff is crap IMHO but nobody else can touch their 'scopes. I'm teaching college now and we prefer to buy as cheap as possible. Whenever we've tried something other than Tek, we've regretted it. The Tek 'scopes have the advantage of being student proof!
For other test equipment, I would choose other manufacturers. HP/Agilent would be my choice for almost everything else that isn't an oscilloscope.
Complete setup for under $1200 (Score:3, Informative)
Re:An old Tektronix is fine for a modern engineer (Score:5, Informative)
I work for Agilent. Trust me. They still call them scopes...
And for the original poster, be sure to check out how many waveform per second the scope can store. That is the reason that some people do NOT like digital scopes is that they first used a digital scope that cannot trigger and re-arm again in a reasonable period of time. Let's assume that you have a waveform that has an occasional glitch, but you can't set a trigger for it, so you have to catch it by chance. If your scope can capture 10,000 waveform per second, you stand a 10x greater chance than one that can only capture 1,000 waveforms per second. I believe that Agilent wins in this category.
Define what you need, go to ebay (Score:5, Informative)
One reason I mention these is because newer scopes, particularly the Tek 3000-series, while incredibly useful because of their size, weight, and connectivity (they have a linux-based OS that includes a webserver so you can plug one in with a cat5 and control it from your desk remotely: pure awesome!) are just about impossible to repair. Everything, *everything* is in custom silicon. On a LeCroy you can swap out the input amps if you burn one, swap out the timebase card or the A/D cards for each channel. It's like working with an old PC, as opposed to an ipod.
Also, budget for probes. Get probes rated for at least 1.5 times the scope's bandwidth: usually people ship probes that have the same bandwidth as the scope's max, but the spec on them actually means they're at something like -3dB and pretty fuzzy at that bandwidth. I got 500's for my 350mhz scope and they're beautiful. A lot of people sell broken probes and I've found, in the three I've purchased, that in every case it was a broken solderjoint where the probe cable met the board that attaches to the scope BNC. I reflowed it (no added solder for fear it'd mess with the tuning) and got three new probes for cheap.
There are people selling vintage scopes on ebay that have NIST certification, if that's important to you, but you can also get it independently certified if you need it. Newark.com has cal services, to my surprise. (They're who we use at work.)
I personally dislike Yokogawa scopes because their interface doesn't make sense to me. I can sit down at an Agilent or Tek or LeCroy and get it to do what I want pretty quickly (digital LeCroys are weird about horizontal offset) but Yokogawas I spend a lot of time reading the manual. But they're nicely engineered.
The USB scopes I've used were disappointments to me: the $ per mhz isn't competitive with a used scope, and they're typically pretty tied to the company software, which might not do what you want.
Re:Kazkek (Score:5, Informative)
By all means, buy National Instruments hardware. It is fantastic. I have deployed it on a number of production systems that run for days and days and days without a glitch.
As for Labview, stay the fuck away from that steaming pile of dogshit. It is a great way to waste lots of time and give up your sanity (and possibly your anal virginity) unless you feel like fucking around at your lab bench and drag-n-dropping some blinky lights and text boxes to impress your PHB. Oh yeah, and it's also great if you enjoy having fresh-out-of-college, inexperienced National Instruments tech support fuckwads (i.e. never having done any actual work with data acquisition or signal processing in their lives) repeatedly tell you, "OMG, change the way you think! You're so wrapped up in the text-based language tunnel vision! LOL!" whenever you get frustrated because Labview actually slows you down and doesn't help you get your results.
Oh yeah, I almost forgot, it will also cost you an arm and a leg. A hardware and software (i.e. Labview) package will let you look at signals in the 10MHz range and above will probably run you at least $10-15k.
In my day to day work, I prefer to remain in the "text-based language tunnel vision." That is, I prefer to use a well-designed C or C++ API to write programs that actually work in a predictable and reliable manner. (The NI-DAQmx API is actually very powerful and easy to use.) That way, I don't have to scroll around in a blinding maze of brightly colored connector lines and boxes and stuff, just because some National Instruments fucktard decided that "text-based languages" are just too, like, texty and complicated and not very much fun, yay! Yuck.
go for 4 channels (Score:5, Informative)
If you're a C.S. person, it's likely that you are a digital person, and you will most frequently use the oscilloscope to troubleshoot digital busses. Don't skimp on the channel count, go for 4! For things like serial busses (RS-232, SPI, I2C, etc.) you will want to watch clock, tx, and rx simultaneously. For a parallel bus, you can get your clock, chip select, and a couple addy or data lines. For most problems on your board, you can get by with the scope instead of an expensive logic analyzer if the scope has enough channels. The scope is better than the logic analyzer in many ways as you can watch for issues with noise, bus contention, etc.
Every engineer has their bias, I say go for Tek! LabVIEW and DAQ are cool for repetetive measurements under automation, but there's just no substitute for a physical front panel interface with knobs and buttons when you just want to spend a couple minutes looking at a few levels.
Try to find something with Ethernet or USB. Many of the used scopes on ebay have the old 3.5" floppy, and that becomes annoying when noone in the office remembers floppy disks and you need to get a plot off the scope to send to an FAE! :)
Re:An old Tektronix is fine for a modern engineer (Score:4, Informative)
Got One! The Memory is the Key (Score:2, Informative)
Re:An old Tektronix is fine for a modern engineer (Score:3, Informative)
I like the Tek 2430/2432/2440 scopes a lot, and used one for years in conjunction with a 2467, for those cases where analog-scope performance was needed. Apart from a few considerations like record length, this combination could easily stand up to any DSO costing less than several thousand dollars.
With the 2430-series scopes, the key points to watch out for are 1) make sure it passes its power-up self tests, as the CCD chips used for acquisition are no longer available; 2) avoid the original 2430s with no GPIB port if you think you will ever want to record screenshots from it; and 3) always use an external fan to cool the chips on the main board when servicing it. These scopes seriously stretched the performance envelope available at the time, and those custom chips can be replaced only by buying a parts mule.
Of course, if good ones are going for $200 with probes, it's probably a good idea to just go ahead and spend another $50-$100 on a parts unit to go with it...
Re:Kazkek (Score:1, Informative)
Labview is a waste of money. Use Python instead. NI DAQ cards are very useful pieces of kit, but their bandwidth is a fraction of what you get with a "proper" scope. Decide what bandwidth you need and buy accordingly.
Re:Kazkek (Score:5, Informative)
And don't get me started on the fuckwads who recently tried to convert me to UML as a better way to do real-time programming. What a crock of shit dreamed up by computer theorists who've never actually run one of their programs.
Re:Kazkek (Score:2, Informative)
I've long used LabWindows at work and stayed away from LabView. For those who don't know, they both share the same libraries but the former is pure ANSI C while the latter is boxes+spaghetti connectors. 3 years ago I did a data acquisition project that was also given to another team to do in LabView in parallel. After 3 months I was done and the project went into operational mode. The LV project was hitting some snags so I made some DLLs with all my underlying code for them and they would only need to add some pretty boxes on top. After 3 years their project still doesn't work properly. LV is impossible to debug (retroactive timings anyone ?). And while you can write spaghetti code in C, when you do so in LV it actually LOOKS like a plate of spaghetti !!!
I've been using LabView professionally for a few years now. While I hate LabView with a passion I have to clarify a few things:
Many people who insist on using LabView don't come from a strong programming background, so their project turning out horribly was probably in part because they just aren't very good programmers. Unfortunately for some reason they think LabView somehow changes this.
LabView actually isn't bad at debugging unless you're trying to do multi-threaded stuff. In which case you should probably just punch yourself in the face instead. I would say LabView is about on par with any decent debugger.
So for anyone really considering LabView: don't. I've thought about this and really can't find anything it does well. Except what it was designed to do, which is to make certain people feel less awkward using it because hey it looks kind of like a circuit diagram.
I could go on for hours about LabView but let me just leave with this fun tidbit:
It stores your code in a proprietary binary file. Think about how well this is going to work with any sort of software management system. By the way when you change a file any file that calls it will re-compile itself and store the compiled version into that same binary file, prompting you to save on exit. Hello, conflict nightmare! Also, it re-compiles and asks you to save all the time when you move it to other computers or look at it funny. Oh and forget about automated merging. Technically it can sort of merge but you still have to clean up the code manually afterward. Also, have fun maintaining legacy code when you upgrade to a new version of LabView for the next project. If you save the old files with a newer version of LabView they can no longer be opened with the old version. And it's not like any other editors can open those files!
Re:Buy a cheap digital scope and a good analog sco (Score:1, Informative)
Yes, I agree too to this statement. I'm doing fancy hardware design has hobby designer with 6 layer boards, tiny SMD components and 7mil wires. Scope is needed to bring up a new hardware. But for this you can buy one from the cheap ones of LeCroy, Tekktronix or others. If you are planning to use high speed buses like PCI or others then you would need better equipment which are normally not affordable for hobbiest.
I also agree that an protocol analyzer is a must to have like usbee or others to analyze SPI, UART, I2C etc.
Those are the buses which a hobbiest are normally use.
I have a mixed scope at home which I bought for half price from Agilent years ago.
When I need a better scope then I take the one from my company.
Try to speed the money in other tools like good solder station, rework station, reflow ofen etc.
The following measurement equipment is a must to have.
- Scope At least 100MHz with good trigger fuctions
- Multimeter (at least two) Agilent or Fluke got really good ones
- Bus Analyzer. Various from 150$ to thousands of $
Try to write down the requirements of your hardware projects.
What do I need and what can I afford.
Then you will realize what Scope is the best for you.
Good look.
Cheers
J
Did you ever bother to learn properly? (Score:3, Informative)
I've been a LabVIEW programmer for close to 10 years. I have also been a C and C++ programmer for quite a long time now. I did large projects using both, sometimes using both in the same project. I can call myself a qualified programmer using both languages.
It is perfectly possible to create very large applications, using multi threading and proper design patterns. However, just like you had to spend years learning to write powerful and correct C++, you need quite some time to learn to program LabVIEW correctly.
Once you can do that, writing test and measurement applications can be as efficient or even better than with text based languages. I have the confidence to say that I wrote large data acquisition systems that performed well with very large datasets and high acquisition speeds.
But you have to understand data flow programming, and that is not something you acquire easily, just like you probably sucked at your first text based language projects.
Don't blame the tools for your failure to use them properly.
Re:Kazkek (Score:3, Informative)
As someone who writes VHDL, Verilog, C++, and Matlab on a daily basis, I understand both control flow and data flow programming, Labview is some perverted amalgamation of the two. It lures you in under the guise that you will not need to learn any GUI programming, and then screws you over in anything more than the basics. For example, in a data flow paradigm, pointers have no meaning, as all data is by value. Nearly every complex data type is handled with pointers, and "magical pointer functions" which make life hell, as they do not fit into the paradigm. So then they add "classes", which is a way for them to say that they somehow trump C++ and Java. Upon reading the fine print, one discovers that the class system is similarly FUBAR'd. Then there's the issue of inserting something into code. In a text based language, hit enter, and begin typing. In labview, delete a shit-ton of wires, drag and drop portions of the diagram, put in new bright colored squares, connect even more wires, make everything look readable (see: drag 'n drop ad nausium).
But, if you need a quick and dirty state machine to control something, and you don't mind a polling architecture, I can implement that in about a day...
Re:dumpster diving (Score:3, Informative)
Our calibration company seals up all edges of the device that give access to its insides after it has been calibrated. Break those seals, and you're in trouble... they'll refuse to calibrate it in the future because of the risk it's been altered. This is forgiven if you provide paperwork from the OEM that they themselves did the repair on the unit.
I don't know that all calibration houses are this strict, though. You could probably find one that would pass your modified instrument if you really wanted.
Re:An old Tektronix is fine for a modern engineer (Score:3, Informative)
Despite the rather "textblock"ish formatting of the above post, I do believe that the Rigol DS1052E is one of the best entry-level choices right now, and is GREAT bang-for-the-buck. I have one and it has proven very useful. My only regret is that I purchased it before it got price-dropped to $400. (I paid around $530 plus New York State sales tax from Saelig.)
FYI, Rigol is the manufacturer of Agilent's entry-level units at this point.
To the article poster: You indicate you've done some looking and have been unhappy with what you've found. What have you looked at and in what way have you found it lacking? What are your requirements?
Strangely enough, the "PC-only" units, while you would expect them to provide more bang for the buck, almost universally are inferior. There's a horrible trend in that market to advertise high analog bandwidths without the samplerate to back up that bandwidth. General rule of thumb is that a good scope needs 10x its analog bandwidth in samplerate to capture transients. You're probably OK with only 5x. Many of the PC-based scopes don't even meet the Nyquist criterion! (The Nyquist criteria pretty much lets you capture a sine wave at the analog bandwidth. Keep in mind the analog bandwidth is usually a cutoff frequency, and it can get information from higher frequencies.)
Re:Kazkek (Score:3, Informative)
In one of my previous jobs, I had the task of getting a test setup controlled by LabView working in our facility.
Tiny little differences in our setup completely broke LabView, and the "point, click, drool" GUI really insulated you from what was going wrong and how to fix it.
I was able to almost rewrite the whole damn thing in Perl, including adding new test instrument classes to Jeff Mock's long-unmaintained Perl GPIB modules, in less time than it took to try and fix that thing.
Even though Jeff's libraries are long unmaintained, they're still a great place to start. Perl is great for test equipment automation IMO. (However, Jeff's libraries aren't so hot for trying to interface with modern interfaces such as USB-TMC. USB-TMC is just plain not well supported in Linux right now, don't know about Windows.)