Making Automation Lightweight
Our SDK allows you to write your own bespoke software with the provided drivers for Windows, macOS and Linux. The full PicoScope hardware functionality is available to the user through these drivers including ADC block and streaming capture and built-in function generator.
Get The Code
Pico Technology also provide example code hosted on the Pico Technology GitHub pages, showing how to interface to third-party software packages such as Microsoft Excel, National Instruments LabVIEW and MathWorks MATLAB and programming languages like C, C#, C++, VB.NET and python.
Comprehensive Documentation
To compliment our SDL, we provide Programming Guides for all oscilloscopes, dataloggers and RF equipment. Download the right guide for your product below.
What is the PicoScope SDK?
Creating automated test setups, integrating an oscilloscope into an embedded test system or using our instruments as a DAQ is a means to high quality measurements, not something we think our customers should need to spend weeks getting to grips with.
How does the SDK work?
At Pico Technology, we don’t use a finite list of scpi commands like the rest of the brands in the high-quality Oscilloscope market, we let you interface directly with our instrument drivers.
By installing our SDK, you can access our API to directly control the instrument drivers using any high-level programming language.
PicoSDK enables the Pico instrument drivers to process commands in the background, allowing your code to continue running in parallel. This removes the complexity of building multi-thread support in to your program.
C, asynchronous callbacks are fully supported, allowing streaming of continuous data from your Pico device back to your application.
Examples of the Pico SDK
Control your Oscilloscope with Python
import ctypes
from picosdk.ps6000a import ps6000a as ps
chandle = ctypes.c_int16()
status = {}
status["openunit"] = ps.ps6000aOpenUnit(ctypes.byref(chandle), None, resolution)
Control your Oscilloscope with MATLAB
Control your Oscilloscope with C
#include <stdio.h>
#include "windows.h"
#include <conio.h>
#include "ps6000aApi.h"
status = ps6000aSetDataBuffer(handle, PICO_CHANNEL_A,
streamBuffers[0], sampleCount, PICO_INT16_T, 0, PICO_RATIO_MODE_RAW, PICO_ADD);
Control your Oscilloscope with LabVIEW
Control your Oscilloscope with C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using DriverImports;
using PicoPinnedArray;_RAW, PICO_ADD);
status = ps6000aDevice.ReadDataFromDevice(handle, channel,
numSamples, ref data)
Our Driver does the heavy lifting so you can keep your application lightweight!
Automating test setups makes acquiring high-quality measurements fast, repeatable and robust. Pico Technology provide the tools and the support needed to take your test system integration to the next level.
Control your oscilloscope, log your acquired data or create your custom test systems quickly and easily.