Skip to main content

pico_sdk

High performance, gap-free streaming from any Pico Technology oscilloscope.

Note: This is not an official Pico Technology package

This package wraps all current Pico oscilloscope drivers in a high-level, common API written in Rust. This API is compiled to native code and exposed to Python through simple C bindings.

Supported platforms

Python >= 3.6 on:

  • Windows (32/64bit)
  • macOS (64bit)
  • Linux (64bit)
from pico_sdk import PicoDevice

# List the available Pico devices
found = PicoDevice.enumerate()
for device in found:
    print("PicoScope " + device.variant + " with serial " + device.serial)

# Open the only connected device using locally installed Pico SDKs
device = PicoDevice.open()

# Open a specific device by serial number using locally installed Pico SDKs
device = PicoDevice.open("ABC/123")

# Open a device by serial number and automatically download missing drivers
device = PicoDevice.open("ABC/123", True)

# Get device details
print("Device Serial: " + device.get_serial())
print("Device variant: " + device.get_variant())
print("Valid ranges for channel A: " +
      ", ".join(device.get_channel_ranges("A")))

# String case and white space are ignored
device.enable_channel("A", "200mV")
device.enable_channel("b", "20 v", "dc")


def callback(data):
    # Callback data is a dictionary containing an entry for each channel
    # Channel data is via numpy.ndarray containing float values in volts
    print("Received streaming data...")
    for channel in data:
        print("Channel " + channel + " has " +
              str(data[channel].size) + " samples")


device.set_callback(callback)
samples_per_second = device.start_streaming(1_000_000)

print("Streaming started with " + str(samples_per_second) + " samples per second")
input('Hit ENTER to stop and exit\n')

Release files for pico-sdk 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pico-sdk 0.1.4
File Size Uploaded
pico_sdk-0.1.4.tar.gz 1.7 MB Details

Release files / pico_sdk-0.1.4.tar.gz

Download URL pico_sdk-0.1.4.tar.gz
Size 1.7 MB
Tags Source
SHA-256 checksum
How to use checksums
46910ff785f9d98978b1f84f0aba195be8b408c3fc9c831d7934c90e5e7c662f
BLAKE2b-256 checksum
How to use checksums
0bf42caedfb71c26a8c75556e83fccec21c6de6e05d5648087c32f7a7ed2185e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.9.0

Release history Release notifications | RSS feed

This release

0.1.4 This release

1 release file

0.1.3

1 release file

0.1.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page