Machine IO
Unified GPIO functor interface engine.
What is machineio?
Interface Engine/Protocol Translator Want to use functional programming that's specific to your machine/robot?
Machineio is a library to help you create a single unified interface for all your GPIO! for your machines that use one or more micro controllers. It helps you quickly create your own functions (functors) for interfacing with hardware. The specific micro controller(s) you choose to use can later be swapped out with simple modifications of your functor library. Devices can be added and controlled over a network with a few simple additions to your functor library. Translations and groups allow complete customizations.
Pin and Group functor model
Every motion control system is different in design and implementation. Therefor every motion control system must have a different set of functions that create its library. A huge majority of these systems use the same protocols and are fundamentally based on I/O pins. A single pin almost never does all of what you need, groups of pins perform complex actions together. This is a way to overcome both of these problems in a very elegant manner. You create your own function interface library for your machine based on Pins, and Groups of Pins, and Groups of Groups. This is done by creating a Device, Pin and Group objects and specifying a few modifying functions. The only blocking call in a pin input. It waits to return it's value and should only take a fraction of a second even over a network. Pins in groups and can have time delays and input pins can have callbacks added with keyword arguments. Controlling a device over a network can be added by creating a Network object and passing it as a parameter to a device.
Metadata
Release files for machineio 0.8.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| machineio-0.8.0-py3-none-any.whl | Python 3 | none | any | Details for machineio-0.8.0-py3-none-any.whl |
Release files / machineio-0.8.0-py3-none-any.whl
| Download URL | machineio-0.8.0-py3-none-any.whl |
|---|---|
| Size | 12.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8290dc67908a531e88d403a79cfe6a8147f908657793c4375bc5f626ef1f3d40
|
|
BLAKE2b-256 checksum How to use checksums |
444768d112cc5e928cae768d13ed24228d3f983ed0643719889b3e1155665e87
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3
|
Security for machineio 0.8.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.