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.2.tar.gz (4.8 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.2-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: venta_protocol_v2_device-0.1.2.tar.gz
  • Upload date:
  • Size: 4.8 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.2.tar.gz
Algorithm Hash digest
SHA256 e468e004f6d442938d854062740672f58c81132faba3dde7c28c2ea6f3dd04a2
MD5 fa31b238ea78088f6e1c2b84023c2132
BLAKE2b-256 bcb7ed7d108258bcbbfc59b4d854c5fca32ed5c0461bee40fd139b54a991f774

See more details on using hashes here.

Provenance

The following attestation bundles were made for venta_protocol_v2_device-0.1.2.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.2-py3-none-any.whl.

File metadata

File hashes

Hashes for venta_protocol_v2_device-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d94a25de0e618a05cd0569b0cb0f8d23fa5ff2f401d7dc687cccc1143fade9ee
MD5 d2f7d4158574a84b1a2556db3189d4d0
BLAKE2b-256 67e7511cb81f62e90c0490d2f2d3cb1c30daae64945f95325dd6c0838f15da30

See more details on using hashes here.

Provenance

The following attestation bundles were made for venta_protocol_v2_device-0.1.2-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