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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file genvexnabto-1.5.0.tar.gz.
File metadata
- Download URL: genvexnabto-1.5.0.tar.gz
- Upload date:
- Size: 32.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
05302f14cdbb6ead68f102c2abfaf1d66b0ef4592de1838fe9eb09ab094b767c
|
|
| MD5 |
3224f3bdb172c50279c7ca1ad79eb2dd
|
|
| BLAKE2b-256 |
1dcc7791d4e7fc6963138a9966934c32979c1d79eac25913d8c289f575ccd3b4
|
Provenance
The following attestation bundles were made for genvexnabto-1.5.0.tar.gz:
Publisher:
python-publish.yml on superrob/genvexnabto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
genvexnabto-1.5.0.tar.gz -
Subject digest:
05302f14cdbb6ead68f102c2abfaf1d66b0ef4592de1838fe9eb09ab094b767c - Sigstore transparency entry: 1003636154
- Sigstore integration time:
-
Permalink:
superrob/genvexnabto@f6167c5b61b497648c54d743125ed4b8474b0c39 -
Branch / Tag:
refs/tags/v1.5.0 - Owner: https://github.com/superrob
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@f6167c5b61b497648c54d743125ed4b8474b0c39 -
Trigger Event:
release
-
Statement type:
File details
Details for the file genvexnabto-1.5.0-py3-none-any.whl.
File metadata
- Download URL: genvexnabto-1.5.0-py3-none-any.whl
- Upload date:
- Size: 42.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ac95d736582a2189533022819416bde473a4f921aff33dca0646d716509dde46
|
|
| MD5 |
af32d9aca5cdb4e6dbe8780d71745568
|
|
| BLAKE2b-256 |
11c9a46c1807c42722dc46c3ed01624c4e2012eabb4ab1782742de8f926d4f98
|
Provenance
The following attestation bundles were made for genvexnabto-1.5.0-py3-none-any.whl:
Publisher:
python-publish.yml on superrob/genvexnabto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
genvexnabto-1.5.0-py3-none-any.whl -
Subject digest:
ac95d736582a2189533022819416bde473a4f921aff33dca0646d716509dde46 - Sigstore transparency entry: 1003636167
- Sigstore integration time:
-
Permalink:
superrob/genvexnabto@f6167c5b61b497648c54d743125ed4b8474b0c39 -
Branch / Tag:
refs/tags/v1.5.0 - Owner: https://github.com/superrob
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@f6167c5b61b497648c54d743125ed4b8474b0c39 -
Trigger Event:
release
-
Statement type: