Skip to main content

A Python module that emulates a virtual IQ Remote device, enabling full local control of a Qolsys IQ Panel

Project description

Qolsys Controller - qolsys-controller

Build

A Python module that emulates a virtual IQ Remote device, enabling full local control of a Qolsys IQ Panel over MQTT — no cloud access required.

QolsysController

  • ✅ Connects directly to the Qolsys Panel's local MQTT server as an IQ Remote
  • 🔐 Pairs by only using Installer Code (same procedure as standard IQ Remote pairing)
  • 🔢 Supports 4-digit user codes
  • ⚠️ Uses a custom local usercode database — panel's internal user code verification process is not yet supported

Supported Features Milestones

Device Feature Status
Panel Diagnostics sensors
--- --- ---
Partitions Arming status
Set Exit sounds
Home Instant arming
Alarm state and type
Disarm pictures 🛠️ WIP
--- --- ---
Zones Sensor Status
Tamper State
Battery Level
Signal Level
---- --- ---
Dimmers Read Light Status and Level
Set Lights Status and Level
--- --- ---
Door Locks Read Lock State
Set Lock State 🛠️ WIP
--- --- ---
Thermostats Read Thermostat State
Set Thermostat State 🛠️ WIP
--- --- ---
Garage Doors All 🛠️ WIP
--- --- ---
Outlets All 🛠️ WIP
--- --- ---
Generic Z-Wave Read Battery Level
Read Pairing Status
Read Node Status
Control Generic Z-Wave Devices 🔄 TBD

⚠️ Certificate Warning

During pairing, the main panel issues only one signed client certificate per virtual IQ Remote. If any key files are lost or deleted, re-pairing may become impossible.

A new PKI, including a new private key, can be recreated under specific circumstances, though the precise conditions remain unknown at this time.

Important:
Immediately back up the following files from the pki/ directory after initial pairing:

  • .key (private key)
  • .cer (certificate)
  • .csr (certificate signing request)
  • .secure (signed client certificate)
  • .qolsys (Qolsys Panel public certificate)

Store these files securely.

📦 Installation

git clone https://github.com/EHylands/QolsysController.git
cd qolsys_controller
pip3.12 install -r requirements.txt

# Change panel_ip and plugin_in in main.py file
python3.12 example.py

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

qolsys_controller-0.0.7.tar.gz (44.6 kB view details)

Uploaded Source

Built Distribution

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

qolsys_controller-0.0.7-py3-none-any.whl (65.1 kB view details)

Uploaded Python 3

File details

Details for the file qolsys_controller-0.0.7.tar.gz.

File metadata

  • Download URL: qolsys_controller-0.0.7.tar.gz
  • Upload date:
  • Size: 44.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for qolsys_controller-0.0.7.tar.gz
Algorithm Hash digest
SHA256 2554412d9c313a5a01882ac2ddec4900e4c6f0c869cb17595841965e3c3629a0
MD5 6cc545426724a8815a8b14fce8213ace
BLAKE2b-256 c686cc16199ca2c60767b8dfa8622b4fb4d05aacc5317990c496d112efa3f472

See more details on using hashes here.

Provenance

The following attestation bundles were made for qolsys_controller-0.0.7.tar.gz:

Publisher: publish.yml on EHylands/QolsysController

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

File details

Details for the file qolsys_controller-0.0.7-py3-none-any.whl.

File metadata

File hashes

Hashes for qolsys_controller-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 f9ecff79e2cc3beef8a27d15d94a1994478b8d6a368894fa82361e9f193568e8
MD5 574d8d406021f367a1d4464da8e98eb8
BLAKE2b-256 d214d15d0fd16a58db37468a3cda4a3af9520469e20336d10d3be2bc6327725d

See more details on using hashes here.

Provenance

The following attestation bundles were made for qolsys_controller-0.0.7-py3-none-any.whl:

Publisher: publish.yml on EHylands/QolsysController

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