ufodone / envisalink_new

A modernized version of the Home Assistant envisalink integration available through HACS.
MIT License
64 stars 8 forks source link

Home Assistant envisalink testing help wanted! #1

Closed ufodone closed 1 year ago

ufodone commented 1 year ago

Hi all! Sorry in advance for the unsolicited message.

I'm in the process of modernizing the Home Assistant envisalink integration. This is a fairly substantial change and I'd like to get as much testing on it as possible before submitting it as a PR back to the HA.

As you probably know, the integration supports both DSC and Honeywell systems. While much of the code is the same, there are differences and I have no ability to test changes to the Honeywell portion as I only have a DSC system myself. The integration also supports EVL3 and EVL4 units and I only have an EVL4.

And because the changes include refactoring how the configuration of the system is done (moving from configuration.yaml into the UI), this also means that variances in configuration may expose bugs that I don't see in my own testing.

To this end, I'm reaching out to you all in the hopes that some will be willing to help test the changes. I wasn't sure the best was to communicate with people using this integration so I went through many of the issues that have been opened for it in the Home Assistant project.

The lack of support for UI configuration has in some ways hampered my ability to make other updates to the integration (such as reintroduction of the zone bypass switches) so I'm hopeful that if I can get these changes contributed back I'll be in a better position to support the integration.

I'm setting this up as a HACS custom component for now using a different name. This should allow easier testing and iteration while will making it quick and easy to switch back to the standard/build-in integration. While it's not quite ready for external use yet, I hope to have a version ready very soon.

I would appreciate any help people can offer - be that testing the integration, providing debug logs from Honeywell systems (so maybe I can make an emulator to test against) or even just posting your existing configurations and details on your setups (automations, etc.) to help me try and cover all the bases.

Here is a list of the major changes to date.

If you think you can help in any way, please let me know below. Thanks in advance!

@ChirpyTurnip @Damien2s @DanielBaulig @Hamish1066 @Papester @TheFuzz4 @abarbaccia @abmagfab @active-atom @adman120 @audymatic @ausfas @bbrendon @bolapara @camrun91 @cgraf @crackers8199 @facuzestoa @greggitter @jl-678 @larry-glz @mniquette @monxhy @nate3421 @olddawgpowers @raspman @rct @ryanpie86 @schmuy @tinuva @undert03 @warnejo

schmuy commented 1 year ago

Happy to give it a go. Config just as it was before but with different name?

jl-678 commented 1 year ago

I am happy to try it too.

Update: I am using a Honeywell Vista-20P with an EVL4

bolapara commented 1 year ago

I have a dual DSC setup I can test on.

camrun91 commented 1 year ago

I am more than happy to help however I can. I have a DSC system

greggitter commented 1 year ago

Happy to help, I have a Honeywell panel with EVL3.

ufodone commented 1 year ago

Thanks for the offers! I've got a bit more cleanup to do first and then I'll add some instructions on how to get it setup as well as things I'm interested in tested on different configs. I hope to try and get things ready to go sometime tonight.

cgraf commented 1 year ago

Hey ufodone. I'm happy to help out if I can. I think I have a Vista 20P (ADT Safewatch 3000). Ancient system. I am tied into Envisalink monitoring, so hopefully we won't be doing a lot of things that might summon the police.

On Mon, Jan 9, 2023 at 11:23 PM ufodone @.***> wrote:

Hi all! Sorry in advance for the unsolicited message.

I'm in the process of modernizing the Home Assistant envisalink integration. This is a fairly substantial change and I'd like to get as much testing on it as possible before submitting it as a PR back to the HA.

As you probably know, the integration supports both DSC and Honeywell systems. While much of the code is the same, there are differences and I have no ability to test changes to the Honeywell portion as I only have a DSC system myself. The integration also supports EVL3 and EVL4 units and I only have an EVL4.

And because the changes include refactoring how the configuration of the system is done (moving from configuration.yaml into the UI), this also means that variances in configuration may expose bugs that I don't see in my own testing.

To this end, I'm reaching out to you all in the hopes that some will be willing to help test the changes. I wasn't sure the best was to communicate with people using this integration so I went through many of the issues that have been opened for it in the Home Assistant project.

The lack of support for UI configuration has in some ways hampered my ability to make other updates to the integration (such as reintroduction of the zone bypass switches) so I'm hopeful that if I can get these changes contributed back I'll be in a better position to support the integration.

I'm setting this up as a HACS custom component for now using a different name. This should allow easier testing and iteration while will making it quick and easy to switch back to the standard/build-in integration. While it's not quite ready for external use yet, I hope to have a version ready very soon.

I would appreciate any help people can offer - be that testing the integration, providing debug logs from Honeywell systems (so maybe I can make an emulator to test against) or even just posting your existing configurations and details on your setups (automations, etc.) to help me try and cover all the bases.

Here https://github.com/ufodone/envisalink_new#readme is a list of the major changes to date.

If you think you can help in any way, please let me know below. Thanks in advance!

@ChirpyTurnip https://github.com/ChirpyTurnip @Damien2s https://github.com/Damien2s @DanielBaulig https://github.com/DanielBaulig @Hamish1066 https://github.com/Hamish1066 @Papester https://github.com/Papester @TheFuzz4 https://github.com/TheFuzz4 @abarbaccia https://github.com/abarbaccia @abmagfab https://github.com/abmagfab @active-atom https://github.com/active-atom @adman120 https://github.com/adman120 @audymatic https://github.com/audymatic @ausfas https://github.com/ausfas @bbrendon https://github.com/bbrendon @bolapara https://github.com/bolapara @camrun91 https://github.com/camrun91 @cgraf https://github.com/cgraf @crackers8199 https://github.com/crackers8199 @facuzestoa https://github.com/facuzestoa @greggitter https://github.com/greggitter @jl-678 https://github.com/jl-678 @larry-glz https://github.com/larry-glz @mniquette https://github.com/mniquette @monxhy https://github.com/monxhy @nate3421 https://github.com/nate3421 @olddawgpowers https://github.com/olddawgpowers @raspman https://github.com/raspman @rct https://github.com/rct @ryanpie86 https://github.com/ryanpie86 @schmuy https://github.com/schmuy @tinuva https://github.com/tinuva @undert03 https://github.com/undert03 @warnejo https://github.com/warnejo

— Reply to this email directly, view it on GitHub https://github.com/ufodone/envisalink_new/issues/1, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAUNJIZW7I4DNQGKN7LBQRDWRTW4BANCNFSM6AAAAAATWHBQ3M . You are receiving this because you were mentioned.Message ID: @.***>

adman120 commented 1 year ago

Sorry, I too have a DSC and EVL4

On Tue, Jan 10, 2023 at 12:23 AM ufodone @.***> wrote:

Hi all! Sorry in advance for the unsolicited message.

I'm in the process of modernizing the Home Assistant envisalink integration. This is a fairly substantial change and I'd like to get as much testing on it as possible before submitting it as a PR back to the HA.

As you probably know, the integration supports both DSC and Honeywell systems. While much of the code is the same, there are differences and I have no ability to test changes to the Honeywell portion as I only have a DSC system myself. The integration also supports EVL3 and EVL4 units and I only have an EVL4.

And because the changes include refactoring how the configuration of the system is done (moving from configuration.yaml into the UI), this also means that variances in configuration may expose bugs that I don't see in my own testing.

To this end, I'm reaching out to you all in the hopes that some will be willing to help test the changes. I wasn't sure the best was to communicate with people using this integration so I went through many of the issues that have been opened for it in the Home Assistant project.

The lack of support for UI configuration has in some ways hampered my ability to make other updates to the integration (such as reintroduction of the zone bypass switches) so I'm hopeful that if I can get these changes contributed back I'll be in a better position to support the integration.

I'm setting this up as a HACS custom component for now using a different name. This should allow easier testing and iteration while will making it quick and easy to switch back to the standard/build-in integration. While it's not quite ready for external use yet, I hope to have a version ready very soon.

I would appreciate any help people can offer - be that testing the integration, providing debug logs from Honeywell systems (so maybe I can make an emulator to test against) or even just posting your existing configurations and details on your setups (automations, etc.) to help me try and cover all the bases.

Here https://github.com/ufodone/envisalink_new#readme is a list of the major changes to date.

If you think you can help in any way, please let me know below. Thanks in advance!

@ChirpyTurnip https://github.com/ChirpyTurnip @Damien2s https://github.com/Damien2s @DanielBaulig https://github.com/DanielBaulig @Hamish1066 https://github.com/Hamish1066 @Papester https://github.com/Papester @TheFuzz4 https://github.com/TheFuzz4 @abarbaccia https://github.com/abarbaccia @abmagfab https://github.com/abmagfab @active-atom https://github.com/active-atom @adman120 https://github.com/adman120 @audymatic https://github.com/audymatic @ausfas https://github.com/ausfas @bbrendon https://github.com/bbrendon @bolapara https://github.com/bolapara @camrun91 https://github.com/camrun91 @cgraf https://github.com/cgraf @crackers8199 https://github.com/crackers8199 @facuzestoa https://github.com/facuzestoa @greggitter https://github.com/greggitter @jl-678 https://github.com/jl-678 @larry-glz https://github.com/larry-glz @mniquette https://github.com/mniquette @monxhy https://github.com/monxhy @nate3421 https://github.com/nate3421 @olddawgpowers https://github.com/olddawgpowers @raspman https://github.com/raspman @rct https://github.com/rct @ryanpie86 https://github.com/ryanpie86 @schmuy https://github.com/schmuy @tinuva https://github.com/tinuva @undert03 https://github.com/undert03 @warnejo https://github.com/warnejo

— Reply to this email directly, view it on GitHub https://github.com/ufodone/envisalink_new/issues/1, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA4EKQRPILRUSQCWFTWZZHTWRTW4BANCNFSM6AAAAAATWHBQ3M . You are receiving this because you were mentioned.Message ID: @.***>

ChirpyTurnip commented 1 year ago

Happy to help too! DSC + EVL4.... :-)

On Tue, 10 Jan 2023 at 18:23, ufodone @.***> wrote:

Hi all! Sorry in advance for the unsolicited message.

I'm in the process of modernizing the Home Assistant envisalink integration. This is a fairly substantial change and I'd like to get as much testing on it as possible before submitting it as a PR back to the HA.

As you probably know, the integration supports both DSC and Honeywell systems. While much of the code is the same, there are differences and I have no ability to test changes to the Honeywell portion as I only have a DSC system myself. The integration also supports EVL3 and EVL4 units and I only have an EVL4.

And because the changes include refactoring how the configuration of the system is done (moving from configuration.yaml into the UI), this also means that variances in configuration may expose bugs that I don't see in my own testing.

To this end, I'm reaching out to you all in the hopes that some will be willing to help test the changes. I wasn't sure the best was to communicate with people using this integration so I went through many of the issues that have been opened for it in the Home Assistant project.

The lack of support for UI configuration has in some ways hampered my ability to make other updates to the integration (such as reintroduction of the zone bypass switches) so I'm hopeful that if I can get these changes contributed back I'll be in a better position to support the integration.

I'm setting this up as a HACS custom component for now using a different name. This should allow easier testing and iteration while will making it quick and easy to switch back to the standard/build-in integration. While it's not quite ready for external use yet, I hope to have a version ready very soon.

I would appreciate any help people can offer - be that testing the integration, providing debug logs from Honeywell systems (so maybe I can make an emulator to test against) or even just posting your existing configurations and details on your setups (automations, etc.) to help me try and cover all the bases.

Here https://github.com/ufodone/envisalink_new#readme is a list of the major changes to date.

If you think you can help in any way, please let me know below. Thanks in advance!

@ChirpyTurnip https://github.com/ChirpyTurnip @Damien2s https://github.com/Damien2s @DanielBaulig https://github.com/DanielBaulig @Hamish1066 https://github.com/Hamish1066 @Papester https://github.com/Papester @TheFuzz4 https://github.com/TheFuzz4 @abarbaccia https://github.com/abarbaccia @abmagfab https://github.com/abmagfab @active-atom https://github.com/active-atom @adman120 https://github.com/adman120 @audymatic https://github.com/audymatic @ausfas https://github.com/ausfas @bbrendon https://github.com/bbrendon @bolapara https://github.com/bolapara @camrun91 https://github.com/camrun91 @cgraf https://github.com/cgraf @crackers8199 https://github.com/crackers8199 @facuzestoa https://github.com/facuzestoa @greggitter https://github.com/greggitter @jl-678 https://github.com/jl-678 @larry-glz https://github.com/larry-glz @mniquette https://github.com/mniquette @monxhy https://github.com/monxhy @nate3421 https://github.com/nate3421 @olddawgpowers https://github.com/olddawgpowers @raspman https://github.com/raspman @rct https://github.com/rct @ryanpie86 https://github.com/ryanpie86 @schmuy https://github.com/schmuy @tinuva https://github.com/tinuva @undert03 https://github.com/undert03 @warnejo https://github.com/warnejo

— Reply to this email directly, view it on GitHub https://github.com/ufodone/envisalink_new/issues/1, or unsubscribe https://github.com/notifications/unsubscribe-auth/AUIP7ZVR6SL6LEWPEPU2LFTWRTW4FANCNFSM6AAAAAATWHBQ3M . You are receiving this because you were mentioned.Message ID: @.***>

ausfas commented 1 year ago

I have Honeywell vista 21p and happy to test it

ufodone commented 1 year ago

Hi all, thanks again for offering up your help!

I think the integration is ready for some testing now. It seems to be working well with my own system. Release v0.1.1 should be available once you install the integration via HACS.

I've added some more info to the README describing how the new configuration system works and listed some things I'm interested in getting feedback on. But generally speaking, let me know if anything looks out of place, etc.

If you find something not working or have any other feedback, please open a separate issue for it so this one doesn't get too large.

ufodone commented 1 year ago

Oh, and it's worth nothing that I am speculating that the EVL3 and EVL4 have almost identical interfaces based on what's in the code and the documentation I've found. But if you have an EVL3, I might suggest you trying hitting the following links on your browser before trying this integration out:

http://envisalink_ip/2 -> This one should return a page which somewhere has Security Subsystem - DSC (or Honeywell)

http://envisalink_ip/3 -> This one should return a page which lists the firmware version and MAC at the bottom.

(Substitute envisalink_ip for the IP address or hostname of your EVL.) (You'll first be prompted for your username and password which will be the same as you use in HA.)

If these pages don't work or return that data, please let me know and hold off on trying this integration out.

jl-678 commented 1 year ago

One question, do we need to disable or uninstall the current integration to test out this version? I want to be sure that I am following the correct process.

greggitter commented 1 year ago

Just in case, the testing information and documentation is posted here: https://github.com/ufodone/envisalink_new

greggitter commented 1 year ago

@ufodone Maybe I'm missing something but I am not finding envisalink_new in hacs, nor in settings | add integration. I assumed the first step was to rename the configuration to envisalink_new but that results in a HA configuration error.

tinuva commented 1 year ago

@ufodone Maybe I'm missing something but I am not finding envisalink_new in hacs, nor in settings | add integration. I assumed the first step was to rename the configuration to envisalink_new but that results in a HA configuration error.

You need to add a custom hacs repo.

Top right, click 3 dots, then custom repositories Screenshot 2023-01-11 at 17 51 56

Then add this repository like so: Screenshot 2023-01-11 at 17 52 21

It will then show up as a new repository allowing you to install it.

greggitter commented 1 year ago

Ah...thanks!

jl-678 commented 1 year ago

Do you do anything with the current integration when you install this one?

ufodone commented 1 year ago

@jl-678 You can just rename envisalink: to envisalink_new: in your configuration.yaml to switch over. If you want to test setup from scratch, just comment out the envisalink section completely.

You won't be able to keep them both in place though with a single EVL device though as the EVL only supports a single connection at a time.

greggitter commented 1 year ago

I did not change my current integration (didn't rename yet), added the new, entered the host and credentials using the same name "Home Alarm" and it's stuck on initializing. Maybe I created a conflict. I can move around in HA but returning to the integrations page, it still indicates initializing. I can click to configure it and the config window pops up.

Edit: Renamed the config to envisalink_new and restarted, it finished and has my prior zones configured.

greggitter commented 1 year ago

@ufodone Not sure if this is by design or a problem, but I now have 10 (of 20) zones that were renamed to generic names "alarm_zone_xx" where xx is some number. At first I thought I can check those zones and manually rename them to what they were prior, but it seems it used numbers that were not in use, that is, zones that don't exist (first one is alarm_zone_3 but I have no zone 3). So I'm not sure how I'd identify each of those zones to figure which is which (some are low temp for example).

Looking for a pattern, they seem to be random sensors/zones, my front door is one, but other doors show fine and correct. Some smoke detectors are renamed while others are fine. I don't see anything in the naming scheme, some are single word, others are multiple.

ufodone commented 1 year ago

@greggitter I've opened an issue for this: #3

ufodone commented 1 year ago

FYI that v0.2.1 and v0.2.2 are broken for Honeywell systems so please do not upgrade to them if you have a Honeywell panel. I'll get an update out tonight.

ChirpyTurnip commented 1 year ago

Sorry for the delay, had to wait for weekend!

Implementation steps for DSC + EVL4:

  1. Changed envisalink: section of configuration.yaml to envisalink_new:
  2. Added custom HACS repo, installed envisalink_new integration
  3. Restarted HA
  4. New integration detected automatically, configuration correctly imported
  5. Commented out envisalink_new: section of configuration.yaml
  6. Restarted HA
  7. Verified settings (e.g. zone dump interval), sensor check, arm/disarm check, dashboard and Node Red linkages
  8. Everything looks good!
  9. Remove everything, re-add it all manually
  10. Repeat tests. All OK.

Does it import your configuration.yaml correctly? - YES If you don't have any configuration.yaml entries, are you able to successfully add the EVL via the UI? - YES Does it auto-detect your EVL version and panel type correctly? - YES Do you see your firmware version listed in the device settings? - YES Do you see any errors or warnings in the log files? - NO (log are clean for custom_components.envisalink_new) If you have any automations, etc. connected to your envisalink, do they still work correctly? - YES Generally speaking, does anything look wrong or broken? NO (everything seems to be good, will leave this in place for now).

Excellent work!

:-)

On Sat, 14 Jan 2023 at 07:55, ufodone @.***> wrote:

FYI that v0.2.1 and v0.2.2 are broken for Honeywell systems so please do not upgrade to them if you have a Honeywell panel. I'll get an update out tonight.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.

Message ID: @.***>

ufodone commented 1 year ago

I've release v0.3.0 now with updates for Honeywell systems. The changes are fairly substantial and I had limited ability to test this myself as I don't have a Honeywell system.

I'm in the process of building a mock EVL server to test against but I'm primarily going on the (dated) documentation I have about the EVL. I'd really appreciate it if anyone with a Honeywell system could provide a debug log of their system showing zones opening and closing as well as arming and disarming in the various modes. That would give me great info to go on to improve the mock server I have so I can test future changes better.

The logs could be either from this release or from a stock HA envisalink integration.

logger:
  default: info
  logs:
    homeassistant.components.envisalink: debug
    pyenvisalink: debug
    custom_components.envisalink_new: debug

As always, you may want to scrub your password and alarm code from the logs. As I'm now a bit more familiar with the Honeywell portion of the code, I realize the scrubbing the alarm code is trickier given how it is sent to the EVL so any arm/disarm actions you take would be best done from a physical keypad so no code shows up in the logs.

Thanks for any help you can provide!

ryanpie86 commented 1 year ago

Sorry I missed this. Count me in.

On Tue, Jan 10, 2023, 12:23 AM ufodone @.***> wrote:

Hi all! Sorry in advance for the unsolicited message.

I'm in the process of modernizing the Home Assistant envisalink integration. This is a fairly substantial change and I'd like to get as much testing on it as possible before submitting it as a PR back to the HA.

As you probably know, the integration supports both DSC and Honeywell systems. While much of the code is the same, there are differences and I have no ability to test changes to the Honeywell portion as I only have a DSC system myself. The integration also supports EVL3 and EVL4 units and I only have an EVL4.

And because the changes include refactoring how the configuration of the system is done (moving from configuration.yaml into the UI), this also means that variances in configuration may expose bugs that I don't see in my own testing.

To this end, I'm reaching out to you all in the hopes that some will be willing to help test the changes. I wasn't sure the best was to communicate with people using this integration so I went through many of the issues that have been opened for it in the Home Assistant project.

The lack of support for UI configuration has in some ways hampered my ability to make other updates to the integration (such as reintroduction of the zone bypass switches) so I'm hopeful that if I can get these changes contributed back I'll be in a better position to support the integration.

I'm setting this up as a HACS custom component for now using a different name. This should allow easier testing and iteration while will making it quick and easy to switch back to the standard/build-in integration. While it's not quite ready for external use yet, I hope to have a version ready very soon.

I would appreciate any help people can offer - be that testing the integration, providing debug logs from Honeywell systems (so maybe I can make an emulator to test against) or even just posting your existing configurations and details on your setups (automations, etc.) to help me try and cover all the bases.

Here https://github.com/ufodone/envisalink_new#readme is a list of the major changes to date.

If you think you can help in any way, please let me know below. Thanks in advance!

@ChirpyTurnip https://github.com/ChirpyTurnip @Damien2s https://github.com/Damien2s @DanielBaulig https://github.com/DanielBaulig @Hamish1066 https://github.com/Hamish1066 @Papester https://github.com/Papester @TheFuzz4 https://github.com/TheFuzz4 @abarbaccia https://github.com/abarbaccia @abmagfab https://github.com/abmagfab @active-atom https://github.com/active-atom @adman120 https://github.com/adman120 @audymatic https://github.com/audymatic @ausfas https://github.com/ausfas @bbrendon https://github.com/bbrendon @bolapara https://github.com/bolapara @camrun91 https://github.com/camrun91 @cgraf https://github.com/cgraf @crackers8199 https://github.com/crackers8199 @facuzestoa https://github.com/facuzestoa @greggitter https://github.com/greggitter @jl-678 https://github.com/jl-678 @larry-glz https://github.com/larry-glz @mniquette https://github.com/mniquette @monxhy https://github.com/monxhy @nate3421 https://github.com/nate3421 @olddawgpowers https://github.com/olddawgpowers @raspman https://github.com/raspman @rct https://github.com/rct @ryanpie86 https://github.com/ryanpie86 @schmuy https://github.com/schmuy @tinuva https://github.com/tinuva @undert03 https://github.com/undert03 @warnejo https://github.com/warnejo

— Reply to this email directly, view it on GitHub https://github.com/ufodone/envisalink_new/issues/1, or unsubscribe https://github.com/notifications/unsubscribe-auth/AS5MECVTIOA4KMP23PD5Z6LWRTW4DANCNFSM6AAAAAATWHBQ3M . You are receiving this because you were mentioned.Message ID: @.***>

facuzestoa commented 1 year ago

HiGlad to see improvements coming!I’m running EVL4 on DSC. I will install and test as soon back home. Don’t like to do it on remote 😉Saludos,FacundoOn 14 Jan 2023, at 15:53, ryanpie86 @.***> wrote: Sorry I missed this. Count me in.

On Tue, Jan 10, 2023, 12:23 AM ufodone @.***> wrote:

Hi all! Sorry in advance for the unsolicited message.

I'm in the process of modernizing the Home Assistant envisalink integration. This is a fairly substantial change and I'd like to get as much testing on it as possible before submitting it as a PR back to the HA.

As you probably know, the integration supports both DSC and Honeywell systems. While much of the code is the same, there are differences and I have no ability to test changes to the Honeywell portion as I only have a DSC system myself. The integration also supports EVL3 and EVL4 units and I only have an EVL4.

And because the changes include refactoring how the configuration of the system is done (moving from configuration.yaml into the UI), this also means that variances in configuration may expose bugs that I don't see in my own testing.

To this end, I'm reaching out to you all in the hopes that some will be willing to help test the changes. I wasn't sure the best was to communicate with people using this integration so I went through many of the issues that have been opened for it in the Home Assistant project.

The lack of support for UI configuration has in some ways hampered my ability to make other updates to the integration (such as reintroduction of the zone bypass switches) so I'm hopeful that if I can get these changes contributed back I'll be in a better position to support the integration.

I'm setting this up as a HACS custom component for now using a different name. This should allow easier testing and iteration while will making it quick and easy to switch back to the standard/build-in integration. While it's not quite ready for external use yet, I hope to have a version ready very soon.

I would appreciate any help people can offer - be that testing the integration, providing debug logs from Honeywell systems (so maybe I can make an emulator to test against) or even just posting your existing configurations and details on your setups (automations, etc.) to help me try and cover all the bases.

Here https://github.com/ufodone/envisalink_new#readme is a list of the major changes to date.

If you think you can help in any way, please let me know below. Thanks in advance!

@ChirpyTurnip https://github.com/ChirpyTurnip @Damien2s https://github.com/Damien2s @DanielBaulig https://github.com/DanielBaulig @Hamish1066 https://github.com/Hamish1066 @Papester https://github.com/Papester @TheFuzz4 https://github.com/TheFuzz4 @abarbaccia https://github.com/abarbaccia @abmagfab https://github.com/abmagfab @active-atom https://github.com/active-atom @adman120 https://github.com/adman120 @audymatic https://github.com/audymatic @ausfas https://github.com/ausfas @bbrendon https://github.com/bbrendon @bolapara https://github.com/bolapara @camrun91 https://github.com/camrun91 @cgraf https://github.com/cgraf @crackers8199 https://github.com/crackers8199 @facuzestoa https://github.com/facuzestoa @greggitter https://github.com/greggitter @jl-678 https://github.com/jl-678 @larry-glz https://github.com/larry-glz @mniquette https://github.com/mniquette @monxhy https://github.com/monxhy @nate3421 https://github.com/nate3421 @olddawgpowers https://github.com/olddawgpowers @raspman https://github.com/raspman @rct https://github.com/rct @ryanpie86 https://github.com/ryanpie86 @schmuy https://github.com/schmuy @tinuva https://github.com/tinuva @undert03 https://github.com/undert03 @warnejo https://github.com/warnejo

— Reply to this email directly, view it on GitHub https://github.com/ufodone/envisalink_new/issues/1, or unsubscribe https://github.com/notifications/unsubscribe-auth/AS5MECVTIOA4KMP23PD5Z6LWRTW4DANCNFSM6AAAAAATWHBQ3M . You are receiving this because you were mentioned.Message ID: @.***>

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

ufodone commented 1 year ago

@facuzestoa @ryanpie86 Thanks for the offer.

@greggitter has been giving me a ton of help with the Honeywell side of things as I don't have one myself. I think it's in decent shape now with the v0.3.4 release.

larry-glz commented 1 year ago

I just tested on my honeywell:

Does it import your configuration.yaml correctly? Yes If you don't have any configuration.yaml entries, are you able to sucessfully add the EVL via the UI? Didn't test.
Does it auto-detect your EVL version and panel type correctly? Yes Do you see your firmware version listed in the device settings? Yes Do you see any errors or warnings in the log files? No If you have any automations, etc. connected to your envisalink, do they still work correctly? Yes (so far) Generally speaking, does anything look wrong or broken? I'll report if i see anything. I plan to leave this version enabled.

rct commented 1 year ago

@ufodone - Sorry I missed this until today when @tinuva pointed it out.

I will give it a try and let you know. Though like @tinuva I intend to run it connecting to my existing AlarmServer that I use as a proxy to my EnvisaLink

Note: I ran into a problem with new Envisalink EVL-4 firmware, which prompted me to dig into things. I created this current state of AlarmServer discussion on Juggie's AlarmServer repo https://github.com/juggie/AlarmServer/discussions/80

ufodone commented 1 year ago

Hi all... a couple quick updates:

Thanks again to everyone who's been helping me test these changes out. Your input and feedback has been invaluable.

The v0.4.0 release had an unfortunate bug that prevented zone and partition state changes from showing up in Home Assistant. I've published a new version which fixes that issue. I didn't notice it originally because I'd been focusing on some other areas. Sorry!

The latest v0.4.1 release has some changes to how zone timer dumps are processed. I've seen plenty of issues opened related to this code over the past couple of years and so took a stab and making it work more reliably based on what I've learned about how the DSC and Honewell system report their data. I hope the changes will make things more reliable and I'd appreciate you keeping an eye open for any oddities.

Please also note that for some releases it may be necessary to remove the integration completely via HACS and then re-install it. If you don't, you may see odd behaviour (such as duplicate devices). This is due to me needing to change some of the details on how the device and entities are registered. I think that stuff is fairly stable now so hopefully this won't be a regular occurrence.

schmuy commented 1 year ago

I was just about to comment that zones weren't updating in 0.4.0.

Thanks for all your work on getting this done and having updates so quickly.

ChirpyTurnip commented 1 year ago

Hi,

I tried to update to the new version (DSV/EVL4) and HA wouldn't complete the restart. I removed the integration and re-added and it refuses to connect to the EVL. I've rolled back to v3.5, and it connected immediately. Unfortunately all my zone names etc are missing so the entities names are different now from the looks of it so I will need to unpick a few things....

Any tests you want me to run?

Thanks!

On Mon, 30 Jan 2023 at 19:46, schmuy @.***> wrote:

I was just about to comment that zones weren't updating in 0.4.0.

Thanks for all your work on getting this done and having updates so quickly.

— Reply to this email directly, view it on GitHub https://github.com/ufodone/envisalink_new/issues/1#issuecomment-1408077788, or unsubscribe https://github.com/notifications/unsubscribe-auth/AUIP7ZUCZHWJ55HXI2UYPY3WU5PTZANCNFSM6AAAAAATWHBQ3M . You are receiving this because you were mentioned.Message ID: @.***>

ufodone commented 1 year ago

@ChirpyTurnip Let's take it over here to avoid spamming others.

madsci1016 commented 1 year ago

Are testers still needed? Just found this while debugging the random zone open/close issue with the old integration. Would love to see a more polished version that is more stable.

ufodone commented 1 year ago

@madsci1016 Absolutely! What started out as just trying to get the integration using the config flow has turned it to a bit of a "fix everything" project so happy to have more folks testing and providing input.

garyak commented 1 year ago

Single EV4, Honeywell Vista 20-P, yaml configuration on HAOS 9.5. I'd like to help with testing. I prefer "manual" installation of critical components. I've downloaded the latest release(v0.4.1 into config/custom_components. What steps are needed to swap envisalink for envisalink_new?

greggitter commented 1 year ago

What steps are needed to swap envisalink for envisalink_new?

Here: https://github.com/ufodone/envisalink_new

ufodone commented 1 year ago

@garyak

I prefer "manual" installation of critical components.

I don't have any plans at the moment to remove the configuration.yaml method. However, any new configuration items will only be available via the UI. This is a Home Assistant requirement so not anything I have control over.

garyak commented 1 year ago

Thanks. I started testing. I have other components that I originally installed manually. Later, the dev moved the component to an "official" integration. I was able to add the new integration without using HACS. is this an optional path?

envisalink_new on HA 2023.2.3 picked up the old envisalink config from configuration.yaml and connected successfully. If I subsequently comment out the old config and restart, envisalink_new doesn't start. For "manual" installations, I need to retain the yaml config, correct? I'm still using the envisalink: header in yaml.

ufodone commented 1 year ago

Yes, you can install the integration manually rather than via HACS if you prefer.

If I subsequently comment out the old config and restart, envisalink_new doesn't start

You need to rename "envisalink:" to "envialink_new:" in your configuration.yaml and the new integration will pick it up. The name needs to be different to avoid a conflict with the stock integration. This is temporary for now but will eventually be renamed back to envisalink when I submit the changes back into the main HA project.

I need to retain the yaml config, correct? I'm still using the envisalink: header in yaml.

That's up to you but probably recommended. Once you've done the rename, the new integration should just pick it up and you'll see your EVL in the Settings->Devices&Services screen and shouldn't need to do anything else.

The alternative would be to comment out all your config and then manually add the device via the UI. This path is likely for new users of the integration who don't have any existing config.

garyak commented 1 year ago

Integration isn't picking up the yaml as envisalink_new. Renaming back to envisalink allows the integration to read the config on startup. Here's the integration shown on the Devices&Services screen:

envisalink

Needed to comment out the envisalink config and restart to allow me to add the envisalink_new integration. Once added, the yaml config needs to be in place for HA to load envisalink_new at startup. I haven't found the config entity.

I haven't been able to get envisalink_new to create the devices and services provided by the old envisalink component.

ufodone commented 1 year ago

Let's take it up over here.

rct commented 1 year ago

Re: manual YAML config, envisalink -> envisalink_new - I don't know whether to add this here, or to the closed #16.

Is this expected to work, or is the GUI config flow required at this point?

Trying to test the new integration using manual YAML configuration for the envisalink and all zones.

  1. Config key renamed from envisalink vs. envisalink_new.
  2. Restarting Hass, it doesn't find the config keys for envisalink

2023-02-11 15:11:04.161 ERROR (MainThread) [homeassistant.config] Invalid config for [envisalink]: required key not provided @ data['envisalink']['host']. Got None
required key not provided @ data['envisalink']['panel_type']. Got None
required key not provided @ data['envisalink']['password']. Got None
required key not provided @ data['envisalink']['user_name']. Got None. (See ?, line ?). Please check the docs at https://www.home-assistant.io/integrations/envisalink
2023-02-11 15:11:04.168 ERROR (MainThread) [homeassistant.setup] Setup failed for envisalink: Invalid config.
2023-02-11 15:11:07.718 ERROR (MainThread) [custom_components.envisalink_new.pyenvisalink.alarm_panel] Unable to validate connection: Cannot connect to host envisalinkhost:8080 ssl:default [Connect call failed ('192.168.xxx.yyy', 8080)]

In the Hass GUI .../config/integrations it doesn't show a card for Envisalink or Envisalink_new, but when I click + Add integration, it shows

image

Note: Judging by that last line in the error message, It did partially pickup the configuration for envisalink host, because it tried to connect to the envisalinkhost, but on port 8080, and possibly trying to do SSL?

Unable to validate connection: Cannot connect to host envisalinkhost:8080 ssl:default [Connect call failed ('192.168.xxx.yyy', 8080)]

So at this point, do I need to configure host, panel_type, user_name, password through the add integration GUI/config flow?

ufodone commented 1 year ago

FYI I have published a new release with some fairly substantial changes so please read the release notes carefully before upgrading. All the details are in the release notes here.

One other thing I forgot to add to the release notes:

I've changed to port used to discover the EVL's MAC address back to port 80 (it was previously 8080). If you firewall or port-forward to your EVL, you may need to adjust that to account for the new port.

Thanks!

garyak commented 1 year ago

This is likely a local network issue, but thought I'd mention it for error handling.

2023-02-11 21:07:02.925 ERROR (MainThread) [custom_components.envisalink_new.pyenvisalink.envisalink_base_client] Command '00' failed due to timeout waiting for response from EVL
2023-02-11 21:07:02.933 ERROR (MainThread) [custom_components.envisalink_new.pyenvisalink.envisalink_base_client] Caught unexpected exception: IncompleteReadError('0 bytes read on a total of undefined expected bytes')
2023-02-11 21:07:02.942 ERROR (MainThread) [custom_components.envisalink_new.pyenvisalink.envisalink_base_client] Reconnection attempt in 30s

Running latest release, Only one event like this overnight. Reconnection was successful.

rct commented 1 year ago

0.5.0 testing: DSC/EVL4/01.05.204 seems to be working in general. Tested disconnecting/reconnecting by killing my AlarmServer proxy, uncaught exception reported in #20.

ufodone commented 1 year ago

Hi all! I've published a new v0.6.2 release which contains a new algorithm for handling state changes on Honeywell panels. If you have a Honeywell system, please keep an eye out for any oddities.

Also, please ensure that you disable zone timer dumps: zonedump_interval: 0 in your configuration.yaml or find the setting in Configuration->Advanced. If you don't disable them, it will likely interfere with the new algorithm.

If you're interested in the details, you can find some in #9.

If you find an issue, please open a new issue to track it.

Thanks to @philh30 for the changes.

The zone timer dumps were mainly for Honeywell panels in the past. With this new algorithm, I think they may be completely unnecessary. If you have a DSC panel and feel they are still required, please let me know.

larry-glz commented 1 year ago

I’ve seen some weird behavior with the recent update, but I can’t seem to replicate. It appears (not sure) that during arming, all the zones are tripped. But the system is still able to be armed. So the Envisalink seems ok, it may be the integration logging the trips. When this happens and I disarm, all is cleared. I’ll keep monitoring.

ufodone commented 1 year ago

I think things are in pretty good shape now to start the process of getting these changes merged back into Home Assistant.

Please let me know if there are any issues are you still encountering.

Thanks!