
PicoScope 3000 Series
PC Oscilloscopes
User guide
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

PicoScope 3000 Series User GuideI
Table of Contents
1 Introduction
2 Product information
3 Technical reference
.............................................................................................2
1 Overview
2 Safety symbols
3 Safety warning
4 FCC notice
5 CE notice
6 Licence conditions
7 Trademarks
8 Warranty
9 Company details
.............................................................................................6
1 Minimum system requirements
2 Installation instructions
3 Specifications
.............................................................................................9
1 Driver
2 Driver error codes
3 Functions
4 Advanced features
5 Using different modes
6 Programming
...................................................................................................2
...................................................................................................2
...................................................................................................3
...................................................................................................3
...................................................................................................4
...................................................................................................4
...................................................................................................4
...................................................................................................5
...................................................................................................5
...................................................................................................6
...................................................................................................6
...................................................................................................8
...................................................................................................9
...................................................................................................9
...................................................................................................10
...................................................................................................26
...................................................................................................29
...................................................................................................30
4 Troubleshooting
5 Glossary
Index
......................................................................................................37
.............................................................................................32
1 Software error codes
2 Powering the 3204/5/6
.............................................................................................34
...................................................................................................32
...................................................................................................33
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Introduction
is a range of high speed PC Oscilloscopes, fully
capable and backwards-compatible with USB 1.1. There is no need for an additional
power supply as power input is from the USB port, so these oscilloscopes are highly
, you can use PicoScope 3000 Series PC Oscilloscopes as
oscilloscopes and spectrum analysers; with the
data loggers. Alternatively, you might want to use some of the API functions to develop
your own programs to collect and analyse data from the oscilloscope.
A typical PicoScope 3000 Series PC Oscilloscope is supplied with the following items:
USB cable, for use with USB 1.1 and 2.0 ports
Symbol 1: Warning Triangle
This symbol indicates that a safety hazard exists on the indicated
connections if correct precautions are not taken. Read all safety
documentation associated with the product before using it.
This symbol indicates that the outer shells of the indicated BNC
connectors are all at the same potential (shorted together). You must
therefore take necessary precautions to avoid applying a potential
across the return connections of the indicated BNC terminals as this
may result in a large current flow causing damage to the product and/or
2
1
1.1
1.2
Introduction
Overview
Safety symbols
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

3
We strongly recommend that you read the general safety information below before using
your oscilloscope for the first time.
Safety protection built in to equipment may cease to
function if the equipment is used incorrectly. This could cause damage to your computer,
or lead to injury to yourself and others.
PicoScope 3000 Series PC Oscilloscopes are designed to measure voltages in the range
-20 V to +20 V and are protected to ±50 V (3204/5/6 variants) or ±100 V (3224/3424
variants). Contact with voltages outside the protection range may cause physical damage.
Pico Technology products are not designed for use with mains voltages. To measure
mains, use a differential isolating probe specifically designed for a high source voltage.
PicoScope 3000 Series PC Oscilloscopes connect direct to the ground of a computer
through the interconnecting cable provided. This method minimises interference.
As with most oscilloscopes, avoid connecting the ground input to any source other than
ground. If in doubt, use a meter to check that there is no significant AC or DC voltage
between the ground input of the oscilloscope and the point to which you intend to connect
it. Failure to check may cause damage to your computer, or lead to injury to yourself and
You should assume that the product does not have a protective safety earth.
The oscilloscope contains no serviceable parts. Repair or calibration of the oscilloscope
requires specialised test equipment and must be performed by Pico Technology.
This equipment has been tested and found to comply with the limits for a Class A digital
. These limits are designed to provide
reasonable protection against harmful interference when the equipment is operated in a
commercial environment. This equipment generates, uses, and can radiate radio
frequency energy and, if not installed and used in accordance with the instruction manual,
may cause harmful interference to radio communications. Operation of this equipment in
a residential area is likely to cause harmful interference in which case the user will be
required to correct the interference at his or her own expense.
For safety and maintenance information see the
safety warning
PicoScope 3000 Series User Guide
1.3
Safety warning
1.4
PS3000044 1.4
FCC notice
Copyright 2005 Pico Technology Limited. All rights reserved.

Introduction
The PicoScope 3000 Series PC Oscilloscopes meet the intent of the
and have been designed to
EN61326-1 (1997) Class B Emissions and
PicoScope 3000 Series PC Oscilloscopes also meet the intent of the
and have been designed to meet the
BS EN 61010-1:2001 IEC 61010-1:2001
(safety requirements for electrical equipment, control, and laboratory use) standard.
The material contained in this release is licensed, not sold. Pico Technology Limited
grants a licence to the person who installs this software, subject to the conditions listed
The licensee agrees to allow access to this software only to persons who have been
informed of these conditions and agree to abide by them.
The software in this release is for use only with Pico products or with data collected using
Pico Technology Limited claims the copyright of, and retains the rights to, all material
(software, documents etc.) contained in this release. You may copy and distribute the
entire release in its original state, but must not copy individual items within the release
other than for backup purposes.
Pico Technology and its agents shall not be liable for any loss, damage or injury,
howsoever caused, related to the use of Pico Technology equipment or software, unless
Because no two applications are the same, Pico Technology cannot guarantee that its
equipment or software is suitable for a given application. It is your responsibility,
therefore, to ensure that the product is suitable for your application.
Mission-critical applications
This software is intended for use on a computer that may be running other software
products. For this reason, one of the conditions of the licence is that it excludes usage in
mission-critical applications; for example, life-support systems.
are registered trademarks or trademarks of Microsoft Corporation in
the USA and other countries.
are trademarks of Pico Technology
Limited, registered in the United Kingdom and other countries.
4
1.5
1.6
CE notice
Licence conditions
1.7
Copyright 2005 Pico Technology Limited. All rights reserved.
Trademarks
PS3000044 1.4

5
Pico Technology warrants upon delivery, and for a period of 24 months unless otherwise
stated from the date of delivery, that the Goods will be free from defects in material and
Pico Technology shall not be liable for a breach of the warranty if the defect has been
caused by fair wear and tear, wilful damage, negligence, abnormal working conditions or
failure to follow Pico Technology's spoken or written advice on the storage, installation,
commissioning, use or maintenance of the Goods or (if no advice has been given) good
trade practice; or if the Customer alters or repairs such Goods without the written consent
PicoScope 3000 Series User Guide
1.8
1.9
Warranty
Company details
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Product information
For PicoScope 3000 Series PC Oscilloscopes to operate, you must have a computer with
the minimum system requirements to run Windows or the following (whichever is the
Pentium class processor or equivalent minimum.
Microsoft Windows 98 SE, ME, 2000, XP or later.
USB 1.1 compliant port minimum. USB 2.0 compliant port
recommended. Must be connected direct to the port or a
powered USB hub. Will not work on a passive hub.
PC Oscilloscope to the PC
until you have installed the software.
Follow the instructions in the Quick Start Guide included with your product package.
Connect your PC Oscilloscope to the PC using the USB cable supplied.
There is no need for an additional power supply, as the unit obtains its power from the
Checking the installation
Once you have installed the software and connected the PC Oscilloscope to the PC, start
software. The software should now display the voltage that you
have connected. If you are using the PicoScope software and have a probe connected to
your oscilloscope, you should see a small 50Hz or 60Hz mains signal in the oscilloscope
window when you touch the probe tip with your finger .
Standard oscilloscope connectors
PC Oscilloscopes have standard oscilloscope connectors. The
input impedance is also standard, so the x10 function on scope probes works correctly.
6
2
2.1
2.2
Product information
Minimum system requirements
Installation instructions
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

7
LED. When lit, indicates the oscilloscope is sampling data.
Power socket. 12 V DC at 500 mA.
The BNC connector labelled '
' on the 3204/5/6 models has two functions. In normal use
it is the external trigger input with an adjustable threshold. Alternatively, on some
oscilloscopes, this connector can also be used to output sine, square and triangle
waveforms which can be swept back and forth at a user-defined frequency. The
integrated signal generator can be controlled via the PicoScope software or by API calls.
The signal generator can also be used to compensate x10 scope probes when set to
If you experience excessive noise or voltage offsets when using the PicoScope 3204/5/6
variants, you may have a ground loop problem. See
Moving your PicoScope PC Oscilloscope to another USB port
When you install the PicoScope 3000 Series PC Oscilloscope by plugging it into a
port, Windows associates the Pico
software with that port. If you later move the
oscilloscope to a different USB port, Windows will display the "New Hardware Found
Wizard" again. When this occurs, simply follow the steps listed in the Quick Start Guide
after the instruction "Connect the PicoScope 3000 Series PC Oscilloscope to the PC..."
As all the software you need is already installed on your computer, there is no need to
insert the Pico Software CD again.
PicoScope 3000 Series User Guide
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Product information
1 BNC input shared with signal generator
Variable trigger threshold ± 20 V
± 100 mV to ± 20 V in 1, 2, 5 steps
0°C to 70°C (25°C for quoted accuracy)
From USB port: 4.6 to 5.25 V 500 mA
External power supply is not required
1 BNC shared with external trigger. Fixed frequency 1 kHz. 5 V square wave. 600
(2) 1 BNC shared with external trigger. Variable frequency 100 Hz to 1 MHz. 5 V square wave, 1 V
sine wave and triangle functions. Repeat sweep function. Dual slope function. 600
8
2.3
Specifications
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

9
The Windows 98SE/ME/2000/XP/2003 32-bit driver,
Windows. It is loaded using an inf file,
Once you have installed the PicoScope and PicoLog software, and the PicoScope 3000
Series PC Oscilloscope is plugged in for the first time, Windows will automatically install
This section is aimed at those people who intend to write their own programs for use with
the driver. A description of the driver error codes is given below.
PicoLog software reports an error, refer to the
The oscilloscope is functioning correctly.
Attempts have been made to open more than
Not enough memory could be allocated on the
An oscilloscope could not be found.
Unable to download firmware.
The oscilloscope is not responding to
The configuration information in the
oscilloscope has become corrupt or is missing.
Driver supports Windows 98SE, ME, 2000, XP,
PicoScope 3000 Series User Guide
3
3.1
3.2
Technical reference
Driver
Driver error codes
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Technical reference
This function opens a PicoScope 3000 Series PC Oscilloscope. The API driver can
support up to four oscilloscopes.
if the oscilloscope fails to open,
if no oscilloscope is found,
(handle) if the device opened.
10
3.3
3.3.1
Functions
ps3000_open_unit
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

11
short ps3000_get_unit_info (
This function writes oscilloscope information to a character string. If the oscilloscope fails
to open, only infos 0 and 6 are available to explain why the last open unit call failed.
, the handle to the device from which info is required. If an
invalid handle is passed, the error code from the last unit that failed to
open is returned from line 2.
, a pointer to the character string buffer in the calling function
where the unit information string (selected with line) will be stored. If a
null pointer is passed, no information will be written.
, the length of the character string buffer. If the string
is not long enough to accept all of the information, only the first
, is an enumerated type specifying what information is required
The length of the string written to the character string buffer, string, by
the function. If one of the parameters are out of range, or a null pointer
is passed for string, zero will be returned.
Returns the version number of the
DLL used by the oscilloscope driver.
Returns the type of USB connection
that is being used to connect the
oscilloscope to the computer.
Returns information about what is
the hardware version of the attached
Returns information about what
model of PicoScope 3000 Series PC
Oscilloscope is attached to the
Returns the batch and serial number
Returns the calibration date of the
PicoScope 3000 Series User Guide
3.3.2
ps3000_get_unit_info
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Technical reference
short ps3000_flash_led ( short handle )
Flashes the LED on the front of the oscilloscope three times and returns within one
, the handle of the PicoScope 3000 Series PC Oscilloscope.
if a valid handle is passed,
12
3.3.3
ps3000_flash_led
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

13
, the handle, returned by
if a valid handle is passed,
PicoScope 3000 Series User Guide
3.3.4
ps3000_close_unit
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Technical reference
short ps3000_set_channel (
Specifies if a is to be enabled, the position of the
AC\DC switch and the input range.
, the handle to the required device.
, an enumerated type, use PS3000_CHANNEL_A (0),
PS3000_CHANNEL_B (1), PS3000_CHANNEL_C (2) or
PS3000_CHANNEL_D (3). Channels C and D are not available on all
, specify if the channel is active: TRUE=active,
, specifies the position of the AC/DC switch: TRUE=DC, FALSE=AC.
, a code between 0 and 12. See the table below.
if unsuccessful, or if one or more of the arguments are out of range.
Not available on all variants.
Not available on all variants..
Not available on all variants.
Not available on all variants.
14
3.3.5
ps3000_set_channel
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

15
short ps3000_get_timebase (
This function discovers which
timebases are available on the oscilloscope. This function
should be called after channel and
ETS options have been set.
, the handle to the required device.
, a code between 0 and the maximum timebase (dependant
on variant). Timebase 0 is the fastest timebase, timebase 1 is twice the
time per sample as timebase 0, timebase 2 is four times, etc.
, the number of samples required. This value is used
to calculate the most suitable time unit to use.
, a pointer to the time interval, in ns, between
readings at the selected timebase. If a null pointer is passed, nothing will
, a pointer to the most suitable time units to return data in,
ps3000_get_times_and_values
. If a null pointer is passed,
nothing will be written here.
, the amount of oversample required. An oversample of 4
would quadruple the time interval and quarter the maximum samples. At
the same time it would increase the effective resolution by the amount
given by the equation below:
Increase in resolution (bits) = ( log oversample ) / ( 2 log 2 )
, A pointer to the maximum samples available. The
maximum samples may vary depending on the number of channels
enabled, the timebase chosen and the oversample selected. If this
pointer is null, nothing would be written here.
if all parameters are in range, otherwise
PicoScope 3000 Series User Guide
3.3.6
ps3000_get_timebase
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Technical reference
This function is used to enable or disable the
Sweep functions are not available if the oscilloscope is in
The signal generator is available only on the PicoScope 3204/5/6 PC Oscilloscope
variants. See remarks and
16
3.3.7
ps3000_set_siggen
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

17
, the handle of the required device.
, the type of wave. Choose
effect if used with the PicoScope 3204 variant.
, the required frequency, in the range 0 < freq < 1
MHz, to start the sweep or the frequency generated in a non-sweep
switches the signal generator off.
, the required stop frequency of the sweep, in the
range 0 < freq < 1 MHz but not necessarily greater than
. If the start and stop frequencies are the same, the
signal generator will be run with a constant frequency.
has no effect if used with the PicoScope 3204 variant..
, the size of the steps to increment or decrement the
frequency by in a sweep mode. This must always be positive; the start
and stop frequencies will determine whether to increment or decrement.
This must be a frequency in the range 0.1 Hz <
|. This is not used in a non-
his argument has no effect if used with the PicoScope
, This is the time, in ms, to wait before increasing the
in a sweep mode. This is unused in a non-
This argument has no effect if used with the PicoScope
restarts the sweep when the
continues indefinitely at
This argument has no effect if used with the PicoScope 3204
this specifies what to do at the
will sweep back towards the
will restart the sweep from
This argument has no effect if used with the
The actual frequency or start frequency, in hertz, that is generated. Zero
if one of the parameters are not in range.
The PicoScope 3204 variant has a simple 1 kHz square wave signal generator for scope
probe calibration. With this variant, therefore, only two arguments of this function have
To switch the square wave on, use a valid
zero value. To switch the square wave off, use a valid
PicoScope 3000 Series User Guide
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Technical reference
This function is used to enable or disable
(equivalent time sampling) and to set the
Note: The 3224 and 3424 variants do not have an ETS mode.
, the handle to the required device.
enable ETS and provides ets_cycles of data, which may contain data
from previously returned cycles,
and provide fresh data every
takes longer to provide each data set, but the data sets are more stable
, Specifies the number of cycles to store: the computer can
cycles to give the most uniform spread of
should be between two and five times the value
, Specifies the number of ETS interleaves to use. If
the sample time is 20 ns and the interleave 10, the approximate time per
If ETS is enabled, the effective sample time will be returned.
Zero if ETS is disabled or one of the parameters is out of range.
18
3.3.8
ps3000_set_ets
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

19
short ps3000_set_trigger (
This function is used to enable or disable triggering and its parameters. Triggering is not
, the handle to the required device.
, specifies where to look for a trigger. Use
Channels C, D and External are not available on all models.
, the threshold for the trigger event. This is scaled in 16-bit
ADC counts at the currently selected range. If an external trigger is
enabled the range is fixed at +/-20V.
, This specifies the delay, as a percentage of the requested
number of data points, between the trigger event and the start of the
block. It should be in the range -100% to +100%. Thus, 0% means that
the first data value in the block, and -50% means that the trigger event
is in the middle of the block.
, the delay in ms after which the
collect samples if no trigger event occurs. If this is set to zero the
will wait for a trigger indefinitely.
if one of the parameters are out of range, otherwise
PicoScope 3000 Series User Guide
3.3.9
ps3000_set_trigger
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Technical reference
This function tells the oscilloscope to start collecting data in
, the handle to the required device.
, the number of samples to return.
, a code between 0 and the maximum timebase available
(consult the driver header file). Timebase 0 gives the maximum sample
rate available, timebase 1 selects a sample rate half as fast, timebase 2
is half as fast again and so on. For the maximum sample rate, see the
. Note that the number of channels enabled may affect the
availability of the fastest timebases.
, the oversample factor, a number between 1 and 256.
is the approximate time, in ms, over which the ADC will collect data. If a
trigger is set, it is the amount of time the ADC takes, in ms, to collect a
block of data after a trigger event, calculated as sample interval x
number of points required. Note: The actual time may differ from
computer to computer, depending on how fast the computer can
if one of the parameters is out of range, otherwise 1.
20
3.3.10
ps3000_run_block
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

21
short ps3000_run_streaming (
This function tells the oscilloscope to start collecting data in
function is called when a trigger has been enabled, the trigger settings will be ignored.
, the handle to the required device.
, the time interval, in ms, between data points. This
can be no shorter than 1 ms.
, the maximum number of samples that the driver is to
store. This can be no greater than 60 000. It is the caller's responsibility
to retrieve data before the oldest values are overwritten.
, only the values taken since the last call to get
values are returned. If this is
, the number of values requested by
get_values are returned, even if they have already been read by
if streaming has been enabled correctly, otherwise
occurred or a value was out of range.
PicoScope 3000 Series User Guide
3.3.11
ps3000_run_streaming
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Technical reference
This function checks to see if the
scilloscope has finished the last data collection
operation. This function does nothing if the
, the handle to the required device.
(meaning 'ready') is returned when the
complete block of data or the auto trigger timeout has been reached. If
an invalid handle is passed or if the oscilloscope is in streaming mode it
0 ( meaning 'not ready').
(meaning 'device not attached') is returned if the endpoint transfer
fails indicating that the unit may well have been unplugged.
22
3.3.12
ps3000_ready
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

23
Call this function to stop the oscilloscope from sampling data. If this function is called
before a trigger event occurs, the oscilloscope may not contain valid data.
, the handle to the required device.
if an invalid handle is passed, otherwise
PicoScope 3000 Series User Guide
3.3.13
ps3000_stop
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Technical reference
This function is used to get values. This function does nothing if
, the handle to the required device.
pointers to the buffers that receive data from the specified
channels (A, B, C or D). A pointer is unused if the oscilloscope is not
collecting data from that channel. If a pointer is
, a bit pattern indicating whether an overflow has occurred on
a channel. Bit 0 is the LSB.
. The number of data points to return. In streaming
mode, this is the maximum no of values to return.
The actual number of data values per channel returned, which may be
is returned if one of the
parameters is out of range.
24
3.3.14
ps3000_get_values
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

25
long ps3000_get_times_and_values(
This function is used to get values and times. It will not return any valid times if the
, the handle to the required device.
, a pointer to the buffer for the times. Each time is the interval
between the trigger event and the corresponding sample. Times before
the trigger event are negative, and times after the trigger event are
pointers to the buffers that receive data from the specified
channels (A, B, C or D). A pointer is unused if the oscilloscope is not
collecting data from that channel. If a pointer is
, a bit pattern indicating whether an overflow has occurred on
a channel. Bit 0 is the LSB.
which are femtoseconds, picoseconds, nanoseconds (default),
microseconds, milliseconds and seconds respectively.
the number of data points to return. In streaming
mode, this is the maximum number of values to return.
The actual number of data values per channel returned, which may be
is returned if one or more of the parameters are out of range or if the
times will overflow with the
in order to acquire the most suitable
PicoScope 3000 Series User Guide
3.3.15
ps3000_get_times_and_values
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Technical reference
PicoScope 3000 Series PC Oscilloscopes
can run in various sampling modes. At high
sampling rates, the oscilloscope collects data much faster than a PC can read it. To
compensate for this, the oscilloscope stores a block of data in an internal memory buffer,
delaying transfer to the PC until the required number of data points have been sampled.
. At very low sampling rates, you may want to switch to
. This allows accurately timed data to be transferred back to the PC in
short blocks, without gaps.
In block mode, the computer prompts a
PC Oscilloscope to collect
a block of data into its internal memory. When the oscilloscope has collected the whole
block, it will signal it is ready, and transfer the whole block into computer memory via the
The maximum number of values depends upon the size of the oscilloscope's memory. A
PicoScope 3000 Series PC Oscilloscope can sample at a number of different rates.
These rates correspond to the maximum clock frequency multiplied by 0.5, 0.25, 0.125,
There is a separate memory buffer for each channel. When a channel is unused, its
memory can be utilised by the enabled channels. On the faster models, one input can be
routed to two circuits in the oscilloscope, thus doubling the effective sampling rate of a
The driver for a PicoScope 3000 Series PC Oscilloscope normally performs a number of
setup operations before collecting each block of data. This can take up to 50 milliseconds.
If it is necessary to collect data with the minimum time interval between blocks, avoid
calling setup functions between calls to
In streaming mode, the computer prompts the
start collecting data. The data is then transferred back to the PC without being stored in
oscilloscope memory. Data can be sampled with a period of between 1 ms and 60 s.
Data can be transferred by the oscilloscope's driver to a computer program either in
normal or windowed mode. In normal mode, any data collected since the last data
transfer operation is returned in its entirety. In windowed mode, a fixed number (n) of
samples is returned, where the oldest samples may have already been returned before.
Normal mode is useful if the computer program requires fresh data on every transfer.
Windowed mode is useful when the program requires a constant time frame of data.
Once the oscilloscope is collecting data in streaming mode, any setup changes (for
example, changing a channel range or
setting in the PicoScope software
application) will cause a restart of the data stream. The driver can buffer up to 32K
samples of data per channel, but the user must ensure that the
function is called frequently enough to avoid buffer overrun.
26
3.4
3.4.1
3.4.2
Advanced features
Sampling modes
More on block mode
3.4.3
Copyright 2005 Pico Technology Limited. All rights reserved.
More on streaming mode
PS3000044 1.4

27
ps3000_get_times_and_values ()
function will always return FALSE (0) in streaming
The PicoScope 3000 Series PC Oscilloscope can either start collecting data immediately,
or it can be programmed to wait for a trigger event to occur. In either case, you need to
function. A trigger event can occur when the channel A or
B input crosses a threshold voltage, or when an external trigger input crosses a threshold
voltage. The trigger event can be either a rising or a falling edge.
input uses the same physical connection as the
output, so these two functions cannot be used at the same time. It is possible, however,
to use the output from the signal generator as a trigger. Triggering is available in block
mode only. Any call to the
function has no effect in streaming
is a way of increasing the effective sample rate when working with repetitive signals.
It is not possible to use ETS with one-shot signals. ETS is controlled by the
functions. ETS is available in block mode
function have no effect in
ETS will return random time intervals, the
ps3000_get_times_and_values ()
function will return FALSE (0).
Only the 3204/5/6 variants provide ETS.
It is possible to set the gain for each channel with the
This will give an input voltage range between ±20 mV (for the 3224 and 3424) or ±100 mV
(for the 3204/5/6) and ±20V. The
has a fixed input range of ±20 V.
function, each channel can be set to either AC or DC
coupling. When AC coupling is used, any DC component of the signal is filtered out.
When the oscilloscope is operating in
at speeds less than the maximum, it is
possible to oversample. Oversampling is taking more than one measurement during a
time interval and returning an average. This reduces the effects of noise, and increases
PicoScope 3000 Series User Guide
3.4.4
3.4.5
Triggering
ETS (Equivalent Time Sampling)
3.4.6
3.4.7
3.4.8
Voltage ranges
AC/DC operation
Oversampling
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Technical reference
The PicoScope 3000 Series PC Oscilloscopes have resolutions that range from 8 bits to
12 bits, but the oscilloscope driver normalises all readings to 16 bits. This enables it to
take advantage of noise reduction from oversampling, when this is enabled. The following
table shows the relationship between the reading from the driver and the voltage of the
The PicoScope 3204/5/6 PC Oscilloscopes have a built-in
signal generator
. The output of the 3204 is a fixed-frequency square wave,
while the 3205 and 3206 can produce a selection of accurate frequencies from 100 Hz to
1 MHz, and the waveform can be set to sine, square or triangle and swept back and forth
in frequency. These options are selected under software control.
The signal generator output and external trigger input share the same connector, so
these two functions cannot be used at the same time. It is possible, however, to use the
output from the signal generator as a trigger.
With PicoLog or your own program it is possible to collect data using up to four
PicoScope 3000 Series PC Oscilloscopes
at the same time. Each oscilloscope must be
connected to a separate USB port. If a USB hub is used it must be a powered hub. The
function returns a handle to an oscilloscope. All of the other
functions require this handle for oscilloscope identification. For example, to collect data
from two oscilloscopes at the same time:
ps3000_set_channel (handle1)
ps3000_set_channel (handle2)
ready = ps3000_ready (handle1)
ready &= ps3000_ready (handle2)
ps3000_get_values(handle1)
ps3000_get_values(handle2)
Note: It is not possible to synchronise the collection of data between oscilloscopes that
are being used in combination.
28
3.4.9
3.4.10
Scaling
Signal generator
3.4.11
Combining oscilloscopes
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

29
The previous section on advanced features supplied the programmer with extended
PC Oscilloscopes. The C sample program,
, demonstrates how to use the functions of the driver software, and
includes examples showing how to use each of the modes available.
This is the general procedure for reading and displaying data in
:1Open the oscilloscope using
Select channel ranges and AC/DC switches using
, set the trigger if required
, select timebases until the required ns per sample is
If required, set the signal generator frequency using
Start the oscilloscope running using
Wait until the oscilloscope says it is ready using
Transfer the block of data from the oscilloscope using
ps3000_get_times_and_values
Stop the oscilloscope using
This is the general procedure for reading and displaying data in
:1Open the oscilloscope using
Select channel ranges and AC/DC switches using
Start the oscilloscope running using
Transfer the block of data from the oscilloscope using
Repeat steps 3 to 5 as necessary
Stop the oscilloscope using
This is the general procedure for reading and displaying data in
Open the oscilloscope using
Select channel ranges and AC/DC switches using
, set the trigger if required
Start the oscilloscope running using
Wait until the oscilloscope says it is ready using
Transfer the block of data from the oscilloscope using
ps3000_get_times_and_values
Repeat steps 5 to 8 as necessary
Stop the oscilloscope using
Only the 3204/5/6 variants provide this function.
PicoScope 3000 Series User Guide
3.5
3.5.1
3.5.2
Using different modes
Introduction
Using block mode
3.5.3
3.5.4
Using streaming mode
Using ETS mode
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Technical reference
There are two C example programs: one is a simple GUI application, and the other is a
more comprehensive console mode program that demonstrates all of the facilities of the
The GUI example program is a generic Windows application - that is, it does not use
Borland AppExpert or Microsoft AppWizard. To compile the program, create a new project
for an Application containing the following files:
(Borland 32-bit applications); or
(Microsoft Visual C 32-bit applications)
The following files must be in the compilation directory:
and the following file must be in the same directory as the executable.
The console example program is a generic windows application - that is, it does not use
Borland AppExpert or Microsoft AppWizard. To compile the program, create a new project
for an Application containing the following files:
(Borland 32-bit applications); or
(Microsoft Visual C 32-bit applications).
The following files must be in the compilation directory:
and the following file must be in the same directory as the executable.
The Win32 sub-directory contains the following files:
The functions which return a TRUE/FALSE value, return 0 for FALSE and 1 for
TRUE, whereas Visual basic expects 65 535 for TRUE. Check for > 0 rather than =TRUE.
30
3.6
3.6.1
Programming
C
3.6.2
Copyright 2005 Pico Technology Limited. All rights reserved.
Visual Basic
PS3000044 1.4

31
demonstrates how to operate
contains procedure prototypes that you can include
in your own programs. Other required files include
. This has been tested with Delphi versions 3.
The Excel Macro language is similar to Visual Basic. The functions which return a
TRUE/FALSE value, return 0 for FALSE and 1 for TRUE, whereas Visual Basic expects
65 535 for TRUE. Check for > 0 rather than =TRUE.
is in the drivers sub-directory. It uses procedures that
. It was tested using Agilent Vee version 5.
PicoScope 3000 Series User Guide
3.6.3
3.6.4
3.6.5
Delphi
Excel
Agilent Vee
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Troubleshooting
Consult this section if your are a PicoScope or PicoLog user. If you are writing your own
PicoLog reports error code
This error is reported when more than 4 oscilloscopes are opened on one machine. It is
not possible to use more than 4 oscilloscopes with PicoLog.
PicoScope or PicoLog reports error code
This error is reported when the driver cannot allocate enough of the computer's memory
to operate the oscilloscope. Consult the
PicoScope or PicoLog reports error code
This error indicates that a
PicoScope 3000 Series PC Oscilloscope
your machine. Make sure the software is installed before the oscilloscope is plugged into
the USB socket and restart your computer.
Ensure that mention of the oscilloscope can be found in the USB section of the Windows
. If the oscilloscope is not mentioned there, consult
PicoScope or PicoLog reports error code
This error is reported when there is a problem with the oscilloscope itself. These problems
could arise from configuration settings being corrupted, or a firmware or hardware error.
Unplug the oscilloscope, wait a few seconds, and reconnect it to the USB port. If the error
is still reported, consult
PicoScope or PicoLog reports error code
This error is reported if the operating system is not recent enough to support the
PicoScope 3000 Series PC Oscilloscope. Consult the
32
4
4.1
Troubleshooting
Software error codes
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

33
3204/5/6 PC Oscilloscopes are normally powered from the
the computer. If the computer and the equipment under test (EUT) are both referenced
to the same ground, a "ground loop" may be created. This may degrade the DC accuracy
and noise performance when measuring small signals.
Typically, a ground loop is created when the PicoScope is connected to a mains-powered
computer and is used to measure a signal on another mains-powered device. In this case
the ground loop is created through mains earth, as illustrated below:
The majority of laptop power supplies (chargers) are floating and have no ground
reference. If, however, connecting your grounded laptop power supply causes
noise/offset problems, you can either use the oscilloscope with the laptop running on its
batteries or power the oscilloscope using the supplied mains adaptor.
If necessary, you should plug the mains adaptor into the socket on the back of the
oscilloscope (near the USB socket). It can be safely connected and disconnected during
operation without risk of damage to the oscilloscope.
PicoScope 3000 Series User Guide
4.2
Powering the 3204/5/6
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Glossary
To switch from AC coupling to DC coupling, or vice versa, select AC or DC from the
control on the oscilloscope toolbar of the PicoScope software application. The AC setting
filters out any DC component of the input signal, and is suitable for viewing small AC
signals superimposed on a DC or slowly-changing offset. In this mode you can measure
the peak-to-peak amplitude of an AC signal but not its absolute value. Use the DC setting
for measuring the absolute value of a signal.
The input frequency at which the measured signal amplitude is 3 dB below its true value.
A sampling mode in which the computer prompts the oscilloscope to collect a block of
data into its internal memory before stopping the oscilloscope and transferring the whole
block into computer memory. This mode of operation is effective when the input signal
being sampled is high frequency. Note: To avoid aliasing effects, the maximum input
frequency must be less than half the sampling rate.
The size of the oscilloscope buffer memory, measured in samples. The buffer memory is
used by the oscilloscope to store data temporarily. This allows the oscilloscope to sample
data independently of the speed at which it can transfer data to the computer.
Device Manager is a Windows applet that displays the current hardware configuration of
your computer. On Windows 98 or Windows ME, right click on 'My Computer' and choose
the 'Device Manager' tab. On Windows 2000 or XP, right-click on 'My Computer,' choose
'Properties', then click the 'Hardware' tab and the 'Device Manager' button.
A software application that controls a piece of hardware. The driver for the
3000 Series PC Oscilloscopes is supplied in the form of a 32 bit Windows DLL. This is
used by the PicoScope and PicoLog software to control the oscilloscopes.
Equivalent Time Sampling. ETS constructs a picture of a repetitive signal by accumulating
information over many similar wave cycles. This means the oscilloscope can capture fast
repeating signals that have a higher frequency than the maximum sampling rate. Note:
ETS should not be used for one-shot or non-repetitive signals.
This is the BNC socket marked
on the PicoScope 3204/5/6 PC Oscilloscopes. It can be
used to start a data collection run but cannot be used to record data. As it shares the
as the signal generator output, these two functions cannot be used at the
same time. It is possible, however, to use the output from the signal generator as a
A figure indicating the maximum number of samples the oscilloscope can acquire per
second. Maximum sample rates are usually given in MS/s (megasamples per second) or
GS/s (gigasamples per second.) The higher the sampling capability of the oscilloscope,
the more accurate the representation of the high-frequency details in a fast signal.
34
5
Glossary
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

35
The instrument formed by connecting a PicoScope 3000 Series PC Oscilloscope to a
computer running the PicoScope software application.
This is a software product that accompanies all our oscilloscopes. It turns your PC into a
data logger and chart recorder.
An oscilloscope range comprising the PicoScope 3204, 3205, 3206, 3224 and 3424 PC
This is a software product that accompanies all our oscilloscopes. It turns your PC into an
oscilloscope, spectrum analyser, and meter display.
Real time continuous mode
A sampling mode in which the software repeatedly requests single samples from the
oscilloscope. This mode is suitable for low sampling rates when you require the latest
sample to be displayed as soon as it is captured.
This is a feature on an oscilloscope which allows a signal to be generated without an
external input device being present. The signal generator output is the BNC socket
on the oscilloscope. If you connect a BNC cable between this, and one of the
channel inputs, you can send a signal down one of the channels. On some units, the
signal generator can generate a simple TTL square wave, while on others it can generate
a sine, square or triangle wave that can be swept back and forth. Consult the
Note: The signal generator output is physically the same as the external trigger input, so
these two functions cannot be used at the same time. It is possible, however, to use the
output from the signal generator as a trigger.
A sampling mode in which the oscilloscope samples data and returns it to the computer in
an unbroken stream. This mode of operation is suitable when the input signal contains
The minimum and maximum temperatures between which the oscilloscope is guaranteed
to meet its specifications. The 3204/5/6 PC Oscilloscopes are specified at a nominal
temperature of 25°C, and the 3224/3424 are specified over the range 20°C to 30°C.
The timebase controls the time interval that the width of the scope display represents. If
Timebase is time per division
dialog box, it works like a
traditional bench top scope. There are ten divisions across the screen, so the total time
interval is ten times the timebase.
aximum frequency at which the trigger circuit will reliably generate a trigger event.
PicoScope 3000 Series User Guide
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Glossary
Universal Serial Bus (Full Speed). This is a standard port that enables you to connect
external devices to PCs. A typical USB 1.1 port supports a data transfer rate of 12 Mbps
(12 megabits per second), and is much faster than a serial port.
Universal Serial Bus (High Speed). This is a standard port that enables you to connect
external devices to PCs. A typical USB 2.0 port supports a data transfer rate 40 times
faster than USB 1.1, and all USB 2.0 ports are backwards-compatible with USB 1.1.
A value, in bits, indicating the degree of precision with which the oscilloscope can convert
input voltages to digital values. Calculation techniques can improve the effective
The range of input voltages that the oscilloscope will measure in a given mode.
36
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

PicoScope 3000 Series User Guide37
Index
A
AC coupling 27
AC/DC switch 14, 26, 29
Accuracy 8
ADC 26, 28
Agilent Vee 31
Aliasing 27
Analog bandwidth 8
API 2
B
Bandwidth (analog) 8
Block mode 20, 26, 27, 29
BNC connector 6
Buffer 26, 27
Buffer size 8
F
Functions 26, 27, 28, 29
ps3000_close_unit 13
ps3000_flash_led 12
ps3000_get_timebase 15
ps3000_get_times_and_values 25
ps3000_get_unit_info 11
ps3000_get_values 24
ps3000_open_unit 10
ps3000_ready 22
ps3000_run_block 20
ps3000_run_streaming 21
ps3000_set_channel 14
ps3000_set_ets 18
ps3000_set_siggen 16
ps3000_set_trigger 19
ps3000_stop 23
G
Gain 27
C
C 29
C programming 30
Calibration 3
Channel 14, 15, 19, 24, 26, 27, 29
Compliance 8
Contact details 5
D
Data logger 2
DC coupling 27
Delphi programming 31
Device Manager 32
Dimensions 8
Driver 9, 26, 28, 29, 32
Driver error codes 9
E
Error codes 32
ETS 15, 18, 24, 25, 27, 29
Excel macros 31
External trigger 6, 8, 19, 27, 28
H
High speed 2, 26
I
Inputs 8
L
LED 12
Licence conditions 4
M
Macros in Excel 31
Maximum input range 3
Maximum sampling rate 8
Memory buffer 26, 27
Multi-unit operation 28
N
Normal mode 26
PS3000044 1.4
Copyright 2005 Pico Technology Limited. All rights reserved.

Index
38
O
One-shot signal 27
Operating environment 8
Oscilloscope probe 6
Outputs 8
Overload protection 8
Oversampling 27
P
PC connection 8
PC Oscilloscopes 2, 4
Pico Technical Support 32
PicoLog software 2, 9
picopp.inf 9
picopp.sys 9
PicoScope 3000 Series 2, 3, 4, 6, 9, 26, 27,
28, 29, 32
PicoScope software 2, 6, 9
Power supply 8
Pre-trigger 27
Programming in C 29, 30
Programming in Dephi 31
Programming in Visual Basic 30
T
Technical support 32
Test equipment 3
Threshold voltage 27
Time interval 27
Timebase 15, 20
Trademarks 4
Trigger bandwidth 8
Triggering 27
U
USB 2, 6
USB 1.1 2, 6
USB 2.0 2, 6
USB hub 28
USB port 32
V
Vertical resolution 8, 27
Visual Basic programming 30
Voltage ranges 8
R
Repair 3
Resolution (vertical) 8, 27
S
Safety symbols 2
Safety warning 3
Sampling rate 27
Sampling rate (maximum) 8
Scope probe 6
Signal generator 6, 8, 16, 27, 28, 29
Software control 28
Software error codes 32
Specifications 8
Spectrum analyser 2
Square wave 6
Streaming mode 21, 26, 29
Sweep 28
System requirements 6
W
Warranty 5
Windowed mode 26
Copyright 2005 Pico Technology Limited. All rights reserved.
PS3000044 1.4

PS3000044 1.4 17.10.05
Pico Technology Ltd
The Mill House
Cambridge Street
St Neots PE19 1QB
United Kingdom
Tel: +44 (0) 1480 396 395
Fax: +44 (0) 1480 396 296
Web: www.picotech.com