How picotech/picosdk-python-wrappers works
PicoSDK Python wrappers let applications discover and control PicoScope/PicoLog hardware through vendor C drivers, with a higher-level Python device API and lower-level ctypes bindings. The main workflow is application → discovery/open → configure and capture → convert or process samples → use results. The repository also documents block, rapid-block, streaming, triggering, digital/MSO, and signal-generator examples, plus standalone Ethernet clients for select loggers. Driver-specific wiring is summarized because only a subset of source was sampled.
Main entry points: ps4000a.py Driver bindings · ps5000aRapidBlockExample.py Block and rapid capture · device.py Device API · discover.py Device discovery
Components 16
Python API
- Device discovery
picosdk/discover.py - Device API
picosdk/device.py - Library base
picosdk/library.py - Conversions and checks
picosdk/functions.py
Driver Bindings
- Driver bindings
picosdk/ps4000a.py - Other device APIs
picosdk
Acquisition Examples
- Block and rapid capture
ps5000aExamples/ps5000aRapidBlockExample.py - Streaming capture
ps2000Examples/streaming_mode/streaming_mode.py - Digital and MSO
ps2000aExamples/ps2000aMSOBlockExample.py - Signal generation
ps4000aExamples/ps4000aSigGen.py - Example output
ps4000aExamples/ps4000aRapidBlockWaveformAveragingExample.py
Ethernet Clients
- Direct Ethernet clients
pt104Examples/pt104DirectEthernet.py
Other components
- Python application
- PicoSDK C drivers
- PicoScope / PicoLog
- Ethernet instruments
Connections 15
- Python application → Device discovery: requests devices
- Device discovery → Device API: returns devices
- Device API → Library base: uses API
- Library base → Driver bindings: loads driver calls
- Driver bindings → PicoSDK C drivers: calls
- PicoSDK C drivers → PicoScope / PicoLog: controls
- Python application → Device API: controls device
- Block and rapid capture → Driver bindings: configures and captures
- Streaming capture → Other device APIs: streams samples
- Digital and MSO → Driver bindings: configures digital capture
- Signal generation → Driver bindings: configures output
- Block and rapid capture → Conversions and checks: converts and checks
- Block and rapid capture → Example output: plots results
- Python application → Direct Ethernet clients: runs client
- Direct Ethernet clients → Ethernet instruments: sends and receives UDP