author: Delhaye Adrien year: 2023
Iot Protocols
This git contains easy to use module for communication using various IIoT protocols. Each subdirectory is a package that can be used independently and downloaded from PyPi.
Install
pip install <name-of-package>
Upload on Twine
Upload pyporject.toml
More detailled informations on https://packaging.python.org/en/latest/tutorials/packaging-projects/
Open the pyproject.toml file and update at least the version field with your current verion following the template :
For alpha release : <version>.<subversion>.<feature>.<fix>-a<i>
For beta release : <version>.<subversion>.<feature>.<fix>-b<i>
For relase candidate release : <version>.<subversion>.<feature>.<fix>-rc<i>
For final release : <version>.<subversion>.<feature>.<fix>
With the following :
- <version> defines the core version of the application. This number increase when drastic changes havec been made.
- <subversion> defines important changes like addition of modules or large modification but that doesn't change the global structure of the package.
- <feature> defines an addition of any feature.
- <fix> increase when a fix has been made.
Save your changes
Save everything.
Test everyting.
Push the files on the gitlab repository with version associated TAG.
Build the package
Ensure you have upgraded pip:
py -m pip install --upgrade pip
Then from the root directory of your module, where the pyproject.toml file belongs, execute :
py -m build
This will generate your package tar.gz and wheel files into the build folder.
Upload the dist
First ensure you have twine updated:
py -m pip install --upgrade twine
Get your username and token from PyPi
Use the following command to upload and gives your username and token to authentify, with username as '__token__':
</code></pre>
<p>You can also, if the build package doesn't exists yet on the PyPi registry use :</p>
<pre><code class="language-bash">py -m twine upload dist/*
How to use
Installation
pip install iot-protocols
Modbus Client
from iot_protocols.modbus import ModbusClient
from iot_protocols.modbus import requests
client = ModbusClient.with_serial_client(port: "/dev/ttyO3", method: "rtu", baudrate: 9600, parity: "N", stopbits: 1, bytesize: 8, timeout: int = 5)
request = requests.ReadHoldingRegister(address=30000, unit=1, count=6, encoding="str")
result = client.request(request)
IEC62056 Client
from iot_protocols.iec62056 import SerialClient
client = SerialClient(
baudrate=19200,
port="COM3",
transport="serial",
parity="E",
bytesize=7,
stopbits=1
)
result = client.request(device_addres="xxxxx", table=0 timeout=15)
# If you just want to read the client's identification message :
identification = client.read_tariff_identification(device_addres="xxxxx", ack_stop=True)
Snap-7 Client
Metadata
Release files for iot-protocols 2.1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| iot_protocols-2.1.0.2.tar.gz | 27.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iot_protocols-2.1.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 60.5 kB
Release files / iot_protocols-2.1.0.2.tar.gz
| Download URL | iot_protocols-2.1.0.2.tar.gz |
|---|---|
| Size | 27.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
92e194c1385d4fa698dbf0e4862eb093780305c80447457c1d5f98a55b71dc06
|
|
BLAKE2b-256 checksum How to use checksums |
982ed68bdaa7de21f3bf2df147ddb0533e2391c036b93219208c5fab284218cb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.12.0
|
Release files / iot_protocols-2.1.0.2-py3-none-any.whl
| Download URL | iot_protocols-2.1.0.2-py3-none-any.whl |
|---|---|
| Size | 33.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1163c1119dc94512f1481bbf0f0df26e3fb644a127fac5f6b2e5bc47939c3cf8
|
|
BLAKE2b-256 checksum How to use checksums |
5232efaab96364f05f12523fd5de29528ef46591c09396c5ea13f9277a257294
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.12.0
|