Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Unofficial python wrapper for the PicoScope devices.

Project Description
This is a Python 2.7+ library for the Pico Scope. It uses the provided DLL
for actual communications with the instrument. There have been a few examples
around, but this one tries to improve on them via:
* Subclass instrument-specific stuff, so can support more families
* Use exceptions to raise errors, and gives you nice english error messages (copied from PS Manual)
* Provide higher-level functions (e.g. just setup timebase, function deals with instrument-specific limitations)
* Supports both Windows and Linux

System has support for:
* PS6000
* PS5000A Class (PicoScope 5242A/5243A/5244A/5442A/5443A/5444A/5242B/5244B/5442B/5443B/5444B)
* PS3000 Class (PicoScope 3204/3205/3206/3224/3424/3425)
* PS3000A Class (PicoScope 3204A/3204B/3205A/3205B/3206A/3206B/3207A/3207B/3204/3205/3206/3404A/3404B/3405A/3405A/3406A/3406B)
* PS2000 Class (PicoScope 2104/2105/2202/2203/2204/2205/2204A/2205A)
* PS2000A Class (PicoScope 2206/2206A/2206B/2207/2207A/2207B/2208/2208A/2208B/2205A MSO/2206B MSO/2207B MSO/2208B MSO/2405A/2406B/2407B/2408B)

Note the 'A' series covers a different ground than the non-A series! Check the programming manuals posted at for details.

Getting DLLs

You will require the PicoScope DLLs for this package to work. The easiest method is to install the latest PicoScope software
or SDK from .

Installation Information from PyPI

You can install the program with a simple:
pip install picoscope

You will require the DLLs (described above).

Installation Information from GIT
If you will be getting updated code from git, use git clone to put the directory
somewhere. Then do the following to generate a link to your git directory:
python develop

If you want the normal installation (e.g. copies files to Python installation) use:
python install

Additional Installation Information for Linux
Install the PicoScope Beta for Linux version of PicoScope as describe under Getting DLL's (above). Currently this is the only way to install the shared libraries (SDK)

Install pico-python using either method described above.

Once you have PicoScope running you need to add your login account to the pico group in order to access the USB. The examples will crash if you don't have permission to use the USB. This is true for use of the shared libraries in general, even if you're not using pico-python.

useradd -G pico <username>

Finally, you need to log in again for the group change to pick up:

su <username>

Similar Projects
PicoPy uses Cython to interface with a PicoScope 3000A

Authors, Copyright, and Thanks
pico-python is Copyright (C) 2013 By:
* Colin O'Flynn <>
* Mark Harfouche <>

All rights reserved.
See for license terms.

Inspired by Patrick Carle's code at
which was adapted from

1. Fork.
2. Make a new branch.
3. Commit to your new branch.
4. Add yourself to the authors/acknowledgements (whichever you find appropriate).
5. Submit a pull request.
Release History

Release History

This version
History Node


History Node


Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date (70.5 kB) Copy SHA256 Checksum SHA256 Source Feb 7, 2017

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting