Skip to main content

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 installed, 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 script poetry run python venv-pyarc2-update.py git+https://github.com/arc-instruments/pyarc2. This will download pyarc2 via git, build it and install it into the virtualenv.
  • Run the setup script poetry run python -m 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!

Metadata

Release files for arc2control 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for arc2control 0.2.0
File Size Uploaded
arc2control-0.2.0.tar.gz 113.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for arc2control 0.2.0
File Interpreter ABI Platform
arc2control-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 252.8 kB

Release files / arc2control-0.2.0.tar.gz

Download URL arc2control-0.2.0.tar.gz
Size 113.0 kB
Tags Source
SHA-256 checksum
How to use checksums
32afb8ab18edae29d4bbe2d9405f51d8050615eeafe6667db58bed262764962b
BLAKE2b-256 checksum
How to use checksums
26ba51071f1699aad294a904ac3e589461f64258155d68b6338541d7a461f550
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Release files / arc2control-0.2.0-py3-none-any.whl

Download URL arc2control-0.2.0-py3-none-any.whl
Size 139.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2e915b7e710a4e68337dbd8c2b268da8ee107e78490537d3e5b973b29c38d585
BLAKE2b-256 checksum
How to use checksums
250bafaf2a947aaabfce724ee7a2ec8176204cec37173164b4727ec64a809e2a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page