pyadscopecontrol
Science Score: 57.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 6 DOI reference(s) in README -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.3%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: agentsmith29
- License: gpl-3.0
- Language: Python
- Default Branch: main
- Size: 1.03 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
- Releases: 13
Metadata Files
README.md
ADScopeControl: Python Project for Digilent Analog Devices USB Oscilloscope Control
PyADScopeControl (Analog Discovery Scopes) is a Python project developed to control Digilent's Analog Discovery Essentials USB oscilloscopes. The following models are fully supported, however only the Analog Discovery 2 has been tested for use: - Analog Discovery 2 (Tested) - Analog Discovery 3 (Not Tested) - Analog Discovery Studio (Not Tested) - Digital Discovery (Not Tested)
Installation and Usage
Installation
Using pip and PyPI
bash
pip install PyADScopeControl
Using pip and the repository
bash
pip install git+https://github.com/agentsmith29/PyADScopeControl.git
Cloning from source
Clone the repository:
bash
https://github.com/agentsmith29/PyADScopeControl.git
Install dependencies:
```bash
Create a virtual environment
python -m venv .venv
Activate the virtual environment on Windows and GitBash
. .venv/bin/activate
Activate the virtual environment on Windows and cmd
.venv\Scripts\activate
Activate the virtual environment on Linux/MacOS
source .venv/bin/activate
Install dependencies
pip install -r requirements.txt ```
Usage
Run the main script:
Direct Usage
If you just want to run the script directly, you can use the following command:
bash
python examples/main.py
Using the package
If you want to use the package in your own code, you can import the package and use it as follows: Package documentation for the config can be found here (confPy6).
```python from PyADScopeControl import ADScopeControl
The config class, that stores the configuration for the scope
using the confPy6 package (https://github.com/agentsmith29/confPy6).
conf = CaptDevice.Config()
Enable the log
conf.internallogenabled = False
--- Create the model, controller, and view. ---
Pass the config to the model.
model = CaptDevice.Model(conf)
Pass the model and None to the controller.
The second argument startcaptureflag (here set to None) is a multiprocessing.Value that
triggers the scope.
This can be used to create a shared value between processes (e.g. a trigger by another process)
controller = CaptDevice.Controller( model, None # startcaptureflag: multiprocessing.Value, triggers the scope )
Create the view
window = CaptDevice.View(model, controller)
Show the window
window.show() ```
An example how to use this package in conjunction with another package can be found in the PySacherECLControl repository.
GUI
Use the graphical interface to adjust laser parameters, monitor data, and control the laser. Refer to the user manual or documentation for detailed instructions on specific operations and functionalities.
Contributing
Contributions to Laser Control are welcome! If you have suggestions for improvements, encounter any issues, or would like to add new features, please feel free to open an issue or submit a pull request on the GitHub repository.
Citing
This project is part of the Software FlexSensor, which has been published under DOI 10.2139/ssrn.4828876.
Please cite it correctly.
Schmidt, Christoph and Hinum-Wagner, Jakob Wilhelm and Klambauer, Reinhard and Bergmann, Alexander, Flexsensor: Automated Measurement Software for Rapid Photonic Circuits Capturing. Available at SSRN: https://ssrn.com/abstract=4828876 or http://dx.doi.org/10.2139/ssrn.4828876
License
This project is licensed under the MIT License. See the LICENSE file for details.
Acknowledgements
Owner
- Name: Christoph Schmidt
- Login: agentsmith29
- Kind: user
- Repositories: 1
- Profile: https://github.com/agentsmith29
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: >-
FlexSensor: Automated measurement software for rapid
photonic circuits capturing
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Christoph
family-names: Schmidt
affiliation: Graz University of Technology
email: christoph.schmidt@tugraz.at
orcid: 'https://orcid.org/0009-0000-6625-3316'
- given-names: Jakob Wilhelm
family-names: Hinum-Wagner
affiliation: ams-OSRAM AG
- given-names: 'Reinhard '
family-names: Klambauer
affiliation: Graz University of Technology
- given-names: Alexander
family-names: Bergmann
affiliation: Graz University of Technology
identifiers:
- type: doi
value: 10.1016/j.softx.2024.101879
repository-code: 'https://github.com/agentsmith29/flexsensor'
url: 'https://github.com/agentsmith29/flexsensor'
abstract: >-
This paper introduces the automation measurement software
FlexSensor for capturing resonant spectra, an innovative
and extensible software program developed explicitly for
measuring and evaluating wafer-level Silicon Photonic
(SiPh) circuits. Wafer-level Silicon Photonics allows the
integration of numerous optical components and structures
on a single wafer. However, researchers and engineers need
precise and repeatable measurements to characterize them
and face significant challenges when dealing with large
numbers of complex systems on a single wafer. A toolchain
gap hampers the measuring of such highly integrated
photonic structures: While the setup necessitates the
integration of an optimized hardware and software
toolchain, there is neither software nor a standardized
way to implement a reproducible measurement routine for a
massive set of measurements.
FlexSensor allows integration and control of external
hardware (tunable lasers, analog–digital converters) and
supports measurement data storage and evaluation. The
software enables researchers and engineers to efficiently
analyze the spectral response of photonic structures and
facilitate rapid measuring.
keywords:
- Silicon photonics
- Wafer-level measurements
- Measurement automation
- Graphical user interface
license: CC-BY-4.0
GitHub Events
Total
- Create event: 11
- Issues event: 1
- Release event: 6
- Delete event: 3
- Issue comment event: 2
- Push event: 38
Last Year
- Create event: 11
- Issues event: 1
- Release event: 6
- Delete event: 3
- Issue comment event: 2
- Push event: 38
Packages
- Total packages: 2
-
Total downloads:
- pypi 93 last-month
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 0
(may contain duplicates) - Total versions: 28
- Total maintainers: 1
pypi.org: pyadscopecontrol
A UI for controlling the Analog Discovery Series
- Homepage: https://github.com/agentsmith29/PyADScopeControl
- Documentation: https://pyadscopecontrol.readthedocs.io/
- License: GNU General Public License v3 (GPLv3)
-
Latest release: 1.2.8
published over 1 year ago
Rankings
Maintainers (1)
pypi.org: pysachereclcontrol
PySacherECLControl is a python project developed to control Sacher TEC lasers. This project offers a convenient interface for users to interact with the laser, adjust parameters, and perform various operations for laser control and management.
- Homepage: https://github.com/agentsmith29/PyADScopeControl
- Documentation: https://pysachereclcontrol.readthedocs.io/
- License: GNU General Public License v3 (GPLv3)
-
Latest release: 1.2.8
published over 1 year ago
Rankings
Maintainers (1)
Dependencies
- PySide6 *
- cmp @git+https://gitlab.tugraz.at/flexsensor-public/modules/cmp.git@develop
- confighandler @git+https://gitlab.tugraz.at/flexsensor-public/modules/confighandler.git@develop
- fswidgets @git+https://gitlab.tugraz.at/flexsensor-public/modules/fswidgets.git@develop
- matplotlib *
- numpy *
- pandas *
- pyqtgraph *
- rich *
- scipy *
- PySide6 *
- matplotlib *
- numpy *
- pandas *
- pyqtgraph *
- rich *
- scipy *