Skip navigation
All Places > Keysight Blogs > General Electronics Measurement > Blog > Author: bernard ang
1 2 Previous Next

General Electronics Measurement

23 Posts authored by: bernard ang Employee

Basic function generators generally can generate basic periodic waveforms such as sine wave, square wave, triangle wave, ramp wave, pulse wave and so on. Modern function generators nowadays have a very important feature called modulation. With the advent of radio wave telegraphy in the 19th century by Guglielmo Marconi and later the wide band FM radio in the 20th century by Edwin Howard Armstrong, radio waves are generally modulated by its carrier waves for efficient, long-range transmissions.

AM (amplitude modulation) and FM (frequency modulation) have been and are still very important electrical transmission techniques for radio communications. They have also evolved into sophisticated techniques such as QAM (quadrature amplitude modulation), FSK (frequency-shift keying) and more, that are used in short range wireless links such as Wi-Fi to long-range telecommunications networks.

Advanced modulation features in modern function generators

Here in this blog, let us explore some advance modulation features on a modern function generator.


AM (Amplitude Modulation)

Amplitude modulation by a carrier sine wave is by far the most common in terms of usage. Figure 1 shows the graphical settings of a function generator modulated by sine wave with AM Depth of 100% and AM Frequency of 100 Hz. The original data sine wave has a frequency of 1 kHz.


Figure 1. AM function generator setup (left) using a Keysight 33600A and an oscilloscope display of AM (right).

Modern function generators can do more than just generate sine wave as carrier signal for waveform modulation. Figure 2 shows some examples of other types of signals that are used as carrier signals for waveform modulations (other than sine wave).


Figure 2. Various carrier signals used for waveform modulations (other than sine wave).

Modern function generators can be quite versatile. You can also choose the source of your AM modulation from another channel of your function generator without any external connections or from an external source. For example, you can use waveform from Channel 2 to modulate your waveform from Channel 1.


FM (Frequency Modulation)

Frequency modulation has been the best-known analog modulation method for radio broadcasting for more than half a century. Its applications have grown into video broadcasting, critical medical monitoring systems, radar and more.


Figure 3. FM function generator setup using a Keysight 33600A.

Here is an example of how to setup a function generator to simulate FM signal. Figure 3 above shows frequency modulation on a 1 kHz sine wave. The modulation method used is also a sine wave with FM frequency of 10 Hz. Its peak frequency deviation is 100 Hz.

PM (Phase Modulation)

Phase modulation is widely used in digital data transmissions through digital modulation techniques such as PSK (Phase-shift keying), BPSK (Binary phase-shift keying), QPSK (Quadrature phase-shift keying) and more. It is used in Wi-Fi, GSM and satellite broadcasting transmissions.


Figure 4. PM function generator setup using a Keysight 33600A

Here is an example of how to setup a function generator to simulate PM signal. Figure 4 above shows phase modulation on a 1 kHz sine wave. The modulation signal used is also a sine wave with PM frequency of 200 Hz. Its phase deviation is 180°.

FSK (Frequency-shift keying) / BPSK (Binary phase-shift keying)

There are many types of digital modulation techniques available today. The common ones are FSK (frequency-shift keying) and BPSK (binary phase-shift keying). These digital modulation techniques are used in many applications such as digital radio transmissions, RFID, Bluetooth and more.


Figure 5. FSK function generator setup using a Keysight 33600A

Here is an example of how to setup a function generator to simulate an FSK signal. Figure 5 above shows frequency-shift keying modulation on a 1 kHz carrier sine wave. The hop (or alternate) frequency is set at 100 Hz. The FSK rate is set at 10 Hz, which is the rate at which output frequency "shifts" between the carrier and hop frequency.


Figure 6. BPSK function generator setup using a Keysight 33600A

Here is an example of how to setup a function generator to simulate BPSK signal. Figure 6 above shows binary phase-shift keying modulation on a 1 kHz carrier sine wave. The BPSK rate is the rate at which the output phase "shifts" between the carrier and offset phase. The BPSK phase setting in this case is 180° (phase shift in degrees). Typically, you have the option to set the phase shift from 0° to 360°.

SUM (Sum modulation)

Sum modulation adds a modulating signal to any carrier waveform; it is typically used to add gaussian noise to a carrier. The modulating signal is added to the carrier as a percentage of carrier waveform amplitude.


Figure 7. Sum modulation function generator setup – adding noise into sine wave carrier signal.

Figure above shows how we can use sum modulation to add measured noise to the carrier signal. This figure shows noise with an amplitude of 30% (referencing to carrier amplitude) and a noise bandwidth of 100 kHz was added to the sine wave carrier signal.
The Keysight 33600A series function generator accepts both internal and external modulation sources. On a two-channel instrument you can modulate one channel with the other. When using internal source as modulation, we can select sine, square, triangle, up ramp, down ramp, noise, PRBS and arbitrary waveforms as source of modulation.



We have just explored some advance modulation features and how intuitive the configuration setup can be using a Keysight 33600A.
If this blog helps provide you with more insight into generating modulated signals, please give it a ‘like’. If you have further questions on this topic, you can always reply to this blog.
For more information about Keysight’s 33600A Trueform function generators, please go to:
Thanks for reading!

When you hear the word “synchronize,” you might think of synchronized swimming. Or, perhaps, synchronizing your watches. Well, we are talking about the same thing related to electronic signaling phase synchronization.


For example, consider a group of synchronized swimmers that are swimming backstrokes at the same rate. The number of backstrokes per second is analogous to signal frequency. If their hand strokes are all perfectly timed, we can say they are phase synchronized. Clocks and watches are also phase aligned if their ‘second’ hands are in synch.


Today, we’ll look at what phase synchronization is from an electronic signaling perspective and how to easily generate phase synchronized electronic signals with a function generator. We’ll also look at some applications where you need two-phase synchronized signals.


Not all function generators are the same. Some function generators require many steps to phase synchronize multiple channels and may go out of synch easily when changes are made to the signals.


So, what is phase synchronization, and how do you set it up with a function generator?

Let us take an example of two periodic sinewave signals. In a single periodic cycle, a sinewave will oscillate from 0° to 359°. After that, it will restart at 0°. See Figure 1.


Sinusoidal signal plotted in degree angle.

Figure 1. Sinusoidal signal plotted in degree angle.


Figure 2 below shows two sinewaves (yellow and dark green waves) that are phase synchronized. The light green wave is 90° angle phase shifted from the dark green wave and yellow wave.


Two signals that are phase synchronized and another signal with 90° phase difference.

Figure 2. Two signals that are phase synchronized and another signal with 90° phase difference.


Let’s look at how to phase synchronize two waveforms. For this example, we will use Keysight’s 33600A Trueform function generator. During pre-setup, I have already selected 3kHz and 100mV sinewaves for both channels via the Waveforms and Parameters menu buttons. Like most function generators, setting up two outputs doesn’t mean they are phase synchronized.


To synchronize your signals, select “Phase” under the Parameters menu and then select “Sync Internal.” Now, both channel waveforms will automatically phase synchronize.


Select “Sync Internal” to automatically synchronize two channels.

Figure 3. Select “Sync Internal” to automatically synchronize two channels.


When testing, you may want to intentionally set a phase difference between the two output waveforms. The Trueform function generators allows you to set the phase difference in degree angle, in radians or a phase offset in time. All you need to do is simply select “Phase” under the Parameters menu button, and enter your phase angle.


Another way to create two identical, phase synchronized waveforms is tracking mode. Tracking mode is a simple way to make both outputs identical. To set up tracking mode, you first choose your desired waveform. In this case, we’ll use the same square wave with 3 kHz frequency and 100 mV on Channel 1. Then, select Dual Channel operation by pressing the Channel 1 Output button, and turn on the Tracking mode (see Figure 4).


Identical phase synchronized channel output settings.

Figure 4. Identical phase synchronized channel output settings.


The output of both Channels from the Trueform function generator are now two identical phase synchronized square waves with 3 kHz frequency and 100 mV amplitude, as shown in Figure 5.


Two identical phase synchronized waveforms (Phase 0° highlighted in red box).

Figure 5. Two identical phase synchronized waveforms (Phase 0° highlighted in red box).


What else can I do with my Trueform function generator?


1) Select frequency or amplitude dual channel coupling

Trueform function generator allows you to change the frequency or amplitude of one of your waveform outputs without losing phase synchronization with your other waveform.


This helps reduce complexity of simulating mechanical gear systems with fixed ratios and always requires phase synchronization. AC inductive motors also require phase synchronization of sinusoidal waveforms.


2) Create identical inverted signals

The example in Figure 4 shows how to create two identical phase synchronized waveforms. Additionally, you can also create two identical but complementary (opposite amplitude) waveforms by selecting the “Inverted” option.


Two identical but complementary (opposite amplitude) waveforms that are phase synchronized can be combined to simulate differential output signal.


3) Create an intentional phase offset with arbitrary waveforms

Sometimes, you need to intentionally set a phase offset between your two waveforms for testing. Here is one example: If you have a custom pair of IQ signals, you will want to keep a 90° phase angle relationship between your I and Q channels. To accomplish this, you simply set the signals to start at the same time and then load both custom signals onto Channels 1 and 2, respectively. Finally, go to the parameters menu and press SYNC ARBS button.


Phase synchronization of two waveforms


Now you know how to phase synchronize two waveforms together to enable you to quickly simulate signals and test your devices or systems.


Keysight’s waveform generators are the ideal solution for this type of analysis. It simplifies setup, leaving you more time to run actual testing. The signal generation process has never been simpler, quicker, and less frustrating.


To learn more about phase synchronizing two waveforms with a waveform generator, check out the “Effortlessly Couple or Synchronize Two Signals on a Waveform Generator” application brief.


Learn more about Keysight’s Trueform Function Generators on

Most basic bench function generators have only one or two output channels. In some cases, you may need more than two channels. Due to this need, many test engineers are forced to buy very expensive multichannel waveform generators. In this blog, we will look at how to easily time-synchronize multiple basic function generators together without the hassle of using external synchronizing trigger boxes or tedious programming. This mitigates the need to purchase expensive multichannel waveform generators.

There are many applications that require multichannel, time-synchronized waveforms. For example, some devices calibrate with synchronized pulses of varying pulse widths. You can easily simulate these signals using multiple basic function generators. Other applications could include simulating optocoupler decoder signals, multichannel Pulse Width Modulation (PWM) motor controllers, and so on.

How to synchronize two function generators

Today, we’re going to look at how to display four time-synchronized output waveforms using two 2-channel function generators (Keysight 33612A). For our test, we want to generate four 3 kHz pulse trains at 1Vpp. And we want the pulse widths of the four channels to start off at 100 µs and increase by 10 µs for each channel. So, the fourth channel pulse width will be 130 µs.

The first thing to do is wire-configure the rear of the two function generators, as shown in Figure 1. Make one of the function generator’s 10 MHz frequency timebase be the reference for the other function generator. Connect the 10 MHz clock out of the reference function generator to the 10 MHz clock in of the other function generator. (Note that you can fan out the reference clock up to four Trueform function generators).


Figure 1

Figure 1. Rear wire configurations on timebase and external trigger synchronization between two function generators.


Next thing to do is to connect the "External Trigger out" of the reference function generator to the "Trigger in" of the other function generator. That’s all that is needed for external wire configuration.

User interface system and waveform settings

Reference timebase oscillator and trigger setup

The next step is to set the second function generator’s reference oscillator to external. This ensures that your function generators both operate off from the same timebase.

Button presses: Select menu button, "System" > "Instrument Setup" > "10 MHz Ref Osc" > "Source" > "External".


Once that is done, you will see a green "Ext Lock" sign on the top right-hand side of your function generator, as shown in Figure 2.


Fig 2 function generator

Figure 2. Second function generator’s reference oscillator and external trigger setup.


After setting up your reference oscillator, you will have to set up your trigger for both channels of your second function generator. This tells the second function generator to start at the same time as the first function generator.

Button presses: Select Channel 1 output button and then press the "Trigger" button. Select "Trigger Setup" > "Source" > "Ext" (External). On the same screen menu level, select zero seconds delay and trigger slope on the rising ↑ edge. See Figure 2 on the external trigger menu.


On the first reference function generator, just set up the trigger for both channels to manual and zero delays.

Button presses: Set Channel 1 as the source of your trigger out and on the rising ↑edge. Select "Trigger" on Channel 1 > "Trig Out Setup" > "Source" > "CH1". On the same menu level, select the trigger level and trigger out ↑edge.


Set up your pulse waveform signals for all your 4 channels (2 channels per instrument)

As mentioned earlier, we want to set up four 1 Vpp pulse trains that are 3 kHz in frequency, and the pulse widths should start at 100 µs and increase by 10 µs increments for every channel. (See Table 1 and Figure 3.)


Function Generator12
Output Channel1212
Waveform TypePulsePulsePulsePulse
Frequency3 kHz3 kHz3 kHz3 kHz
Amplitude1 Vpp1 Vpp1 Vpp1 Vpp
Offset0.00 V0.00 V0.00 V0.00 V
Pulse Width100 µs110 µs120 µs130 µs

Table 1. Pulse waveform signals set up for 4 channels.


Figure 3 function generator

Figure 3. Example pulse setup menu for all 4 channels.


Set up burst mode to time synchronize all 4 channels

At this point, if you look at all 4 channels on an oscilloscope, you will see the 4 pulse trains, but they are not time synchronized (Figure 4). All channels run independently, hence they are not initially synchronized.


Figure 4
Figure 4. Multichannel outputs that are not time synchronized.


To time synchronize all 4 channels, use the Burst mode (Figure 5).

Button presses: Go to all 4 channels, Select "Burst" > "N Cycle" > "# Cycle" > "Infinite".


Figure 5 function generator

Figure 5. Burst mode setup menu on function generator.


Turn on Burst for all 4 channels. You will be prompted by a blinking light on the "Trigger" button of your Channel 1 on your first function generator. Press the button twice, and instantly, you will see 4 channels of time-synchronized pulse trains (Figure 6).


Figure 6
Figure 6. Time-synchronized, multichannel outputs.


You will also notice that each pulse width is 10 µs longer than the previous channel. You have just walked through the hardware and front panel configurations to time synchronize 4 channels. Since you can fan out the 10 MHz reference clock to up to four Keysight Trueform function generators, you can have up to 8 time-synchronized channels.


Knowing how to set up time-synchronized multiple waveforms does not mean that you cannot be creative with your waveforms. Figure 7 gives you an example of simulating a 3-phase AC generator with 3 sinusoidal waveforms, 120° apart from one another.


Figure 7
Figure 7. Simulated 3-phase AC generator 120° apart with multiple function generators.


To learn more about phase, frequency, and amplitude signal coupling, please read the Effortlessly Couple or Synchronize Two Signals on a Waveform Generator application brief. I invite you to like and share if you have found this blog helpful. Thanks for reading.

Aside from wireless and fiber optic transmissions, in this modern digital and mixed-signal age, many of our data transmissions go through good old-fashioned conducting cables. The two most common types of cables are differential and single-ended. There are obviously pros and cons in choosing either type of cable, but differentials have many advantages over single-ended cables. Differential signaling is usually used in conjunction with tightly twisted pair wires to reduce or cancel out the generation of electromagnetic noise. Hence, it has superior signal-to-noise ratio and fewer timing errors.


There is a Low-Level Differential Signaling (LVDS) standard for electrical transmission and communication protocols that are used in very low voltage and sometimes high-speed data transmissions such as video, graphics, and digital data bus transfers. Other applications include transmitting sensitive analog signals with audio microphones and medical heart monitoring devices.


What is a Differential Signal, and How Do I create a Differential Signal?


Figure 1 below shows two complementary signals (one signal inverted from the other) being used to create a differential output transmission signal. Here’s how to create differential signals for testing.


Differential output derived from two complementary signals (out+/out-).

Figure 1. Differential output derived from two complementary signals (out+/out-).


Step 1: Use a function generator to create the first of your two complementary signals (out+/out-). For example, create the (out+) signal on Channel 1.


Step 2: Select Dual Channel Inverted Tracking mode (see Figure 2).


As a result, Channel 2 will output an identical, but inverted, signal of Channel 1 (out-). Both signals will be amplitude and phase synchronized.


Differential channel output function generator setup on a Keysight Trueform function generator.

Figure 2. Differential channel output function generator setup on a Keysight Trueform function generator.


Step 3: Combine the differential outputs. To physically combine the two channels into a single differential output, connect the two common connections (the connector shells) of both channels together. Use the middle signal pin of Channel 1 as the high signal path of the differential signal, and use the signal pin of Channel 2 as the inverse return path.


Then connect a twisted pair cable to signal pins of Channel 1 and 2, as shown in Figures 3 and 4.


Differential signal block diagram.

Figure 3. Differential signal block diagram.


Function generator setup based on block diagram.

Figure 4. Function generator setup based on block diagram.


On the other end of the twisted pair cable, connect the signal pin of Channel 1 to the signal pin of the receiver’s BNC connector (Differential Signal Input) and the signal pin of Channel 2 to the ground connector shell of the receiver’s BNC (Figure 4).


Why and When Do You Use Differential Cables?


Basically, a product or systems designer will choose differential over single-ended signaling if:

  • The designer needs to reduce EMI or electromagnetic interference
  • The designer needs to reduce crosstalk or interference from nearby cables
  • The designer needs to transfer very low voltage signals, especially in millivolt range, to simulate bio-signals for medical applications. Low voltage signals are susceptible to noise interference
  • The designer needs to transfer low digital voltage signals to save power
  • The designer needs precise timings of digital signal crossover or digital switching


What Type of Function Generator Should You Use to Simulate Differential Signals?


Create a Balanced Pair of Signals

Use a function generator with “inverted tracking mode” to create an inverted mirror image of a signal. The signals on both channels will then be perfectly balanced pairs with synchronized amplitude, offset, and phase. Make sure the lengths of your differential twisted pair wires are matched too.


Reproduce Actual Signals from Your Design

Consider using an arbitrary function generator and its ability to reproduce actual signals from your design. You can quickly recreate your design signal by capturing it with a modern oscilloscope, then saving the captured trace to a .csv file.

At this point, you can use a USB thumb drive to import the data in the Waveforms > Arbs menu of your function generator to recreate and playback the signal from your design. You can even change your signal’s frequency, amplitude, or offset.

After recreating your signal, you can use the Dual Channel Inverted Tracking mode to recreate the output as a differential signal.


Create Arbitrary Waveform Signals

Differential signals are not limited to basic function generator signals such as periodic pulse, sine, square, and ramp signals. A lot of applications need complex waveforms, such as ECG bio-signals for medical applications, automotive CAN bus test signal simulations, telecommunication network test signals, and more.

Keysight’s Trueform function generators provide software tools such as BenchVue Waveform Builder (see Figure 5) and a built-in waveform editor to create your arbitrary waveforms. You can also use tools such as Excel or Matlab to create your arbitrary waveforms and transfer them into your function generator via .csv file format.


BenchVue function generator app to create arbitrary waveforms.

Figure 5. BenchVue function generator app to create arbitrary waveforms.


Use a Function Generator with the Lowest Jitter

If timing of your signal is very critical, differential signaling is a better option than single-ended signaling since it eliminates the uncertainties of transition crossover points. This takes care of jitter noise from cable transmission.

How about jitter noise from the source of the signal? Not all function generators are built the same! Keysight’s Trueform function generators have superior jitter noise compared to the conventional DDS technology used by most function generators in the market. (See Figure 6.)


Trueform technology, shown on the left, has significantly better jitter performance compared to conventional DDS technology.

Figure 6. Trueform technology, shown on the left, has significantly better jitter performance compared to conventional DDS technology.


Add Noise to Your Signals

Sometimes, you need an ideal signal with low noise, low distortion, and high signal integrity for your tests. However, at the same time, you want to introduce a controlled imperfect signal with noise for your tests.

Make sure to use a function generator that allows you to add noise to your signals. Press the Modulate button, select Source as Internal/Shape as Noise, and turn on Modulation. (See Figure 7.)


Adding variable bandwidth noise to signal for testing.

Figure 7. Adding variable bandwidth noise to signal for testing.




You can see that it’s easy to create differential signals if you have the right function generator. Choosing a function generator that has built-in differential capabilities will streamline your testing and ensure your signal’s phase and amplitude stay balanced.


To get better at using your function generator in the lab, download the Creating Differential Signals with a Waveform Generator application brief.


Visit for more information on Keysight’s Trueform function generators.


In electronics design and testing, you sometimes want to have two synchronized clock signals that are related by a frequency ratio; One clock needs to maintain a certain frequency ratio with the other clock.


Or perhaps you want to simulate an amplifier with an offset; The amplifier output needs to maintain a defined offset from the input amplitude.


These requirements may sound basic, but building you own clock reference device or a frequency/amplitude coupling circuit takes time and resources. It’s much easier to use a dual-channel function generator that has built-in signal coupling.


Let’s look at how to generate frequency-coupled and amplitude-coupled signals using a dual-channel function generator.


How to Generate Two Frequency-coupled Signals with a Function Generator


Frequency coupling allows you to specify the frequency relationship of two signals using either a ratio (multiplying) or an offset (adding). Figure 1 shows an example of a frequency coupling ratio of “3.” When the frequency of Channel 1 is set to 3 kHz, the frequency of Channel 2 automatically sets to 9 kHz (Figure 2).


Dual-channel frequency coupling setting on ratio on a Keysight 33612A Trueform function generator.

Figure 1. Dual-channel frequency coupling setting on ratio on a Keysight 33612A Trueform function generator.


Frequency ratio of 3 as observed on the oscilloscope (see box marked in red).

Figure 2. Frequency ratio of 3, as observed on the oscilloscope (see box marked in red).


Here is an example of frequency coupling by offset where the offset difference between Channel 2 and Channel 1 is 2 kHz (Figure 3). When the frequency of Channel 1 is set to 3 kHz, Channel 2 automatically tracks Channel 1 and outputs a 5 kHz signal (see Figure 4).


Dual-channel frequency coupling setting on offset.

Figure 3. Dual-channel frequency coupling setting on offset.


Frequency offset of 2 kHz as observed on the oscilloscope (see box marked in red).

Figure 4. Frequency offset of 2 kHz as observed on the oscilloscope (see box marked in red).


How to Generate two Amplitude-coupled Signals from a Function Generator


You can also couple the amplitude and offset of two signals (Figures 5 and 6). Enabling this dual-channel feature and setting the amplitude and offset saves you configuration time. Rather than setting the amplitude and offset of both channels independently, the function generator will keep track of your settings for you. You can even couple signals of different waveform shapes! Figure 6 shows how you can control the amplitude of a square wave and sine wave using only one amplitude setting.


Dual-channel amplitude and offset coupling setting on a Keysight 33612A Trueform function generator.

Figure 5. Dual-channel amplitude and offset coupling setting on a Keysight 33612A Trueform function generator.


Amplitude and offset coupling of two signals as observed on an oscilloscope.

Figure 6. Amplitude and offset coupling of two signals as observed on an oscilloscope.


Benefits of Dual-channel Frequency Coupling and Amplitude Coupling


Here are some situations where coupling the amplitude and/or frequency of your test signals is useful.


Creating multiple reference pulse clocks to test circuitry

Some electronic devices operate with multiple frequency reference clocks. Dual-channel frequency coupling comes in handy for quick design verifications.


Creating two very different arbitrary waveform signals that track each other in frequency

Consider this example of simulating a pacemaker pulse and an ECG arbitrary pulse wave that has the same frequency. When combining these two signals together, pacemaker manufacturers can test a pacemaker’s pulse rejection capability using the resulting signal, shown in Figure 7.


Two frequency-coupled signals combined into a single signal output.

Figure 7. Two frequency-coupled signals combined into a single signal output.


Testing the differential gain of an amplifier

Testing the differential gain of an amplifier requires synchronized input signals. A function generator and oscilloscope are the ideal test setup for this (Figure 8). If you have perfectly identical input signals for the amplifier, you should see a zero-difference output (straight line), as shown by the oscilloscope’s output in Figure 9. If the output is not flat, you know there’s something wrong with your amplifier.


Function generator and oscilloscope set up to test an instrumentation amplifier.

Figure 8. Function generator and oscilloscope set up to test an instrumentation amplifier.


Green and blue lines are identical input signals into the Op Amp, and the yellow line is the resultant output from the Op Amp.

Figure 9. Green and blue lines are identical input signals into the Op Amp, and the yellow line is the resultant output from the Op Amp.


Using the dual-frequency coupling with ratio of 2, the output of the amplifier will show the differential gain output (yellow line), as shown in Figure 10.


Green and blue lines are frequency-coupled signals (with a ratio of 2) generated by a function generator for the input of Op Amp, and the yellow line is the resultant output from the Op Amp.

Figure 10. Green and blue lines are frequency-coupled signals (with a ratio of 2) generated by a function generator for the input of Op Amp, and the yellow line is the resultant output from the Op Amp.


Benefits of Frequency Coupling and Amplitude Coupling


Clearly, dual-channel tracking simplifies your configuration settings. You don’t have to configure channels separately, which is often tedious and repetitive. As a result, your testing will be less error prone and more efficient. If you are using a programming interface, automatic frequency coupling and amplitude coupling simplifies your code.


Now that you know how to couple two signals together, you should be able to perform fast simulation on your products or processes. Thanks to this coupling capability, the signal generation process has never been simpler, quicker, or less frustrating.


To learn more about frequency coupling and amplitude coupling your signals using a Keysight function/waveform generator, read this app brief “Effortlessly Couple or Synchronize Two Signals on a Waveform Generator.”

Data acquisition (DAQ) instruments can normally meet many application needs by its scanning mode and universal input capabilities. With its scanning mode, you can configure each of its channels to measure various types of inputs such as AC/DC Volts, AC/DC Current, Resistances, signal frequency and temperatures. With its built in DMM, you can do a lot of measurements. However,

·        What if you want to use the DAQ for switching purpose?

·        What if you have measurements that consists of a matrix of different tests and multiple DUTs?

·        What if you want to perform data logging on measurements that cannot be done by the DAQ’s built in DMM i.e. high frequency power and other measurements?

·        What if you want to provide multiple sources or loads into your DUT(s) i.e. AC or DC source, arbitrary waveform, electronic loads, etc?

Suddenly, switch modules become really handy. Please refer to the module selection guide below.

Module selection guide

34901A, 34902A and 34908A can be used as scanning modules and also as switching modules. Differences are its relay switches with tradeoffs between switching speed and power handling.

34903A has dedicated SPDT switching relays that can drive actuators as well as general switching applications.

34904A is a dedicated 4 X 8 switch matrix.

34905A and 34906A are RF switch multiplexers with 50 and 75 termination respectively.

So, how do you AUTOMATE with your DAQ switching modules?

·        Simple automation without programming would be to use the BenchVue DAQ software. Figure below shows graphical switches you can easily toggle the switches

BenchVue graphical switches

·        Figure below shows a simple Testflow graphical tool toggling a switch 10 times

Testflow switching

In the command expert, this SCPI command to switch open channel 101 is as shown below:

Command expert

:ROUTe:OPEN (@101)

Similarly, to close switch channel 101, it is

:ROUTe:CLOSE (@101).

To speed up your automation, you can switch on/off a group of switches in a single command. Here are two examples:

-         Switch open channels 01 through 05 on the module in slot 100. ROUTe:OPEN (@101:105)

-         Close Switch channels 02 through 07 and 09 on the module in slot 200 and channels 02 through 08 on the module in slot 300


For more information on Keysight’s general purpose DAQ instruments, please visit:

For more information on Keysight’s BenchVue software, please visit:


Data Acquisition (DAQ) helps you to measure real world physical conditions (such as temperature pressure, force, electrical signal, or current), and then we convert these analog signals into digital signals with an Analog to Digital Conversion (ADC) system. Finally, you have a computer hook up with the software, analyze the signal to solve the problems that you are working on.

DAQ system

What does the DAQ unit do internally?

I will be referencing DAQ capabilities based on Keysight’s 34970/72A DAQ/data logger. First of all, it uses sensors or we sometimes called transducers, to transform these physical parameters into analog electrical signals such as AC/DC volts, AC/DC currents and so on.

In the subsequent step, the DAQ has built-in circuitries to perform signal conditioning i.e. to reduce noise and make them easier to measure, to boost weaker signals to make them more immune to noise, to filter out unwanted noise, to attenuate, to average or to compensation.

These conditioned signals are then read via DMM or digitized and data logged and saved into memory for further post analysis.


So, what are the 5 benefits DAQ can offer you to make your job easier?

1)     Solves your problems faster (using BenchVue software)

a.     Quicker setup – using BenchVue graphical user interface, you can setup and control the instrument fast.

b.     Accurate measurements – with the built-in 6 ½ digit DMM

2)     Easy documentation (using BenchVue software)

a.     data export capability to Matlab, Excel, Word or .csv file

3)     Flexibility

a.     DAQ provides built-in signal conditioning for many temperature sensors so that you can focus on selecting the right sensor for the job and no worry about the complexity of the setup

b.     Besides temperature measurements, the DAQ is capable to measure other signals such as AC/DC Voltage and Current, 2/4 wire Resistance, Frequency/Period of signals and with transducers, it can measure pressure, strain, humidity, more.

4)     Cost

a.     Capable of measuring up to 40 channels per module, saving the need to buy many instruments (using 34908A multiplexer module)

b.     Capable of measuring scan speed up to 250 scans/s, meeting most demanding performance measurements at reasonable cost ((using 34902A multiplexer module)

5)     Many options and accessories

a.     Modules with 2/4-wires RTD temperature and resistance options

b.     Switch modules

c.      Thermistor / Thermocouple kits

d.     ANSI Z540 calibration


For more information that you require on DAQ product, please refer to our general-purpose bench 34970/72A DAQ / Data Logging Unit on our website:

10 Tips to improve your thermocouple accuracy Part 2 of 2

10 Tips to improve your thermocouple accuracy Part 1

Four tricks you didn't know you could do with Trueform waveform generator

The vast majority of electronic tests involve using a digital multimeter (DMM) at one time or another. There are a variety of ways to reduce DMM measurement times to improve overall test throughput. Of course, test time improvements sometimes require compromises in other areas, but knowing the tradeoffs involved in throughput improvements and identifying what is important in your specific test situation will help you determine which trade-offs make the most sense.

Auto zero: Accuracy versus test time Auto zero is a DMM feature that helps you improve accuracy. When you use the auto zero feature, the DMM makes an additional zeroing measurement with each measurement you make, thereby eliminating the offsets of the amplifier and integration stages inside the DMM. However, turning this feature off cuts the measurement time in half. These offsets are initially calibrated out, but the offsets can drift slightly with a change in temperature. Therefore, if your measurements are taken in an environment with a stable temperature, or if there are several measurements taken in a short period of time (temperature changes occur over longer periods of time), the improvements in throughput by turning auto zero off will far outweigh any slight compromise in accuracy. For example, with auto zero off in a stable environment, the Keysight 34460A/61A/65A/70A DMMs typically adds only an additional 0.0002% of range +5 μV for DCV or +5 mΩ for resistance accuracy specification. Note that with auto zero off, any range, function, or integration time setting change can cause a single auto zero cycle to be performed on the first reading using the new setting. Consequently, turning auto zero off and constantly changing settings defeats the time savings advantage. Check your DMM auto zero operation to be sure of the circumstances leading to an advantage from this change.

DMM pic

Reduce the number of changes Changing functions or measurement ranges also requires extra time in most DMMs. Try to group your measurements to minimize function changes and range changes. For example, if you make some voltage measurements and some resistance measurements, try to do all of the voltage measurements together and all the resistance measurements together instead of changing back and forth from one function to the other. Also, try to group your low-voltage measurements together and your high-voltage measurements together to minimize range changing. Voltage ranges above 10 V use a mechanical attenuator that takes time to switch in and out. Grouping your measurements by function and range will reduce your measurement times considerably.

Auto range variations Auto range time can sometimes contribute to longer test times, but not always. The time to auto range varies with the DMM design. DMMs using flash A/D converters and parallel gain amplifiers can actually reduce test times by using auto ranging, since the time to change ranges is zero. In these cases, the time to issue a range change command from a host computer and parse the command in the instrument will be slower. Manual ranging of integrating DMMs is still the fastest way to take a measurement. Manual ranging also allows you to keep the DMM on a fixed range, which eliminates unwanted zero measurements and prevents the mechanical attenuator from needlessly actuating. Note that the I/O speed and range command parse time for the Keysight 34460A/61A/65A/70A DMM is significantly faster than the auto range algorithm.


Integration time versus noise Integration time is another parameter over which you have direct control, but there is a clear tradeoff. DMMs integrate their measurements over a set period of time: the integration time. The biggest benefit to choosing a longer integration time is it eliminates unwanted noise from contributing to your measurement, especially AC mains line voltage noise. However, longer integration times obviously increase your measurement times. For example, if the integration time is set to an integral number of power line cycles (NPLCs) such as 1, 2, 10, or 100, the power line noise contribution will be minimized due to averaging over a longer period of time and due to increasing the normal mode rejection (NMR). With an NPLC setting of 10 in a 60-Hz environment, the integration time is 166 ms (200 ms for a 50-Hz line). The larger the integral NPLC value, the larger the NMR (for example, 60 Hz rejection), but the longer the measurement time.


DMMs are used in virtually all electronic test systems; therefore, making conscious choices about how to make DMM measurements can save large amounts of test time, thereby increasing throughput. Here is a helpful checklist for better throughput:

  • If appropriate, turn auto zero off
  • Minimize function and range changes
    • Group similar measurement functions together (DCV, DC ohms, ACV, etc.)
    • Use fixed ranges instead of auto range, if appropriate
    • Shorten integration time with consideration for noise rejection, resolution, and accuracy


For more info on Keysight DMMs click here

Power line communication or power line carrier (PLC) is getting a lot more attention these days since it is used in many of the new green energy electronics such as smart grid devices, solar inverters, and home automation. PLC is communication technique that uses the power wiring in buildings or grid power transmission lines as its communication channel. In this post, we will look how you can easily generate complex PLC signals for test purposes with a low-cost function / arbitrary waveform generator (FG/AWG). For a more general overview on PLC click here. Generating communication signals for testing typically requires costly test equipment like a signal generator for the carrier and a FG/AWG for the baseband. For PLC signals, we can skip the costly signal generator and just use a modern FG/AWG. There are two main reasons we can skip the signal generator for simulating PLC signals. The first one is the carrier signal for PLC is typically less than 1 MHz so it falls well within the bandwidth capabilities of a FG/AWG. The second is modern FG/AWGs have advanced features for creating complex signals. These features include:

  • Large waveform memory for storing not only arbitrary waveforms, but also arbitrary signals.
  • Arbitrary waveform sequencing, which is analogues to a playlist on an MP3 player. It allows you to seamlessly combine multiple waveforms from memory to create a complex signal.
  • Optional second independent channel for creating an I and Q signal.
  • Advanced modulation capabilities such as waveform summing, modulating an arb with an arb, and for two channel FG/AWGs the ability to modulate the signal from one channel with the other channel.

Let's look at a couple of examples using Keysight's 33522B / 33622A FG/AWG. Here is a simple example just using built-in waveforms. In the below screen shot from the 33522B / 33622A, a BPSK signal with a 135 KHz carrier was created. For the baseband, a built-in waveform known as a pseudo random bit stream (PRBS) was used. The PRBS waveform just delivers a close to random stream of 1s and 0s at a chosen bit rate, for this example 5.5 kbps was used. Of course, an arbitrary waveform made up of real data could have been used for the baseband as well.


For the second example let’s look at something a little more complicated. In this example a QPSK signal with a frequency hopped spread spectrum carrier was created using Matlab. The bit rate of the digital data was 10 Kbits/s. The signal lasts for 15 ms and consists of >500,000 data points. The waveform was transferred to the 33522B / 33622A via a USB stick and a CSV file. Below is a screen shot of a portion of the signal.

QPSK screen shot

In this example, we used the FG/AWG's large waveform memory to output a large arb file (greater than 500K points) to create a 15 ms signal segment with the baseband modulation and the frequency hopping already in signal. This frees up the FG/AWG's modulation capabilities for other purposes such as simulating communication channel noise. Below is an example of using the modulation function to add some channel noise. The noise signal was a sharp pulse signal representing a large load transient on the power line. This was done on the 33522B / 33622A by using the "sum" modulation feature. The source of the pulse noise signal was channel two on the 33522B / 33622A.

QPSK Pulse

In this post we talked about using a low cost function / arbitrary waveform generator for creating PLC signals. There are two main reasons why a FG/AWG makes a great solution for simulating PLC signals compared to a signal generator. The first is the carrier frequency of PLC signals is well within the capabilities of a FG/AWG. Second modern FG/AWGs have features like a large waveform memory, waveform sequencing, and advanced modulation capabilities. If you have any questions related to this post please email me and if you have anything to add use the comments section below.


Click here for more info on the 2-channel FG/AWG 33522B / 33622A

In this Part 2 of the blog, I will explain to you another way of creating an arb and transferring into an AWG using BenchVue software. If you have not used the BenchVue software before, let me tell you, it’s even easier than the two examples shared in Part 1 of this blog.


First, let me give you an introduction of what BenchVue software is all about. It is a software platform for the PC that allows users to easily connect, record and achieve results across multiple test and measurement instruments with no programming. Plug and play functionality enables you to connect your instrument to your PC and immediately begin controlling it in BenchVue. Test Flow is a new application inside of BenchVue that provides an easy method to create custom test sequences using a drag-and-drop interface.


For the sake of new potential BenchVue users, please go to to download a trial version or purchase a licensed version of the BenchVue Function Generator App software for your PC. Hook up your favorite instrument interface whether it is a USB, GPIB or LAN to your PC and launch your BenchVue software. You will quickly get full control of your Keysight Waveform generator in a very short moment. You will see a graphical instrument control window of your waveform generator as shown below. You can easily setup normal sine, square, ramp, pulse, triangle, noise, PRBS and DC waveforms with desired parameters in no time.


benchvue control panel

If you select the Arb button on the figure above, you can either open and load current existing Arb waveform pre-loaded in the instrument or an existing Arb waveform available in your PC. You can also choose to create a new Arb waveform by clicking on the button pointed by the arrow as shown on the figure above.

A new window will pop up when you click on the “create Arb” button as shown on the figure below. You can easily create basic as well as advanced waveforms. You can even perform a free hand drawn waveforms using this tool.

waveform builder

The arrow on the figure above points to an “equation editor” button. When you click this button, an equation editor window will appear as shown below.

equation editor

One more important feature when creating your new Arb, this software can help you sequence multiple different waveforms in the order and number of repeated times per waveform as you like. Transferring of the created arb waveform is really easy too with this BenchVue software. You do not have to create a CSV file and manually transfer to your AWG. With only several clicks in BenchVue, your newly created arb waveform will automatically be transferred to your instrument.

I hope this blog helps. If you have not seen Part 1 of this blog, please click here.

Click here to learn more about the 33500A / 33600B series of function / arbitrary waveform generators



In this blog post we will look at how easy it is to create arbitrary waveforms on a modern function / arbitrary waveform generator (AWG). I am always running into engineers, young and old alike, that try at all costs to avoid creating an arbitrary waveform (arb) for a test. When they hear the word arb they picture the tedious process of learning how to use some type of waveform software or, worst yet, having to write a program to generate your waveform and then remotely connecting to your AWG to upload the arb. With modern AWGs arb creation no longer has to be looked upon with doom and gloom.


Let's look at two easy examples for creating an arb and transferring it to an AWG. In the first example, we will look how we can create an arb from scratch and transfer it to an AWG. In the second example, we will capture a waveform from a scope and then transfer and recreate it with an AWG. In both examples two common elements will be used, a USB memory stick and the Comma Separated Value (CSV) file format. I will follow up with a Part 2 of this blog to showcase our BenchVue software in creating Arbs.


Using Excel to Build Arbs To build an arb from scratch most engineers turn to either an engineering programming environment, like Matlab, LabVIEW, or VEE, or a custom arb waveform software package that may or may not be free. These are great arb creation solutions, but they can be costly and time consuming if you do not use them on a regular basis. Another option that most engineers do not consider is Excel. Excel is a great tool for building custom arbs since it provides advanced mathematical functions built-in, it can handle large amounts of data (waveform points), and it is already on just about everybody's computer. The next question then is how do you get the waveform from Excel to the AWG? Excel and modern AWGs have something in common; the CSV file format. Excel can read CSV files and Excel spreadsheets can be saved as CSV files. Modern AWGs can read and create arbs from CSV files. To transfer the CSV to the AWG a USB memory stick with the CSV file can be plug into the AWG's front panel and then uploaded into waveform memory.


Let's look at an example. Using Excel an arb waveform was created that consisted of a sine wave summed with third harmonic noise and random noise. A screen shot of the Excel spreadsheet can be seen below. Notice the resulting arb is plotted and the built-in Excel functions used to create the waveform are circled in red.

Excel Arb


The Excel spreadsheet was then saved as a CSV file. Using a USB memory stick it was then uploaded to Keysight's 33500B or 33600A series function / arbitrary waveform generators. The resulting arb was captured in the below scope screen shot.

Scope Excel Arb


As you can see Excel provides an easy no cost way to create an arb and the CSV file format provides a means to easily transfer the arb to an AWG. If you prefer to use a software environment to generate your arb or your arb needs are more advanced then what Excel can do, you can still skip the remote connection / instrument programming part. Most programming environments, like Matlab and LabView, have APIs for writing / reading CSV files. Simply have your program write the arb to a CSV file and "sneaker network" it to the AWG.


For the second example we will capture a digitized signal from a scope then transfer it to an AWG and turn it into an arb. In the past, this was typically done using some type of arb waveform software package that would remotely connect to first the scope to grab the digitized signal and then to the AWG to create the arb. With today's scopes and AWGs the process has been streamlined. For our example an Keysight MSO-X 3054A scope was used to capture a Data Word from a Mil-Std-1553 signal. The captured waveform is shown in the below figure.

Mil Std 1553 Data Word


Shown below the Mil-Std-1553 signal in blue is 5F67, which is the hexadecimal decoded value of the Data Word. The AWG used in this example was again the 33500B or 33600A series function / arbitrary waveform generator. Here is how it works:

  1. Plug the USB memory stick into the front panel of the scope.
  2. Save the digitized waveform to the USB memory stick as a CSV file.
  3. "Sneaker network" the USB memory from the scope to the front panel of the AWG.
  4. Import the CSV to the AWG's memory. 

It is really that easy! To make this example a little more exciting the Mil-Std-1553 arb on the 33500B / 33600A series was modulated with a lower frequency pulse to simulate coupled transient noise into the signal channel. The modulated arb was captured in the screen shot below.

1553 Data Word Error


You can see the simulated transient noise in the figure at the beginning and middle of our arb. Notice at the bottom of the scope in red and blue that because of the transient noise the scope was unable to decode the Data word.

In this post we looked at how easy it is today with modern AWGs to create an arbitrary waveform. We looked at two cases, creating an arb from scratch with Excel and capturing a waveform with a scope. Both methods used the USB memory stick and the CSV file format to transfer the waveform to the AWG with no remote connections or programming. If you have any questions, feel free to email me and if you have any personal incites to add use the "Comments" section below.

You can also click this link -  Creating Arbs Today is Easy - Part 2 of this blog that showcases our BenchVue software in creating Arbs.

Click here to learn more about the 33500A / 33600B series of function / arbitrary waveform generators

Using an electrocardiogram (ECG sometimes called an EKG) is an invaluable way to identify various physical ailments. Today there is a wide array of cardiac equipment that displays and interprets ECG signal patterns. Medical equipment designers need a flexible way to seamlessly generate accurate ECG signal patterns to verify and test their designs. In this post, I will discuss how to generate complex ECG signal patterns with an arbitrary waveform generator (AWG). Below in the figure is a 12-lead ECG waveform.


There are three methods to create and store an ECG on an AWG:

  1. You can use a device such as a digitizer or oscilloscope to capture an actual ECG signal from a patient. Then you upload the digitized points to the AWG. With modern AWGs, there are many ways to accomplish this, including using a .csv file and a memory stick.
  2. You can use mathematical software to create an ECG signal. There may be custom software for the AWG that can do this, or you could use a standard software package, such as MATLAB ®.
  3. If your instrument has this capability, you can use your AWG’s built-in "typical" ECG waveform. The Keysight 33500B & 33600A series has a built-in ECG waveform.


Using an AWG’s arb sequencing capability to simulate complex ECG patterns

AWGs that have arb sequencing ability, like the 33500B/33600A function/arb waveform generators, can seamlessly transition from one arb waveform stored in memory to another without any discontinuities in the output. The figure below shows an example using the 33500B/33600A’s arb sequencing feature to combine three different ECG waveforms stored in different places in memory into one waveform.


The first ECG waveform cycle is meant to be an "ideal" ECG waveform. The other two were based on the first one but were changed in a systematic way using MATLAB software. Notice the second ECG waveform has a flattened T wave. In the third ECG waveform, the T wave is inverted.

The 33500B/33600A’s sequencing capability provides flexibility for controlling when it sequences from one waveform to another. One way to control sequencing is to specify how many cycles each waveform is run before sequencing to the next. Sequences can also return to a waveform that was used previously in that sequence.

Combining the 33500B/33600A’s arb sequencing feature with its large arb memory, 1 million points per channel standard with 16 million optional, gives you the ability to simulate complex ECG patterns for thorough testing of cardiac monitoring equipment designs. For example, each ECG waveform shown in the above figure were created with about 500 points. You could store up to 2,000 different ECG waveforms of this size in the 33500B/33600A’s standard arb memory. The 33500B/33600A allows arb sequences to contain up to 512 steps, allowing you to create complex ECG patterns for thorough testing. You can control arb sequences on the 33500B/33600A asynchronously by using triggers to control waveform transitions instead of cycle counts. This provides you with the ability to continuously cycle a waveform for some undetermined time period until it receives a software trigger or external trigger or front-panel trigger. Once it receives the trigger, the 33500B/33600A transitions to the next waveform in the sequence. You can also mix the two ways of transitioning through a sequence, specifying a count and using triggers.


Free Matlab ECG simulation program

You can download and use an ECG simulator program created in MATLAB®. You can find the ECG simulator download and instructions at simulation-using-matlab or type “ECG MATLAB” into a search engine and it should be at the top of the results. The program creates ECG waveforms using multiple Fourier series summed together. A Fourier series is used for each distinct wave shape in the ECG waveform, such as the P wave, T wave, etc. The program allows you to adjust various ECG waveform parameters to simulate various cardiac conditions. You can then transfer the ECG waveform you created to a 33500B/33600A either by storing it in a .csv file and using a memory stick or remotely via Matlab's instrument toolbox feature or BenchVue FG application software.


Click here for more info on the 33500B and 33600A series function / arbitrary waveform generator