A Cython Modbus TCP client with heartbeat and multi-connection management.
Project description
modbus-tcp-cython
一个 Cython 实现的 Modbus TCP 客户端模块。
支持:
- Modbus TCP MBAP 组包和响应解析
- 读保持寄存器,功能码
03 - 读输入寄存器,功能码
04 - 写单个保持寄存器,功能码
06 - 写多个保持寄存器,功能码
10 - 自定义 PDU 请求
- 普通请求失败后自动重连重试
- 后台心跳和自动重连
- 多连接管理
安装
本地源码安装:
python -m pip install -U pip setuptools wheel Cython
python -m pip install .
强制重新安装本地源码:
python -m pip install --force-reinstall --no-build-isolation .
基本用法
from modbus_tcp import ModbusTcpClient
client = ModbusTcpClient(
"192.168.180.18",
26,
timeout=5.0,
debug=True,
request_retries=1,
request_retry_delay=0.2,
)
try:
client.connect()
values = client.read_holding_registers(
unit_id=3,
start_address=2,
quantity=1,
)
print(values)
finally:
client.close()
ModbusTcpClient
构造函数:
ModbusTcpClient(
host,
port=502,
timeout=5.0,
debug=False,
request_retries=1,
request_retry_delay=0.2,
)
参数:
host:Modbus TCP 服务端 IPport:Modbus TCP 服务端端口,标准端口通常是502timeout:socket 连接和读写超时时间,单位秒debug:是否打印TX hex/RX hexrequest_retries:普通请求失败后的自动重试次数,默认1request_retry_delay:重连后再次发送前的等待时间,单位秒
常用状态:
client.host
client.port
client.timeout
client.debug
client.is_connected
client.request_retries
client.request_retry_delay
连接管理
client.connect()
建立 TCP 连接。如果已经连接,会直接返回。
client.close()
关闭 TCP 连接,并停止心跳线程。
普通请求自动重连重试
普通读写请求默认支持自动重连重试。
流程:
发送请求
读取响应
如果超时或 socket 错误
关闭旧 socket
重新 connect
等待 request_retry_delay
重发请求
仍失败才抛异常
关闭自动重试:
client = ModbusTcpClient(
"192.168.180.18",
26,
request_retries=0,
)
增加重试次数:
client = ModbusTcpClient(
"192.168.180.18",
26,
request_retries=2,
request_retry_delay=0.5,
)
注意:读请求重试通常安全。写请求如果设备已经执行但响应丢失,重试可能造成重复写入或重复动作。
读保持寄存器 03
values = client.read_holding_registers(
unit_id=3,
start_address=2,
quantity=1,
)
对应 PDU:
03 00 02 00 01
返回:
[396]
读输入寄存器 04
values = client.read_input_registers(
unit_id=3,
start_address=0,
quantity=2,
)
对应 PDU:
04 00 00 00 02
返回:
[123, 456]
写单个保持寄存器 06
value = client.write_single_register(
unit_id=3,
address=0x0006,
value=20,
)
对应 PDU:
06 00 06 00 14
成功时返回写入值:
20
写多个保持寄存器 10
count = client.write_multiple_registers(
unit_id=3,
start_address=0x0010,
values=[1, 2, 3],
)
成功时返回写入寄存器数量:
3
自定义 PDU
厂家自定义报文可以直接发送 PDU:
response_pdu = client.request_pdu(
unit_id=0xFF,
pdu=bytes.fromhex("03 00 70 00 00"),
response_unit_id=0x01,
)
例如 RTU 文档写:
FF 03 00 70 00 00 CRC_L CRC_H
Modbus TCP 侧只需要传:
unit_id = FF
pdu = 03 00 70 00 00
response_unit_id = 01
网关会把 TCP 的 Unit ID 转成 RTU 地址码,并自动补 RTU CRC。YX96R 的
FF 是厂家超级地址,响应 MBAP 中的 Unit ID 可能是设备实际地址,例如
01,因此这类请求需要显式传 response_unit_id。
心跳
启动后台心跳:
client.start_heartbeat(
unit_id=3,
address=2,
quantity=1,
interval=10.0,
max_failures=3,
reconnect_attempts=3,
reconnect_delay=2.0,
)
心跳会定时读取一个寄存器。连续失败达到 max_failures 后,会自动关闭连接并重连。
停止心跳:
client.stop_heartbeat()
查看心跳状态:
client.is_heartbeat_running()
如果心跳读取的是输入寄存器:
client.start_heartbeat(
unit_id=3,
address=0,
quantity=1,
use_input_registers=True,
)
多连接管理
from modbus_tcp import ModbusTcpManager
with ModbusTcpManager() as manager:
manager.add_client(
name="alarm_1",
host="192.168.180.18",
port=26,
unit_id=3,
timeout=5.0,
debug=True,
request_retries=1,
request_retry_delay=0.2,
heartbeat_address=2,
heartbeat_interval=5.0,
start_heartbeat=True,
)
values = manager.read_holding_registers(
"alarm_1",
start_address=2,
quantity=1,
)
print(values)
ModbusTcpManager 常用接口
注册一路连接:
manager.add_client(
name,
host,
port=502,
unit_id=1,
timeout=5.0,
debug=False,
request_retries=1,
request_retry_delay=0.2,
heartbeat_address=0,
heartbeat_quantity=1,
heartbeat_interval=10.0,
heartbeat_max_failures=3,
reconnect_attempts=3,
reconnect_delay=2.0,
use_input_registers=False,
autoconnect=False,
start_heartbeat=False,
)
连接管理:
manager.connect(name)
manager.close(name)
manager.connect_all()
manager.close_all()
manager.remove_client(name)
心跳管理:
manager.start_heartbeat(name)
manager.stop_heartbeat(name)
manager.start_all(connect=True, heartbeat=True)
manager.stop_all_heartbeats()
状态查询:
states = manager.states()
返回示例:
{
"alarm_1": {
"connected": True,
"heartbeat_running": True,
}
}
按连接名读写:
manager.read_holding_registers("alarm_1", 2, 1)
manager.read_input_registers("alarm_1", 0, 2)
manager.write_single_register("alarm_1", 0x0006, 20)
manager.write_multiple_registers("alarm_1", 0x0010, [1, 2, 3])
manager.request_pdu(
"alarm_1",
bytes.fromhex("03 00 70 00 00"),
unit_id=0xFF,
response_unit_id=0x01,
)
如果调用时不传 unit_id,会使用 add_client() 注册时配置的默认 unit_id。
多路 Modbus TCP 转 RTU 网关
对于多路网关:
IP + TCP 端口 选择哪一路串口
Unit ID 选择这一路串口下面哪个 RTU 从站
例如:
192.168.180.18:5550 + Unit ID 1 -> HC0 串口上的 1 号从站
192.168.180.18:5551 + Unit ID 3 -> HC1 串口上的 3 号从站
异常
模块异常类:
from modbus_tcp import ModbusTcpError
示例:
try:
client.read_holding_registers(3, 2, 1)
except ModbusTcpError as exc:
print(exc)
常见异常:
modbus exception: function=0x83 code=0x02connection closed by remotetransaction id mismatchunit id mismatchinvalid byte count
调试建议
- 开启
debug=True查看TX hex和RX hex。 - 偶发超时时,优先调整
timeout、request_retries、request_retry_delay。 - 后端是 RTU 网关时,轮询间隔不要太短。
- 同一个网关端口通常只允许一个 TCP 客户端连接。
- 如果同时启用心跳和业务轮询,注意串口总线压力。
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
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file modbus_tcp_cython-0.1.3.tar.gz.
File metadata
- Download URL: modbus_tcp_cython-0.1.3.tar.gz
- Upload date:
- Size: 19.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2d97fc67e3567959392bc33d661122e5684ab5cf628a0a9b9f0f21c9bf54f852
|
|
| MD5 |
596b323b2d012d2d0cd698877d745bc5
|
|
| BLAKE2b-256 |
ee4195ef974c4472f8dfc40740eb024ebf7c6d45ffdb8bc02175f5df72ef5a10
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3.tar.gz:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3.tar.gz -
Subject digest:
2d97fc67e3567959392bc33d661122e5684ab5cf628a0a9b9f0f21c9bf54f852 - Sigstore transparency entry: 2071004380
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 95.1 kB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9aaa611bcacf81ee2f78223bd18a51edfc2563a24c07382298ee8399a49da0c
|
|
| MD5 |
1937e26f4b3e718a0cb8a65b347d09e8
|
|
| BLAKE2b-256 |
8768625b8f15043bacd69369804d2b412b4300c05f307e520fcfd20d23b2376d
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp314-cp314-win_amd64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp314-cp314-win_amd64.whl -
Subject digest:
a9aaa611bcacf81ee2f78223bd18a51edfc2563a24c07382298ee8399a49da0c - Sigstore transparency entry: 2071004657
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 766.1 kB
- Tags: CPython 3.14, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b967fe86971ad4323d21013c9d6878d59c2b6f05a8b06fed7b585e0a83eaee21
|
|
| MD5 |
ed57c6b82a22dd26860a4dac70413071
|
|
| BLAKE2b-256 |
ea561811674b8835d3155e262a977439621de851306b26feb7faa2b51eb56a8b
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
b967fe86971ad4323d21013c9d6878d59c2b6f05a8b06fed7b585e0a83eaee21 - Sigstore transparency entry: 2071004496
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 115.7 kB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b990526746196c4a118c5b3bd77a74b70ac26f6f7ee3a50c3b671a7c7415a362
|
|
| MD5 |
9332b9157ba56746d65620e1b0b910b5
|
|
| BLAKE2b-256 |
af7aa02c5f6b5caded2574b3b52e07d636b94ab400f92195a63b5a678cc4de28
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp314-cp314-macosx_11_0_arm64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp314-cp314-macosx_11_0_arm64.whl -
Subject digest:
b990526746196c4a118c5b3bd77a74b70ac26f6f7ee3a50c3b671a7c7415a362 - Sigstore transparency entry: 2071004532
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp314-cp314-macosx_10_15_x86_64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp314-cp314-macosx_10_15_x86_64.whl
- Upload date:
- Size: 118.5 kB
- Tags: CPython 3.14, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
90bf1150a5c6c5112f33733c543a07c5f16b4294f75dddffb651bccfa08f95a3
|
|
| MD5 |
3108b5db0f4e555793200660ec1546f6
|
|
| BLAKE2b-256 |
6a9aa7bde2d34ff7077f414b5221842ca4131addd5fb370e307f953fbcf8ad56
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp314-cp314-macosx_10_15_x86_64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp314-cp314-macosx_10_15_x86_64.whl -
Subject digest:
90bf1150a5c6c5112f33733c543a07c5f16b4294f75dddffb651bccfa08f95a3 - Sigstore transparency entry: 2071004686
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 93.4 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f66baa0565160230eced4308be50db09faab93aff38c5e3f45bd0eb5e1e9f3c4
|
|
| MD5 |
c4e24be6e79ebb74647f57a14baf2022
|
|
| BLAKE2b-256 |
8cdbd9c9c2fa90812be3137407a6baba49c978d4c3bbb434e256f1228988d70b
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp313-cp313-win_amd64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp313-cp313-win_amd64.whl -
Subject digest:
f66baa0565160230eced4308be50db09faab93aff38c5e3f45bd0eb5e1e9f3c4 - Sigstore transparency entry: 2071004423
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 776.9 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9583cb6d458d9ecc3c461c8bd94d9c5d657b221e3c28f42a6cf082afaad3c446
|
|
| MD5 |
1263d721013a0b053aa322729f4c56f5
|
|
| BLAKE2b-256 |
7d952d9e4cfb366afec3d5a2735c293f1912c8e4f56417004b51d09a43b6bd01
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
9583cb6d458d9ecc3c461c8bd94d9c5d657b221e3c28f42a6cf082afaad3c446 - Sigstore transparency entry: 2071004631
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 114.9 kB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2cc04b447085eef8269a8c7a81403b349fde366d8b181285208d0fcf53464226
|
|
| MD5 |
c61a72036c79a6b4b92adff43b566127
|
|
| BLAKE2b-256 |
631b6e25c2847206703bcd5624b0b5db9002d8fdd3d4ba721c32f10519567096
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp313-cp313-macosx_11_0_arm64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp313-cp313-macosx_11_0_arm64.whl -
Subject digest:
2cc04b447085eef8269a8c7a81403b349fde366d8b181285208d0fcf53464226 - Sigstore transparency entry: 2071004858
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp313-cp313-macosx_10_13_x86_64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp313-cp313-macosx_10_13_x86_64.whl
- Upload date:
- Size: 118.0 kB
- Tags: CPython 3.13, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a9b49e6b0894172a6e84ef0970bfc2b044fe2731b642e88575eb66f8e95dbe5
|
|
| MD5 |
1a558f1de637f26d88ea08f6261111b3
|
|
| BLAKE2b-256 |
5f5505f5b55912a0d14e882a88ea8699575c072bc20238f53e83da95c76341bb
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp313-cp313-macosx_10_13_x86_64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp313-cp313-macosx_10_13_x86_64.whl -
Subject digest:
6a9b49e6b0894172a6e84ef0970bfc2b044fe2731b642e88575eb66f8e95dbe5 - Sigstore transparency entry: 2071004720
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 93.5 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1a4ccfe91e9e948cb0a1a46718c90928a27319af31905177f3f4f46647306cd6
|
|
| MD5 |
bf09b3a949492965cb09646aa5cbcf5f
|
|
| BLAKE2b-256 |
2110b0c111274f53cd692fa24136e67793e0eb01ffaf89aead272f7597c5e59a
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp312-cp312-win_amd64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp312-cp312-win_amd64.whl -
Subject digest:
1a4ccfe91e9e948cb0a1a46718c90928a27319af31905177f3f4f46647306cd6 - Sigstore transparency entry: 2071004766
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 783.5 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4a0eea0e0eff0b4bf82a201efaa4b6fce614be2c2735fef2090e225e696ad253
|
|
| MD5 |
dc0eda85c81263675e97aea6150339e8
|
|
| BLAKE2b-256 |
cdc9ab1c45392ee531bb937b6fcdeb9438d6cf06d1c1b44893b7a1df7ad7abc7
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
4a0eea0e0eff0b4bf82a201efaa4b6fce614be2c2735fef2090e225e696ad253 - Sigstore transparency entry: 2071004823
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 115.9 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
52af39118b7d2a5429645bbd5b9e5152a880731b6d87671cc66c442a1136497b
|
|
| MD5 |
e2b00b2c7a5b07b5f8068f8483d43f6b
|
|
| BLAKE2b-256 |
3bd2db7e7734f556acad394e9870f482ff3d4471632a4a4c319c07c9e40e076a
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp312-cp312-macosx_11_0_arm64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp312-cp312-macosx_11_0_arm64.whl -
Subject digest:
52af39118b7d2a5429645bbd5b9e5152a880731b6d87671cc66c442a1136497b - Sigstore transparency entry: 2071004588
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp312-cp312-macosx_10_13_x86_64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp312-cp312-macosx_10_13_x86_64.whl
- Upload date:
- Size: 119.0 kB
- Tags: CPython 3.12, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b36c22d7d5924c855882ffaa1cb58f68c393cfbafeadf7243d545966ef6c5e02
|
|
| MD5 |
69ddbe8c153f6e0b8d7ae8d5d241d6ac
|
|
| BLAKE2b-256 |
9dd3fa6c0254dd5e589d86627c80be3698a49f0c18f0f60b3af0e8aeb8a41c9d
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp312-cp312-macosx_10_13_x86_64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp312-cp312-macosx_10_13_x86_64.whl -
Subject digest:
b36c22d7d5924c855882ffaa1cb58f68c393cfbafeadf7243d545966ef6c5e02 - Sigstore transparency entry: 2071004567
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 95.3 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
145290aa07fdd7b4db06d9cf55b56b6bc5fec662791170161b2238cd26ac6050
|
|
| MD5 |
0091b062ac358a2723a7ad0499e295bb
|
|
| BLAKE2b-256 |
757552a79243bf2542649d8cbb8e530b7010cfbd7202ddeb5c13457cba309091
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp311-cp311-win_amd64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp311-cp311-win_amd64.whl -
Subject digest:
145290aa07fdd7b4db06d9cf55b56b6bc5fec662791170161b2238cd26ac6050 - Sigstore transparency entry: 2071004895
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 809.5 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a4681b92984c6b86bdb263ee3b7b6f3ab846daa956d42710d2bedf34df7b4fbd
|
|
| MD5 |
78d93027b53971390841d20bf11cf8a4
|
|
| BLAKE2b-256 |
f304dffc5c8f24849379bd1437be646f5868cf6ec92dd07e44d2d13c902ffcc3
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
a4681b92984c6b86bdb263ee3b7b6f3ab846daa956d42710d2bedf34df7b4fbd - Sigstore transparency entry: 2071004459
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 117.5 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7751b8014e4226c685c32879f884156a6d990ae62667e2c2d3c760c6119a579
|
|
| MD5 |
23c0e4cb3d2217adfd6b08f0e80e0890
|
|
| BLAKE2b-256 |
653393a13d8f829c141cb4104fb12b788077e71cfb8c277a60ca6dd091a590e7
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp311-cp311-macosx_11_0_arm64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp311-cp311-macosx_11_0_arm64.whl -
Subject digest:
d7751b8014e4226c685c32879f884156a6d990ae62667e2c2d3c760c6119a579 - Sigstore transparency entry: 2071004794
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file modbus_tcp_cython-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl.
File metadata
- Download URL: modbus_tcp_cython-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl
- Upload date:
- Size: 121.6 kB
- Tags: CPython 3.11, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
69c40f6e93ed3896ebce3a16852c459bc1e94e1edb9ab773f32c177c0171701e
|
|
| MD5 |
7489bc5f83999ef98269b50922ab3656
|
|
| BLAKE2b-256 |
96d284a3eea732a9910a7a8fc7688bb1b6a41135fd32b45362a2a3a4dcbae34c
|
Provenance
The following attestation bundles were made for modbus_tcp_cython-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl:
Publisher:
wheels.yml on wangzihao223/modbus_tcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
modbus_tcp_cython-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl -
Subject digest:
69c40f6e93ed3896ebce3a16852c459bc1e94e1edb9ab773f32c177c0171701e - Sigstore transparency entry: 2071004740
- Sigstore integration time:
-
Permalink:
wangzihao223/modbus_tcp@81a6482f06179fee679f610b4c30391f00112c60 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/wangzihao223
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@81a6482f06179fee679f610b4c30391f00112c60 -
Trigger Event:
push
-
Statement type: