The firmware exposes stored-signal buttons and parameterized ESPHome actions directly to Home Assistant. Stored slots have no appliance-specific mapping hard-coded in this repository: create covers, buttons, scripts, scenes, and automations in the Home Assistant user interface and assign whichever RF or IR slot belongs to your equipment. The optional Hob²Hood/Faber bridge is a separate fixed protocol adapter and does not consume those slots.
When NightmatIQ is enabled, Home Assistant discovers a separate Steinel
NightmatIQ Plus device. Its installed firmware, hardware revision,
manufacturer, Company ID and Product ID are exposed as diagnostic entities.
The authenticated physical output state is exposed as a binary sensor that
retains its last valid state through short Mesh interruptions and becomes
unavailable after five minutes without a valid response. Identity values are
read from a Steinel manufacturer advertisement captured during gateway startup,
not inferred from Composition Version ID or taken from the cloud backup. The
running bootloader is not exposed because the device provides no reliable
normal-operation Mesh read for it.
When Faber in HA is enabled on the AR01V3 web page,
Home Assistant discovers another separate device named Faber. It contains a
four-speed fan, an on/off light, a visible status and bridge diagnostic
entities. The optional faber_hood_more_info.js frontend helper changes the
automatically generated Faber area section into one Hood tile. Opening it
shows fan power, speeds 1–4 and light in one native-style control. It does not
create a custom dashboard or panel. These states are estimates derived from
recognized or transmitted IR commands because the hood has no feedback
channel. Local Hob²Hood-to-Faber translation is controlled independently and
can remain active when the Home Assistant device is disabled. See
../docs/HOB2HOOD_FABER.md or ../docs/HOB2HOOD_FABER_PL.md.
To install the optional combined Faber control:
home-assistant/faber_hood_more_info.js to
/config/www/faber_hood_more_info.js on Home Assistant.Add the following entry under frontend: in configuration.yaml:
frontend:
extra_module_url:
- /local/faber_hood_more_info.js?v=124
If frontend: or extra_module_url: already exists, add only the final
list item without creating a duplicate YAML key.
The helper uses the Faber device and entity registry, so it does not depend on room-specific entity IDs. English and Polish labels follow the selected Home Assistant language.
The local bridge can optionally use one global Home Assistant daylight decision. Every compatible AR01V3 subscribes to it automatically, so the automation does not ask for a target gateway. Only an automatic Hob²Hood Light on is gated. Manual Home Assistant/Faber-remote light control, Hob²Hood Light off, and all fan commands always remain available.
The easiest installation method is:
sudo bash scripts/11_install_faber_ha.sh /var/lib/homeassistant
The script:
!include_dir_named or !include_dir_merge_named packages;www/;configuration.yaml.After the files are installed:
input_boolean.hob2hood_faber_automatic_light_allowed and
sensor.hob2hood_faber_automatic_light_policy.sun.sun.sun.sun is selected.For an illuminance sensor, automatic light-on is allowed at or below the
configured threshold and blocked at or above the selected value plus one third,
with a minimum 10 lx gap. The previous decision is retained between the limits.
If the selected sensor is unavailable for less than 30 minutes, its last
decision is retained; after 30 minutes the automation falls back to sun.sun.
Directly selecting sun.sun allows automatic light below the horizon and
blocks it above the horizon.
When the hob requests light while the policy is blocking it, AR01V3 remembers that request. If the policy changes to allow before the hob sends light-off, the lamp is switched on automatically. Hob light-off, manual light control or disabling the local policy cancels the pending request. A later change back to bright never turns off a lamp that is already on.
The template policy sensor includes a changing minute heartbeat. Firmware accepts the policy for five minutes after each refresh and otherwise fails open. A missing package, disabled automation, unavailable Home Assistant or broken API connection therefore restores the original unrestricted local translation instead of leaving light-on blocked indefinitely.
Manual installation uses one of these package variants:
hob2hood_faber_light_policy_package.yaml with
packages: !include_dir_named packages;hob2hood_faber_light_policy_package_merge_named.yaml with
packages: !include_dir_merge_named packages.Copy the blueprint to
config/blueprints/automation/envpl/hob2hood_faber_light_policy.yaml, check the
configuration and restart Home Assistant. All files are generic and contain no
installation-specific entity IDs, credentials, locations or thresholds.
esp_rc01_10x10_package.yaml — complete package that deduplicates packets received by up to ten AR01V3 receivers from ten logical ESP-RC01 remotes and emits only pilot-specific esp_rc01_pilot_N_button events.esp_rc01_10x10_package_merge_named.yaml — the same package wrapped under a package key for installations that use packages: !include_dir_merge_named packages/.blueprints/automation/envpl/esp_rc01_remote_actions.yaml — one GUI automation per pilot with action fields for ON, OFF, Night, brightness, and P1–P7.hob2hood_faber_light_policy_package.yaml — global Faber automatic-light permission and heartbeat for !include_dir_named installations.hob2hood_faber_light_policy_package_merge_named.yaml — the same policy wrapped for !include_dir_merge_named installations.blueprints/automation/envpl/hob2hood_faber_light_policy.yaml — GUI selection of an illuminance sensor or sun.sun and one lux threshold.faber_hood_more_info.js — optional combined Faber area tile and native-style fan/light dialog.automation_examples.yaml — optional examples that react to pilot-specific deduplicated events.Only one deduplication package variant must be installed. The blueprint uses the pilot-specific events emitted by that package. See the root README.md for installation, pairing, GUI virtual-device creation, scene integration, and direct-transmission instructions.
nightmatiq_dashboard_card.yaml is an optional Lovelace entities card for the
Steinel NightmatIQ feature included in the normal AR01V3 firmware. The entities
are created by the standard ESPHome integration, so no Home Assistant package
is required.
Replace the example entity IDs in the card after Home Assistant discovers the
gateway. See ../docs/NIGHTMATIQ.md or ../docs/NIGHTMATIQ_PL.md for
commissioning and the non-destructive enable/disable controls.