Visonic Powermax and Powermaster Component

Any ideas on what to try next? I’m stumped.

It looks like your wiring is OK, and I believe you’ve configured the interface for 3.3 volt logic.

If you go to Supervisor > System, click the Hardware button under Host System. A pop-up list with all the system devices and ports should appear. There are two are relevant entries to look for in the list of ‘• serial’ entries. Here’s what I see on my system

ͦ /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0001-if00-port0

ͦ /dev/ttyUSB0

I believe the first is a serial entity for the driver; yours may look different. The second entry looks like the assigned logical port. There’s a third entry that might be relevant, but I haven’t poked around the 'net to be sure.

ͦ /dev/serial/by-id/usb-0658_0200-if00

Beyond these arcane details, it’s worth knowing what version of firmware is loaded into the panel. That info is on the rear of the panel. Some of the latest versions require running at a higher baud rate.

I hope this info is useful.

Thanks, that’s helpful. It does look like my entry is configured wrong but I’m not sure how to find the right serial entity. I don’t have Supervisor installed in my instance as it’s through Docker - although I’ve never looked into installing Supervisor on top of HA.

I’ll check what firmware is loaded today and see if the baudrate helps, but I think I need to find out the correct serial entity before anything else.

I can get the following info from lsusb but it’s just a matter of figuring out what the correct string to put in the ser2net config file would be.

Bus 001 Device 006: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass          255 Vendor Specific Class
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x1a86 QinHeng Electronics
  idProduct          0x7523 HL-340 USB-Serial adapter
  bcdDevice            2.63
  iManufacturer           0 
  iProduct                2 
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0027
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower               98mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      1 
      bInterfaceProtocol      2 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               1

Edit: Okay, so it literally just shows up in the /dev/serial/by-id/ directory. It shows as /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0 so I’ll give that a shot and report back.

Edit 2: Still no luck, appears to have made no difference. I’m at a loss. :woozy_face:

Can you confirm what you see in the output when you run “ser2net -d”?

I have another adaptor which matches the same as yours (/dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0001-if00-port0) but I’m still seeing the “Unable to create network socket” error on the ser2net output. I’m not sure what’s causing this - I’ve now reflashed Raspian onto my Pi just to run a clean install of ser2net, and tried a different adaptor.

Edit: Jeez, I’m really sorry for spamming the hell out of this thread, but I’m finally seeing some activity and I have no idea why but it’s progress I guess?!

2020-08-04 16:43:08 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtypeB0] Received Unknown message 3/57 (len = 6)    full data = 03 39 06 ff 08 ff 01 24 27 43 


2020-08-04 16:43:09 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0X2 ***


2020-08-04 16:43:09 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtype02]    Received a powerlink acknowledge, I am in DOWNLOAD mode


2020-08-04 16:43:09 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0XB0 ***


2020-08-04 16:43:09 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtypeB0] Received Unknown message 3/4 (len = 69)    full data = 03 04 45 ff 08 03 40 00 15 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 28 43 


2020-08-04 16:43:25 INFO (MainThread) [custom_components.visonic.pyvisonic] [validatePDU] Validated a Packet with a checksum that is 1 more than the actual checksum!!!!


2020-08-04 16:43:25 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0XB0 ***


2020-08-04 16:43:25 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtypeB0] Received Unknown message 3/57 (len = 6)    full data = 03 39 06 ff 08 ff 01 59 29 43 


2020-08-04 16:43:26 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0X2 ***


2020-08-04 16:43:26 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtype02]    Received a powerlink acknowledge, I am in DOWNLOAD mode


2020-08-04 16:43:26 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0XB0 ***


2020-08-04 16:43:26 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtypeB0] Received Unknown message 3/4 (len = 69)    full data = 03 04 45 ff 08 03 40 00 15 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2a 43 


2020-08-04 16:43:26 INFO (SyncWorker_7) [custom_components.visonic.client] Visonic update event 11 {'Command': 'stay', 'PanelReady': False, 'OpenZones': [], 'Bypass': [], 'Tamper': [], 'ZoneTamper': [], 'Reason': 0, 'condition': 11}


2020-08-04 16:43:26 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0X2 ***


2020-08-04 16:43:26 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtype02]    Received a powerlink acknowledge, I am in DOWNLOAD mode


2020-08-04 16:43:26 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0X8 ***


2020-08-04 16:43:26 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtype08] Access Denied  len 1 data 43 


2020-08-04 16:43:26 INFO (MainThread) [custom_components.visonic.client] Visonic update event 5 {'condition': 5}


2020-08-04 16:43:28 INFO (SyncWorker_6) [custom_components.visonic.client] Visonic update event 11 {'Command': 'stay', 'PanelReady': False, 'OpenZones': [], 'Bypass': [], 'Tamper': [], 'ZoneTamper': [], 'Reason': 0, 'condition': 11}


2020-08-04 16:43:29 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0X2 ***


2020-08-04 16:43:29 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtype02]    Received a powerlink acknowledge, I am in DOWNLOAD mode


2020-08-04 16:43:29 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0X8 ***


2020-08-04 16:43:29 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtype08] Access Denied  len 1 data 43 


2020-08-04 16:43:29 INFO (MainThread) [custom_components.visonic.client] Visonic update event 5 {'condition': 5}


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0XB0 ***


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtypeB0] Received Unknown message 67/180 (len = 10)    full data = 43 b4 0a ff 08 03 40 00 15 04 00 00 00 43 


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [validatePDU] Validated a Packet with a checksum that is 1 more than the actual checksum!!!!


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0XB0 ***


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtypeB0] Received Unknown message 3/59 (len = 11)    full data = 03 3b 0b ff 28 ff 06 0c 00 00 01 08 0b 2b 43 


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [validatePDU] Validated a Packet with a checksum that is 1 more than the actual checksum!!!!


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0XB0 ***


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtypeB0] Received Unknown message 3/57 (len = 6)    full data = 03 39 06 ff 08 ff 01 24 2c 43 


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [validatePDU] Validated a Packet with a checksum that is 1 more than the actual checksum!!!!


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0XA5 ***


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.client] Visonic update event 1 {'condition': 1}


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0X2 ***


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtype02]    Received a powerlink acknowledge, I am in DOWNLOAD mode


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0XB0 ***


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtypeB0] Received Unknown message 3/4 (len = 69)    full data = 03 04 45 ff 08 03 40 00 15 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2d 43 


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [validatePDU] Validated a Packet with a checksum that is 1 more than the actual checksum!!!!


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0XB0 ***


2020-08-04 16:43:39 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtypeB0] Received Unknown message 3/57 (len = 6)    full data = 03 39 06 ff 08 ff 01 59 2e 43 


2020-08-04 16:43:40 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0X2 ***


2020-08-04 16:43:40 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtype02]    Received a powerlink acknowledge, I am in DOWNLOAD mode


2020-08-04 16:43:40 INFO (MainThread) [custom_components.visonic.pyvisonic] [data receiver] *** Received validated message 0XB0 ***


2020-08-04 16:43:40 INFO (MainThread) [custom_components.visonic.pyvisonic] [handle_msgtypeB0] Received Unknown message 3/4 (len = 69)    full data = 03 04 45 ff 08 03 40 00 15 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2f 43 

We have some success. It’s not picking up my motion sensors yet (just the front door contact), and it doesn’t seem to have obtained the panel type (it’s a PowerMax10) but at least it’s working!

2020-08-04 17:12:55 INFO (MainThread) [custom_components.visonic.pyvisonic] =============================================== Display Status ===============================================


2020-08-04 17:12:55 INFO (MainThread) [custom_components.visonic.pyvisonic]      key 0  Sensor id=1  dname=Z01  stype=None zname=Front door     ztypeName=None ztamper=0  ztrip=0  bypass=0  lowbatt=0  status=0  tamper=0  enrolled=1  triggered=0 


2020-08-04 17:12:55 INFO (MainThread) [custom_components.visonic.pyvisonic]      key 1  Sensor id=2  dname=Z02  stype=None zname=Kitchen        ztypeName=None ztamper=0  ztrip=0  bypass=0  lowbatt=0  status=0  tamper=0  enrolled=1  triggered=0 


2020-08-04 17:12:55 INFO (MainThread) [custom_components.visonic.pyvisonic]      key 2  Sensor id=3  dname=Z03  stype=None zname=Living room    ztypeName=None ztamper=0  ztrip=0  bypass=0  lowbatt=0  status=0  tamper=0  enrolled=1  triggered=0 


2020-08-04 17:12:55 INFO (MainThread) [custom_components.visonic.pyvisonic]    Model Unknown                PowerMaster No                     LastEvent None                   Ready   Yes          


2020-08-04 17:12:55 INFO (MainThread) [custom_components.visonic.pyvisonic]    Mode  Standard               Status      Disarmed               Armed     No                     Trouble None              AlarmStatus None        


2020-08-04 17:12:55 INFO (MainThread) [custom_components.visonic.pyvisonic] ==============================================================================================================

I would need a full log file (uploaded to pastebin or dropbox) so I can properly comment. From the snippets you’ve shown it is not getting very far. It’s in Standard Mode so hasn’t downloaded the EPROM from the panel. There’s an Access Denied message but I cannot see the source as there’s not enough info, I would guess that it’s rejecting the download request. Have you left the Download Code at 5650, try setting it to AAAA and see what happens look here on the wiki.

Good luck
D :slight_smile:

Here’s a link to the baud rate relative to the firmware version:

https://github.com/davesmeghead/visonic/wiki#baud-rate

Hey, I’ve uploaded my logs below.

https://controlc.com/154ad63f

I changed the download code on my panel as per the wiki (it was defaulted to BBBB which I thought was interesting) to 0000 and updated it in the integration but it still seems to fail.

Edit: Using my installer code as the download code in the integration seems to bring everything through weirdly enough. Panel mode is Powerlink and its detecting many more entities, the serial number, all that jazz.

Here’s some info it pulled through in case it’s useful.

Panel Mode: Powerlink
Panel Eprom: J-701248 K20.214
Panel Software: JS703646 K20.214

I don’t have ser2net installed on my system. As far as I can tell, ser2net is a proxy allowing TCP protocol communication. You shouldn’t need this process for the integration.

If the port is already assigned, I can imagine attempts to use the port could be rejected by the Visonic integration. To ensure something similar doesn’t happen on my system, I have disabled the modem manager, a process that’s sometimes present on Linux distributions.

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

My HA instance isn’t running on the Pi connected to my alarm panel (and isn’t connected to it at all besides WiFi), so I believe ser2net is necessary (unless there’s something I’m missing).

Just to make sure I understand, you are not communicating to your panel from the host system on which HA is installed. Am I correct?

Correct. My HA installation is on a QNAP NAS upstairs. The Visonic integration is pointing to a Raspberry PI connected to the alarm panel with a USB-serial converter. It’s mostly working fine now besides being stuck in Standard mode, but I’ll wait for Dave to kindly take a look at my logs if he doesn’t mind.

The problem is related to the download code being set incorrectly. In the log file it is set to ‘0000’ and the panel keeps rejecting it and sending back “Access Denied” log entries. You need to find the correct download code as using your installer code as the download code could be a security issue.

The download code defaults to either 5650 or AAAA. Do not set it to 0000 in you panel settings as I think that disables download completely from your panel. I suggest you set the download code in your panel to something not 0000 (and not the installer code) and then set the download code in the plugin to the same setting. Give it a try.

That makes sense. I didn’t plan on or want to use my installer code, it was just to test. I’ll try this in the morning. Thanks again for all of your help.

My last issue is that motion sensors don’t seem to be getting identified correctly - I can see motion/violated messages in the logs, but the sensor is staying ‘off’.

The sensor type is also showing as unknown. Is this normal?

I believe I’ve disabled any sort of power saving settings on the sensors themselves, and I’ve set the device classes as motion.

Edit: I now have Powerlink mode working with a different download code, you were right about 0000 being invalid, so thanks!

That’s good news. Do you still have the Z02 sensor problem? If so then upload another log file and I’ll take a look :smile:

Edit: Also, what is the make and model name/number of the sensor for Z02? I can add it to the code base. I still need the log file to work out why it is not being triggered though

It has triggered a few times since posting but it doesn’t seem reliable.

Here’s my logs.

The PIR model is an MP-802 PG2.

Would be nice to use the temperature data it provides but I have no idea what’s involved with that!

I’ve had a look through your log file and it looks OK. It looks like from your log file that you have a PowerMaster 30 panel, have you changed the settings to get the sensors to not go to sleep?

It’s actually a PowerMaster 10, though I’m not sure if that matters. I changed the behaviour as it was set to not violate motion sensors if disarmed. It’s reporting a lot more reliably now, just seemed to struggle yesterday.

No more complaints from me! Reporting temperature from my PIRs isn’t a big deal as I have other temperature sensors around the house, more of a nice-to-have than anything.

I know it’s your panel and you bought it but… :smile:
It’s reporting that it is a PowerMaster 30 and it’s sending message data with 64 wireless sensors and a PM10 only has 30. My dad used to say, if it looks like a duck and quacks like a duck, it’s a duck :rofl: :rofl:
As far as the HA interface is concerned there’s no difference so no matter.

I’m pleased that you’ve got it working and you’re happy with it :smile:

Well, I just googled the model number and it’s actually neither - it’s this!

https://www.visonic.com/uk-gt64

Not sure why I was so convinced it was a PM10. Nevermind.

Hi, I recently relocated to Israel and just purchased my first Visonic Powermaster 10. I am new to Visonic however from reading this forum I’m excited to get started with my home automation and alarms projects. I apologize in advance if the following question is not appropriate for this forum, if there is a better forum I should post this to please send my way. Does anyone know if it is possible to change the Visonic Powermaster 10 panel language? As I purchased mine in Israel, the menu is in Hebrew. I would like to change this to English. Any help would be appreciated.

Thank you