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

Uploaded Source

File details

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

File metadata

  • Download URL: victron-0.0.1.tar.gz
  • Upload date:
  • Size: 23.8 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.1.tar.gz
Algorithm Hash digest
SHA256 d6a323836ec12ee31736f44b160df7beb938f366c4761da3ddd3cb79d75a63b3
MD5 ec42a42e3093e22a0f9d57955021e89a
BLAKE2b-256 123c753c5cfa1c8c051e98fdc3ee689438141528c6c42e60af3562e68dcddde5

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