I’ve been testing openLuup / AltUI with the Visonic Powermax plugin.
A few hurdles to jump over (detailed elsewhere) but the plugin was up and running, I just needed to test it against a live alarm panel.
I was following the recent changes to openLuup in the Ademco thread as the IO work completed there was very relevant
So I’ve gone further today and removed my live panel from my real Vera and across to openLuup using an RS232 <-> Ethernet connector and all seems OK - plugin starts and connects, downloads zone data, I can interact with the panel (arm/disarm/etc) … all seems pretty much identical to running on my real Vera which is pretty awesome!
BUT (sorry!) after a random amount of time the plugin stops running
I’m not sure if this is a problem with openLuup, or perhaps an issue with the RS232 <-> Ethernet connector - although this seems to still be alive and a simple openLuup reload gets things working again.
I can move the real Vera over to using IP (it was previously using direct RS232 <-> USB before) and see if the problem still occurs as I guess that would rule out the hardware side.
The only thing I can see from the logs is a socket closed message, but no indication why it’s closed. There are no timeouts on the RS232 <-> Ethernet connector, that is, it’s set to never timeout, so as far as I can see openLuup should never get a failure from the connector.
There’s obviously a lot of moving parts here (pretty amazing that it’s gotten this far) but any ideas on where to begin troubleshooting?
2016-02-02 11:54:45.112 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.112 luup_log:5: POWERMAX: Message AB; pmIncomingPduLen = 15
2016-02-02 11:54:45.113 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.130 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.130 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.130 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.130 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.130 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.130 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.131 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.131 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.131 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.131 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.131 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.131 luup.io.incoming:5: bytes received: 1, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:45.131 luup_log:5: POWERMAX: PDU received 0D AB 03 00 1E 00 33 34 32 35 00 00 43 21 0A
2016-02-02 11:54:45.131 luup_log:5: POWERMAX: PDU sent to panel: 0D 02 43 BA 0A
2016-02-02 11:54:45.131 luup.io.write:5: message length: 5, bytes sent: 5, status: OK tcp{client}: 0x1710c58
2016-02-02 11:54:48.135 luup_log:4: xAP Notifier - INFO: updateDeviceStatusWithValue for w_switch#38#urn:upnp-org:serviceId:SwitchPower1#Status with value 0
2016-02-02 11:54:48.135 luup_log:4: xAP Notifier - INFO: w_switch(38/urn:upnp-org:serviceId:SwitchPower1/Status/0/0) room:Downstairs Hall description:PGM (PowerMax)
2016-02-02 11:54:50.137 luup_log:5: POWERMAX: Checking last alive message (delta = 5.0059721469879)
2016-02-02 11:54:50.137 luup.call_timer:5: interval: time=20s, days={}
2016-02-02 11:55:01.152 openLuup.server:: request completed (411 bytes, 1 chunks, 60185 ms) tcp{client}: 0x171bac8
2016-02-02 11:55:01.258 openLuup.server:: /data_request?id=lu_status2&output_format=json&DataVersion=413431999&Timeout=60&MinimumDelay=1500&_=1454412043895 tcp{client}: 0x171bac8
2016-02-02 11:55:10.269 luup_log:5: POWERMAX: Checking last alive message (delta = 25.137422084808)
2016-02-02 11:55:10.269 luup.call_timer:5: interval: time=20s, days={}
2016-02-02 11:55:30.292 luup_log:5: POWERMAX: Checking last alive message (delta = 45.160835981369)
2016-02-02 11:55:30.292 luup.call_timer:5: interval: time=20s, days={}
2016-02-02 11:55:39.319 openLuup.io:5: socket connection closed tcp{client}: 0x1710c58
2016-02-02 11:55:50.332 luup_log:5: POWERMAX: Checking last alive message (delta = 65.201023101807)
2016-02-02 11:55:50.332 luup_log:5: POWERMAX: Clear Powerlink communication error
2016-02-02 11:55:50.332 luup_log:5: POWERMAX: PDU sent to panel: 0D AB 06 00 00 00 00 00 00 00 00 00 43 0B 0A
2016-02-02 11:55:55.338 luup.io.write:5: error: timeout tcp{client}: 0x1710c58
2016-02-02 11:55:55.338 luup_log:5: POWERMAX: cannot send PDU
2016-02-02 11:55:55.338 luup.set_failure:5: status = true
2016-02-02 11:55:55.338 luup_log:5: POWERMAX: *** Re-sending PDU (got no response) ***
2016-02-02 11:55:55.338 openLuup.context_switch:: ERROR: ./L_Powermax.lua:605: assertion failed!
2016-02-02 11:55:55.338 luup.delay_callback:: function: 0x170d820 ERROR: ./L_Powermax.lua:605: assertion failed!