Skip to main content

Generic CNC firmware and driver for FPGA cards which are supported by LiteX

Project description

Welcome to LiteX-CNC!

This project aims to make a generic CNC firmware and driver for FPGA cards which are supported by LiteX. Configuration of the board and driver is done using json-files. The supported boards are the Colorlight boards 5A-75B and 5A-75E, as these are fully supported with the open source toolchain.

Supported Python version
LitexCNC is not (yet) supported on Python 3.13. This is due to an issue in a dependency. As soon as this dependency has been fixed, the Python requirement will be eased.

RV901T
Although the RV901T is also supported by Litex, the firmware cannot be automatically build with LitexCNC, as it requires the Xilinx-software to compile the Verilog to a bit-stream. LitexCNC can be used to create the Verilog and the driver will work when the bit-stream is loaded on the board. However, there is a gap in the toolchain not covered. There are known issues with the compantibility of Litex with Xilinx.

The idea of this project was conceived by ColorCNC by romanetz on the official LinuxCNC and the difficulty to obtain a MESA card.

Acknowledgements

This project would not be possible without:

  • ColorCNC by romanetz link;
  • HostMot2 (MESA card driver) as the structure of the driver has been adopted.

Quick start

LitexCNC can be installed using pip:

pip install litexcnc

NOTE: Suffix [cli] deprecated!
In previous versions the suffix [cli] was required. This requirement has been removed since version 1.2 and deprecated since version 1.3. The suffix will be removed in version 1.4.

After installation of LitexCNC the following scripts are available to the user:

litexcnc install_driver
litexcnc install_litex
litexcnc install_toolchain
litexcnc build_driver

For a full overview on how to use the commands, please refer to the documentation.

Project details


Download files

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

Source Distribution

litexcnc-1.3.4.tar.gz (101.2 kB view details)

Uploaded Source

Built Distribution

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

litexcnc-1.3.4-py3-none-any.whl (153.9 kB view details)

Uploaded Python 3

File details

Details for the file litexcnc-1.3.4.tar.gz.

File metadata

  • Download URL: litexcnc-1.3.4.tar.gz
  • Upload date:
  • Size: 101.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for litexcnc-1.3.4.tar.gz
Algorithm Hash digest
SHA256 7b10497e68f1d252b40e5611182a3a5c3636ec162ad1ed266209030f2b8491d9
MD5 c80cfdb4fb088915324d24f45b23bf54
BLAKE2b-256 0e7aebe69c9bb43027d55ea89bc121a8f81d1588f6febf7b51c5c6b1d10586ae

See more details on using hashes here.

Provenance

The following attestation bundles were made for litexcnc-1.3.4.tar.gz:

Publisher: python-publish.yml on Peter-van-Tol/LiteX-CNC

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file litexcnc-1.3.4-py3-none-any.whl.

File metadata

  • Download URL: litexcnc-1.3.4-py3-none-any.whl
  • Upload date:
  • Size: 153.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for litexcnc-1.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 f85e303e994b32f46034f244cafc5a3d611dd4c6d42222d44a70c4e2a0cb0266
MD5 43a7d47b1ad2266409edc1c6d018600d
BLAKE2b-256 4241a766bd915e8c0bb16ce9bd6f4a2ab2cad0f52773e2c7dc0a50ca8ea6f76b

See more details on using hashes here.

Provenance

The following attestation bundles were made for litexcnc-1.3.4-py3-none-any.whl:

Publisher: python-publish.yml on Peter-van-Tol/LiteX-CNC

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page