Stand-Alone, 8-Channel Event, State, and Count Data Logger

DATAQThe DI-160 is a stand-alone event, state, and count data logger that features four programmable measurement modes. The data logger enables you to determine when events occur, the total number of events, and the period of time in between events. It can count parts by monitoring a proximity sensor’s pulse output, or determine a machine’s downtime by monitoring AC power.

The DI-160 includes eight channels. Four ±300-VDC/peak AC isolated channels can accommodate high-level DC voltage signals, pulse inputs up 2 kHz, or AC line voltage. Four ±30-VDC/peak AC non-isolated channels (pulled high) enable you to monitor lower-level DC voltages, TTL-level, signals, or switch closures.

You can use DATAQ’s Event Recorder set-up software, which is included with the data logger, to enable/disable channels, select measurement modes on a channel-by-channel basis, and choose one of 21 sample intervals, ranging from 1 s to 24 h. Data is stored to a removable SD memory card in CSV format, enabling up to 500 days of continuous recording and easy viewing in Microsoft Excel.

The DI-160’s AC channels provide channel-to-channel and input-to-output isolation up to 500 VDC (±250-V peak AC) and have a 4-V trigger threshold. The low-voltage channels are protected up to ±30 VDC/peak AC and trigger at 2.5 V.

A built-in rechargeable battery acts as a “bridge” when disconnecting the data logger from a PC and connecting it to the USB power supply. Three LEDs indicate when the DI-160 is actively acquiring data, when the unit is connected via USB to a PC (or the included AC power supply), and the battery’s charge state. A push button enables you to start and stop recording to the SD memory card.

The DI-160’s four selectable measurement modes. State mode determines an event’s duration. Event mode detects a single change of state (within a sample interval). High-Speed (HS) Counter mode yields the total number of state changes within a sample interval. AC Counter mode counts the number of times AC power turns on/off within a sample interval.

The DI-160 costs $299 and includes a mini screwdriver a 2-GB SD memory card, an AC power supply, and a mini-USB cable. The DATAQ Event Recorder software is available for free download.

DATAQ Instruments, Inc.

Gigabit Ethernet Designs

WurthWurth Electronics Midcom and Lantiq recently announced The Evaluation Kit, a jointly developed demonstration kit. The kit enables users to easily add Ethernet hardware to an application or device and provides all necessary information to understand the demands of an Ethernet hardware design.

The Evaluation Kit includes an easy-to-use 1-Gbps demonstration board. The (54-mm × 92-mm) credit card-sized demonstration board is powered by USB. The board plugs into PCs and provides up to 1-Gbps bidirectional data rates.

The Evaluation Kit costs approximately $175.

Wurth Electronics Midcom, Inc.


Evaluating Oscilloscopes (Part 4)

In this final installment of my four-part mini-series about selecting an oscilloscope, I’ll look at triggering, waveform generators, and clock synchronization, and I’ll wrap up with a series summary.

My previous posts have included Part 1, which discusses probes and physical characteristics of stand-alone vs. PC-based oscilloscopes; Part 2, which examines core specifications such as bandwidth, sample rate, and ADC resolution; and Part 3, which focuses on software. My posts are more a “collection of notes” based on my own research rather than a completely thorough guide. But I hope they are useful and cover some points you might not have otherwise considered before choosing an oscilloscope.

This is a screenshot from Colin O'Flynn's YouTube video "Using PicoScope AWG for Testing Serial Data Limits."

This is a screenshot from Colin O’Flynn’s YouTube video “Using PicoScope AWG for Testing Serial Data Limits.”

Topic 1: Triggering Methods
Triggering your oscilloscope properly can make a huge difference in being able to capture useful waveforms. The most basic triggering method is just a “rising” or “falling” edge, which almost everyone is (or should be) familiar with.

Whether you need a more advanced trigger method will depend greatly on your usage scenario and a bit on other details of your oscilloscope. If you have a very long buffer length or ability to rapid-fire record a number of waveforms, you might be able to live with a simple trigger since you can easily throw away data that isn’t what you are looking for. If your oscilloscope has a more limited buffer length, you’ll need to trigger on the exact moment of interest.

Before I detail some of the other methods, I want to mention that you can sometimes use external instruments for triggering. For example, you might have a logic analyzer with an extremely advanced triggering mechanism.  If that logic analyzer has a “trigger out,” you can trigger the oscilloscope from your logic analyzer.

On to the trigger methods! There are a number of them related to finding “odd” pulses: for example, finding glitches shorter or wider than some length or finding a pulse that is lower than the regular height (called a “runt pulse”). By knowing your scope triggers and having a bit of creativity, you can perform some more advanced troubleshooting. For example, when troubleshooting an embedded microcontroller, you can have it toggle an I/O pin when a task runs. Using a trigger to detect a “pulse dropout,” you can trigger your oscilloscope when the system crashes—thus trying to see if the problem is a power supply glitch, for example.

If you are dealing with digital systems, be on the lookout for triggers that can function on serial protocols. For example, the Rigol Technologies stand-alone units have this ability, although you’ll also need an add-on to decode the protocols! In fact, most of the serious stand-alone oscilloscopes seem to have this ability (e.g., those from Agilent, Tektronix, and Teledyne LeCroy); you may just need to pay extra to enable it.

Topic 2: External Trigger Input
Most oscilloscopes also have an “external trigger input.”  This external input doesn’t display on the screen but can be used for triggering. Specifically, this means your trigger channel doesn’t count against your “ADC channels.” So if you need the full sample rate on one channel but want to trigger on another, you can use the “ext in” as the trigger.
Oscilloscopes that include this feature on the front panel make it slightly easier to use; otherwise, you’re reaching around behind the instrument to find the trigger input.

Topic 3: Arbitrary Waveform Generator
This isn’t strictly an oscilloscope-related function, but since enough oscilloscopes include some sort of function generator it’s worth mentioning. This may be a standard “signal generator,” which can generate waveforms such as sine, square, triangle, etc. A more advanced feature, called an arbitrary waveform generator (AWG), enables you to generate any waveform you want.

I previously had a (now very old) TiePie engineering HS801 that included an AWG function. The control software made it easy to generate sine, square, triangle, and a few other waveforms. But the only method of generating an arbitrary waveform was to load a file you created in another application, which meant I almost never used the “arbitrary” portion of the AWG. The lesson here is that if you are going to invest in an AWG, make sure the software is reasonable to use.

The AWG may have a few different specifications; look for the maximum analog bandwidth along with the sample rate. Be careful of outlandish claims: a 200 MS/s digital to analog converter (DAC) could hypothetically have a 100-MHz analog bandwidth, but the signal would be almost useless. You could only generate some sort of sine wave at that frequency, which would probably be full of harmonics. Even if you generated a lower-frequency sine wave (e.g., 10 MHz), it would likely contain a fair amount of harmonics since the DAC’s output filter has a roll-off at such a high frequency.

Better systems will have a low-pass analog filter to reduce harmonics, with the DAC’s sample rate being several times higher than the output filter roll-off. The Pico Technology PicoScope 6403D oscilloscope I’m using can generate a 20-MHz signal but has a 200 MS/s sample rate on the DAC. Similarly, the TiePie engineering HS5-530 has a 30-MHz signal bandwidth, and similarly uses a 240 MS/s sample rate. A sample rate of around five to 10 times the analog bandwidth seems about standard.

Having the AWG integrated into the oscilloscope opens up a few useful features. When implementing a serial protocol decoder, you may want to know what happens if the baud rate is slightly off from the expected rate. You can quickly perform this test by recording a serial data packet on the oscilloscope, copying it to the AWG, and adjusting the AWG sample rate to slightly raise or lower the baud rate. I illustrate this in the following video.

Topic 4: Clock Synchronization

One final issue of interest: In certain applications, you may need to synchronize the sample rate to an external device. Oscilloscopes will often have two features for doing this. One will output a clock from the oscilloscope, the other will allow you to feed an external clock into the oscilloscope.

The obvious application is synchronizing a capture between multiple oscilloscopes. You can, however, use this for any application where you wish to use a synchronous capture methodology. For example, if you wish to use the oscilloscope as part of a software-defined radio (SDR), you may want to ensure the sampling happens synchronous to a recovered clock.

The input frequency of this clock is typically 10 MHz, although some devices enable you to select between several allowed frequencies. If the source of this clock is anything besides another instrument, you may have to do some clock conditioning to convert it into one of the valid clock source ranges.

Summary and Closing Comments
That’s it! Over the past four weeks I’ve tried to raise a number of issues to consider when selecting an oscilloscope. As previously mentioned, the examples were often PicoScope-heavy simply because it is the oscilloscope I own. But all the topics have been relevant to any other oscilloscope you may have.

You can check out my YouTube playlist dealing with oscilloscope selection and review.  Some topics might suggest further questions to ask.

I’ve probably overlooked a few issues, but I can’t cover every possible oscilloscope and option. When selecting a device, my final piece of advice is to download the user manual and study it carefully, especially for features you find most important. Although the datasheet may gloss over some details, the user manual will typically address the limitations you’ll run into, such as FFT length or the memory depths you can configure.

Author’s note: Every reasonable effort has been made to ensure example specifications are accurate. There may, however, be errors or omissions in this article. Please confirm all referenced specifications with the device vendor.

Evaluating Oscilloscopes (Part 3)

In Part 3 of my series on selecting an oscilloscope, I look at the software running the oscilloscope and details such as remote control, fast Fourier transform (FFT) features, digital decoding, and buffer types.

Two weeks ago, I covered the differences between PC-based and stand-alone oscilloscopes and discussed the physical probe characteristics. Last week I discussed the “core” specifications: analog bandwidth, sample rate, and analog-to-digital converter (ADC) resolution. Next week, I will look into a few remaining features such as external trigger and clock synchronization, and I will summarize all the material I’ve covered.

Topic 1: Memory Depth
The digital oscilloscope works by sampling an ADC and then stores these samples somewhere. Thus an important consideration will be how many samples it can actually store. This especially becomes apparent at higher sample rates—at 5 gigasamples per second (GS/s), for example, even 1 million samples (i.e., 1 megasample or 1 MS) means 200 µs of data. If you are looking at very low-cost oscilloscopes, be aware that many of them have very small buffers. Searching on eBay, you can find an oscilloscope such as the Hantek DSO5202P, which has a 1 GS/s sample rate and costs only $400. The record length is only 24 kilosamples (KS) however, which would be 24 µs of data. You can find even smaller buffers:  the Tektronix TDS2000C series has only a 2,500-sample (2.5 KS) buffer length. If you only want to look around the trigger signal, you can live with a small buffer. Unfortunately, when it comes to troubleshooting you rarely have a perfect trigger, and you may need to do a fair amount of “exploration.”  A small buffer means the somewhat frustrating experience of trying to capture the signal of interest within your tiny window of opportunity.

Even if the buffer space is advertised as being huge, you may not be able to easily access the entire space. The Pico Technology PicoScope PS6403D advertises a 1-GS buffer space, one of the largest available. With the PC-based software you can configure a number of parameters; however, it always seems to limit the sample buffer to about 500 MS.  I do admit it’s fairly impressive that this still works at the 5 GS/s sample rate, since that suggests a memory bandwidth of 40 Gb/s! Using the segmented buffer (discussed later in this article) enables use of the full sample memory, but it cannot record a full continuous 1 GS trace, which you might expect based on the sales pitch.

Topic 2: FFT Length
Oscilloscope advertisements often allude to their ability to perform in a “spectrum analyzer” mode. In reality, what the oscilloscope is doing is performing an FFT of the measured signal. One critical difference is that a spectrum analyzer typically has a “center frequency” and you are able to measure a certain bandwidth amount to either side of that center frequency. By sweeping the center frequency, you can get a graph of the power present in the frequency system over a very wide range.

Using the oscilloscope’s FFT mode, there is no such thing as the center frequency. Instead you are always measuring from 0 Hz up to some limit, which is usually user-adjustable. The limit is, at most, half the oscilloscope’s sample rate but may be further limited by the oscilloscope’s analog bandwidth. Now here is the trick—the oscilloscope will specify a certain “FFT length,” which is how many points are used in calculating the FFT. This will also define the number of “bins” (i.e., horizontal frequency resolution) in the output graph. Certain benchtop oscilloscopes may have very limited FFT lengths, such as those containing only 2,048 points.  This may seem fine for viewing the entire spectrum from 0–100 MHz. But what if you want to zoom in on the 95–98 MHz range? Since the oscilloscope is actually calculating the FFT from 0 Hz, it will have only ~60 points it can display in that range. It suddenly becomes apparent why you want very long FFT lengths—it allows you to zoom in and still obtain accurate results. You can set the oscilloscope sample rate down to zoom in on frequencies around 0 Hz. So, for example, if you want to accurately do some measurements at 1–10 kHz, it’s not a big issue since you can set a low enough sample rate so that the 2,048 points are distributed between 0–20 kHz or similar. And when you zoom in you’ve got lots of detail.

In addition to the improved horizontal detail, longer FFT lengths push down the noise floor.  If you do wish to use the oscilloscope for frequency analysis, having a long FFT length can be a huge asset. This is shown in Figure 1, which compares an FFT taken using a magnetic field probe of a microcontroller board. Here I’ve zoomed in on a portion of the spectrum, with the left FFT having 2,048 points, the right FFT having 131,072 points.

Figure 1: When zooming in on a portion of the fast Fourier transform (FFT), having a larger number of points for the original calculation becomes a huge asset. Also, notice the lower noise floor for the figure on the right, calculated with 131,072 points, compared to the 2,048 used for the figure on the left.

Figure 1: When zooming in on a portion of the fast Fourier transform (FFT), having a larger number of points for the original calculation becomes a huge asset. Also, notice the lower noise floor for the figure on the right, calculated with 131,072 points, compared to the 2,048 used for the figure on the left.

A note on selecting a unit: The very low-cost oscilloscopes with small data buffers will obviously use a very small FFT length. But specifications for some of the larger memory depth oscilloscopes, such as the Rigol Technologies DS2000, DS4000, and DS6000 models, show they use smaller FFT lengths.  These models use only 2,048 points, according to a document posted on Rigol’s website, despite their large memory (131 MS).  PC-based oscilloscopes seem to be the best, as they can perform the FFT on a powerful desktop PC, rather than requiring it be done in an embedded digital signal processor (DSP) or field-programmable gate array (FPGA). For example, the PicoScope 6403D allows the FFT length to be up to 1,048,576 points.

Topic 3: Segmented Buffer
A feature I consider almost a “must-have” is a segmented buffer. This means you can configure the oscilloscope to trigger on a certain event, and it will record a number of waveforms of a certain length. For glitches that occur only occasionally (which is, 90% of the time, why you are troubleshooting in the first place), this can speed up your ability to find details of what the system is doing during a glitch.

Figure 2 shows an example of the segmented buffer viewer on the PicoScope software, where the number of buffers can be configured up to 10,000. Similar features exist in the Rigol DS4000 and DS6000, which call each segment a “frame” and can record up to 200,000 frames! Once you have a number of segments/frames, you can either manually flip through looking for the glitch, or use features such as mask limit testing to highlight segments/frames that differ from the “usual.”

Figure 2

Figure 2: Segmented buffers allow you to capture a number of traces and then flip through them looking for some specific feature. Using mask-based testing will also speed this up, since you can quickly find “odd man out”-type waveforms.

Certain oscilloscopes might make the segmented buffer an add-on. For example, only certain Agilent Technologies 3000 X-Series models contain segmented buffers by default; others in that same family require you to purchase this feature for an extra $800! Of course, always review any promotional offers—Agilent has recently advertised that it will enable all features on that oscilloscope model for the price of a single option.

Topic 4: Remote Control/Streaming
One more advanced feature is controlling the oscilloscope from your computer. If you wish to use the oscilloscope in applications beyond electronics troubleshooting, you should seriously consider the features different oscilloscopes provide.

PC-based oscilloscopes tend to have a considerable advantage here, as they are typically designed to interface to the computer. It seems most PC-based oscilloscopes from popular suppliers come with nice application programming interfaces (APIs) for most languages: I’ve found examples in C, C#, C++, MATLAB, Python, LabVIEW, and Delphi for most PC-based oscilloscopes. Some of the “no-name” PC-based oscilloscopes you find on eBay do not have an API, so always check closely for your specific device.

Most of the stand-alone oscilloscopes also have a method of sending commands, typically using a standard such as the Virtual Instrument Software Architecture (VISA). However, I’ve found these stand-alone oscilloscopes seem to have a considerably slower interface compared to a PC-based oscilloscope. Presumably for the PC-based oscilloscope, this interface is critical to overall performance, whereas for the stand-alone it’s simply an “add-on” feature. This isn’t a sure thing, of course—for example, see the PC interface for the Teledyne LeCroy oscilloscope, as described in a company blog post. It looks to give you access to features similar to those of PC-based oscilloscopes (multiple windows, etc.).

Beyond just controlling the oscilloscope, another interesting feature is streaming mode. In streaming mode data is not downloaded to an internal buffer on the oscilloscope. Instead it streams directly over the PC interface (typically USB or Ethernet). This feature is considerably more complex to work with than simple PC-based control, as achieving fast streams via USB is not trivial. However, using streaming mode opens up many interesting features. For example, you could use your oscilloscope as part of a software defined radio (SDR). If you wish to use such a feature, be sure to carefully read the specification sheets for the streaming mode limitations.

Topic 5: Decoding Serial Protocols
Decoding of serial protocols is another useful feature. If you have a digital logic analyzer, it will almost certainly include the ability to decode serial protocols. But it can be helpful to have this feature in the oscilloscope as well. If you are chasing down an occasional parity error, you can use the oscilloscope’s analog display to see if the issue is simply a weak or noisy signal.

While most oscilloscopes seem to support this feature, many require you to pay for it. Typically PC-based oscilloscopes will include it for free, but stand-alone oscilloscopes require you to purchase it. For example, this feature costs $500 for the Rigol Technologies DS4000 series, $800 for the Agilent Technologies 3000X, and $1,100 for the Tektronix DPO/MSO3000 series. Depending on the vendor, it may include multiple protocols or only one. But if you wish to enable all available protocols, it could cost more than your oscilloscope! It would typically be cheaper to purchase a PC-based logic analyzer than it would be to buy the software module for your oscilloscope.

This is one of the major reasons I prefer PC-based oscilloscopes: There tends to be no additional cost for extra features! Without the decoding you can look at the signal and see if it “looks” noisy, but having the decoding built-in means you can easily point to the specific moment when the error occurs. I’ve got some examples of such serial decoding in my video below.

Topic 6: Software Features
I’ve already mentioned it a few times in passing, but you should always check to see what software features are actually included. You may be surprised to find out some features require payment—even some models adding the FFT or other “advanced math” features require payment of a substantial fee.

There is hope on the horizon for getting access to all features in stand-alone oscilloscopes at a reasonable cost. As I mentioned earlier, Agilent Technologies recently announced it would be providing access to all software features for the cost of one module in the X-2000, X-3000, and X-4000 series. Once this goes into effect, it means that it’s really just $500–$1,500 for decoding of all serial protocols and all math features, depending on your oscilloscope. They sell this as saving you up to $16,500. (Which to me just shows how insanely expensive all these software add-ons really are!) With luck, other vendors will follow suit, and perhaps even finally include these software options in the selling price.

If you’re looking at PC-based oscilloscopes, you’ll often be allowed to download the software and play with it, even if you don’t have an instrument. This can give you an idea of how “polished” the user interface is. Considering how long you’ll spend inside this user interface, it’s good to know about it!

Closing Comments
This week I covered a number of features revolving around the software running the oscilloscope. Next week I’ll be looking into a few remaining features such as external trigger and clock synchronization, which will round out this guide.

Author’s note: Every reasonable effort has been made to ensure example specifications are accurate. There may, however, be errors or omissions in this article. Please confirm all referenced specifications with the device vendor.

Evaluating Oscilloscopes (Part 2)

This is Part 2 of my mini-series on selecting an oscilloscope. Rather than a completely thorough guide, it’s more a “collection of notes” based on my own research. But I hope you find it useful, and it might cover a few areas you hadn’t considered.

Last week I mentioned the differences between PC-based and stand-alone oscilloscopes and discussed the physical probe’s characteristics. This week I’ll be discussing the “core” specifications: analog bandwidth, sample rate, and analog-to-digital converter (ADC) resolution.

Topic 1: Analog Bandwidth
Many useful articles online discuss the analog oscilloscope bandwidth, so I won’t dedicate too much time to it. Briefly, the analog bandwidth is typically measured as the “half-power” or -3 dB point, as shown in Figure 1. Half the power means 1/√2 of the voltage. Assume you put a 10-MHz, 1-V sine wave into your 100-MHz bandwidth oscilloscope. You expect to see a 1-V sine wave on the oscilloscope. As you increase the frequency of the sine wave, you would instead expect to see around 0.707 V when you pass a 100-MHz sine wave. If you want to see this in action, watch my video in which I sweep the input frequency to an oscilloscope through the -3 dB point.

Figure 1: The bandwidth refers to the "half-power" or -3 dB  point. If we drove a sine wave of constant amplitude and increasing frequency into the probe, the -3 dB point would be when the amplitude measured in the scope was 0.707 times the initial amplitude.

Figure 1: The bandwidth refers to the “half-power” or -3 dB point. If we drive a sine wave of constant amplitude and increasing frequency into the probe, the -3 dB point would be when the amplitude measured in the scope is 0.707 times the initial amplitude.

Unfortunately, you are likely to be measuring square waves (e.g., in digital systems) and not sine waves. Square waves contain high-frequency components well beyond the fundamental frequency of the wave. For this reason the “rule of thumb”  is to select an oscilloscope with five times the analog bandwidth of the highest–frequency digital signal you would be measuring. Thus, a 66-MHz clock would require a 330-MHz bandwidth oscilloscope.

If you are interested in more details about bandwidth selection, I encourage you to see one of the many excellent guides. Adafruit has a blog post “Why Oscilloscope Bandwidth Matters” that offers more information, along with links to guides from Agilent Technologies and Tektronix.

If you want to play around yourself, I’ve got a Python script that applies analog filtering to a square wave and plots the results, available here. Figure 2 shows an example of a 50-MHz square wave with 50-MHz, 100-MHz, 250-MHz, and 500-MHz analog bandwidth.

Figure 2: This shows sampling a 50-MHz square wave with 50, 100, 250, and 500-MHz of analog bandwidth.

Figure 2: This shows sampling a 50-MHz square wave with 50, 100, 250, and 500 MHz of analog bandwidth.

Topic 2: Sample Rate
Beyond the analog bandwidth, oscilloscopes also prominently advertise the sample rate. Typically, this is in MS/s (megasamples per second) or GS/s (gigasamples per second). The advertised rate is nearly always the maximum if using a single channel. If you are using both channels on a two-channel oscilloscope that advertises 1 GS/s, typically the maximum rate is actually 500 MS/s for both channels.

So what rate do you need? If you are familiar with the Nyquist criterion, you might simply think you should have a sample rate two times the analog bandwidth. Unfortunately, we tend to work in the time domain (e.g., looking at the oscilloscope screen) and not the frequency domain. So you can’t simply apply that idea. Instead, it’s useful to have a considerably higher sample rate compared to analog bandwidth, say, a five times higher sample rate. To illustrate why, see Figure 3. It shows a 25.3-MHz square wave, which I’ve sampled with an oscilloscope with 50-MHz analog bandwidth. As you would expect, the signal rounds off considerably. However, if I only sample it at 100 MS/s, at first sight the signal is almost unrecognizable! Compare that with the 500 MS/s sample rate, which more clearly looks like a square wave (but rounded off due to analog bandwidth limitation).

Again, these figures both come from my Python script, so they are based purely on “theoretical” limits of sample rate. You can play around with sample rate and bandwidth to get an idea of how a signal might look.

Figure 3

Figure 3: This shows sampling a 25.3-MHz square wave at 100 MS/s results in a signal that looks considerably different than you might expect! Sampling at 500 MS/s results in a much more “proper” looking wave.

Topic 3: Equivalent Time Sampling
Certain oscilloscopes have an equivalent time sampling (ETS) mode, which advertises an insanely fast sample rate. For example, the PicoScope 6000 series, which has a 5 GS/s sample rate, can use ETS mode and achieve 200 GS/s on a single channel, or 50 GS/s on all channels.

The caveat is that this high sample rate is achieved by doing careful phase shifts of the A/D sampling clock to sample “in between” the regular intervals. This requires your input waveform be periodic and very stable, since the waveform will actually be “built up” over a longer time interval.

So what does this mean to you? Luckily, many actual waveforms are periodic, and you might find ETS mode very useful. For example, if you want to measure the phase shift in two clocks through a field-programmable gate array (FPGA), you can do this with ETS. At 50 GS/s, you would have 20 ps resolution on the measurement! In fact, that resolution is so high you could measure the phase difference due to a few centimeters difference in PCB trace.

To demonstrate this, I can show you a few videos. To start with, the simple video below shows moving the probes around while looking at the phase difference.

A more practical demonstration, available in the following video, measures the phase shift of two paths routed through an FPGA.

Finally, if you just want to see a sine wave using ETS you can check out the bandwdith demonstration  I referred to earlier in the this article. The video (see below) includes a portion using ETS mode.


Topic 4: ADC Resolution
A less prominently advertised feature of certain oscilloscopes is the ADC bit resolution in the front end. Briefly, the ADC resolution tells you how the analog waveform will get mapped to the digital domain. If you have an 8-bit ADC, this means you have 28 = 256 possible numbers the digital waveform can represent. Say you have a ±5 V range on the oscilloscope—a total span of 10 V. This means the ADC can resolve 10 V / 256 = 39.06 mV difference on the input voltage.

This should tell you one fact about digital oscilloscopes: You should always use the smallest possible range to get the finest granularity. That same 8-bit ADC on a ±1 V range would resolve 7.813 mV. However, what often happens is your signal contains multiple components—say, spiking to 7 V during a load switch, and then settling to 0.5 V. This precludes you from using the smaller range on the input, since you want to capture the amplitude of that 7-V spike.

If, however, you had a 12-bit ADC, that 10 V span (+5 V to -5 V) would be split into 212 = 4,096 numbers, meaning the resolution is now 2.551 mV.  If you had a 16-bit ADC, that 10-V range would give you 216 = 65,536 numbers, meaning you could resolve down to 0.1526 mV. Most of the time, you have to choose between a faster ADC with lower (typically 8-bit) resolution or a slower ADC with higher resolution. The only exception to this I’m aware of is the Pico Technology FlexRes 5000 series devices, which allow you to dynamically switch between 8/12/14/15/16 bits with varying changes to the number of channels and sample rate.

While the typical ADC resolution seems to be 8 bits for most scopes, there are higher-resolution models too. As mentioned, these devices are permanently in high-resolution mode, so you have to decide at purchasing time if you want a very high sample rate, or a very high resolution. For example, Cleverscope has always advertised higher resolutions, and their devices are available in 10, 12, or 14 bits. Cleverscope seems to sell the “digitizer” board separately, giving you some flexibility in upgrading to a higher-resolution ADC. TiePie engineering has devices available from 8–14 bits with various sample rate options. Besides the FlexRes device I mentioned, Pico Technology offers some fixed resolution devices in higher 14-bit resolution. Some of the larger manufacturers also have higher-resolution devices, for example Teledyne LeCroy has its High Resolution Oscilloscope (HRO), which is a fixed 12-bit device.

Note that many devices will advertise either an “effective” or “software enhanced” bit resolution higher than the actual ADC resolution. Be careful with this: software enhancement is done via filtering, and you need to be aware of the possible resulting changes to your measurement bandwidth. Two resources with more details on this mode include the ECN magazine article “How To Get More than 8 Bits from Your 8-bit Scope” and the Teledyne LeCroy application note “Enhanced Resolution.” Remember that a 12-bit, 100-MHz bandwidth oscilloscope is not the same as an 8-bit, 100-MHz bandwidth oscilloscope with resolution enhancement!

Using the oscilloscope’s fast Fourier transform (FFT) mode (normally advertised as the spectrum analyzer mode), we can see the difference a higher-resolution ADC makes. When looking at a waveform on the screen, you may think that you don’t care at all about 14-bit accuracy or something similar. However, if you plan to do measurements such as total harmonic distortion (THD), or otherwise need accurate information about frequency components, having high resolution may be extremely important to achieve a reasonable dynamic range.

As a theoretical example I’m using my script mentioned earlier, which will digitize a perfect sine wave and then display the frequency spectrum. The number of bits in the ADC (e.g., quantization) is adjustable, so the harmonic component is solely due to quantization error. This is shown in Figure 4. If you want to see a version of this using a real instrument, I conduct a similar demonstration in this video.

Certain applications may find the higher bit resolution a necessity. For example, if you are working in high-fidelity audio applications, you won’t be too worried about an extremely high sample rate, but you will need the high resolution.

Figure 4: In the frequency domain, the effect of limited quantization bits is much more apparent. Here a 10-MHz pure sine wave frequency spectrum is taken using a different number of bits during the quantization process.

Figure 4: In the frequency domain, the effect of limited quantization bits is much more apparent. Here a 10-MHz pure sine wave frequency spectrum is taken using a different number of bits during the quantization process. (CLICK TO ZOOM)

Coming Up
This week I’ve taken a look at some of the core specifications. I hope the questions to ask when purchasing an oscilloscope are becoming clearer! Next week, I’ll be looking at the software running the oscilloscope, and details such as remote control, FFT features, digital decoding, and buffer types. The fourth and final week will delve into a few remaining features such as external trigger and clock synchronization and will summarize all the material I’ve covered in this series.

Author’s note: Every reasonable effort has been made to ensure example specifications are accurate. There may, however, be errors or omissions in this article. Please confirm all referenced specifications with the device vendor.

Evaluating Oscilloscopes (Part 1)

Recently, I was in the market for a new oscilloscope. There’s a good selection of devices for sale, but which should you choose? It’s clear from the ads that the “scope bandwidth” and “sample rate” are two important parameters. But are there other things hidden in the specification sheet you should take a look at?

I’ve compiled notes from my own oscilloscope-selection experience and wanted to share them with you. I’ll be pulling in specifications and examples from a few different oscilloscopes. Personally, I ended up selecting a PicoScope device, so I will be featuring it more prominently in my comparisons. But that’s simply because I don’t have a lab full of oscilloscopes to photograph! I don’t work for Pico Technology or have any affiliation with it, and will be attempting to pull in other manufacturers for this online series to provide some balance.

This “mini-series” will consist of four posts over four weeks. I won’t be discussing bandwidth and sample rate until next week. In this first post, I’ll cover some physical characteristics: stand-alone vs PC-based probe types and digital inputs. Next week I’ll discuss the “core” specifications, in particular the bandwidth, sample rate, and analog-to-digital converter resolution. The  third week will look at the software running the oscilloscope, and details such as remote control, fast Fourier transform (FFT) features, digital decoding, and buffer types. The final week will consider a few remaining features such as the external trigger and clock synchronization, and will summarize all the material I’ve covered.

I hope you find it useful!

Topic 1: Do You Want a PC-Based or Stand-Alone Instrument?
There are two fundamentally different types of instruments, and you’ll have to decide for yourself which you prefer. Many people like a stand-alone instrument, which you can place on your bench and probe your circuits to your heart’s content. You don’t need to have your computer nearby, and you have something solely dedicated to probing.

Figure 1: PC-based oscilloscopes make it easier to mount on a crowded bench. This PicoScope 6000 unit is velcroed to my desk, you can see the computer monitor to the upper left.

Photo 1: PC-based oscilloscopes make mounting easier on a crowded bench. This PicoScope 6000 unit is velcroed to my desk. You can see the computer monitor to the upper left.

The other option is a PC-based instrument, which today generally means it plugs in via USB. I’ve always preferred this type for a few reasons. The first is the minimal desk space needed. I can place an oscilloscope vertically and lose little space (see Photo 1). The second is I find it easier to interact with a standard keyboard and mouse, especially if you’re using more advanced features. In addition, you can easily save screenshots or data from the scope without having to transfer them using a USB key or something similar.

There are a few downsides to USB-based instruments. The most common complaint is probably the lack of knobs, although that’s fixable. In Photo 2, you can see a USB-based “knob board” I built, which pretends to be a USB key. Each turn of the knob sends a keystroke and, as long as your PC-based oscilloscope software lets you set custom keyboard shortcuts, can trigger features such as changing the input range or timebase. Most of the time, I still just use the regular PC interface, as I find it easier than knobs. If you’re interested in the design, you can find it on my blog Electronics & More.

Photo: A simple USB-based knob board uses mechanical encoders to control the USB scope via a physical panel.

Photo 2: A simple USB-based knob board uses mechanical encoders to control the USB scope via a physical panel.

Having a PC-based oscilloscope also means you can have a massive screen. A high-end oscilloscope will advertise a “large 12.1″ screen,” but you can purchase a 22″ screen for your computer for $200 or less.  If your PC-based oscilloscope software supports multiple “viewports,” you can more easily set up complex displays such as that in Figure 1.
Again this comes down to personal preference—personally, I like having the oscilloscope display as a window on my computer. You may wish to have a dedicated display separate from your other work, in which case consider a stand-alone device!

Figure 1: PC-based oscilloscopes make it easier for setting up windows in specific positions, due to a combination of much larger screen space and standard mouse/keyboard interaction.

Figure 1: PC-based oscilloscopes make it easier for setting up windows in specific positions, due to a combination of much larger screen space and standard mouse/keyboard interaction.

Topic 2: Where’s the Ground?
One common complaint with the PC-based oscilloscope is that the probe ground connects to USB ground. Thus, you need to ensure there isn’t a voltage difference between the ground of your device under test and the computer.

This is, in fact, a general limitation of most oscilloscopes, be they stand-alone or PC-based. If you check with an ohmmeter, you’ll generally find that the ”probe ground”  in fact connects to system Earth on stand-alone oscilloscopes. Or at least it did on the different Agilent units I tested. Thus the complaint is somewhat unfairly leveled at PC-based devices.

You can get oscilloscopes that have either “differential” or “isolated” inputs, which are designed to eliminate the problem of grounds shorting out between different inputs. They may also give you more measurement flexibility. For example, if you are trying to measure the voltage across a “high-side shunt resistor,” you can do this measurement differentially. The TiePie engineering  HS4 DIFF is one example of a device with this capability. Of course, you can purchase differential probes for any oscilloscope, which accomplish the same goal! Most manufactures make these differential probes (Agilent, Tektronix, Pico Technology, Rigol, etc.).

Topic 3: Input Types
Almost every scope will have either DC-coupled or AC-coupled inputs. You’ll likely want to compare the minimum/maximum voltage ranges the scope has. Don’t be too distracted by either the upper or lower limits unless you have very specific requirements. At the upper end, remember you will mostly be using the 10:1 probe, which means an oscilloscope with ±20 V input range becomes ±200 V with the 10:1 probe.

At the lower end, the noise is going to kill you. If your oscilloscope has a 1 mV/div range, for example, you’ll have to be extremely careful with noise. To probe very small signals, you’ll probably end up needing an active probe with amplification right at the measurement point. This can be something you build yourself, using a differential amplifier chip, for example, if you are attempting to measure current across a shunt.

Besides the actual measurement range, you’ll be interested in the “offset” range too. With the DC-input, most oscilloscopes can subtract a fixed voltage from the input. Thus you can measure a 1.2-V input on a 1-V maximum input range, as the oscilloscope is able to first subtract say 1 V from the signal. This is handy if you have a smaller signal riding on top of some fixed voltage.

Another input type you will encounter is the 50-Ω input. Normally, this means the oscilloscope can switch between AC, DC, and DC 50 input types. The DC 50 means the input is “terminated” with a 50-Ω impedance. This feature is typically found on oscilloscopes with higher analog bandwidth. For example, this allows you to measure a clock signal that is output on a SMA connector expecting a 50-Ω termination. In addition, the 50-Ω input allows you to simplify connection of other lab equipment to your oscilloscope. Want to use a low noise amplifier (LNA) to measure a very small signal? Not a problem, since you can properly terminate the output of that LNA.

If you end up needing DC 50 termination, you can buy “feed-through” terminators for about $15, which operate at up to 1-GHz bandwidth. You simply add those to the front of your oscilloscope to get 50-Ω terminated inputs.

Any given manufacturer will often have a range of inputs for different bandwidths and models. For example, the PicoScope 5000-series, which has up to 200-MHz bandwidth, has DC/AC high-impedance inputs. The 6000-series has DC/AC/DC 50 inputs for 500-MHz bandwidth and below. The 6000 series in 1,000 MHz bandwidth only has 50-Ω input impedance. Other manufacturers seem to follow a similar formula: the highest bandwidth device is 50-Ω input only, medium-bandwidth devices are DC/AC/DC 50, and lower-bandwidth devices will be DC/AC.

Topic 4: Probe Quality and Type
In day-to-day use, nothing will impact you more than the quality of your oscilloscope probe. This is your hands-on interaction with the oscilloscope.

Figure 4: A smaller spring-loaded probe tip is on the left,  and  a standard oscilloscope probe is on the right. Both  probes have removable tips, so if you damage the probe it’s easy to fix them. Not all probes have removable tips, however, meaning if the tip is damaged you may have to throw out the probe.

Photo 3: A smaller spring-loaded probe tip is on the left, and a standard oscilloscope probe is on the right. Both probes have removable tips, so if you damage the probe it’s easy to fix them. Not all probes have removable tips, however, meaning if the tip is damaged you may have to throw out the probe.

Most “standard” oscilloscope probes are of the type pictured to the right in Photo 3. They are normally switchable from 1:1 to 10:1 attenuation, where the 10:1 mode results in a 1/10 scaling of input voltage. It’s important to note that almost every oscilloscope probe has very limited bandwidth in 1:1 mode—often under 10 MHz. Whereas in 10:1 mode it might be 300 MHz! In addition, the 10:1 mode will load the circuit considerably less. Higher bandwidth probes will often only come in 10:1 mode. I assume the physical switch is too much hassle at higher frequencies!

A first thing to check out is if the tip is removable. If you damage the tip, it can be useful to simply replace the tip rather than the entire probe. If you’re probing a PCB, it can be easy to catch a tip in a via, for example. Alternatively, certain probes might come with an adapter, which is designed for use in probing the PCB, rather than just the tip of the regular oscilloscope probe. The older Agilent 1160A probes come with such a tip.

One particular type of probe I really like has the spring-loaded tip shown to the left in Photo 3. This is a much smaller tip than “standard,” and the spring-loaded tip makes it much easier to get a good connection with solder joints. You can apply some pressure to break through the oxide layer, and the spring-loaded aspect keeps the tip right on the joint. In addition, you can even do things such as probe through the solder mask on a via. There are even plastic guard add-ons, which fit standard surface mount device (SMD) sizes (e.g., 1.27 mm, 1 mm, 0.8 mm, 0.5 mm) to probe TQFP/SOIC/TSSOP packages.

The particular probe I’m photographing comes with the PicoScope 6000 series, which is sold separately as part number TA150 (350-MHz bandwidth) or TA133 (500-MHz bandwidth). However, I’ve noticed that Agilent seems to also sell a probe that looks the same—under part number N287xA—right down to accessories. Similarly, Teledyne LeCroy also seems to sell this probe under the PP007 part number, and Rohde & Schwarz sells it under the RTM-ZP10 part number, also with the same accessories. Thus I suspect there is some upstream manufacturer! Depending on your supplier and options, prices range from $200-$400 for the probe if you want to pick it up separately.

Photo 5: The ground spring accessory can be used in a number of ways. If you're lucky, you can insert it into GND  vias on your PCB. If required, you can also solder a small section of wire to the spring.

Photo 4: The ground spring accessory can be used in a number of ways. If you’re lucky, you can insert it into GND vias on your PCB. If required, you can also solder a small section of wire to the spring.

Pomona Electronics sells a similar probe, part numbers 6491 through 6501 (the exact partnumber depending on bandwidth). The 150-MHz version (6493) is available for under $60 from Digi-Key, Mouser, and Newark element14, for example. This probe differs from the previous group of spring-loaded ones, but if you don’t need the higher bandwidth it may be a more reasonable purchase.

If you are dealing with a high-bandwidth probe, you may need to be concerned about the flatness of the frequency response. A probe may be sold with a 1G-Hz bandwidth, for example, which simply means the -3-dB point is at 1GHz. However, shoddy manufacturing may mean not having a very flat frequency response before that point, or not rolling off evenly after the -3-dB point.

When dealing with high bandwidth probes, the grounding will become a serious issue. The classic “alligator clip” probably won’t cut it anymore! The simplest accessory your probe is likely to come with is the spring adapter shown in Photo 4. There may be more advanced accessories available for grounding, too; check documentation for the probe itself. You can see an example of differences in grounding as part of my “probe review”  video.

Don’t be afraid to build your own accessories for the probe. Photo 5 shows a probe holder I built for a $15 adjustable arm. Details of the construction are here.

Here’s a simple 3-D probe holder you can build for $20 or less.

Photo 5: Here’s a simple 3-D probe holder you can build for $20 or less.

Topic 5: Digital Input?
The final item to consider is if you want digital inputs along with analog. This is, again, somewhat of a personal choice: You may wish to have a separate stand-alone digital analyzer, or you may wish to have it built into your oscilloscope.

I personally chose to have a stand-alone digital logic analyzer, which is a PC-based instrument. Digital logic analyzers are available at a fairly low cost from a variety of manufacturers (e.g., Saleae and Intronix). In my experience, the cost of purchasing a separate PC-based logic analyzer was considerably lower than the “incremental cost” of selecting an oscilloscope with logic analyzer capabilities compared to one without. When evaluating this yourself, be sure to look at features such as number of channels, maximum sample rate, buffer size, and what protocols can be decoded by the logic analyzer.

While integrated-device manufacturers claim you should buy a scope/analyzer in one unit to get perfect synchronization between digital and analog, remember many of these devices can output a trigger signal. So if your oscilloscope can output a trigger signal when it starts the analog capture, you can use this to capture the corresponding data on the digital logic analyzer (or vice versa).

Next Week: Core Specifications
This first week I covered physical details of the oscilloscope itself you might want to consider. Next week, I’ll look at the more ‘”core” specifications such as bandwidth, sample rate, and sample resolution.

Author’s note: Every reasonable effort has been made to ensure example specifications are accurate. There may, however, be errors or omissions in this article. Please confirm all referenced specifications with the device vendor.


Multi-Zone Home Audio System

Dave Erickson built his first multi-zone audio system in the early 1990s using C microprocessor code he developed on Freescale MC68HC11 microprocessors. The system has been an important part of his home.

“I used this system for more than 15 years and was satisfied with its ability to send different sounds to the different rooms in my house as well as the basement and the deck,” he says. “But the system needed an upgrade.”

In Circuit Cellar’s January and February issues, Erickson describes how he upgraded the eight-zone system, which uses microprocessor-controlled analog circuitry. In the end, his project not only improved his home audio experience, it also won second place in a 2011 STMicroelectronics design contest.

Several system components needed updating, including the IR remote, graphic LCD, and microprocessor. “IR remotes went obsolete, so the IR codes needed to change,” Erickson says. “The system was 90% hand-wired and pretty messy. The LCD and several other parts became obsolete and the C development tools had expired. Processors had evolved to include flash memory and development tools evolved beyond the old burn-and-pray method.”

“My goal was to build a modern, smaller, cleaner, and more efficient system,” he says. “I decided to upgrade it with a recent processor and LCD and to use real PC boards.”

Photo 1: Clockwise from the upper left, the whole-house system includes the crosspoint board, two quad preamplifiers, two two-zone stereo amplifiers, an AC transformer, power supplies, and the CPU board with the STMicroelectronics STM32VLDISCOVERY board.

Photo 1: Clockwise from the upper left, the whole-house system includes the crosspoint board, two quad preamplifiers, two two-zone stereo amplifiers, an AC transformer, power supplies, and the CPU board with the STMicroelectronics STM32VLDISCOVERY board.

Erickson chose the STMicroelectronics STM32F100 microprocessor and the work incentive of a design contest deadline (see Photo 1).

“STMicroelectronics’s excellent libraries and examples helped me get the complex ARM Cortex-M3 peripherals working quickly,” he says. “Choosing the STM32F100 processor was a bit of overkill, but I hoped to later use it to add future capabilities (e.g., a web page and Ethernet control) and possibly even a simple music server and audio streaming.”

In Part 1 of the series, Erickson explains the design’s audio sections, including the crosspoint board, quad preamplifiers, modular audio amplifiers, and packaging. He also addresses challenges along the way.

Erickson’s Part 1 provides the following overview of the system, including its “analog heart”—the crosspoint board:

Figure 1 shows the system design including the power supplies, front-panel controls, and the audio and CPU boards. The system is modular, so there is flexibility in the front-panel controls and the number of channels and amplifiers. My goal was to fit it all into one 19”, 2U (3.5”) high rack enclosure.

The CPU board is based on a STM32F100 module containing a Cortex-M3-based processor and a USB programming interface. The CPU receives commands from a front-panel keypad, an IR remote control, an encoder knob, RS-232, and external keypads for each zone. It displays its status on a graphic LCD and controls the audio circuitry on the crosspoint and two quad preamplifier boards.

The system block diagram shows the boards, controls, amplifiers, and power supplies.

The system block diagram shows the boards, controls, amplifiers, and power supplies.

Photo 2 shows the crosspoint board, which is the analog heart of the system. It receives line-level audio signals from up to eight stereo sources via RCA jacks and routes audio to the eight preamplifier channels located on two quad preamplifier boards. It also distributes digital control and power to the preamplifiers. The preamplifier boards can either send line-level outputs or drive stereo amplifiers, either internal or external to the system.

My current system uses four line-level outputs to drive PCs or powered speakers in four of the zones. It also contains internal 40-W stereo amplifiers to directly drive speakers in the four other zones. Up to six stereo amplifiers can reside in the enclosure.

Photo 2: The crosspoint board shows the RCA input jacks (top), ribbon cable connections to the quad preamplifiers (right), and control and power cable from the CPU (bottom). Rev0 has a few black wires (lower center).

Photo 2: The crosspoint board shows the RCA input jacks (top), ribbon cable connections to the quad preamplifiers (right), and control and power cable from the CPU (bottom). Rev0 has a few black wires (lower center).

DIYers dealing with signal leakage issues in their projects may learn something from Erickson’s approach to achieving low channel-to-channel crosstalk and no audible digital crosstalk. “The low crosstalk requirement is to prevent loud music in one zone from disturbing quiet passages in another,” he says.

In Part 1, Erickson explains the crosspoint and his “grounding/guarding” approach to transmitting high-quality audio, power, and logic control signals on the same cable:

The crosspoint receives digital control from the CPU board, receives external audio signals, and distributes audio signals to the preamplifier boards and then on to the amplifiers. It was convenient to use this board to distribute the control signals and the power supply voltages to the preamplifier channels. I used 0.1” dual-row ribbon cables to simplify the wiring. These are low-cost and easy to build.

To transmit high-quality audio along with power and logic control signals on the same cable, it is important to use a lot of grounds. Two 34-pin cables each connect to a quad preamplifier board. In each of these cables, four channels of stereo audio are sent with alternating signals and grounds. The alternating grounds act as electric field “guards” to reduce crosstalk. There are just two active logic signals: I2C clock and data. Power supply voltages (±12 and 5 V) are also sent to the preamplifiers with multiple grounds to carry the return currents.

I used a similar grounding/guarding approach throughout the design to minimize crosstalk, both from channel to channel and from digital to analog. On the two-layer boards, I used ground planes on the bottom layer. Grounded guard traces or ground planes are used on the top layer. These measures minimize the capacitance between analog traces and thus minimize crosstalk. The digital and I2C signals are physically separated from analog signals. Where they need to be run nearby, they are separated by ground planes or guard traces.

To find out more about how Erickson upgraded his audio system, download the January issue (now available online) and the upcoming February issue. In Part 2, Erickson focuses on his improved system’s digital CPU, the controls, and future plans.

Client Profile: Lauterbach, Inc

1111 Main Street #115
Vancouver, WA 98660


LauterbachFeatured Product: The TRACE32-ICD in-circuit debugger supports a range of on-chip debug interfaces. The debugger’s hardware is universal and enables you to connect to different target processors by simply changing the debug cable. The PowerDebug USB 3.0 can be upgraded with the PowerProbe or the PowerIntergrator to a logic analyzer.

Product Features: The TRACE 32-ICD JTAG debugger has a 5,000-KBps download rate. It features easy high-level Assembler debugging and an interface to all industry-standard compilers. The debugger enables fast download of code to target, OS awareness debugging, and flash programming. It displays internal and external peripherals at a logical level and includes support for hardware breakpoints and trigger (if supported by chip), multicore debugging (SMP and AMP), C and C++, and all common NOR and NAND flash devices.

For more information, visit

High-Speed Laser Range Finder Board with IMU


The NavRanger-OEM

The NavRanger-OEM combines a 20,000 samples per second laser range finder with a nine-axis inertial measurement unit (IMU) on a single 3“ × 6“ (7.7 × 15.3 cm) circuit board. The board features I/O resources and processing capability for application-specific control solutions.

The NavRanger‘s laser range finder measures the time of flight of a short light pulse from an IR laser. The time to digital converter has a 65-ps resolution (i.e., approximately 1 cm). The Class 1M laser has a 10-ns pulse width, a 0.8 mW average power, and a 9° × 25° divergence without optics. The detector comprises an avalanche photo diode with a two-point variable-gain amplifier and variable threshold digitizer. These features enable a 10-cm × 10-cm piece of white paper to be detected at 30 m with a laser collimator and 25-mm receiver optics.

The range finder includes I/O to build a robot or scan a solution. The wide range 9-to-28-V input supply voltage enables operation in 12- and 24-V battery environments. The NavRanger‘s IMU is an InvenSense nine-axis MPU-9150, which combines an accelerometer, a gyroscope, and a magnetometer on one chip. A 32-bit Freescale ColdFire MCF52255 microcontroller provides the processing the power and additional I/O. USB and CAN buses provide the board’s high-speed interfaces. The board also has connectors and power to mount a Digi International XBee wireless module and a TTL GPS.

The board comes with embedded software and a client application that runs on a Windows PC or Mac OS X. It also includes modifiable source code for the embedded and client applications. The NavRanger-OEM costs $495.

Integrated Knowledge Systems, Inc.

Turn Your Android Device into an Application Tool

A few years ago, the Android Open Accessory initiative was announced with the aim of making it easier for hardware manufacturers to create accessories that work with every Android device. Future Technology Devices International (FTDI) joined the initiative and last year introduced the FTD311D multi-interface Android host IC. The goal was to enable engineers and designers to make effective use of tablets and smartphones with the Android OS, according to Circuit Cellar columnist Jeff Bachiochi.

The FTD311D “provides an instant bridge from an Android USB port(B) to peripheral hardware over general purpose input-out (GPIO), UART, PWM, I2C Master, SPI Slave, or SPI Master interfaces,” Bachiochi says.

In the magazine’s December issue Bachiochi takes a comprehensive look at the USB Android host IC and how it works. By the end of his article, readers will have learned quite a bit about how to use FTDI’s apps and the FT311D chip to turn an Android device into their own I/0 tool.

Bachiochi used the SPI Master demo to read key presses and set LED states on this SPI slave 16-key touch panel.

Bachiochi used the SPI Master demo to read key presses and set LED states on this SPI slave 16-key touch panel.

Here is how Bachiochi describes the FT311D and its advantages:

The FT311D is a full-speed USB host targeted at providing access to peripheral hardware from a USB port on an Android device. While an Android device can be a USB host, many are mobile devices with limited power. For now, these On-The-Go (OTG) ports will be USB devices only (i.e., they can only connect to a USB host as a USB device).

Since the USB host is responsible for supplying power to a USB peripheral device, it would be bad design practice to enable a USB peripheral to drain an Android mobile device’s energy. Consequently, the FT311D takes on the task of USB host, eliminating any draw on the Android device’s battery.

All Android devices from V3.1 (Honeycomb) support the Android Open Accessory Mode (AOAM). The AOAM is the complete reverse of the conventional USB interconnect. This game-changing approach to attaching peripherals enables three key advantages. First, there is no need to develop special drivers for the hardware; second, it is unnecessary to root devices to alter permissions for loading drivers; and third, the peripheral provides the power to use the port, which ensures the mobile device battery is not quickly drained by the external hardware being attached.

Since the FT311D handles the entire USB host protocol, USB-specific firmware programming isn’t required. As the host, the FT311D must inquire whether the connected device supports the AOAM. If so, it will operate as an Open Accessory Mode device with one USB BULK IN endpoint and one USB BULK OUT endpoint (as well as the control endpoint.) This interface will be a full-speed (12-Mbps) USB enabling data transfer in and out.

The AOAM USB host has a set of string descriptors the Android OS is capable of reading. These strings are (user) associated with an Android OS application. The Android then uses these strings to automatically start the application when the hardware is connected. The FT311D is configured for one of its multiple interfaces via configuration inputs at power-up. Each configuration will supply the Android device with a unique set of string descriptors, therefore enabling different applications to run, depending on its setup.

The FT311D’s configuration determines whether each application will have access to several user interface APIs that are specific to each configuration.

The article goes on to examine the various interfaces in detail and to describe a number of demo projects, including a multimeter.

Many of Bachiochi's projects use printable ASCII text commands and replies. This enables a serial terminal to become a handy user I/O device. This current probe circuit outputs its measurements in ASCII-printable text.

Many of Bachiochi’s projects use printable ASCII text commands and replies. This enables a serial terminal to become a handy user I/O device. This current probe circuit outputs its measurements in ASCII-printable text.

Multimeters are great tools. They have portability that enables them to be brought to wherever a measurement must be made. An Android device has this same ability. Since applications can be written for these devices, they make a great portable application tool. Until the AOAM’s release, there was no way for these devices to be connected to any external circuitry and used as an effective tool.

I think FTDI has bridged this gap nicely. It provided a great interface chip that can be added to any circuit that will enable an Android device to serve as an effective user I/O device. I’ve used the chip to quickly interface with some technology to discover its potential or just test its abilities. But I’m sure you are already thinking about the other potential uses for this connection.

Bachiochi is curious to hear from readers about their own ideas.

If you think the AOAM has future potential, but you want to know what’s involved with writing Android applications for a specific purpose, send me an e-mail and I’ll add this to my list of future projects!

You can e-mail Bachiochi at or post your comment here.


6DoF Robotic Arm


The R680 Banshi Robotic Arm

The R680 Banshi Robotic Arm is an affordable robot designed for educators and hobbyists. It can help users learn the basics of electronics, mechanics, and programming. The Banshi is controlled by an ATmega64 microcontroller that is programmable via open-source tools in C.

The robot includes many example programs that can be easily downloaded to the robot using the supplied USB interface and the RobotLoader software. You can also use the free open-source WinAVR software to write your own custom programs.

The robot can be controlled with the included keyboard or RACS software. The software can record and play back the Banshi’s movements. You can use I/Os and the flexible I2C bus system to add extra modules that enable the robot to react to its environment.


The Banshi Robot kit

The Banshi Robot comes unassembled as a kit with included assembly tools. The robot’s additional features include six degrees of freedom (6DoF), a 12-V power supply, an I2C bus, a USB interface, and a complete 72-page manual.

The Banshi Robotic Arm costs $199.

Global Specialties

Small, Self-Contained GNSS Receiver

TM Series GNSS modules are self-contained, high-performance global navigation satellite system (GNSS) receivers designed for navigation, asset tracking, and positioning applications. Based on the MediaTek chipset, the receivers can simultaneously acquire and track several satellite constellations, including the US GPS, Europe’s GALILEO, Russia’s GLONASS, and Japan’s QZSS.

LinxThe 10-mm × 10-mm receivers are capable of better than 2.5-m position accuracy. Hybrid ephemeris prediction can be used to achieve less than 15-s cold start times. The receiver can operate down to 3 V and has a 20-mA low tracking current. To save power, the TM Series GNSS modules have built-in receiver duty cycling that can be configured to periodically turn off. This feature, combined with the module’s low power consumption, helps maximize battery life in battery-powered systems.

The receiver modules are easy to integrate, since they don’t require software setup or configuration to power up and output position data. The TM Series GNSS receivers use a standard UART serial interface to send and receive NMEA messages in ASCII format. A serial command set can be used to configure optional features. Using a USB or RS-232 converter chip, the modules’ UART can be directly connected to a microcontroller or a PC’s UART.

The GPS Master Development System connects a TM Series Evaluation Module to a prototyping board with a color display that shows coordinates, a speedometer, and a compass for mobile evaluation. A USB interface enables simple viewing of satellite data and Internet mapping and custom software application development.
Contact Linx Technologies for pricing.

Linx Technologies

Member Profile: Scott Weber

Scott Weber

Scott Weber

Arlington, Texas, USA

Scott said he started his Circuit Cellar subscription late in the last century. He chose the magazine because it had the right mix of MCU programming and electronics.

He has always enjoyed mixing discrete electronic projects with MCUs. In the early 1980s, he built a MCU board based on an RCA CDP1802 with wirewrap and programmed it with eight switches and a load button.

Back in the 1990s, Scott purchased a Microchip Technology PICStart Plus. “I was thrilled at how powerful and comprehensive the chip and tools were compared to the i8085 and CDP1802 devices I tinkered with years before,” he said.

Scott said he recently treated himself to a brand-new Fluke 77-IV multimeter.

Scott is building devices that can communicate through USB to MS Windows programs. “I don’t have in mind any specific system to control, it is something to learn and have fun with,” he said. “This means learning not only an embedded USB software framework, but also Microsoft Windows device drivers.”

“Embedded devices are popping up everywhere—in places most people don’t even realize they are being used. It’s fun discovering where they are being applied. It is so much easier to change the microcode of an MCU or FPGA as the unit is coming off the assembly line than it is to rewire a complex circuit design,” Scott said.

“I also like Member Profile Joe Pfeiffer’s final comment in Circuit Cellar 276: Surface-mount and ASIC devices are making a ‘barrier to entry’ for the hobbyist. You can’t breadboard those things! I gotta learn a good way to make my own PCBs!”

Dual-Channel Waveform Generators

B&K Precision 4053 Waveform Generator

B&K Precision 4053 Waveform Generator

The 4050 Series is a new line of four dual-channel function/arbitrary waveform generators. The instruments can generate 5-to-50-MHz waveforms for applications requiring stable and precise sine, square, triangle, and pulse waveforms with modulation and arbitrary waveform capabilities.

All models provide a main output voltage that can be vary from 0 to 10 VPP into 50 Ω and a secondary output that can vary from 0 to 3 VPP into 50 Ω. The generators feature a 3.5” color LCD, a rotary control knob, and a numeric keypad with dedicated waveform keys and output buttons.

The 4050 Series provides users with 48 built-in arbitrary waveforms. Using the included waveform editing software via the standard USB interface on the rear, users can create and load up to 10 custom 16-kpt waveforms. For general-purpose interface bus (GPIB) connectivity, an optional USB-to-GPIB adapter is available.

The generators offer a variety of modulation schemes for modulated signal applications including amplitude and frequency modulation (AM/FM), double sideband amplitude modulation (DSB-AM), amplitude and frequency shift keying (ASK/FSK), phase modulation (PM), and pulse-width modulation (PWM). Additional standard features include a linear and logarithmic sweep function, a built-in counter, sync output, a trigger I/O terminal, and a USB host port on the front panel to save and recall instrument settings and waveforms. A standard external 10-MHz reference clock input is provided to synchronize the instrument to another generator.

The 4052 (5-MHz) costs $499, the 4053 (10 MHz) costs $599, the 4054 (25 MHz) costs $850, and the 4055 (50 MHz) costs $1,050. Note: B&K Precision is offering 10% off MSRP through November 30, 2013. See website for details.

B&K Precision Corp.

OEM Host Adapter Flash Memory

Total Phase Aaardvark USB-to-I2C Host Adapter

Total Phase Aardvark USB-to-I2C Host Adapter

The Aardvark OEM Adapter is based on Total Phase’s Aardvark I2C/SPI USB-to-I2C adapter, which is a flexible tool for system design and testing. The new adapter is available in an I2C or SPI configuration and includes the Total Phase API, which enables you to create custom application GUIs.

The Aardvark OEM Adapter and API are cross-platform compatible with various OSes, including Windows, Linux, and Mac OS X. In a production environment, you can use the API for automated testing or device programming.

Contact Total Phase for pricing.

Total Phase, Inc.