From 7ff0690fa6f5727e1203daa325965d00d629897a Mon Sep 17 00:00:00 2001 From: Sanjay Govind Date: Fri, 14 Feb 2025 16:03:56 +1300 Subject: [PATCH] Add documentation for bosch alarm integration --- source/_integrations/bosch_alarm.markdown | 102 ++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 source/_integrations/bosch_alarm.markdown diff --git a/source/_integrations/bosch_alarm.markdown b/source/_integrations/bosch_alarm.markdown new file mode 100644 index 00000000000..f941a6f5c0b --- /dev/null +++ b/source/_integrations/bosch_alarm.markdown @@ -0,0 +1,102 @@ +--- +title: Bosch Alarm +description: Integrate Bosch Alarms. +ha_category: + - Alarm Control Panel + - Binary sensor + - Sensor + - Switch +ha_release: 2025.2.3 +ha_iot_class: Local Push +ha_config_flow: true +ha_codeowners: + - '@mag1024' + - '@sanjay900' +ha_domain: bosch_alarm +ha_platforms: + - alarm_control_panel + - binary_sensor + - sensor + - switch +ha_zeroconf: false +ha_integration_type: integration +--- + +The **Bosch Alarm Panel** {% term integration %} allows you to connect your [Bosch Alarm Panel](https://www.boschsecurity.com) to Home Assistant in order to control and monitor your Bosch Alarm Panel. + +{% include integrations/config_flow.md %} + +Supported panels: + +- _Solution 2000/3000/4000_ +- B Series: _B3512/B4512/B5512/B6512_ +- G Series: _B8512G/B9512G_ +- _AMAX 2100/3000/4000_ +- _D7412GV4/D9412GV4_ [^1] + +[^1]: Firmware 2.0+ + +## Provided entities + +The {% term entities %} are divided into four subdomains: + +- [AlarmControlPanel](#alarm-control-panel) +- [BinarySensor](#binary-sensor) +- [Sensor](#sensor) +- [Switch](#switch) +- [Lock](#lock) + +## Alarm Control Panel + +This integration adds an Alarm Control Panel device for each configured area, with the ability to issue arm/disarm commands. +This entity reports state (_disarmed_, _armed_away_, etc), and contains custom attributes _ready_to_arm_ (_no_|_home_|_away_), and a _faulted_points_ counter. + +## Binary Sensor + +A binary sensor is added for each point configured on your alarm. + +## Sensor + +Two sensors are added, one containing the history events from your panel, and another containing the current faults from it. +The history itself is stored on a `history` attribute, as there is a limit to how much text a sensor can store in its state. + +## Switch + +A switch is added for each output configured on the panel. Note that for some panels, only outputs with the type set to "remote output" can be controlled via _Mode 2_ API. + +## Lock + +A lock is added for each configured door on your panel (_Solution 4000_, _B Series_ and _G Series_ panels only). + +## Actions + +The integration provides the following actions. + +### Action: Set Panel Date & Time + +| Data attribute | Optional | Description | +|------------------------|----------|---------------------------------------------------------------------------------| +| `datetime` | Yes | The Date & Time to set. Defaults to the current date and time if it is not set. | + +## Authentication + +The primary means of authentication for the _Mode 2_ API is the _Automation_ passcode. It needs to be at least 10 characters long, and it is different from the _User_ code -- a shorter numeric pin used to arm/disarm the panel. +The integration will prompt for the required passcodes, which depend on the panel type. + +| Panel | Code | +| --- | --- | +| Solution | User [^2] | +| B Series | Automation | +| G Series | Automation | +| AMAX | Both | + +[^2]: The user needs to have the "master code functions" authority if you wish to interact with history events. + +⚠️ Since the _Mode 2_ automation user has "superuser" privileges, it bypasses the regularly-configured alarm pin: you will _not_ be prompted for a _User_ code when arming/disaming through the integration. +The integration also supports (optionally) setting a Home Assistant-local pin to protect these operations -- it does not need to match any of the codes configured on the panel. + +## Removing the integration + +This integration follows standard integration removal. No extra steps are required. + +{% include integrations/remove_device_service.md %}