| Name | moncube-modbus JSON |
| Version |
1.1.0
JSON |
| download |
| home_page | None |
| Summary | Moncube Modbus TCP Facade - Expose Moncube cubicle data via Modbus |
| upload_time | 2025-11-08 04:29:23 |
| maintainer | None |
| docs_url | None |
| author | Sindika |
| requires_python | >=3.8 |
| license | None |
| keywords |
modbus
mqtt
moncube
scada
monitoring
|
| VCS |
 |
| bugtrack_url |
|
| requirements |
No requirements were recorded.
|
| Travis-CI |
No Travis.
|
| coveralls test coverage |
No coveralls.
|
# Moncube Modbus Facade
Expose Moncube MQTT sensor data via Modbus TCP for integration with SCADA systems and industrial monitoring tools.
## Installation
```bash
pip install moncube-modbus
```
Or from source:
```bash
git clone https://github.com/moncube/moncube-modbus.git
cd moncube-modbus
pip install -e .
```
## Quick Start
### 1. Create Configuration File
Generate a sample configuration:
```bash
moncube-modbus init -o config.yaml
```
Or run without subcommand (backward compatible):
```bash
python -m moncube_modbus init -o config.yaml
```
Then edit `config.yaml` to add your cubicle UUIDs:
```yaml
mqtt:
url: "broker.emqx.io"
qos: 1
username: ""
password: ""
modbus:
host: "0.0.0.0"
port: 5020 # Use 502 for standard (requires root)
cubicles:
"2cf51a55-a4bc-4ec2-b22c-a0054963677b": 0
"6e9f7bf2-2f9b-4a6f-8b83-9b9c10f2a0a1": 1
staleness:
warnSec: 30
badSec: 120
```
### 2. Run the Server
```bash
moncube-modbus run -c config.yaml --log INFO
```
Or use the shorter form:
```bash
moncube-modbus -c config.yaml --log INFO
```
## Usage as a Library
```python
from moncube_modbus import ModbusFacade, FacadeConfig
import yaml
# Load configuration
with open("config.yaml") as f:
config_data = yaml.safe_load(f)
config = FacadeConfig.from_dict(config_data)
# Create and run facade
facade = ModbusFacade(config)
facade.run() # Blocks until stopped
```
## Register Layout
📖 **For detailed register documentation, see [REGISTERS.md](REGISTERS.md)**
Raw data
{
"_id": null,
"home_page": null,
"name": "moncube-modbus",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "modbus, mqtt, moncube, scada, monitoring",
"author": "Sindika",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/fc/a8/55beb04b42399ad6671788a9ed87206a9e73f8bf64f3ef7f2687f51b695d/moncube_modbus-1.1.0.tar.gz",
"platform": null,
"description": "# Moncube Modbus Facade\n\nExpose Moncube MQTT sensor data via Modbus TCP for integration with SCADA systems and industrial monitoring tools.\n\n## Installation\n\n```bash\npip install moncube-modbus\n```\n\nOr from source:\n\n```bash\ngit clone https://github.com/moncube/moncube-modbus.git\ncd moncube-modbus\npip install -e .\n```\n\n## Quick Start\n\n### 1. Create Configuration File\n\nGenerate a sample configuration:\n\n```bash\nmoncube-modbus init -o config.yaml\n```\n\nOr run without subcommand (backward compatible):\n\n```bash\npython -m moncube_modbus init -o config.yaml\n```\n\nThen edit `config.yaml` to add your cubicle UUIDs:\n\n```yaml\nmqtt:\n url: \"broker.emqx.io\"\n qos: 1\n username: \"\"\n password: \"\"\n\nmodbus:\n host: \"0.0.0.0\"\n port: 5020 # Use 502 for standard (requires root)\n\ncubicles:\n \"2cf51a55-a4bc-4ec2-b22c-a0054963677b\": 0\n \"6e9f7bf2-2f9b-4a6f-8b83-9b9c10f2a0a1\": 1\n\nstaleness:\n warnSec: 30\n badSec: 120\n```\n\n### 2. Run the Server\n\n```bash\nmoncube-modbus run -c config.yaml --log INFO\n```\n\nOr use the shorter form:\n\n```bash\nmoncube-modbus -c config.yaml --log INFO\n```\n\n## Usage as a Library\n\n```python\nfrom moncube_modbus import ModbusFacade, FacadeConfig\nimport yaml\n\n# Load configuration\nwith open(\"config.yaml\") as f:\n config_data = yaml.safe_load(f)\nconfig = FacadeConfig.from_dict(config_data)\n\n# Create and run facade\nfacade = ModbusFacade(config)\nfacade.run() # Blocks until stopped\n```\n\n## Register Layout\n\n\ud83d\udcd6 **For detailed register documentation, see [REGISTERS.md](REGISTERS.md)**\n",
"bugtrack_url": null,
"license": null,
"summary": "Moncube Modbus TCP Facade - Expose Moncube cubicle data via Modbus",
"version": "1.1.0",
"project_urls": {
"Bug Tracker": "https://github.com/moncube/moncube-modbus/issues",
"Documentation": "https://github.com/moncube/moncube-modbus#readme",
"Homepage": "https://github.com/moncube/moncube-modbus",
"Repository": "https://github.com/moncube/moncube-modbus"
},
"split_keywords": [
"modbus",
" mqtt",
" moncube",
" scada",
" monitoring"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "cd04e443965c16b2f161315834deb2ab55494099021af24868d60cc764394cb6",
"md5": "7023754d5fc1179b217ac990e4de6e48",
"sha256": "137d62309a4488d0609db21448f5ac2fe69e1121546990af778f778b8ac7a282"
},
"downloads": -1,
"filename": "moncube_modbus-1.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "7023754d5fc1179b217ac990e4de6e48",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 15453,
"upload_time": "2025-11-08T04:29:21",
"upload_time_iso_8601": "2025-11-08T04:29:21.580565Z",
"url": "https://files.pythonhosted.org/packages/cd/04/e443965c16b2f161315834deb2ab55494099021af24868d60cc764394cb6/moncube_modbus-1.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "fca855beb04b42399ad6671788a9ed87206a9e73f8bf64f3ef7f2687f51b695d",
"md5": "18d9fec05551fefe13786797f4c6cf0b",
"sha256": "ce459228623bb4af866baa21ecd30e9152d71428ca9f66d4c32a995491803577"
},
"downloads": -1,
"filename": "moncube_modbus-1.1.0.tar.gz",
"has_sig": false,
"md5_digest": "18d9fec05551fefe13786797f4c6cf0b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 12624,
"upload_time": "2025-11-08T04:29:23",
"upload_time_iso_8601": "2025-11-08T04:29:23.115551Z",
"url": "https://files.pythonhosted.org/packages/fc/a8/55beb04b42399ad6671788a9ed87206a9e73f8bf64f3ef7f2687f51b695d/moncube_modbus-1.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-11-08 04:29:23",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "moncube",
"github_project": "moncube-modbus",
"github_not_found": true,
"lcname": "moncube-modbus"
}