Skip to main content

Command and Real-time Acquisition in Parallelized PYthon (CRAPPY)

Downloads Documentation Status PyPi version Python version

CRAPPY aims to provide a free and open-source software canvas for driving experimental setups in a versatile and accessible way.

Presentation

Setups in experimental research tend to get increasingly complex, and require to drive a variety of actuators, sensors, and cameras from various suppliers. However, as researchers are one step ahead of industrials, the commercially available testing solutions are not always well-suited to their objectives. Developing a custom software interface is also not always an option, as the synchronization of the devices and the optimization of the computer resources can prove challenging even to experienced developers.

The purpose of CRAPPY is to provide a framework for driving experimental setups, in which even the most complex designs can be controlled in usually less than a hundred lines of code. CRAPPY is:

  • A free and open source Python module
  • Written in pure Python, to make it easily understandable and editable by a large audience
  • Highly modular and versatile, and can adapt to almost any setup
  • Distributed with a wide collection of ready-to-run examples
  • Heavily optimized, to make the most of your computer's resources
  • Distributed with a collection of powerful tools for performing real-time data and image processing

Crappy is developed at the LaMCube, a mechanical research laboratory based in Lille, France, where it is used mainly for materials testing.

Requirements

CRAPPY can run with Python 3.10 to 3.14, and has been tested on Windows, Linux, Raspberry Pi and macOS. It can probably run on other operating systems supporting the required Python versions.

CRAPPY has only one requirement: Numpy (2.0.0 or higher). In addition, other modules can be necessary depending on which features you want to use. The main ones are Matplotlib, openCV, pyserial and Pillow.

Installation

CRAPPY is distributed on PyPI, and can be installed on the supported operating systems simply by running the following command in a terminal:

python -m pip install crappy

You'll find more details in the dedicated installation section of the documentation, as well as alternative installation methods.

Citing Crappy

If Crappy has been of help in your research, please reference it in your academic publications by citing one or both of the following articles:

  • Couty V., Witz J-F., Martel C. et al., Command and Real-Time Acquisition in Parallelized Python, a Python module for experimental setups, SoftwareX 16, 2021, DOI: 10.1016/j.softx.2021.100848. (link to Couty et al.)
  • Weisrock A., Couty V., Witz J-F. et al., CRAPPY goes embedded: Including low-cost hardware in experimental setups, SoftwareX 22, 2023, DOI: 10.1016/j.softx.2023.101348. (link to Weisrock et al.)

Documentation

The latest versions of the documentation can be accessed on our ReadTheDocs page. It contains a description of Crappy's features, tutorials, and other useful information.

License

GNU GPLv2 © 2015, Laboratoire Mécanique de Lille & contributors

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

crappy-2.0.10.tar.gz (709.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

crappy-2.0.10-py3-none-any.whl (840.3 kB view details)

Uploaded Python 3

File details

Details for the file crappy-2.0.10.tar.gz.

File metadata

  • Download URL: crappy-2.0.10.tar.gz
  • Upload date:
  • Size: 709.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for crappy-2.0.10.tar.gz
Algorithm Hash digest
SHA256 fa15093c71da8a5bf65b42525a9b1a01fcd3c854d771fcee581a31d35c9ce810
MD5 7ffd6384d99da0b0dd3984580764db79
BLAKE2b-256 6332a698e2c64fd0e7dd27f8f971cc8f5b264b1f3e81b5974363407540647cb9

See more details on using hashes here.

File details

Details for the file crappy-2.0.10-py3-none-any.whl.

File metadata

  • Download URL: crappy-2.0.10-py3-none-any.whl
  • Upload date:
  • Size: 840.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for crappy-2.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 202b82930500fca65597c392e422e25187761561daccabe820ded149cc4ca9b9
MD5 e03e5c5f3f2502be713781924301a016
BLAKE2b-256 1a251cff450e4d3ddc0c3cf9ddd6230f02640a6a0dd79d10a5c8f0e7268623d8

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

2.0.10 This release

2 files

2.0.9

2 files

2.0.8

2 files

2.0.7

2 files

2.0.6

2 files

2.0.5

2 files

2.0.4

2 files

2.0.3

2 files

2.0.2

2 files

2.0.1

2 files

2.0.0

2 files

1.5.11

2 files

1.5.10

2 files

1.5.9

2 files

1.5.8

2 files

1.5.7

2 files

1.5.6

2 files

1.5.5

2 files

1.5.4

2 files

1.5.3

2 files

1.5.2

2 files

1.5.1

2 files

1.5.0

2 files

1.4.3

2 files

1.4.2

2 files

1.4.1

2 files

1.4.0

2 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