Visonic Powermax and Powermaster Integration

So a small update. I got another panel and connected it up. First try it connected straight away, allowed arm/disarm etc and even asked me about B0 parameter enabling, and I thought the issue was solved. I opened the panel up to power off and connect the phone line, but once powered back up again, no combination of trying powering or removing/adding the panel integration will get any comms from the panel again. I tried a 5->3v signal step down and just got weirdness (I think it was the component. The logs showed detected a powermax (its powermaster) and things like this:

2022-04-28 21:28:59 WARNING (MainThread) [custom_components.visonic.pyvisonic] [data receiver] Warning : Construction of incoming packet unknown - Message Type 0X46
2022-04-28 21:28:59 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [data receiver] Dumping Current PDU 0d 46 3c 2e 51 72 49 8c b2 ef ef d6 9b ac 16 c7 29 2a 63 96 dc df fd f2 39 9b c4 19 72 be b1 e6 e9 c8 2e fc b9 de 0e e1 38 cd d8 be f9 de 91 87 e1 70 14 ec f6 9d ff cf 7e e2 58 36 53 9f 65 91 66 6b 97 2f bf 81 dc d5 bf 6c 9f e7 f9 d0 a9 fa ae bc 83 62 ca 5c 1a a9 0e c3 2e 26 e1 b2 95 ed d3 aa fd 1d b6 e7 85 42 f7 9f a9 5f 7d 76 f2 16 c9 5d 35 7a fe f1 e1 97 b9 b1 9e ca e1 00 2e cc 7f c4 be e7 df 25 de 7f a7 69 79 19 cf 24 b1 8b 51 bf 3b e7 f5 d2 8c 0d e3 8f 5d f7 37 3d dc 3e d6 26 76 57 da bb 80 9c 4b e3 c7 57 4d e6 3e fb c6 eb e7 f9 a0 d9 18 23 33 24 fd 92 b9 4a c3 13 e9

So after trying multiples of everything, i’ve seen reports from someone in the thread that an ESP8266 nodemcu has worked for them. I’ve ordered one of those and hopefully will make more progress (although never programmed one of those before).

Darryl.

Quick question, did you try disconnecting the phone line?

The info is on my wiki here although it wasn’t me that did this.
EDIT: Although the wiki may be out of date for version numbers of software

Hi to all. I tried to connect to my powermaster 10 but I always have connection error. I do not know witch port I have to use. Maybe 30000 is wrong. I do not have admin pwd because I do not install it. But the installer told me that I didn’t change default port.
Can I have another port to try?

Hi djeghe, the wiki says the port is 10077

Hi Dave,
Yes, I disconnected the line.
I have the nodemcu installed but getting no data in the console (followed the wiki info to get this working, the only not 100% clear part was whether I need to add the visonic intruder integration or just copy/paste the visonic device info into configuration.yaml, i’m thinking the latter and using port 23 as displayed on the device?
. Starting to think the voltage in the wemos might be damaging the interface in the visonic panels, so i have a completely different panel on the way i’m going to try connecting only the nodemcu to, thus ruling that out too

Darryl

I wish I could help you, but my experience is with a USB serial adapter communicating with the panel. My experience ends at the text in the product manuals for the WiFi devices. I expect Dave or someone else will eventually show up and offer some suggestions.

The best thing I can tell you is to be mindful of what logic voltage levels appear at your panel versus your interface (whether it’s a WiFi-to-serial converter or a USB adapter). If they are different, the proper solution is to use a logic level translator. I have described this on the original forum page for Dave’s integration in several posts starting at this one:

https://community.home-assistant.io/t/visonic-powermax-and-powermaster-component/55949/351

There are several other posts regarding getting the WiFi-to-serial devices to work properly. The additional detail may be useful. Just scroll through the posts and you’ll see them.

Good luck.

Hi Dave,
I have the panel now registering and working!
For the benefit of everyone else, here are my findings ( for a Powermaster 30 panel ).
Opting to use a Wemos for the easy way to connect relays for siren etc may not be a good idea for this panel.
I opted to power the device using a power cable spliced into the 12v supply for the board. connecting directly to the tx/rx on the panel will either not work for long or (most likely) damage the visonic panel. I also tried using a step down interface to manage the output voltage, but just saw crc errors in the HA logs (and the integration still not working).
Having got nowhere, except many hours of troubleshooting adding/removing integration, trying 2 different wemos boards and two different powermaster 30 panels, I ordered this NodeMCU, another panel and followed the helpful wiki ( Using NodeMCU PowermaxProModel6 · davesmeghead/visonic Wiki · GitHub ) to flash it:
https://www.amazon.co.uk/gp/product/B06Y1ZPNMS/
I found the easiest way was to connect it to the Pi I run HA on.

Once flashed, here is what i did:
Set a static IP on the device and connected it to the same Wifi network Homeassistant is on
Set all pins to disabled, except UART, which is left as normal.
Baud set to 9600 (despite the Powermaster being a v18 firmware panel)
Connected TX to RX, RX to TX , GND and 3.7v to the end 3v pin/GND on the NodeMCU
Then connected the battery on the panel, then connected the DC 12v mains to the panel

I then saw XXXXXXXXXXXXXXXXXX… on the console output of the NodeMCU - finally something!

Then reinstalled the HA Visonic alarm integration and set only:
Ethernet
Static IP of the NodeMCU
Port: 23 in this case (that’s not mega clear in the Wiki for the NodeMCU)
The option to enroll automatically.

Lo and behold, the console was reporting comms, some readable relating to rooms, and some random characters.

Finally the panel shows in, and could be activated and disarmed in HA after waiting a short while for the comms to complete (I set allow arm and disarm and override user code, so that the keypad wasn’t needed in HA).

I’m very sure the Wemos/voltage damaged the other panels RS232 port, as I was getting zero console output via NodeMCU from a panel I had previously connected the Wemos to, and immediate data when i connected a fresh panel.
Hopefully this will save someone connecting a Wemos and damaging the panel or going through a lot of frustration trying to figure out why it wont work. Specifically for me and might be relevant, a Powermaster 30

One thing I have noticed, sometimes I see a warning on the panel “CPU Tamper” like when coming out of installer mode after enrolling devices, despite the panel not being opened. This seems to clear either by itself or after another entry into installer mode or a disarm. Not yet figured out exactly what causes this, but it has only happened since the Nodemcu or Wemos were connected, and happened on multiple panels

I have currently enrolled on my system, a contactless door sensor, 2x PIR, 1x smoke, 1x CO2 (all enrolled after the integrations was working) and see the following as entities, not sure if expected, the binary sensor has appeared as an entity, and nothing else.


UPDATE: I powered off the panel and restarted HA and the other entities/devices then appeared too.

But super happy I can now see the status and control the panel via HA.

I was prompted to enable B0 features, but haven’t yet - couldn’t find a detailed doc on what actually that does or might break.

Thanks again to Dave for giving suggestions that helped me rule out it wasn’t just me doing it wrong" :slight_smile:

Darryl.

Thank you. Now I will try this port

Also with port 10077 HA told me impossible to connect

Hi,
Let’s start from the beginning:

  • What is the device that you are using, are you using Wemos with ESPHome installed
  • Have you tried to “ping” the hardware devicewith the IP address, most devices respond to a ping?
  • How are you powering the device?

Happy to help
:slight_smile:

Hi All,

I’m interested in adding a sensor status in HA for when keyfob or wireless siren batteries are low.

If you’re willing to help, the next time that you get a battery low indication from a keyfob or wireless siren then please capture a log file with debug settings and paste it to pastebin with a link here. I can then take a look to see if there are specific messages for it. If you’re really keen then you can help me add the capability and experiment with it to get it working.

Keep smiling
Dave

Hi All,

Tip for the day…
If you have a keyfob with programmable buttons like the Visonic MCT-237 has as buttons A and B. These buttons can be set up in your panel to turn off/on X10 devices. You may not have any X10 devices but as X10 is a 1-way protocol your panel doesn’t know that.
For example:

  • Create an X10 device using your panel
  • Assign button A on the keyfob to the X10 device using your panel. This can be set to off/on or toggle. I turn a dummy X10 device on for 5 seconds and then off again
  • Restart HA and the integration will pick up the X10 device as a Switch

When you press button A the X10 switch in Home Assistant is turned on/off. You can use it in HA for whatever you like.

:slight_smile:

Hi all, Dave,
I own a Visonic PowerMax Pro alarm. This week, I successfully integrated the alarm to HA using the visonic component by Dave (excellent work by the way, and many thanks for this !). My alarm is a french type 4 visonic Powermax Pro with automatic powerlink detection. The powerlink module is emulated by an ESP01 with ESP-link configured as suggested in the wiki. Everything worked flawlessly for several days until yesterday, where the connexion was lost. The journal seems to indicate that the visonic plugin kept trying to reach the alarm but the alarm don’t accept. After restarting HA, everything is back to normal. It seems weird to me to have to restart HA to recover connection. Is there anything I could do to improve the reliability of the alarm <> HA link?
The link is WIFI and I will not be able to replace it by ethernet cable.

HA visonic component debug journal

Hi and welcome.
It sounds like the ESP01 had its ip wifi lease renewed from your router and lost it’s connection. I had a similar problem when I had a wifi connection, every so often the connection would drop so I changed mine to wired. The best thing I can suggest is to add an Automation in HA to detect the drop-out and re-connect. It does mean that when this happens you lose the sensor states for a little while for it to detect it and restart. Create an Automation like this.

alias: Restart Visonic on Problem
description: ''
trigger:
  - platform: state
    entity_id:
      - alarm_control_panel.visonic_alarm
    to: Problem
    attribute: Panel Mode
condition: []
action:
  - service: visonic.alarm_panel_reconnect
    data: {}
mode: single

You need the latest version of the Integration for this, it’s 0.7.0.3.

This only retries once, you could create an Automation that re-connects every say 5 minutes until it connects.

If you want to wait until the integration itself has tried to reconnect automatically then try this

trigger:
  - platform: state
    entity_id:
      - alarm_control_panel.visonic_alarm
    to: unknown

The service visonic.alarm_panel_reconnect keeps the integration running and just tries to reconnect the panel connection itself. If you want to restart the whole integration then try this service

  - service: homeassistant.reload_config_entry
    data: {}
    target:
      entity_id: alarm_control_panel.visonic_alarm

Remember that these are just suggestions and I haven’t tried all of them, also this is all case sensitive.
:slight_smile:

1 Like

Thanks a lot Dave for your explanations and suggestions. I will try this.

Only one of the four sensors I have attached for now are fully detected by the system. After restarding HA, I found the following lines in log identifying the sensor numbers.

2022-05-27 17:33:51 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Process Settings] pmPanelTypeNr 4 (4)    model PowerMax Pro Part
2022-05-27 17:33:51 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Process Settings] Processing settings information
2022-05-27 17:33:51 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Process Settings] Processing settings - panel code index 045C
2022-05-27 17:33:51 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Process Settings]      i=0 :    VisonicSensorRef=0x95   zoneInfo=0x7   ZTypeName=Perimeter   Chime=Off   SensorType=Magnet   zoneName=Back door
2022-05-27 17:33:51 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Process Settings]      i=1 :    VisonicSensorRef=0x97   zoneInfo=0x8   ZTypeName=Perimeter-Follow   Chime=Off   SensorType=Magnet   zoneName=Front door
2022-05-27 17:33:51 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Process Settings]      i=2 :    VisonicSensorRef=0x74   zoneInfo=0xc   ZTypeName=Interior   Chime=Off   SensorType=Motion   zoneName=Custom 1
2022-05-27 17:33:51 DEBUG (MainThread) [custom_components.visonic.pyvisonic] [Process Settings]      i=3 :    VisonicSensorRef=0x74   zoneInfo=0xc   ZTypeName=Interior   Chime=Off   SensorType=Motion   zoneName=Play room

0x95 is already in your database (MCT-302), 0x97 is also a MCT-302 and the last two (0x74) are Next Plus K9-85 (868) MCW FR motion sensors. Surprisingly, the ZTypeName of the 0x97 MCT-302 is set to Perimeter-Follow instead of Perimeter. I don’t know if it’s important. I hope it will be useful for you to add more sensors in pyvisonic.py

Hi,

Perimeter – Normal alarm zone which will activate if triggered during the AWAY or HOME mode.
Perimeter Follow – Access zone that will trigger during AWAY and HOME modes but allow customers to walk through if a delay zone is triggered first.

I’ve added the sensors to the list, thanks :slight_smile:

Edit: Withdrawn from here. It’s not related to the Visonic integration; it’s something wrong with the evaluation of templates.

Hi,
The first time I ran python -m esphome .\visonic.yaml run, I was given these options-
Found multiple options, please choose one:
[1] COM7 (USB-SERIAL CH340 (COM7))
[2] Over The Air (192.168.1.9)

I chose [1] and everything seemed to work. Got this message-
Hard resetting via RTS pin…
←[32mINFO Successfully uploaded program.←[0m
←[32mINFO UART logging is disabled (baud_rate=0). Not starting UART logs.←[0m

I then unplugged from computer, plugged in to 5V, and re-ran yaml. This time, I got the following error-
←[32mINFO Successfully compiled program.←[0m
←[32mINFO Connecting to 192.168.1.9←[0m
←[31mERROR Connecting to 192.168.1.9:8266 failed: [WinError 10061] No connection could be made because the target machine actively refused it←[0m

I can see the Wemos on my network. Any ideas why it won’t connect?
Thank you

Hi Dave,

Yesterday, I experienced a new network connection loss of the ESP01. Few days after your answer, I implemented the automation you suggested after upgrading to 0.7.0.3. The alarm has been reconnected automatically. Today I was able to arm and disarm the alarm but I discovered that the sensor status feedback was no longer being sent to HA since the disconnection.
I put below the debugging log, could you please take a look at it and tell me if you see something that could explain why the detectors do not return their status despite the re-connection?

network connection loss issue

Sensors information is no longer returned even after restarting HA. The only solution I found to go back to normal is to fully re-install the integration.
By the way, I found out that 0x96 corresponds to a MCT-320 in my installation. It is detected as a MCT-302 (320 is a smaller version of the 302). Maybe the same code is used for different sensors.

I’ve run HA and the Visonic integration in its various developments for a few years but by no means am I an expert.

Normally if the Visonic and HA lose touch a reboot of one or the other or both has sorted it.
Recently they stubbornly refuse the talk.

It seemed to coincide with my being unable to get HACS to install properly. I’m wondering if this means I have a superceded version of the Visonic integration with no way of updating. I don’t even know what version I’m on, or how to tell!

1 Like