Repository navigation
ZScope v2.2.0
Stable release for Windows. Includes all core EIS fitting features.
What's New
This release is about keeping your work. A whole session, every dataset, its circuit, its fits, its DRT results and its import settings, now saves into a single project file and reopens exactly as you left it. Importing got faster too: load a whole batch of files at once instead of one at a time, with columns detected automatically and only the awkward files asking for your attention.
✨ New Features
Save & Open Project Your entire session now fits in one .zscope file: every loaded dataset, its circuit, its fit and Bayesian results, its DRT analysis, and its import column mapping. Reopen it and everything is where you left it. The file is an ordinary ZIP archive with a readable manifest inside, so a colleague can inspect it without ZScope, and numerical data is stored exactly — reloading a project gives you bit-for-bit the same numbers you saved.
Export datasets as separate project files Split a batch into one independently-reopenable project per dataset. Unlike CSV export, which keeps only the raw numbers, each file carries that dataset's circuit, fit and DRT results with it.
Paste data from the clipboard Copy a block of cells in Excel, LibreOffice, Origin or a text editor and press Ctrl+V in ZScope; the import dialog opens on the pasted table and the rest of the procedure is identical to importing a file. The separator and decimal convention are worked out automatically, including semicolon-separated European spreadsheet exports with decimal commas (1,0E+05;10,5;0,21) — a table a naive parser reads off by a factor of ten. Pasted data is saved to a timestamped file so the analysis stays reproducible, rather than depending on a clipboard buffer that has since moved on.
Import several files at once Select or drag in a whole folder's worth of spectra. ZScope reads each one, detects its columns, and shows you a review list with point counts and frequency ranges before anything is loaded. Files from the same instrument share a layout, so a typical batch needs one click. Any file that needs attention opens the full import editor on its own, and one file's column mapping can be applied across the whole batch at once.
Import source tracking Every spectrum records how it was obtained: columns detected automatically, columns chosen by you, or data values edited by hand. It's shown while importing, written to the log, and saved into the project file so months later you can still tell which curves are the file as measured and which carry a human decision.
🔧 Improvements
Drag and drop now asks what you meant Dropping files onto the window offers Add (keep what's loaded and bring the new data in alongside) or Replace (start over from the new data). Previously a drop always added, with no way to say you meant to start fresh. The question is skipped when nothing is loaded yet.
Help manual updated New chapters cover projects and the .zscope format, batch importing, and pasting from the clipboard; the keyboard shortcut reference has been regrouped and now lists every shortcut in the application.
Unsaved work is visible, and you're asked before it's lost The window title marks a session with unsaved changes, and closing the app offers to save first. It only asks when there's genuinely something to lose, so it stays worth reading. If saving fails or you back out of the file dialog, closing is cancelled rather than going ahead without your work.
Standard save shortcuts Ctrl+S saves straight back to the current project file, asking for a location only the first time. Ctrl+Shift+S saves to a new file. Ctrl+Shift+I imports multiple files.
🐛 Fixes
DRT results no longer lost when switching datasets A computed DRT was previously held only for whichever dataset was active, so switching away silently discarded it. DRT results now belong to their dataset, follow it as you switch, and save with the project.
Dropping multiple files imported only one Dragging in several files at once quietly loaded the first and ignored the rest, with no message. All dropped files are now handled, and anything in an unsupported format is reported rather than skipped in silence.
🔄 Also New: From v2.1.0
This release focused on intelligent automation and core performance. We supercharged the circuit proposer with AI capabilities, allowed you to connect your own AI accounts, and significantly improved the evaluation tools for Fitting, DRT, and Kramers–Kronig. Along with new benchmarks and a major boost to fitting speed for large circuits, this update made building and validating your models faster and smarter.
✨ New Features
- AI-Enhanced Circuit Proposer We've integrated both local and online AI directly into the circuit proposer to help analyze your data and suggest smarter, more accurate equivalent circuit models.
- Custom Circuit Proposer Accounts You now have the option to import and connect your own AI account directly into the app. This gives you the flexibility to use your personal or enterprise AI accounts to power the circuit proposer.
- New Performance Benchmarks We've prepared and integrated a new suite of benchmarks to help you rigorously evaluate, compare, and validate the performance of your circuit models.
🔧 Improvements
- Refined Circuit Proposer Mechanism Beyond the new AI integrations, the underlying architecture of the circuit proposer has been fundamentally improved for better baseline accuracy and reliability.
- Upgraded Fitting, DRT, and KK Evaluation Core evaluation and validation tools have been enhanced. Expect improved accuracy, better handling of edge cases, and more robust metrics across standard Fitting, Distribution of Relaxation Times (DRT), and Kramers–Kronig (KK) checks.
🐛 Fixes
- Improved Speed of Fitting Fixed the slow Trust-Region Reflective (TRF) fitting for large circuits. This resolves a major performance bottleneck, drastically improving the overall speed of fitting so that complex and large models process much faster.
🔄 From v2.0.0
This pass focused heavily on data traceability, fitting reliability, and getting your circuit models out of the app and into your reports.
✨ New Features
- Multi-dataset comparison on import Load several experimental datasets side by side for direct comparison, instead of working through them one at a time.
- Circuit export as image / vector / notation Export your equivalent circuit as a raster image, vector graphic, or plain-text notation, both from the canvas and inside generated reports. A new toggle lets you choose whether the circuit diagram is included in the report at all.
- Undo Step back through recent parameter changes, so you can experiment with values without losing a good result.
- 1:1 view Jump the canvas to true 1:1 scale for precise, undistorted viewing of your circuit.
- Editable imported data Data brought in through the import dialog can now be edited directly, rather than requiring a fresh re-import to fix a value.
- Fit scoring settings New settings let you configure how fit quality is scored, so the metric better matches how you evaluate a good fit.
🔧 Improvements
- Data file name now shown in the UI The name of the currently loaded data file is now visible, so you always know which dataset you're looking at.
- Expanded instrument format support Broader coverage of potentiostat export formats on import, reducing the need to pre-process files before loading them into ZScope.
- CPE exponent range The CPE exponent now defaults to the physically standard 0–1 range, with the option to expand it to 0–2 for cases that call for it.
- Copy applied to the import dialog Copy behavior now works correctly from within the import dialog.
- Menu bar updated All recent feature additions are now properly wired into the menu bar, so nothing is reachable only through a hidden shortcut.
- Help manual updated The in-app help manual has been revised to reflect every change in this release.
🐛 Fixes
- Bayesian MCMC step count mismatch Fixed an inconsistency where the maximum number of MCMC steps shown in the log (25,000) didn't match the actual maximum available in the settings menu (50,000). The two are now consistent.
- Kramers–Kronig check fixed Resolved an issue affecting the accuracy/behavior of the KK validation check.
- Export mechanisms fixed across the app Cleaned up and corrected the various export pathways (figures, data, reports) that had inconsistent or broken behavior.
Have a feature request or found something that doesn't work as expected? [Open an issue](https://github.com/Tecush/ZScope/issues), it shapes what comes next.