-
Notifications
You must be signed in to change notification settings - Fork 129
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PC1616/PC1832/PC1864 series support - data logs needed #2
Comments
Great Work!! Have just downloaded and tested the KeyBusReader sketch on my NodeMCU, my goal is to integrate to Homey. Have not yet decided if I will use Homeyduino or MQTT Broker App Alarm system - PowerSerie 832 - PC5015 - Zone Expander 5108 - Panel LCD5500 0x2D command - [Zone B] - Section 9 -->16 0x63 command - [Alarm Memory Group 2] Decoding of 0x2D and 0x63 according to - https://github.com/stagf15/DSC_Panel/blob/master/DSC.cpp |
@MagnusPer - thanks for the logs, I've updated the library to support zones 9-32 but requires confirmation that this is functional. If you or another is willing, it would be good to see logs with all zones closed, system armed, a zone 9-32 opened, trip the alarm, disarm the alarm, then close the zone. |
@taligentx - I will trip the alarm for zone 9 when my familiy not is in the house:-) I will try to take the log during the next comming days |
@taligentx Log_PowerSerie832_PC5015-ALARM_zone9_KeybusReader.txt |
@taligentx Log_PowerSerie832_PC5015-FIRE_ALARM_zone10_KeybusReader.txt |
Updated for zone 9-16 alarm on a zone expander and added fire status. @MagnusPer Can you open zone 9 and then trip fire zone 10 (so they are both open at the same time)? Also if you're up for it, it'd be very useful to see zone 16 configured on the zone expander, open/closed and in alarm/restored. I can see how zones 9-15 are indicated, but zone 16 is unclear. This should allow using the Arduino/esp8266 as a virtual zone expander for zones 9-16. |
I have a DSC Power Series 1864 panel with multiple partitions, zone expanders, etc in use. Im willing to wire up my Arduino to the panel with the KeybusReader sketch, to capture some logs. Is there any specific events that you still need to be captured, that I can attach, to try make the 18xx panel support as feature complete as possible? Thanks |
Hi @sj-louw, Thanks for your offer! I've updated the list of needed data and removed the request for multiple partitions and zone expander data - looking at logs isn't going to be enough to decode these. If all goes well I'll have a PC1864 panel for testing by next week. It'd be great if you could load the Status sketch and log the output for partition 1:
There isn't any writing involved so you don't need the virtual keypad wiring. If you're up for changing your zone expanders, zones 33-64 are still unknown - having data from the KeybusReader sketch for at least 1 zone in each zone group (33-40, 41-48, 49-56, 57-64) would be a good place to start decoding these. Edit: Added note about wiring. |
Great. I'll wire it up over the weekend and get the partition 1 tests. With regards to the changing of the zone expanders, I'll rather skip that :) I will definitely break my alarm if I attempt that! Please let me know, if there's anything else you would like tested from my side. |
Had some trouble getting the circuit right. I am reading from panel, but still busy with testing to verify my circuit... Panel went in alarm after seemingly working for some hours over the weekend. While in alarm it intermittently lost comms to main keypad, until I disconnected the Arduino circuit. Now I have, from what I understand a "General Supervisory" trouble code :) Nothing else works. Will try to get it sorted and then post the logs. UPDATE 2018-05-28 The full log of me attempting to arm partition 2 attached. (Note, it never armed due to some config issue on the panel, my side :( ) |
@sj-louw It does seem like there is some kind of wiring issue - there is quite a bit of invalid data in the log, for example:
Check the wiring and if you're still seeing logs with invalid data like the above please open a new issue with a description of the Arduino model, pins used, and the exact wiring to help debug it. Thanks! In other news, I've picked up a PC1864 panel but it seems there's either a problem with the panel or the older PC series keypads are not fully compatible (the installer code is accepted to reach the *8 programming menu but the panel errors out entering any programming section). I'll keep an eye out for reasonably priced PC5500/RFK5500/RFK5564 keypads, though looking at the eBay sales history it may be some time. For now, I'll be relying on contributed data logs to continue developing the panel decoding so all additional info is welcome! |
OK, thanks. As per our conversation in the other threads, I will post more findings as we progress. On a side note, can you not try making your own PC-LINK cable and program the panel via the DLS software? This way you might get away with not buying a keypad :) I have made my own PC-LINK cable a while back, and it works nicely. |
@sj-louw I actually did give DLS 5 a try with an FTDI USB/serial board but wasn't able to get a connection, even after going into |
@taligentx at least on PC1832 it is required to initiate the connection. First, on your keypad press Interestingly enough, DLS produces a lot of data on keybus. You can find my log getting data from panel here: https://gist.github.com/jvitkauskas/9fa034a6ff85b1091d2e783e6f03037f Here's my normal logs. My panel is PC1832 v4.14 UK (DLS 5 recognizes as "PC1832 v4.1", keypad is "PK5500 v1.2") and I have not configured my alarm in any way (I don't have it installed in location) except there are 5.6k resistors on 8 zone terminals. Me holding fire button, disarming with code 1234:
Here's me holding aux alarm button (the one with triangle and exclamation mark):
And here's me holding panic alarm button (with shield icon) and then disarming with code 1234:
|
PC1832: pressed buttons left, right, right, left
Seems like there's no difference between left and right in logs? |
PC1832: left it to idle for some minutes and got this in logs
I have a yellow triangle (trouble) flashing on my keypad and I have the following troubles:
I didn't take notice of asterisks (they might have been present or not, see my next comment) And here's a log of me viewing trouble codes (*2 code 1234, arrow buttons and #):
|
PC1832: idle, after configuring the time.
I still have a yellow triangle (trouble) flashing on my keypad and I have the following troubles:
I am not quite sure what that asterisk means after the trouble description, asterisk is shown as a rightmost symbol in the line |
PC1832: idle, after configuring the time & disabling phone line
I still have a yellow triangle (trouble) flashing on my keypad and I have the following troubles:
And here's me checking troubles (*2, code 1234, right, right, #)
Unfortunately, I don't have means to connect panel to AC power yet, so I cannot solve that last problem. |
PC1832: some additional things (maybe they could explain some unrecognized commands?) Holding chime button to turn OFF door chime:
Holding chime button to turn ON door chrime:
Holding reset button, getting "function not available" message:
Holding quick exit button, getting "function not available" message:
Holding stay arm button, getting "system has failed to arm" message after entering code 1234:
Holding arm away button, getting "system has failed to arm" message after entering code 1234:
System startup after losing all power:
|
@jvitkauskas Excellent thanks for the detailed logs! It's very strange that the left and right arrow keys are producing the same data. It's possible that the arrow keys only act on the microcontroller within the keypad itself and the keybus message is just a notification that an arrow key was pressed. I'll be reviewing the rest of the logs as well. As far as decoding progress: I did get DLS functional but the DLS access code had been changed on my 1864. I did a little more digging and discovered that the I'm wrapping up decoding partition 2 and after a bit more verification I will be pushing out a new branch for multiple partitions for testing. Partition 2 was relatively easy because the first PowerSeries panels only supported up to 2 partitions, so the original protocol is designed for only 2 partitions - the 0xA5 command only has 2 bits for the partition number, and the status command 0x05 has 4 bytes, 2 bytes per partition. The current generation PowerSeries uses 8 bytes for command 0x05 for 4 partitions, and introduces a new command, 0x1B for partitions 5-8. Partitions 3-8 will require decoding the 0xE6 command - this is new to the current generation PowerSeries so the decoding will be from scratch. It's already very different from the rest of the commands in that the length is variable. So, still work to be done but soon the library should be ready to work with partitions 1-2 and zones 1-32. Edit: typo |
I've also got Envisalink EVL4. Maybe we can use it as an oracle for unknown commands? |
I've mostly decoded 0xE6 and 0xEB and have pushed a new develop branch for feedback and testing, supporting partitions 2-8, zones 33-64, and writing to partitions 1 and 2. Please note that the library methods have changed and sketches will need to be updated with the new methods - I was hoping to avoid changing the public interface but supporting multiple partitions requires it. Next up will be decoding writing to partitions 3-8 if the PC series keypads I have available will support it - otherwise logs of keypads assigned to these partitions and writing keys would be great. @jvitkauskas Thanks for the notes on DLS! If it's useful in the future, I came across a way to connect to the panel with DLS without going into the panel installer programming. With the cable unplugged from the panel, start the connection from DLS and then plug the cable into the panel while the connection is pending. The panel will automatically detect the connection attempt and connect to DLS. Also, thanks for the offer for the Envisalink output! From their TPI document, it seems to cover the same topics as the IT-100 - a few of these are on the todo list (command 1-4 output, writing partitions 3-8, zone tamper/fault 33-64) and a few I can't test (thermostat, wireless, etc). If you come across any output from the Envisalink that does not match the output in KeybusReader please let me know, there are still quite a few command sequences that are unknown (though none that should affect the core functionality of tracking alarm status and controlling the panel). |
Update on writing to partitions 3-8 - the PC series keypads I have do not support these partitions, logs would be useful if this is something that should be implemented. |
Hi, unfortunately I cannot arm the system, because i don't have it installed and I don't have AC power source and siren connected. However, I have configured my PC1832 for 4 partitions:
Here I am providng logs of me shorting zones and restoring them afterwards. Zone 1 / Partition 1:
Zone 2 / Partition 2:
Zone 3 / Partition 3:
Zone 4 / Partition 4:
|
And here is idle log:
|
@jvitkauskas Thanks for the logs! Looks like the decoding is sufficiently accurate for partitions 3-4 to get the basic status of the system. If you have a chance, could you assign your keypad to partition 3 and type in a few keys? Same with partition 4 - I'm interested in seeing how the keys are being sent to add these partitions to the virtual keypad. |
Here is me configuring keypad for partition 3 slot 8:
Keypad in partition 3. Entering digits 1, 2, 3, 4 (trying to arm system unsuccessfully)
See next replies for more detailed logs/information |
PC1832: Partition 3 (keypad configured to slot 8) Everything in this reply was done with keypad configured to partition 3. Key codes:
Here's me activating fire alarm by pressing and holding "fire" button and then disarming with code 1234:
Here's me activating aux alarm by pressing and holding "exclamation mark in a triangle" button:
Here's me activating panic alarm by pressing and holding "shield" button and then disarming with code 1234:
Here's me unsuccessfully trying to "stay arm" the system by holding "a man inside home" button and entering code 1234:
Here's me unsuccessfully trying to arm the system by holding "home" button and entering code 1234:
Here's me enabling door chime by holding "music note inside bell" button:
Here's me disabling door chime by holding "music note inside bell" button:
Here's me unsuccessfully trying to reset by holding "reset" button, getting "function not available on keypad"
Here's me unsuccessfully trying to quick exit by holding "door" button, getting "function not available on keypad"
|
PC1832: Partition 4 (keypad configured to slot 8) Everything in this reply was done with keypad configured to partition 4. Key codes:
Here's me activating fire alarm by pressing and holding "fire" button and then disarming with code 1234:
Here's me activating aux alarm by pressing and holding "exclamation mark in a triangle" button:
Here's me activating panic alarm by pressing and holding "shield" button and then disarming with code 1234:
Here's me unsuccessfully trying to "stay arm" the system by holding "a man inside home" button and entering code 1234:
Here's me unsuccessfully trying to arm the system by holding "home" button and entering code 1234:
Here's me enabling door chime by holding "music note inside bell" button:
Here's me disabling door chime by holding "music note inside bell" button:
Here's me unsuccessfully trying to reset by holding "reset" button, getting "function not available on keypad"
Here's me unsuccessfully trying to quick exit by holding "door" button, getting "function not available on keypad"
|
I've also tried configuring keypad to partition 4 slot 1 and key codes do not seem to differ (compared to partition 4 slot 8). However, I am still providing a log of me trying unsuccessfully arm the system by entering code 1234:
|
@taligentx where are you located? I might be able to get you a keypad. EDIT: anyway, unless you are located in Antarctica, send me your post details to zadintuvas@gmail.com and I am going to get you one. |
@jvitkauskas Thanks to your logs I've added partitions 3-8 to virtual keypad in the develop branch. On the decoding side, I've found that writing to partitions 5-8 uses the same bit positions as partitions 1-4 but sends the key during a different status command. Also thanks for the very generous offer for the keypad! I'll be in touch. |
Added zones 33-64 tamper and fault decoding after picking up a zone expander, this completes the basic decoding for partitions 1-8 and zones 1-64. Thanks all for the valuable feedback and logs! |
handlePanel() deprecated, relabeled to loop()
Sync with current taligentx:develop
Post logs here as captured by the KeybusReader example for the missing data listed below. In KeybusReader, set
dsc.hideKeypadDigits = true;
to keep access codes typed in to the panel obscured for posting publicly.Changes:
The text was updated successfully, but these errors were encountered: