The component has been working great, but for the last few weeks I get
WARNING (MainThread) [custom_components.visonic.client] Warning: Valid 4 digit PIN not found
The pin code is correctly set up at the integration config (at “Override User Code. Set to 0 for Not Used”). When the error shows up, a dial pad shows up in Lovelace, but if I reload the integration it goes away and the code is read. After a few hours, it happens again… any advice?
First of all I’m assuming that you’re using the latest version: 0.8.1.0
If this is the case then your panel is reverting to one of the following modes: UNKNOWN, STARTING, DOWNLOAD, PROBLEM
When this happens, in “Developer Tools” look at the following entity:
Then after a few minutes/hours, it goes back to dialpad pin mode with this warning:
Warning: Valid 4 digit PIN not found
16:37:12 – (WARNING) Visonic Intruder Alarm (custom integration) - message first occurred at 15 September 2022 at 13:39:09 and shows up 7563 times
It is now working correctly so I’ll check again the Panel Mode setting when the error comes back. Thank You!
First of all I’ve released a new version (last Friday) but I have not made it a HACS release. Please can some of you test this release as I’ve made a few changes that may break some use of the integration in HA (specifically about point 6 below). This is the release notes:
Converted integration to use the new “manual alarm panel” constants
re-read “manual alarm panel” HA description and changed alarm state when arming home. Instead of “pending” it is now set to “arming”. “pending” is used on entry timer.
Changed “Panel Mode” PROBLEM setting. I have added a STOPPED Panel Mode:
STOPPED is used when the integration cannot recover and needs to restart. This restart could be automatic (depending on the condition) or manually.
PROBLEM when the correct data flow to and from the panel is not working as it should. If it recovers then it does back to STANDARD or STANDARD PLUS (with a view to getting back to POWERLINK if we get the appropriate messages from the panel)
When set to PROBLEM the “Panel Problem Count” Attribute is incremented and the time of the last PROBLEM in Attribute “Panel Problem Time”
There’s been a slight change to entering the override code in the integration config.
I have been experimenting with my Powermaster 30 and a Powerlink 3.1 module I bought from Ebay. I have included some “experimental” additions when the experimental config setting is ticked, this is only applicable to PowerMaster panels.
From 5. above I spotted a different format to what I think is an “I’m Alive” message to the panel that is only sent when in Powerlink Mode. I have included this for all panels as it works with my PowerMax Pro and Powermaster30. If it breaks your setup then let me know.
Secondly, as some of you know I bought a Powermaster 30 from Ebay to do 3 things:
Make the integration compatible with PowerMax and PowerMaster panels
Look at the B0 messages that are specific to PowerMaster panels
Experiment a bit with the hardware and the Powerlink 3.1 module I also bought from Ebay.
Today I played with the Dual RS-232 connector and I’ve documented my findings on the wiki here
Thirdly, also today I played with the ESPHome interaction for the Wemos (as here on the wiki). I have updated the visonic.yaml and secrets.yaml. The port is defined in the secrets.yaml and it retrieves the necessary functionality as a library instead of having the code files. The 2 files are in a zip file as part of the wiki, see here.
Does anyone have a wiring diagram or guidance for the rs232 connection on a Visonic Powermaster 33 G2?
There is labelling (a pressed label in the panel plastic showing RS232 where the connector should be) on the inside for the rs232 connection, but nothing obvious with regards connectors. I have come from a Powermax+ and was using the dual rs232 connector board which i was hoping to be able to re-use. That is a non-starter as there is no provision for that type of connector on the Powermaster 33
In the installation manual there is mention of RS232 for local PC connection but nothing else indicating where that connector is or pins that might be used for it.
I have the Powerlink 3.1 module connected and working correctly along with the Visonic.Go app, but I’d like to be able to try a local direct connection, so any guidance would be appreciated.
@davesmeghead I’m happy to provide testing/feedback if you intend to try developing the Powerlink connection on a Powermaster platform.
I’m assuming that the PL 3.1 module is connected to the main visonic board using a ribbon cable, to the 10 pin (2 rows of 5 pins) connector on the panel, is this the case?
If not then can you take a photo and upload it.
If this is the case then you would need to disconnect the PL 3.1 to connect a different piece of hardware to your panel to make it interact with HA using this Integration. This hardware is around 10 US dollars (not that I live in the USA, it’s just that people worldwide seem to understand what this means to them).
This 10 pin connector is the “PC” connection.
Just thinking out loud here, is there such a thing as a TTL RS232 “combiner/splitter” @pocket do you know of anything (sorry to put you on the spot here but it’s something I believe that you may know about)
What I mean is a gadget that:
Has 3 TTL RS232 ports, 1 to connect to the visonic panel, 1 to the PowerLink 3.1 and 1 to our HA Gadget (for simplicity let’s call these last 2 things the “devices”)
When data comes in from the panel then it sends it to both devices: Powerlink and HA Gadget
When data comes in from either device (Powerlink or HA Gadget) then it sends it to the panel without corruption (i.e. it finishes the data input from either input before starting the other)
There are potential problems with this:
When a device gets data that it doesn’t expect it needs to use it (if it can) or ignore it. My integration already does this and I assume that the Powerlink does as well
The panel needs to ignore the multiple acknowledge messages (from the 2 devices)
The devices need to ignore each other, this needs to be enforced by the new gadget
Any help appreciated (and a UK source to buy it if it isn’t too expensive).
Is it something that a Wemos can be set up to do, they’re cheap enough and I already have a few of them? Perhaps I’ll look further at the Wemos as an option … Hmmmm
Funny you should mention this. I was about to build a circuit board to do simple monitoring and logging, but I abandoned my plan when you came up with a method to monitor the traffic with software.
If I understand what you’re doing (which is more than monitoring), you want to selectively squelch (or suspend) acknowledges, which requires looking at the messages. For a Wemos, you’d probably need to add at least one additional port, or two if you wanted to save and provide access to logged transactions. If you go this route, you should be careful to tri-state all outputs until the software is configured so no outputs are in contention with another when it’s turned on. And since there are three devices and only software flow control being used, the Wemos may need to be a traffic cop so there are no collisions.
@davesmeghead yes you’re right I have the PL3.1 connected to the 10 pin connector on the board. The port is labelled as IP on the powermaster 33 board. I was assuming that like the PM30 that there would be a separate rs232 port rather than an either or situation. I like your thoughts on a splitter though. I’ll pursue the connection through the IP port. Thanks.
Is connectivity through the PL3.1 a potential, albeit future option?
I think the multiple acknowledges may be OK, I’ve experimented before with this and the panel seems to ignore the extras.
This isn’t something ESPHome can do, it may mean writing bespoke Wemos C++ code to do this which I have done before but I’m a bit rusty. I’ll have a think about it. To use a Wemos D1 R2 I think it only has 1 hardware UART port so it would mean making 2 software ports (I think, not sure).
Good point, agreed yes, or default them all to inputs maybe?
Yes, that’s what the Wemos would need to do, any collisions from the 2 devices then 1 would need to be buffered with a slight delay between messages to the panel. The panel has a very slow processor, especially the older panels, and can’t cope with messages coming quickly one after another.
Ah OK, after my investigation just yesterday I don’t think it would have helped anyway, see here on the wiki.
I don’t think so, the Powerlink 3.1 doesn’t seem to have a “through” connection for data, it would have been nice though.
Stupid me, I just realised that if I use a Wemos I can include the serial connection stream as part of the software, so I’d only need 2 RS232 / UART ports (and the ethernet connection to HA).
Yup that would work. Or maybe it defaults to tri-state by itself on power-up.
I think something like a state machine arbiter might be the thing to do, with firmware FIFOs in the data paths. There could be race conditions if it’s not carefully designed to avoid them. Perhaps having one slow data path is a blessing in disguise.
just going back for one more question. I took a photo of the part of the main board, I’m wanting to understand if this is the connection, appreciating the earlier feedback that connectivity is also possible through the IP port;
The main board labelling indicates that it “should” be correct, but I was thinking that the 4 pins on the board might provide the basis of the connector?
I’ve never seen that connector before so I have no idea sorry. You need to use the connector that you unplugged the Powerlink 3.1 from, a 10 pin IDE connector like this and get it working first before you experiment with anything else. Unless you have a logic analyser to check what that connector does.
The connector seems only to be present in the Powermaster 33E and as shown in the pic where the board descriptor shows the duel RS232 connection. Unfortunately there is nothing in any of the manuals concerning this so I have no way of confirming which pin is which. I’ll go the route you suggest with the 10 pin IDE connector in the mean time, once I’ve got that working I’ll maybe come back to it as its presence suggest that it may be possible to have the PL3.1 connected and have this connector also, which would be the best of all possible worlds. Thanks for your help.
When I looked at the 20 pin “Dual RS232” marked connector for “Channel 2” I found this.
If you can remove all power from your panel (mains and disconnect all batteries) and you have a continuity tester then check for continuity between the tx pin on the 10 pin connector and 1 of those in the 4 pin connector. I suspect they may be the same as per what I indicate as “Channel 2” on the wiki (as the link above).
Edit: I suspect that the 4 pins are Gnd, 3.?v DC, Rx and Tx but I wouldn’t know which is which. Although like I said, I also think that they are the same RS232 output as the 10 pin connector and cannot be used at the same time. But I could be wrong
I used the channel 2 direction and connected pins from the IP connector to the RS232 module. Through iteration I’ve got a response through HA such that the panel seems to be recognised (all other iterations, including baud rate - 9600 seems to be the correct one, resulted in ‘Data not received errors’ from the integration). That said the following is all I’m getting in HA
so something that I’m not doing right.
I’ve got a Wemos on order so I’ll need to wait for that to be delivered before trying other connectivity options. Thanks in the mean time.
So I got the Wemos board and set it up through ESPHome, all simple and confirmed that the board is operating correctly. But when it comes to adding the board integration I’m not getting any further. I’ve got Wemos RX and TX connected to TX and RX on the IP connector. I’ve tried the different Baud rates, no difference in response.
I’ve only got the RX and TX pins connected as the Wemos is powered by an external usb power supply.
The only other thing I can think of is that there is a setting in the powermaster 33 which is stopping the communication through the port setup on the Wemos. (I have reset the broadband settings so that nothing should be stored in that respect). Or is that barking up the wrong tree?
The only other place I could investigate is if there is something in my network which is blocking traffic, but that seems unlikely since I’m not exiting and entering the network.