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-0.0.3.tar.gz (24.7 kB view details)

Uploaded Source

File details

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

File metadata

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

File hashes

Hashes for victron-0.0.3.tar.gz
Algorithm Hash digest
SHA256 47931a24c1df91930c124f56738e989003205c337a73e70a4cb8ea4af33ffc00
MD5 32a0910976494994d3feb9237caee3ea
BLAKE2b-256 95da1184e8628e9fa6bedb86d6993a7d17599baf95d45969415fe45c1cfd872a

See more details on using hashes here.

Supported by

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