Skip to main content

An SDK for Victron via Modbus TCP

Project description

Victron SDK for Python

NOTE: This is not an offical Victron SDK.

This Python Package enables you to develop applications with the Victron.

Install:

pip install victron

Example get a value:

from victron import Victron

# Create a configration
config = {
    "grid_limit": device.get(c.CFG_GRID_LIMIT),
    "ess_feed_limit": device.get(c.CFG_ESS_FEED_LIMIT),
    "ess_soc_limit": device.get(c.CFG_ESS_SOC_LIMIT),
}

# Initialize a new Victron connection
victron = victron(
    host="my-Victron.local",
    port=502,
    unit_id=100,
    config=config
)

# get the state of charge
soc = victron.getSoc()

# print
print(soc)

Victron Class

Victron(
    host:str,
    port:int=502,
    unit_id:int=100,
    config:dict={}
)

Victron Config Options

NOTE: The Configuration is to prevent the devices form overloading the grid or other components! Handle with care!

When values are not provided or None the are unused.

{
    "grid_limit": None, # The limit of the grid the deivce is connected to
    "ess_feed_limit": None, # The limit of the feed from ESS to the grid
    "ess_soc_limit": None, # The limit of the state of charge of the ESS
}

Methods

getSoc(address:int=843)

  • Get the state of charge

readSingleHoldingRegisters(self, address:int, parse:bool=True):

  • Read a single holding register
  • Parse = True handles signed values

TODO: Add more methods

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

victron-1.0.2.tar.gz (25.2 kB view details)

Uploaded Source

File details

Details for the file victron-1.0.2.tar.gz.

File metadata

  • Download URL: victron-1.0.2.tar.gz
  • Upload date:
  • Size: 25.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.5

File hashes

Hashes for victron-1.0.2.tar.gz
Algorithm Hash digest
SHA256 d862ed52928857ab25c4b38f10649670b26d4fc7094ef58470478b6a0d9f3fdb
MD5 486c4cd912ee3110e2c9526f8c7d408d
BLAKE2b-256 4f7ed0ebed99e986ebf4e342fd15e8945820b67daa54299684e9030a32bbeeb7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page