Smart Smoke System
The ultimate safety suite for interoperable Zigbee smoke detectors in Home Assistant.
Turn your individual Zigbee smoke detectors into a professional, interconnected fire alarm system without buying an expensive hub.
Why this blueprint?
Most Zigbee smoke detectors are âdumbâ isolated devices. If a fire starts in the attic, you wonât hear it in the bedroom. This blueprint fixes that.
Key Features
Interconnected Alarms: If one detector triggers, ALL detectors in your home will sound their sirens.
Pre-Alarm Verification: Prevents panic from burnt toast. You get a phone notification first (âIs this real?â). If you donât answer, the main alarm triggers.
Notification Sound Chooser (iOS + Android): Choose default,none, or type your own sound name for pre-alarm and main alarm notifications.
Room-First Alert Text: Alert titles/messages start with room/area name so it remains visible even when notifications are shortened.
Guided Self-Test Wizard: A specialized interactive mode. You trigger the test in HA, and your phone guides you room-by-room to physically press the buttons.
Smoke Spray Mode: Optional post-test phase to safely use canned smoke spray without triggering the full evacuation plan.
Watchdog Protection: If a REAL fire is detected during a self-test, the test is immediately aborted, and the full alarm sounds.
Custom Actions: Fully customizable main alarm actions (turn on lights, unlock doors, open blinds, etc.).
Requirements
- Home Assistant (2024.10 or newer).
- Supported Smoke Detectors connected via Zigbee (ZHA or Zigbee2MQTT), including:
- Aqara
JY-GZ-01AQ - Heiman
HS1SA-E-PLUS - Moes
ZSS-HM-SSD01 - Generic/OEM
SMSZB-120 - Other Zigbee smoke detectors exposed in Home Assistant via ZHA/Zigbee2MQTT
- Requirement: the detector must provide a
binary_sensorwithdevice_class: smoke - Check this in Home Assistant: Developer Tools â States (entity attributes)
- Requirement: the detector must provide a
- Aqara
- Home Assistant Mobile App installed on your phone.
- Mobile Settings (CRITICAL):
- iOS: Enable âCritical Alertsâ in iOS Settings â Home Assistant â Notifications.
- Android: Notifications are sent to channel
alarm_stream. Configure this channel in Android Settings to âOverride Do Not Disturbâ, set channel importance to max, and configure your preferred channel sound.
Installation
Option 1: Direct Import (Recommended)
- Click the badge below to import the blueprint directly into your Home Assistant instance.
- Click âPreview Blueprintâ and then âImport Blueprintâ.
Option 2: Manual Installation
- Copy the code from the
.yamlfile. - Go to your Home Assistant config folder:
/config/blueprints/automation/xat0x/. - Create a file named
xat0x-smoke-linker-ultimate.yamland paste the code. - Go to Developer Tools â YAML â Reload Automations.
Configuration Guide
Create a new automation using this blueprint. The settings are organized into collapsible sections:
1.
Devices & Triggers
- Smoke Detectors: Select ALL your Zigbee smoke detectors here.
- Test Start Trigger: Create an
input_buttonHelper in Home Assistant (recommended) and select it here. Pressing it starts the Self-Test Wizard.button,switch,input_boolean,sensor, andbinary_sensorentities are also supported. - Alarm Notification Devices: Phones for the whole family (Critical Alerts).
- Maintenance Device: The specific phone that will receive the interactive test instructions.
2.
Pre-Alarm
- Enable Pre-Alarm: Recommended ON.
- Timeout: Time (default 15s) to confirm âFalse Alarmâ on your phone before the loud sirens and main actions trigger.
- iOS Sound (Pre-Alarm): Choose
default/noneor type a custom sound name. - Android Sound (Pre-Alarm): Choose
default/noneor type a custom sound name.
3.
Main Alarm
- Main Alarm Actions: This is where you define your evacuation plan.
- Example: Add actions to Turn on all lights 100%, Unlock Nuki/Yale locks, Turn off HVAC/Gas.
- Mute Duration: How long sirens stay silent when you press âMuteâ.
- iOS Sound (Main Alarm): Choose
default/noneor type a custom sound name. - Android Sound (Main Alarm): Choose
default/noneor type a custom sound name.
4.
Self-Test & Spray
- Enable Self-Test: Required for the wizard.
- Enable Smoke Spray Test: If enabled, the wizard asks after the physical check if you want to perform a real smoke test.
How it works
Scenario 1: Burnt Toast (Pre-Alarm)
- Smoke is detected in the Kitchen.
- NO sirens go off yet (if Pre-Alarm is enabled).
- Your phone gets a Critical Notification: âSmoke detected in Kitchen. Confirm Fire?â
- You press âFalse Alarmâ.
- The system resets. The house stays quiet.
Scenario 2: Real Fire (Main Alarm)
- Smoke is detected in the Garage.
- You donât answer the notification within 15 seconds.
- FULL ALARM triggers.
- ALL supported detectors that expose alarm/siren control are commanded to start sirens.
- Main Alarm Actions run (Lights turn on, doors unlock).
- Phones receive: âFIRE - EVACUATE!â.
Notification Sound Names (how to find valid names)
- In Home Assistant, go to Developer Tools â Actions.
- Select the
notify.mobile_app_<your_phone>action, enter a test payload in YAML mode, and change thesound/ iOSpush.sound.namevalue. - If the phone plays the sound, that name is valid for your device/app setup.
- For Android:
- Android 8+ may use the notification channel sound as highest priority (
alarm_stream). - If a custom per-message sound is ignored, configure sound directly on the
alarm_streamchannel in Android notification settings. - Example payload keys:
- Android:
data: { sound: "default" } - iOS:
data: { push: { sound: { name: "alarm.caf" } } }
- Android:
- Android 8+ may use the notification channel sound as highest priority (
- Use
defaultfor system default sound, ornonefor silent.
Scenario 3: Monthly Maintenance
- You press the âTest Start Triggerâ (Helper button) in your Dashboard.
- Your phone receives: âSmoke Detector Self-Test (1/6)â.
- You walk to the indicated room (e.g., Living Room) and press the physical button on the detector.
- The system detects the beep, logs it, and notifies you to move to the next room.
- (Optional) At the end, you can choose to run a âSmoke Spray Testâ.
FAQ
Q: How do I start the Self-Test?
A: Unlike older versions, you do not start by pressing a smoke detector button. You must create an input_button helper in Home Assistant, assign it in the Blueprint settings (âTest Start Triggerâ), and press that helper in your dashboard to begin the wizard.
Q: I pressed âMuteâ on my phone, but the sirens are still going?
A: Zigbee traffic allows limited bandwidth. The blueprint uses an aggressive loop to send the mute command repeatedly. Please wait 5-10 seconds for the network to catch up.
Q: What happens if I am testing and a real fire starts?
A: The âWatchdogâ feature is always active. If a detector other than the one you are currently testing reports smoke, the test aborts immediately, and the full alarm triggers.
Disclaimer
Use at your own risk.
This blueprint is provided âas isâ, without warranty of any kind. The author (Xat0X) cannot be held responsible for any failure of the system to operate as expected.
- This system is NOT a certified fire alarm system.
- Always ensure you have working, standalone smoke detectors as a primary safety measure.
- Home Assistant, Zigbee networks, and WiFi can experience downtime; do not rely solely on this software for life-safety.
Created with
by Xat0X