Skip to content

Wrote Python drivers for the Pollux Drive#12

Open
Speedy939 wants to merge 4 commits into
mainfrom
11-develop-python-driver-for-pollux-drive-semi-ate-integration
Open

Wrote Python drivers for the Pollux Drive#12
Speedy939 wants to merge 4 commits into
mainfrom
11-develop-python-driver-for-pollux-drive-semi-ate-integration

Conversation

@Speedy939

Copy link
Copy Markdown
Contributor

1. Background:

Currently, our test setup relies on a LabVIEW GUI to control the Pollux high-resolution positioning controller. To fully automate our testing and integrate this hardware into the Semi-ATE testflow, we need a dedicated Python driver.

The Pollux drive is critical for our magnetic testing capabilities. It is responsible for setting the magnetic field at various spatial coordinates and rotating the magnetic fields to provide either steady-state or constant-velocity magnetic field stimulation to the Device Under Test (DUT).

2. Objective:

Develop a robust, object-oriented Python driver that handles bidirectional communication with the Pollux Drive via USB (virtual COM port). This driver must expose a clean API for the Semi-ATE testflow to command physical movements, set speeds, and query hardware status.

3. Hardware Capabilities:

The driver must abstract the hardware's capabilities into Python methods, specifically supporting:

  • Multi-Axis Control: Positioning along the X-Axis, Z-Axis, and Rotational Axis.
  • Magnetic Field Stimulation: Setting specific magnetic field points via coordinate manipulation.
  • Rotation Modes: Enabling steady (static) magnetic fields and constant-velocity rotation.

4. Technical Specifications:

  • Communication Protocol: The drive uses the Venus-2 command language.
  • Interface: USB-to-Serial.
  • Backend Library: Must use PyVISA (pyvisa) to leverage the underlying NI-VISA drivers and ensure compatibility with existing hardware abstraction layers.

5. Port Configuration (Reverse-engineered from LabVIEW NI I/O Trace):

  • Baud Rate: 19200
  • Data Bits: 8
  • Stop Bits: 1
  • Parity: None
  • Flow Control: None
  • Termination Character: \n (Line Feed / ASCII 10) for both Read and Write.
  • Timeout: 1000 ms

@Speedy939 Speedy939 self-assigned this Jun 12, 2026
@Speedy939 Speedy939 linked an issue Jun 12, 2026 that may be closed by this pull request
@Speedy939 Speedy939 requested a review from Zlin526F June 12, 2026 15:17
@github-actions

github-actions Bot commented Jun 12, 2026

Copy link
Copy Markdown
PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://Semi-ATE.github.io/PyLab-ML/pr-preview/pr-12/

Built to branch gh-pages at 2026-06-16 16:02 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Develop Python Driver for Pollux Drive (Semi-ATE Integration)

1 participant