Skip to content

Latest commit

 

History

History
65 lines (40 loc) · 2.04 KB

README.md

File metadata and controls

65 lines (40 loc) · 2.04 KB

Arcus Py Driver

Arcus Py Driver is a Python USB driver designed to facilitate communication with Arcus DMX-J-SA-17 stepper motors.

Overview

The Arcus Py Driver offers seamless USB communication with the motor driver, enabling the transmission of ASCII commands for precise motor control. A comprehensive list of available commands can be found in the motor manual

Features

  • PerformaxUSB: A native USB driver developed using the PyUSB library. This component was meticulously crafted through reverse engineering, leveraging USBPcap and Wireshark to sniff and analyze USB packets for insights. Relevant captures are provided within this repository.

  • PerformaxDll: A wrapper for the manufacturer-provided DLLs, accessible on the official website. Leveraging ctypes, this component interfaces with the DLLs, albeit with exclusive compatibility for Windows systems.

Getting Started

Dependencies

  • Python >= 3
  • PyUSB

Installation

  1. Clone this repository:

    git clone https://github.com/gcibeira/arcus-py-driver.git
    
  2. Install the PyUSB library:

    pip install pyusb
    

Usage

  1. Execute the provided example file:

    python example.py

    This example establishes communication with any motor connected to the USB port. It presents a prompt for sending commands to the motor. Experiment with the following commands to begin:

    • EO=1: Power ON the motor.
    • HSPD=2400: Set the speed to 2400.
    • J+: Move the motor forward.

Author

Copyright (c) 2023 Gerardo D. Cibeira

Version History

  • 0.2

    • Implementation of the PerformaxDevice class to manage multiple device instances.
  • 0.1

    • Initial Release

License

This project is licensed under the MIT License. Refer to the LICENSE.md file for more details.

External Resources