Skip to main content

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.

Release files for genvexnabto 1.5.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for genvexnabto 1.5.3
File Size Uploaded
genvexnabto-1.5.3.tar.gz 32.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for genvexnabto 1.5.3
File Interpreter ABI Platform
genvexnabto-1.5.3-py3-none-any.whl Python 3 none any Details

Total release size: 74.7 kB

Release files / genvexnabto-1.5.3.tar.gz

Download URL genvexnabto-1.5.3.tar.gz
Size 32.4 kB
Tags Source
SHA-256 checksum
How to use checksums
97018f096e48a2e7ee40df516840fc4bbb076057ce3c4bef15616cc70c5962a2
BLAKE2b-256 checksum
How to use checksums
81ee4bbd5f39b87590a178e968674530d1cb9ade0dd93166cf030f24bf69d720
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.

Transparency log

Release files / genvexnabto-1.5.3-py3-none-any.whl

Download URL genvexnabto-1.5.3-py3-none-any.whl
Size 42.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3465ccd509e55fb05c67c46ac0272b546299886c4db7a486aaaeb9849dc76039
BLAKE2b-256 checksum
How to use checksums
1895774deada38db1871f9231eb1239c6055d4631c13c55c59bfb3ca5bbe36b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.

Transparency log

Release history Release notifications | RSS feed

1.5.4

2 release files

This release

1.5.3 This release

2 release files

1.5.2

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.4.4

2 release files

1.4.3

2 release files

1.4.2

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page