The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
To build a Zigbee door and window alarm in Home Assistant, pair a compatible contact sensor through a Zigbee coordinator, confirm its open/closed state, create an alarm entity with the Manual Alarm integration, and automate that alarm to trigger when a protected opening is opened while armed. Add a notification automation for phone alerts; a siren requires a separate compatible device.
What you need before you start
The basic build has four parts: Home Assistant, a Zigbee coordinator, one or more Zigbee door/window contact sensors, and an alarm entity plus automations. A contact sensor reports whether an opening is open or closed; the coordinator lets it join the Zigbee network; Home Assistant uses that sensor state to decide when to trigger the alarm.
Think of these as separate jobs: the coordinator and integration connect devices, the contact sensor reports an opening, the Manual Alarm entity represents the alarm’s state and timing, and automations link the two and provide alerts. A notification or siren is an additional outcome, not something a contact sensor or alarm entity supplies automatically.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteCheck your existing Zigbee setup
If you already have a Zigbee network running through ZHA, Zigbee2MQTT, or another integration, plan to use that existing setup rather than adding a second coordinator without a migration or coexistence plan. The steps below describe a ZHA-based build. If your devices are managed by another Zigbee integration, keep the pairing and device instructions specific to that integration.
#1 Best Overall
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
If you are starting a new ZHA network and do not have a coordinator, Home Assistant’s ZHA documentation recommends Connect ZBT-2 for new users. A coordinator is required for Zigbee devices to join the network; buying a contact sensor alone is not enough.
Do not treat ZHA and an existing Zigbee stack as interchangeable pairing screens. The sensor must join the network managed by the integration you intend to use. If you change stacks, make a migration plan rather than assuming a second coordinator will automatically share devices or make them appear in Home Assistant.
Choose a sensor by exact model
Check compatibility reports for the precise sensor model and its pairing procedure before buying. Home Assistant does not publish an official ZHA out-of-the-box compatibility list that guarantees individual devices will work. The ZHA documentation directs users to community device reports and device-specific pairing information. A sensor’s Zigbee branding alone does not establish that it will expose the expected entities or behave correctly in your setup.
Free tools Windows power users keep installed
One-click scans. No signup required.
Check more than the product category: verify that the exact model has a device-specific pairing path and that users report the behavior you need in the integration you plan to run. No particular contact-sensor model can be recommended here as guaranteed compatible. Likewise, there is no established price or battery-life figure to use as a dependable buying comparison. Avoid choosing on an unsupported assumption that every Zigbee contact sensor presents the same controls or entity classification.
Pair the sensor and verify its state
- Open ZHA’s device-joining flow in Home Assistant. ZHA scans for devices and adds a discovered device to its Zigbee network. Follow the integration’s setup flow rather than attempting to pair the sensor only through its manufacturer’s app.
- Put the sensor into pairing mode. Use the manufacturer’s reset and pairing instructions for the exact model. The button sequence and timing are model-specific, so do not assume one sensor’s reset method applies to another.
- Wait for ZHA to discover it. When the sensor is found, complete the add-device flow. If it does not appear, check that the sensor is in pairing mode and that the coordinator and integration you intend to use are the ones active in Home Assistant.
- Test the contact physically. Open and close the door or window and confirm that the corresponding Home Assistant entity changes between open and closed. Do this before building the alarm automation; an automation cannot reliably respond to a state the integration is not reporting.
Repeat the pairing and physical test for each opening you intend to protect. Keep track of which entity belongs to each door or window so you can select the right sensor when you configure triggers. This is particularly useful if one automation handles several openings: a wrong or omitted entity can leave an opening outside the alarm logic even though its sensor has joined the Zigbee network.
Pairing is not the same as verifying the whole alarm path. At this stage, the test is simply whether the sensor changes state when the contact separates and returns to closed when it is restored. If it does not, do not try to compensate with an alarm automation. Resolve the pairing or entity behavior first, using the device-specific instructions and compatibility reports for that model.
Make sure Home Assistant recognizes a door entity correctly
Home Assistant’s Door integration supplies door-open and door-closed triggers for binary_sensor entities with the door device class. A contact sensor can be used on an entry door, patio door, or interior door when its entity meets that requirement.
Recommended Free Tools
Rank #2
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
Do not assume every contact sensor automatically qualifies for those Door triggers. If your entity does not have the door device class, the Door integration will not include it as a door. You can instead use the entity’s reported state with an ordinary state trigger, or correct its classification where appropriate. The important test is that the entity reports the expected open and closed states when you operate the opening.
This distinction affects trigger choice, not whether a sensor can be useful. A sensor that reports open and closed can still be used with an ordinary state trigger even if it is not exposed as a door-class entity. Conversely, selecting a door-specific trigger does not make an incorrectly classified or non-reporting entity work. Check the entity itself before deciding which trigger type to use.
Create the alarm entity with Manual Alarm
Home Assistant’s Manual Alarm control panel integration creates an alarm system in Home Assistant. As the integration documentation puts it, “The Manual Alarm control panel integration enables you to create an alarm system in Home Assistant.” It supports optional code checking, arming time, pending or delay time, and trigger duration. This alarm entity provides the armed/disarmed logic for your automations; it does not, by itself, make a physical siren sound or send a phone notification.
Create the Manual Alarm entity before wiring up the opening automations. That gives the automation a specific alarm entity to check and trigger, and it gives you a place to set the timing and code behavior. Treat the entity as the logic layer: a sensor reports a change, an automation decides whether that change matters while armed, and the alarm entity moves into its triggered behavior when the automation calls the trigger action.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →Choose timing for your household
The current Manual Alarm documentation (version 2026.10.0) lists these global defaults:
| Setting | Documented default | What it controls |
|---|---|---|
| Arming time | 60 seconds | The time allowed for the alarm to arm. |
| Delay time | 60 seconds | The pending time before an alarm trigger. |
| Trigger time | 120 seconds | How long the alarm remains triggered. |
These are documented defaults, not security recommendations. Select timings that fit how people enter and leave your home, and review any state-specific settings because they can override the global values. If there is no need for an exit countdown or an entry grace period, do not keep a delay merely because it is the default. A delay gives someone more time to disarm the system, but it also postpones the trigger.
Consider each setting separately instead of treating the three numbers as a package. The arming time is relevant to the period after you start arming, the delay time is the pending period before a trigger, and the trigger time controls how long the alarm remains triggered. Decide how much time household members need to leave after arming and to disarm after entering. The appropriate values depend on those routines; the documentation’s defaults do not establish that a particular duration is right for every home.
Rank #3
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
State-specific timing settings can override global values, so inspect the settings that apply to the mode you actually use. Otherwise, you may believe an alarm is following one timing value while a more specific setting controls its behavior. During testing, allow enough time to observe the arming and pending phases rather than judging the setup from the final triggered state alone.
Code checking is optional. Decide whether the household needs a code to arm or disarm the alarm, and configure the integration accordingly. The documentation establishes that code checking is supported, but the right choice depends on who will use the system and how you want to manage access.
Trigger the alarm when a protected opening opens
Create an automation for each protected sensor, or one automation that covers the selected sensors. The logic is the same: an opening changes to open, the alarm is currently armed, and Home Assistant calls the alarm trigger action. Home Assistant’s Manual Alarm documentation shows this pattern using a sensor state trigger, a condition checking the armed state, and the alarm_control_panel.alarm_trigger action.
The armed-state condition is essential. Without it, an opening could trigger the alarm when someone is entering or leaving while the system is disarmed. Keeping the condition in the automation makes the intended rule explicit: only an opening event that occurs while the alarm is armed proceeds to the trigger action.
- Choose the trigger. Select the contact sensor and have the automation respond when its state changes to open. If the entity has the
doordevice class, you can use a Door integration open trigger. Otherwise use an ordinary state trigger for that entity. - Add an armed-state condition. Require the alarm entity to be armed before proceeding. This prevents an ordinary opening from triggering the alarm while the system is disarmed. Use the state exposed by your alarm entity and the condition options presented in your Home Assistant configuration.
- Call the trigger action. Add the
alarm_control_panel.alarm_triggeraction for the Manual Alarm entity. The alarm’s configured delay and trigger timing determine its behavior. - Save and test the automation. Test with the alarm disarmed, then armed. Confirm that opening a protected door while disarmed does not trigger the alarm, and that opening it while armed follows the delay and trigger behavior you configured.
If you use several sensors, test each one. A correctly configured automation for the front door does not prove that a patio or window sensor is selected correctly. Test closing the opening as well, so you know the sensor reliably returns to its closed state before the next arm cycle.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
For one automation covering multiple sensors, make sure each intended entity is included in the trigger configuration and that the opening condition matches the sensor’s reported state. For separate automations, verify that each one checks the same alarm entity and applies the armed-state condition. Either organization can implement the described logic; the important point is that no protected sensor is accidentally left out and that all triggers lead to the intended alarm entity.
Use the alarm’s configured delay and trigger time rather than assuming an opening instantly produces every possible alert. The automation calls the alarm trigger action; the Manual Alarm entity determines its alarm behavior, while separate notification or siren automations respond to the resulting triggered state. Keeping these stages distinct makes failures easier to identify.
Rank #4
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
Add notifications or an audible alert
Phone notification
A phone alert is a separate automation outcome. Configure an automation that responds when the alarm entity changes to triggered, then use the notification action available in your Home Assistant setup. This keeps the notification tied to the alarm’s state rather than sending a message every time a contact sensor opens, including when the alarm is disarmed.
Test the notification independently from the sensor and alarm logic. First confirm that the alarm reaches triggered when an armed opening is detected; then check that the notification automation responds to that state. If the alarm triggers but the phone alert does not arrive, the sensor has already done its part, so investigate the notification action and its destination rather than changing the contact trigger.
Siren
An audible alert requires a separate physical siren. ZHA lists sirens as a supported device type, but that category does not guarantee that a particular model will pair or expose the controls you need. Check the exact model’s device-specific pairing information, pair it through your Zigbee integration, and confirm its controls before relying on it. Then add a separate automation action to activate the siren when the alarm is triggered, if the model exposes a suitable control.
Do not buy a siren based only on a general supported-device category. No specific siren model is established as compatible here. Confirm the exact model and its available controls before planning an automation around it. The phone notification and siren are separate choices: a notification needs a notification action, while an audible alarm needs a compatible physical device as well as an action that can operate it.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Test the complete system before relying on it
- Open and close every sensor and verify its state changes correctly in Home Assistant.
- Arm the alarm and check that its configured arming time behaves as intended.
- Open a protected door while the alarm is armed and verify the pending or delay behavior, if configured.
- Disarm the alarm during the pending period and confirm that the trigger is prevented as intended.
- Open a protected door while the alarm is disarmed and confirm that the armed-state condition blocks the trigger.
- Confirm that the alarm reaches the triggered state when expected, and that the notification or siren automation responds to that state.
Run these tests with each protected opening, not just one convenient sensor. Test both opening and closing transitions, then repeat the armed and disarmed cases. That checks the physical input, the selected trigger, the armed-state condition, and the alarm entity as a connected sequence rather than assuming that successful pairing proves the rest of the configuration.
These checks distinguish a sensor problem from an alarm or notification automation problem. If the sensor state does not change, resolve pairing or entity behavior first. If the state changes but the alarm does not, inspect the automation’s trigger, armed-state condition, and selected alarm entity. If the alarm triggers but no alert arrives, check the separate notification or siren automation.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Fix the driver behind crashes, sound loss and screen glitches3Clear out junk files and repair common Windows errorsAlso verify the timing you selected in practice: the arming period, the pending period after an opening, and how long the alarm remains triggered. Confirm the disarm behavior during the pending period and make sure the household understands the chosen entry and exit routine. Testing is not a reason to assume that the documented defaults are suitable; it is how you confirm that your configured values and automations produce the behavior you intended.
Best Value
- 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
- Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
- Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
- HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
- What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
When MQTT is relevant
Home Assistant’s MQTT integration supports alarm control panel entities and can be configured through the UI. It is an optional route when your existing alarm setup already uses MQTT; it is not required for the straightforward ZHA plus Manual Alarm build described here. Avoid adding MQTT just to make a contact sensor trigger an alarm if ZHA and Manual Alarm already meet your needs.
Choose the MQTT route because it fits an existing MQTT-based setup, not as an extra prerequisite for pairing a Zigbee contact sensor. For the ZHA path in this guide, the coordinator and ZHA connect the sensor, while Manual Alarm and automations provide the alarm behavior. If you use another Zigbee integration, keep its device instructions aligned with that stack rather than introducing MQTT without a reason.
What this build does—and does not—provide
This setup joins a Zigbee contact sensor to Home Assistant and uses an alarm entity and automation to react to an opening while armed. It can also invoke a configured notification action or a compatible siren automation. It does not establish a guarantee of security effectiveness, promise a particular sensor battery life, or make every Zigbee-branded product compatible. Confirm the exact device behavior in your own integration and test the complete sequence before relying on it.
Frequently Asked Questions
Do I need a Zigbee coordinator to use a Zigbee door sensor with Home Assistant?
Yes. A Zigbee contact sensor needs a coordinator and a compatible Home Assistant integration to join the network. For new ZHA users who do not already have a coordinator, Home Assistant currently recommends Connect ZBT-2.
Will any Zigbee contact sensor work with ZHA?
No. Home Assistant does not provide an official ZHA out-of-the-box compatibility list for every individual device. Check reports and pairing information for the exact model before buying; Zigbee branding alone does not guarantee that it will expose the entities or behavior you need.
Do I have to use the Door integration trigger?
No. Door-open and door-closed triggers require a binary_sensor with the door device class. If your contact sensor does not have that class but reports open and closed states, use an ordinary state trigger instead, or correct the classification where appropriate.
What are the Manual Alarm timing defaults?
Home Assistant’s Manual Alarm documentation version 2026.10.0 lists defaults of 60 seconds for arming time, 60 seconds for delay time, and 120 seconds for trigger time. They are documented defaults, not recommended settings, and state-specific values can override global ones.
Does the alarm entity send a phone alert or make a siren sound by itself?
No. The Manual Alarm entity supplies alarm behavior, but a phone notification needs a separate automation, and an audible alert needs a separate compatible physical siren and an automation that can operate it. ZHA’s siren device category does not guarantee compatibility for every model.
Do I need MQTT for the ZHA and Manual Alarm setup?
No. MQTT is an optional route when an existing setup already uses MQTT. It is not required for the straightforward ZHA plus Manual Alarm build.
The Bottom Line
Start with the Zigbee setup you already run, verify the exact sensor model, and test every opening’s state before creating alarm logic. Use Manual Alarm for armed behavior and timing, trigger it only when a sensor opens while armed, and add notifications or a siren as separate outcomes. Confirm arming, delay, disarming, triggering, and alerts end to end before relying on the setup.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

