Skip to main content

Control Venta Air Humidifiers that use Protocol Version 2

Project description

Project Status: Active – The project has reached a stable, usable state and is being actively developed. License: MIT Python PyPI Version

venta_protocol_v2_device

Small Python library to control Venta Air Humidifiers and Washers that use Protocol Version 2 (i.e., the ones using the /datastructure endpoint).

This package intentionally mirrors the public API style of venta_protocol_v3_device so migration/addaptation effort is kept at a minimum.

Example usage (local; without pip install)

import sys
sys.path.insert(0, "../")    # relative to notebook dir
import venta_protocol_v2_device

Example usage (using pip install)

!pip install venta_protocol_v2_device
from venta_protocol_v2_device import Venta_Protocol_v2_Device

d = Venta_Protocol_v2_Device("192.168.178.87")
print(d.getStatus())
print(d.toJSON())

Notebook examples

For longer, guided examples in Jupyter notebooks, see usage/basic_device_control.ipynb:

  • Basic single-device control workflow.

Supported control methods

  • setPower(bool)
  • setSleepMode(bool)
  • setAutomatic(bool)
  • setFanSpeed(int)
  • setTargetHum(int)
  • setLEDStripActive(bool)
  • setLEDStripMode(int)
  • setLEDStripColor(str)
  • setPowerMode(str)
  • runUpdate(str)

Discovery

Based on analyzing sniffed UDP packets, it looks like discovery as found in protocol version 3.0 is not supported for protocol version 2.0 devices. Hence it is not included in this package. Instead use the device IP address directly:

from venta_protocol_v2_device import Venta_Protocol_v2_Device

d = Venta_Protocol_v2_Device("192.168.178.87")

If you need stable addressing, configure a DHCP reservation for the Venta device in your router or access point.

Corrections and/or Additions

Please feel free to raise issues or create pull request for corrections and/or additions.

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

venta_protocol_v2_device-0.1.1.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

venta_protocol_v2_device-0.1.1-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

Details for the file venta_protocol_v2_device-0.1.1.tar.gz.

File metadata

  • Download URL: venta_protocol_v2_device-0.1.1.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for venta_protocol_v2_device-0.1.1.tar.gz
Algorithm Hash digest
SHA256 cf1baa0f2228666678aebff3ebbc702783858ab7de1df443095a4eb15f6aade3
MD5 1481fa36d8bf703aab6c77d03476cff3
BLAKE2b-256 5a7f9d347107486da910d6e0cd59d4f4df7128e67b6ad4110fd7ecf71c26671b

See more details on using hashes here.

Provenance

The following attestation bundles were made for venta_protocol_v2_device-0.1.1.tar.gz:

Publisher: publish.yml on tonyjurg/venta_protocol_v2_device

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file venta_protocol_v2_device-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for venta_protocol_v2_device-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9158156803c6085eb5e1e874a601086b9d4b34433b5ca93a6b5c2432143b6c16
MD5 f777f2cea6c9ccbf246575798da3d725
BLAKE2b-256 26e2889a13257aa93765cccc7a0e516eed92cf5ff68ba741319c87a1b0c84784

See more details on using hashes here.

Provenance

The following attestation bundles were made for venta_protocol_v2_device-0.1.1-py3-none-any.whl:

Publisher: publish.yml on tonyjurg/venta_protocol_v2_device

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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