Qolsys IQ Panel 2 and 3rd party integration

I mean each of the topics configured in apps.yaml must be distinct from any other topic. That’s the first reason i’d imagine you’d have that error.

no it would not. it needs the panel config to do anything.

Give me a bit. I’m having some weird issues with the mqtt broker.


qolsys_panel:
module: qolsys_client
class: QolsysClient
mqtt_namespace: mqtt
qolsys_host: 192.168.7.1
qolsys_token: ABCDEF
qolsys_port: 12345 # Optional
request_topic: qolsys/requests # Optional
qolsys_info_topic: qolsys/panel/info # Optional
qolsys_zone_update_topic: qolsys/panel/zone_update # Optional
qolsys_zone_event_topic: qolsys/panel/zone_event # Optional
qolsys_alarming_event_topic: qolsys/panel/alarming # Optional
qolsys_disarming_event_topic: qolsys/panel/disarm # Optional
qolsys_disarm_code: 1111 # Optional - Required if you want to disarm the panel
qolsys_confirm_arm_code: False
qolsys_confirm_disarm_code: False

It didn’t format it properly, but only the first line isn’t indented. All of the lines below it are indented 2 spaces.

@Smwoodward is everything otherwise working? Do you get other events ok?

I’m not seeing any other errors other than that, but I also don’t see any entries in MQTT other than qolsys/panel.

Do you have any zones defined (door/window sensors)? Can you reinstall the latest version and restart appdaemon?

Make sure node red or other Python apps vying for the panel and the mqtt sensors are not running?

I removed the node-red integration from HA, and made sure all of the entities for the zones were gone from HA, I turned off the node-red container. I have the latest ver. of your script and I’m still getting the same warnings in the log viewer of appdaemon. And this is all that is showing up in MQTT.

I’m going through some of the scripts to see if I can see what is going on with my setup (unfortunately I don’t know python very well) but I did notice the device_class_mapping. Would a list of sensors that Qolsys has help with the mapping? I think I still have that list.

So here are a few things that I’ve noticed. Btw this is amazing.

Entity unique IDs
Setting the arm away time for instant arm for example
Last will mqtt topic if qolsys goes down and to retain the entities
Do you do a periodic INFO scan? Would be good to do this every few times for if a person adds a sensor.

If I think of anything else I will let you know. But amazing work once I got it to work. Lol

Great thread, I too have a IQ2 panel. I am a HA newbie, so bear with me.

I got HACS configured, installed MQTT broker in my HA OS running in Virtual Box on my Windows server.

I managed to add the custom repository using the github path as AppDaemon, but when I click on the custom repository, the pop up frame seems to be stuck at “Loading information…”

image

You added the AppDaemon addon first ?

I’m very new to HASS. Is it possible this will be made into an official integration once all the kinks are ironed out?

Lots of things are possible. However, this was written specifically for AppDaemon. I think official integrations require use of the HA APIs (not MQTT). Could be done, I’m sure. I don’t think I’ll invest my time there, since AppDaemon works well for me.

Do you have AppDaemon installed? Latest HA and HACS?

Thanks for the quick response, I didn’t have the AppDaemon 4 Addon, after installing it, I was able to install the Client for Qolsys!

Update: got this resolved by adding user and password to the MQTT section of the AppDaemon.yaml.

My client cannot connect to MQTT broker, getting an NOT Authorised error according to AppDaemon log:

2021-04-11 00:05:46.221214 CRITICAL MQTT: Could not complete MQTT Plugin initialization, for Connection was refused due to Not Authorised

Do I need to setup MQTT broker to allow anonymous connect along with a ACL list? addons/DOCS.md at e933cba5a457a492fec458dcb2629e9dbadeb569 · home-assistant/addons · GitHub

I fixed the authorization error in AppDaemon by adding the client_user and client_password config nodes to the MQTT config section in the appdaemon.yaml.

I am now seeing different KeyError during mqtt_zone_update_event_received, it seems like qolsys client is able to connect to my alarm panel fine and it is getting all the sensors. I think I might be missing some zone configuration in my HA setup.

Looking at the code, it seems to be getting the zones from an INFO call to the panel, however I am not sure how I can add additional logging to see which zones got loaded from the initial INFO call.

        # Populate the zones and partitions with an INFO call
        info_payload = {"event":"INFO", "token":self.qolsys_token}
        self.call_service("mqtt/publish", namespace=self.mqtt_namespace, topic=self.request_topic, payload=json.dumps(info_payload))

Also if the qolsys client is working, where do I find all the sensors from my alarm? Would they just show up under Entties or Devies in HA?

Did a bit more digging in the code, so the Populate the zones and partitions with an INFO call is been made. However it seems like my panel is not returning any useful partition or zone info. Below are the logs from AppDaemon:

2021-04-11 01:44:40.681868 INFO qolsys_panel: listener for arming topic: qolsys/panel/alarming
2021-04-11 01:44:40.691056 INFO qolsys_panel: Populate zones and partitions with INFO call
2021-04-11 01:44:40.704014 INFO AppDaemon: App initialization complete
2021-04-11 01:44:41.829401 INFO qolsys_panel: event: INFO
2021-04-11 01:44:41.831401 INFO qolsys_panel: event: INFO, usercode: None, partition_id: None, arm_type: None

@ri3eboi see this Errors in AppDaemon logs and no entities being created. · Issue #5 · roopesh/ad-qolsys · GitHub

I’ve pushed an update with this change. Update and let me know.

1 Like