npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@brandonarrindell/homebridge-envisalink

v1.3.0

Published

A homebridge plugin for the EnvisaLink alarm module - Maintained fork of homebridge-envisalink

Readme

@brandonarrindell/homebridge-envisalink

npm version npm downloads

A maintained fork of homebridge-envisalink (v1.2.10) with enhanced features and Homebridge 2.0 support.

This Homebridge plugin integrates your Envisalink security system with HomeKit, allowing you to:

  • Control your alarm panel (arm/disarm) using Siri or any HomeKit app
  • Monitor sensors for automations (e.g., turn on lights when doors open)
  • Trigger panic buttons (police, fire, ambulance) from HomeKit
  • Auto-discover Envisalink devices on your network

Version History

This fork continues from version 1.2.10 of the original plugin:

  • v1.3.0 - First release of the fork
    • Added Homebridge 2.0 support
    • Added auto-discovery feature
    • Improved stability and error handling
    • TypeScript rewrite

For earlier version history, see the original repository.

Features

What's New in This Fork

  • Full Homebridge 2.0 compatibility
  • Automatic discovery of Envisalink devices
  • Improved stability and error handling
  • Regular updates and maintenance
  • TypeScript rewrite for better reliability

🔒 Core Features

  • Support for both Envisalink 3 and 4
  • DSC and Honeywell panel support
  • Zone monitoring (doors, windows, motion, smoke, leak sensors)
  • Multiple partition support
  • Custom command support
  • Chime control
  • Panic buttons

Installation

npm install -g @brandonarrindell/homebridge-envisalink

Configuration

Add to your Homebridge config.json:

{
  "platforms": [
    {
      "platform": "Envisalink",
      "enableAutoDiscovery": true,
      "host": "192.168.0.XXX",  // Optional if enableAutoDiscovery is true
      "deviceType": "DSC",
      "password": "YOUR_PASSWORD",  // Default is "user"
      "pin": "YOUR_PANEL_PIN",
      "suppressZoneAccessories": false,
      "suppressClockReset": false,
      "ambulancePanic": {
          "enabled": true,
          "name": "Ambulance Panic"
      },
      "firePanic": {
          "enabled": true,
          "name": "Fire Panic"
      },
      "policePanic": {
          "enabled": true,
          "name": "Police Panic"
      },
      "partitions": [
        {
          "name": "Main Alarm",
          "enableChimeSwitch": true,
          "pin": "1243"
        }
      ],
      "zones": [
        {
          "name": "Front Door",
          "type": "door",
          "partition": 1
        },
        {
          "name": "Master Bedroom Door",
          "type": "door",
          "partition": 1
        }
      ]
    }
  ]
}

Configuration Options

| Option | Type | Default | Description | |--------|------|---------|-------------| | enableAutoDiscovery | boolean | true | Automatically discover Envisalink devices | | host | string | - | IP address of Envisalink (optional with auto-discovery) | | deviceType | string | "DSC" | Panel type ("DSC" or "Honeywell") | | password | string | "user" | Envisalink web interface password | | pin | string | - | Alarm panel PIN for disarming | | suppressZoneAccessories | boolean | false | Hide zone accessories in HomeKit | | suppressClockReset | boolean | false | Disable hourly panel clock sync |

See config.schema.json for full configuration options.

Auto-Discovery

The auto-discovery feature scans your network for Envisalink devices:

  1. Enable with enableAutoDiscovery: true
  2. Omit host to use auto-discovery exclusively
  3. First discovered device will be used
  4. Manual host configuration takes precedence

Advanced Features

Home vs. Night Arm Modes

  • Home: Arms in stay mode with entry delay
  • Night: Arms in stay mode with no entry delay (instant alarm)

Non-Sequential Zones

For systems with gaps in zone numbering:

{
  "zones": [
    {
      "name": "Front Door",
      "type": "door",
      "partition": 1,
      "zoneNumber": 1
    },
    {
      "name": "Garage Door",
      "type": "door",
      "partition": 1,
      "zoneNumber": 5
    }
  ]
}

Custom Commands

Add custom panel commands:

{
  "customCommands": [
    {
      "name": "System Test",
      "command": "071*600004"
    }
  ]
}

Troubleshooting

Common Issues

  1. Connection Problems

    • Only one socket connection allowed at a time
    • Use wired connections when possible
    • Set static IP for Envisalink
    • Verify password is correct
  2. Debug Mode

    {
      "platforms": [
        {
          "platform": "Envisalink",
          "enableVerboseLogging": true
        }
      ]
    }

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

Credits

License

This project is licensed under the MIT License - see the LICENSE file for details.