Skip to main content

Python library for IO-Warrior devices (Port of IOWJ)

Project description

IOWP - IO-Warrior Python Library

This library provides a Python interface for IO-Warrior devices, manufactured by Code Mercenaries Hard- und Software GmbH.

It is a Python port of the IOWJ Java library, originally created by Thomas Wagner. The iowp.iowkit module is a reconstruction of the original iowkit.dll logic, designed to work natively on modern platforms like macOS (Apple Silicon) without the need for JNI or external binaries.

Credits & Acknowledgments

  • Thomas Wagner: Original author and lead developer.
  • Antigravity / Google Gemini: Assisted in the automated porting and refactoring process from Java to Python.

Installation

To install the library locally:

pip install .

This will automatically install the required hidapi dependency.

Features

  • Support for all IO-Warrior models including IO-Warrior24 (no longer available), IO-Warrior28, IO-Warrior40 (no longer available), IO-Warrior56, and IO-Warrior100.

[!NOTE] The official name of the devices is IO-Warrior (e.g., IO-Warrior100). This library uses "IOW" as a shorthand for better readability in code.

  • Fully self-contained package.
  • Direct device control via the IowFactory.
  • Event-based port listeners.
  • Special mode functions (I2C, LCD).

Usage Example

from iowp.factory import IowFactory

# Get the factory instance and list connected devices
factory = IowFactory.get_instance()
devices = factory.get_devices()

for dev in devices:
    print(f"Found {dev.name} (Serial: {dev.serial})")

Running the Factory Script

You can also run the bundled factory script to list devices:

iowp-factory

(or python3 iowp/factory.py)

License & Use

This project is released under the GNU General Public License v3.0 (GPLv3). This ensures the library remains free and open source. Commercial use in closed-source products may require a different licensing arrangement.

Professional Services & Support

If you need professional assistance, custom implementations, or commercial support for your IO-Warrior project, please contact:

Thomas Wagner - Ideenbüro Wagner www.ideenbuero-wagner.de

We offer:

  • Custom driver and library development.
  • Hardware integration and consulting.
  • Commercial licensing for embedded projects.

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

iowp-0.1.0.tar.gz (17.1 kB view details)

Uploaded Source

Built Distribution

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

iowp-0.1.0-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file iowp-0.1.0.tar.gz.

File metadata

  • Download URL: iowp-0.1.0.tar.gz
  • Upload date:
  • Size: 17.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for iowp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c287e7b555eed03f02ea94ea2bf6b234b97a99e41a61d69d325ee8ce7464d896
MD5 271fe9820693a315118362101b0afedb
BLAKE2b-256 fd16c4c3154cb18918d702f79765b6bd2f5208f28df8e4ac05bc08aa4ffbe1b5

See more details on using hashes here.

File details

Details for the file iowp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iowp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 18.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for iowp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 32a0f92d09b44348701e48d9efea975ae3d231de365b1ed32452544799c641e2
MD5 f74bef42c9f5e469ab17e938f0b03d5a
BLAKE2b-256 5245f4f22b27a8950f65330377ad2c2093d03ddef763996b1df5f1766f4bac55

See more details on using hashes here.

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