This blueprint provides a comprehensive, flexible alarm system solution that works natively with Home Assistant. No custom components required. Perfect for home security, office monitoring, or any security application, it delivers a responsive and user-friendly experience.
Key Features
Multiple Keypad Options: Choose Z2M, ZHA, Dashboard, or any combination
Physical Zigbee Keypads: Sync states with Z2M or ZHA (tested with frient KEPZB-110)
Dashboard Keypad: Custom on-screen numeric keypad for wall tablets/panels or Companion App
Multiple User Codes: Unlimited user codes with support for PIN codes (digits) and RFID tags (hexadecimal: 0-9/A-F)
Two-Tier Code System: Blueprint validates user codes, then sends master code to alarm panel - your alarm panel doesn’t need to support multiple codes
Smart Automation: Auto-arm when leaving, auto-disarm on arrival, flexible time-based schedules (weekday/weekend/custom)
Rich Notifications: Text notifications with camera feeds (iOS live/Android snapshot), TTS announcements, critical alerts
Mode-Specific Configuration: Different sensors and actions for Away/Home/Night/Arming/Pending/Disarmed/Triggered/Emergency modes
Emergency Mode: Silent alarm via keypad SOS button (long-press 5+ seconds) (physical keypads only)
Requirements
Home Assistant: Version 2024.8.0 or later
Manual Alarm Control Panel: Required (setup instructions in blueprint)
Text Helper Entities: For storing codes (setup instructions in blueprint)
Physical Zigbee Keypad: Connected via Z2M or ZHA (optional)
Dashboard Helper Entities: If using Dashboard keypad (optional)
Known Issues
ZHA Limitations: ZHA doesn’t support all features available in Z2M, as some alarm states are missing from the ZHA implementation. While arming, disarming, and state synchronization work correctly with this blueprint, the keypad’s beeping patterns and LED status indicators may not display accurately.
ZHA LED Bug: ZHA currently has a bug affecting LED indicators on the keypad—they don’t accurately reflect the actual alarm state. An open issue is tracking this problem.
Getting Started
All setup instructions, YAML examples, and configuration details are self-contained within the blueprint itself. After importing, you’ll find:
Recommended Setup Using Packages: Complete package configuration with alarm panel, helpers, and template sensors
Dashboard Scripts: YAML for all required scripts if using the dashboard keypad
Dashboard Lovelace YAML: Complete card configuration for the on-screen keypad
Version History: Full changelog and breaking changes
Detailed Input Descriptions: Every setting is thoroughly documented with examples
The blueprint will guide you through creating the required entities and configuring each feature.
It isn’t working for me. I can’t get it to work. I set up all of the functions with the blueprint and when i use the dashboard that I made for it, nothing. The code process works but I doesn’t call the alarm system to arm or anything. Is there a script that I am missing?
In the Blueprint description there are several scripts shown under Dashboard Keypad - Setup Instructions, you can easily copy/paste this into the alarm.yaml file. Each button press has it’s own script, which is why it is easier to do it through YAML.
Also don’t forget to enable the Keypad integration with type Dashboard in the selections at the start of the Blueprint.
Ok, so you can see the dots when pressing the buttons in your Dashboard?
Can you share the YAML from the Blueprint settings? You can do this by going to the Automation section of your HA: /config/automation/dashboard and clicking on the Automation you made from my Blueprint. Click on the three dots in the top right and select Edit in YAML and share the YAML here.
If there are sensitive things in there you don’t want to share, you can mask the names.
I just checked with your YAML in my Home Assistant environment, with the same entities/names, apart from the three you obviously masked. And it works as expected.
Did you create the helpers with the correct filters and do the user_codes only contain digits between 4-16 in length?
If you change the names of the Alarm Code User helpers in the YAML to be Alarm Code yourname , instead of Alarm Code User 1 (yourname) it will filter out just yourname for notifications / announcements.
Hi, first of all thank you for this blueprint, I’m really happy with it and it works great overall.
I’m only running into one issue: I do not receive any notification when the alarm goes into the triggered state. Notifications for arming, pending, armed and disarmed all work correctly. When the alarm is triggered, the configured triggered script is executed, but no triggered notification is sent.
Yes, that’s correct.
It is specifically the notification message under “Mode – Triggered” that is not sent.
The triggered script in that same section does run, but the notification does not.