ArC TWO Control Panel
Project description
ArC TWO™ Control Panel
This is the frontend application for ArC TWO. It exposes functionality mostly related to crossbar configurations and provides a set of predefined experiments suitable for general and (P/R/FE)RAM devices characterisation.
Instructions
Installation
If you have a recent Python installer, stable ArC2Control versions are available from PyPI:
pip install arc2control
You can then run ArC2Control with:
python -m arc2control
Additionally, installers for Windows and AppImages for Linux are made periodically available from our releases page.
If you have git installed, you can also try out the latest development snapshot:
pip install git+https://github.com/arc-instruments/arc2control
Development
To develop on ArC2Control itself the recommended way to get started is by using
a virtual environment. ArC2Control uses poetry to
manage virtual environments. You might want to use a development version of
pyarc2 as well although that's
optional. We try to depend only on stable pre-built versions of pyarc2
but
that's not guaranteed.
- [Optional] You will need a functional Rust toolchain.
- You will need a relatively new Python (≥ 3.8) and also have poetry
installed (
python -m pip install poetry
). Pip must also be updated to at least version 20.x. - Clone this repository and descend into it.
- Initialise the virtual environment:
python -m poetry install
. This only needs to be done once. - [Optional] Update
pyarc2
to the latest development snapshot which can easily be done with the included scriptpoetry run python venv-pyarc2-update.py git+https://github.com/arc-instruments/pyarc2
. This will downloadpyarc2
via git, build it and install it into the virtualenv. - Run the setup script
poetry run python setup.py build
. - Run ArC2Control
poetry run python -m arc2control
.
Custom modules
ArC2Control can be extended with custom experiment panels. An ArC2Control experiment
module is a standalone Python module that includes the following in its __init__.py
.
MOD_NAME = 'ModuleName'
MOD_DESCRIPTION = 'Description of said module'
MOD_TAG = 'MN' # a shorthand tag for the module
BUILT_IN = False
from .module import MainModule
# MainModule must derive from arc2control.modules.base.BaseModule`
ENTRY_POINT = MainModule
The built-in experiment modules are also built with the same infrastructure so they can be used as a scaffold to build your own.
I have a question
Feel free to make a new topic under Discussions. This should be your first stop for support unless you are somewhat certain you run into a bug (which is very possible at this stage). In that case…
I found a bug!
If ArC2Control does not behave as you would expect please open an issue describing the problem and how to reproduce it. Don't forget to mention the operating system you are running on!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file arc2control-0.1.0.tar.gz
.
File metadata
- Download URL: arc2control-0.1.0.tar.gz
- Upload date:
- Size: 101.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8dfdf61a2383e54c031849ad8f179e0e977703d7a19358e01180dd024ce06657 |
|
MD5 | 3c19cf618ab1180d4d4ae014471625df |
|
BLAKE2b-256 | cd582c78db831e54f9c41793d101e8d70f54d9e1938619e694195da68b94e5e1 |
File details
Details for the file arc2control-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: arc2control-0.1.0-py3-none-any.whl
- Upload date:
- Size: 121.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6a4c5c6831be82f0a940fc418262af3b92aa178ce1c4f5428fb83c5178999e63 |
|
MD5 | 89484313b15cae6bef64837d7816cd8a |
|
BLAKE2b-256 | bc991fcae2806282e71be4bee462455481c6a5508f93fc9a22066f6e4b0e7e5f |