This is an old revision of the document!
Table of Contents
Features highlight
Oscopy is an interactive oscilloscope written in python designed to simplify the electrical design workflow. It allow to read, view and post-process signals with support for automatic dependency tracking.
File re-reading (updates) can be triggered by external applications like gEDA suite through D-Bus messaging system, and then Oscopy can call netlist generator and electrical simulator programs automatically.
As oscopy is built on top of IPython, post-processing include as well as simple arithmetic operations as complex functions like FFT. Oscopy can be easily extended to a multi-purpose viewer, as adding new data file formats and new types of plots is really easy.
Note: oscopy executable is called ioscopy
to show it is built on top of IPython, and to prepare the separation between the framework (which manages Signals, Figures and Graphs) and the application (which manages the user interface).
- Post-processing: math expressions (through numpy ufuncs, numpy.fft)
- View, examine: multiple windows, cursors
- Data import: see below
- Data export: gnucap, pictures
- Dependency tracking during file updates
- Scripting
- D-Bus support: update recursively Signals by sending events from external program (e.g. gschem)
- Run netlister and simulator from oscopy
- Integration with gschem
Supported input formats
Format | Description | Notes |
---|---|---|
Gnucap | Text format from Gnucap | |
Cazm* | Text format from CaZM | |
Nsout* | NanoSim format from Synopsis | Independent variable assumed to be Time |
Spice2raw* | Berkeley Spice2G6 raw format | Only one dataset per file, Date and Time fields not processed |
Spice3raw* | Berkeley Spice3 format | ascii and binary format supported, real and complex numbers supported. Only one simulation per file. |
Hspice* | Hspice format | ascii and binary format supported. Only one sweep per file. Auto signals are note returned, only probe signals are. Endianness is not managed in binary mode. |
Touchstone®* | Touchstone® s2p and co. from IBIS Open Forum | Version 1 and 2.0 supported. for version 1 uses the file extension to determine the number of ports ('.snp' where n is 1-4). Noise parameter data is read and stored in self.info['noise_param']. Mixed mode parameters of version 2.0 not supported. |
* present in experimental branch
Mathematics
Support for mathematic with signals is implemented. Supported functions:
numpy.ufuncs and numpy.fft
Cursors
In each Graph, horizontal and vertical cursors can be toggled by using keys '1', '2', '3' and '4'.
Drag and drop
You can drag'n drop signals from the signal list window to each graphs.