Skip to main content

A library to interface with Genvex Connect enabled ventilation units.

Project description

GenvexNabto

Library for local interfacing with HVAC systems running Genvex Connect or Nilan gateways. These systems are only officially cloud-accessible, but after extensive development, a local solution is now available.

Supported controller models

Controller Gateway required Supported Tested
Optima 250 Yes, internet gateway
Optima 251 Yes, internet gateway
Optima 260 Yes, internet gateway
Optima 270 Built in
Optima 301 Yes, internet gateway
Optima 312 Yes, internet gateway
Optima 314 Built in
Nilan CTS400 Yes, nilan gateway
Nilan CTS602 Yes, nilan gateway
Nilan CTS602 Light Yes, nilan gateway
Nilan CTS602 Geo Yes, nilan gateway

For controllers that require a gateway, it is mandatory that the device supports Modbus. Note that Optima controllers delivered before 2014 may not have Modbus support.

How the libary works

Both Genvex Connect and Nilan gateways use the proprietary "Micro Nabto" protocol. Information about this protocol is limited, with most official documentation being removed from the internet following the companies' release of "Nabto Edge," which is largely incompatible with the older "Micro Nabto."

Typically, users connect via a dedicated app. The app loads a large, 6MB+ closed-source binary client for Nabto communication. A major limitation is that the binary is only available for Win32, Linux, Mac, Android, and iOS. There are no generic Linux ARM binaries, meaning implementing a Home Assistant custom component with these binaries would exclude widely used platforms like the Raspberry Pi.

The binary scans for available gateways by broadcasting a UDP packet. This packet either includes a specific device identifier or a wildcard (*) to request a response from any gateway. Gateways that are available will reply with their unique identifier over the same UDP IP and port to which the broadcast was sent.

While the normal connection process is handled online, it is encrypted and obfuscated. Significant progress has been made in reverse-engineering the online flow, leading to the discovery of a local connection method.

The local connection flow allows for direct communication with compatible gateways, using the user's email as the password.

Obligatory statement

The contributors are not responsible for any damages resulting from the use of this libary. No warranty is provided.

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

genvexnabto-1.5.2.tar.gz (32.3 kB view details)

Uploaded Source

Built Distribution

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

genvexnabto-1.5.2-py3-none-any.whl (42.3 kB view details)

Uploaded Python 3

File details

Details for the file genvexnabto-1.5.2.tar.gz.

File metadata

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

File hashes

Hashes for genvexnabto-1.5.2.tar.gz
Algorithm Hash digest
SHA256 a42aa8a6387a947f1c22f3206b2a6b49e04c9a8f67fd220e534e5830ba917d0e
MD5 a1f731f907fb5a8caacb22e24c33fba5
BLAKE2b-256 e522d4f64e06d2f74542969165382f8e066eb6b0a24744e9fea16ea3b618824d

See more details on using hashes here.

Provenance

The following attestation bundles were made for genvexnabto-1.5.2.tar.gz:

Publisher: python-publish.yml on superrob/genvexnabto

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

File details

Details for the file genvexnabto-1.5.2-py3-none-any.whl.

File metadata

  • Download URL: genvexnabto-1.5.2-py3-none-any.whl
  • Upload date:
  • Size: 42.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for genvexnabto-1.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 45179f2a902fec0e6c59103f920e2ec22be4b53b621940f3d91557e8d5580666
MD5 1620483ff45f58e98ac38ff98b421b22
BLAKE2b-256 530f1ff42436c2a99f70dba1f2561764ce007047286a9c850f583f8f752d61dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for genvexnabto-1.5.2-py3-none-any.whl:

Publisher: python-publish.yml on superrob/genvexnabto

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