Visonic Powermax and Powermaster Integration

So I found a tidbit about the vmxnet adapters and mDNS issues, so I ended up moving away from the Docker based deployment on my virtual Synology hosted in vmware to deploying the OS version with Supervisor and haven’t had any “unavailable” errors in the log for the past 24 hours and the automation is working well too.

Next, I just have to figure out how to get the mobile app working remotely along with notifications. Thanks for your help in troubleshooting.

Hi, thanks for this thread and this integration,

I’m a complete newb to HA and to electronics in general, but would appreciate any help you can give. I’ve got a Powermax Complete and followed the Wiki to buy a DOIT device and I think I’ve connected it up as per the instructions on the wiki but I can’t seem to get the DOIT device to show up on WiFi for me to connect to. I can see a teeny-tiny red light on the DOIT device sometimes when I press buttons on it, but nothing else. Can anybody give me any tips?

Thanks,

Hi,
Have you configured the DOIT i.e. connected to its webserver and set the settings?
If not then leave the gnd and vcc connected and remove Tx and Rx. It should create it’s own SSID that you connect a tablet or mobile phone to. This gives you the Webserver inside the DOIT.
By doing this you can configure how it connects to your House Wifi i.e. set yout SSID and Wifi Password so it connects.
If it has connected to your house network, did you give it a static or dynamic IP address.
If static then you should be able to connect to it using that address. If dynamic then you’ll need to go on to your router and work out which device it is to get the IP address.
Let me know when you get this far :slight_smile:

EDIT: I just noticed that the voltage on that aliexpress website states “Working voltage: 4.5V~6.0V”. The panel only provides 3.75v so that could be a problem…

Hello,
Yesterday a smoke detector went off several times (no clue why, as the room was closed with no high humidity) and it triggered the siren (as expected).
That is when I noticed that I cannot disarm through Home Assistant “standard Alarm Panel” in this case, as the alarm was not armed (the button “Disarm” only appears when the alarm is armed).
What would be the best way for me to add a “Disarm” button to Home Assistant to be available at all times ? (or to modify the alarm-panel widget to always display this button)
Thanks in advance,

Hi

The short answer is that you can’t do this easily as I use the Home Assistant Alarm Panel Entity and Frontend card here. All of the ‘logic’ of arming and disarming is part of this entity and card, including the displaying of the various ‘Arm Home’ etc buttons. I could easily add a configuration setting to not use that entity and card, and allow the user to create their own. However this is a significant effort to do this for most users (including me). I’m not really a Frontend developer :slight_smile:

The configuration setting would simply not create the entity and card. If you want to hack the current version of the code then change client.py lines 513 to 518 to prevent the creation of the alarm panel entity and card:

    def setupAlarmPanel(self):
        pass

However, there is also a simpler thing that you can do. If you go to the developer tools, services, you can call the service to disarm the panel

You can call this service at any time, including when the panel is disarmed.
You could create a seperate frontend card with a “Disarm” button to call this service that you can use at all times to send a disarm command to the panel.
:slight_smile:

Thanks a lot, I called the service using the button card:

It works perfectly !

@Isablend, how did you manage to connect to the RS232 interface in your Powermaster 33? I have the same model as you and having problems finding out how to connect it.

@mats75, to be honest I was never able to do it successfully as I had with my older system. I ended up going down the route of implementing a connection via a D1mini. It connects well, with the caveat that it does require periodic reboots of the powermaster (enter the installer mode, followed by reboot of HA).

I do still have a powerlink, which I had used to connect, but I don’t think that route has been developed and you can’t connect via it and the D1 at the same time, so I’ve stuck with the D1 for now.

Hope that helps.

Hi, do you mean that you can’t find or don’t have the connector in the panel? As per this diagram?

If you provide a log file then I’ll take a look through to see if I can spot why it disconnects and doesn’t reconnect.

I have an experimental setup where I have used an ESP32 with some arduino software to:

  • connect to the panels connector here, as per normal
  • connect to the Powerlink 3 module
  • support a wifi connection from the Home Assistant integration

If data comes from the:

  • Powerlink3 module then I sent it to the panel.
  • Panel then I send it to both the Powerlink 3 module and to Home Assistant Visonic Integration.
  • Home Assistant Visonic Integration then I send it to the panel.

As there are 2 sources to send to the panel I have a timeout for each and I buffer any data from the other for a few seconds.

If you’re interested in trying this then I can post more details
Dave

1 Like

Dear @davesmeghead,

I’m truly impressed by your extraordinary dedication and excellent work!

I have a PowerMax Pro with PowerLink (I believe it’s the latest version, the one that doesn’t use a fixed IP address). With this PowerLink, I can connect and arm/disarm the alarm system through a cloud server, a feature I’d like to maintain.

I recently came across your ESP32 solution and I’m very interested in learning more about it. I must admit that I don’t have much experience with Arduino, so I’m not sure if I’ll be able to follow your instructions directly. Nevertheless, I’m open to exploring a mutual collaboration where we can work together on this.

Thank you very much!

Hi @davesmeghead , a little question, is it possible to do a get http command to put or remove alarm ?
Thanks

Hi, sorry for the delay in responding, I’ve been away from home so not able to do anything. With regards to the disconnects the majority are caused when the D1 is changed due to esphome updates etc and then the simple route is to restart the D1 and then HA and it all connects again fine. So its any change of status between the two devices that just need a re-connection.

WRT to the experimental setup you mention. I would be interested in understand what and how easy it is to setup. What has been your experience, ie. what advantage have you got from it, what use cases result. I’m unsure as currently I either interact with the alarm (turn on, turn off, check status etc) from HA. I do occasionally turn the alarm on using its own panel (but increasingly only occasionally), so I’m wondering what in practice you’ve found you get by having the powerlink access?

Thanks in advance.

I’m currently looking at 2 things:

  • Supporting an ESP32 as a passthrough device so the integration works with a Powerlink (2 or 3) hardware module (with some limitations in the HA Integration) as per the previous post and
  • Looking at an Adafruit QT Py S3 with lots of PSRAM to run my python software (in CircuitPython) and connect to an MQTT server, this makes it independant of Home Assistant.

The problem is that life and work has got in the way so progress is slow going, I’m posting now so you know that I haven’t forgotten.
:slight_smile:

Hi to all. I’ve a Powermaster 10 with LAN module.
I’m able to connect to it using Visonic app.
I’m trying to connect it to home assistant from a lot of time but I’m not able to do that.
I have installed the integration but I’m not able to find any entities. HA told me that is not able to connect.
Have I to buy new hardware in order to do that?
Thank you for your help.

Hi,
I assume when you say LAN module that you mean the Visonic Powerlink 2 or 3 Hardware Module as you also refer to the Visonic App.

This integration is not designed to be used at the same time as a Powerlink 2 or 3 Hardware Module, it is to be used instead of the Powerlink Hardware with a small hardware device to route through the serial data. That is why you cannot connect.

I suggest that you read the first post in this chain and the wiki here for more information.

However, as I suggested in my previous post I’m looking at supporting a pass through capability

Thank you Dave. So now cannot I use the original Visonic app if I want to connect alarm to HA? I have to change Visonic powerlink with a new rs232 device (ex wemos). In that case I connect central to Ha but not to Visonic server, is that right?
Riccardo

Yes that is correct. You cannot use the Visonic App and you do not need to pay for the connection to a Visonic server.

You need to buy a small hardware device (e.g. wemos) and wire it inside your alarm panel, that device either connects to your local home network (wifi or wired ethernet) or to a USB cable and then to the system that you run Home Assistant. This link on the wiki is all about the hardware and wiring. Just make sure that your specific panel model is on this list as supported.

You would use Home Assistant on your mobile phone, PC, Mac or tablet to control the alarm panel.

Dear community,

I’ve got a visonic pormax express and a tcp 232 usr device connected through tx-rx and rx-tx and an usb 5v plug appart connected to the 232 device.

At this moment I have messages in the integration

2024-02-01 22:11:02.412 INFO (MainThread) [custom_components.visonic] [Visonic Setup] Starting Visonic with entry id=abcd0d468285814854baaf57e9d035a1 configured panels=1
2024-02-01 22:11:02.412 DEBUG (MainThread) [custom_components.visonic] [Visonic Setup] Panel Config has panel number 0
2024-02-01 22:11:02.412 DEBUG (MainThread) [custom_components.visonic] [Visonic Setup] Panel Ident 0
2024-02-01 22:11:02.412 INFO (MainThread) [custom_components.visonic.client] Exclude sensor list = Exclude x10 list =
2024-02-01 22:11:02.412 DEBUG (MainThread) [custom_components.visonic] [Visonic Setup] Setting client ID for entry id abcd0d468285814854baaf57e9d035a1
2024-02-01 22:11:02.413 DEBUG (MainThread) [custom_components.visonic.client] … connection attempt 1 of 5
2024-02-01 22:11:02.413 DEBUG (MainThread) [custom_components.visonic.client] Connection Device Type is ethernet
2024-02-01 22:11:02.413 DEBUG (MainThread) [custom_components.visonic.pyvisonic] Setting TCP socket Options
2024-02-01 22:11:03.419 DEBUG (MainThread) [custom_components.visonic.pyvisonic] The coro type is <class ‘coroutine’> with value <coroutine object BaseEventLoop.create_connection at 0x7f8615bb9d80>
2024-02-01 22:11:03.420 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [getPyVisonic] in
2024-02-01 22:11:03.420 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [VisonicProtocol] client is not None, calling setPyVisonic <class ‘custom_components.visonic.pyvisonic.dummyclient’>
2024-02-01 22:11:03.420 DEBUG (MainThread) [custom_components.visonic.pyvisonic] Initialising Protocol - Using Asyncio Event Loop
2024-02-01 22:11:03.420 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Settings] Force Standard set to False
2024-02-01 22:11:03.420 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Settings] Force Auto Enroll set to True
2024-02-01 22:11:03.420 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Settings] Force Auto Sync Time set to True
2024-02-01 22:11:03.420 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Settings] Language set to EN
2024-02-01 22:11:03.420 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Settings] Motion Off Delay set to 120.0
2024-02-01 22:11:03.420 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Settings] Siren Trigger List set to [‘intruder’]
2024-02-01 22:11:03.420 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Settings] B0 Enable set to False
2024-02-01 22:11:03.420 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Settings] B0 Min Interval set to 5
2024-02-01 22:11:03.421 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Settings] B0 Max Wait Time set to 30
2024-02-01 22:11:03.421 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [setPyVisonic] in <custom_components.visonic.pyvisonic.VisonicProtocol object at 0x7f8614bfe690>
2024-02-01 22:11:03.421 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [setPyVisonic] out <custom_components.visonic.pyvisonic.VisonicProtocol object at 0x7f8614bfe690>
2024-02-01 22:11:03.421 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Connection] Connected to local Protocol handler and Transport Layer
2024-02-01 22:11:03.421 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [_clearList] Setting queue empty
2024-02-01 22:11:03.421 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [StartDownload] Starting download mode
2024-02-01 22:11:03.421 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [_clearList] Setting queue empty
2024-02-01 22:11:03.421 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [getPyVisonic] out <custom_components.visonic.pyvisonic.VisonicProtocol object at 0x7f8614bfe690>
2024-02-01 22:11:03.421 DEBUG (MainThread) [custom_components.visonic.client] … connection made
2024-02-01 22:11:03.421 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [sendPdu] Sending Command (Exit) raw data 0d 0f f0 0a waiting for message response
2024-02-01 22:11:03.421 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [sendPdu] Command has a wait time after transmission 1.5
2024-02-01 22:11:03.422 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Controller] download_counter is 1
2024-02-01 22:11:03.422 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [_sendCommand] Suspended all operations, not sending PDU
2024-02-01 22:11:03.430 WARNING (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtype0F] LOOPBACK TEST SUCCESS, Counter is 1
2024-02-01 22:11:04.922 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [sendPdu] Sending Command (Stop) raw data 0d 0b f4 0a waiting for message response
2024-02-01 22:11:04.922 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [sendPdu] Command has a wait time after transmission 1.5

Blockquote

I have the following configuration over the tcp 232 serial device

What am I doing wrong?

Hi,
I have so many questions
When you say “through tx-rx and rx-tx” what do you mean?
According to your log file you have loopback

[handle_msgtype0F] LOOPBACK TEST SUCCESS, Counter is 1

This means that you have not connected anything to the panel connector. It looks like the Tx and Rx of your USR device are connected together.

Next question… I’m not sure what the “Remote Server Addr:” IP address means but you should be using the IP address on the “Local IP Config” settings ith port 30000. I would probably set “Remote Server Addr:” to be different to the local IP address. Also, I do not tick “Similar RFC2217”, so maybe try it.

The other settings look OK to me.
Going back to the “LOOPBACK TEST SUCCESS, Counter is 1”, does the counter increment and count up? If so then you have Rx and Tx on the USR device connected together.

Blockquote
When you say “through tx-rx and rx-tx” what do you mean?
Blockquote

I mean rx from usr is connected to tx of Visonic and tx of usr is connected to rx of Visonic.

The ip of remote server is greyed out so disabled the port used is 3000.