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
Last synced: 10 months ago · JSON representation ·

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
Created over 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

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

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

  • Versions: 14
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 62 Last month
Rankings
Dependent packages count: 10.5%
Average: 34.9%
Dependent repos count: 59.2%
Maintainers (1)
Last synced: 11 months ago
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.

  • Versions: 14
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 31 Last month
Rankings
Dependent packages count: 10.5%
Average: 34.9%
Dependent repos count: 59.2%
Maintainers (1)
Last synced: 10 months ago

Dependencies

pyproject.toml pypi
  • 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 *
requirements.txt pypi
  • PySide6 *
  • matplotlib *
  • numpy *
  • pandas *
  • pyqtgraph *
  • rich *
  • scipy *
src/setup.py pypi