AboutBlogContact

Events

Digital inputs used in the controller, presented as an Event entity in Home Assistant. Only works with Home Assistant version 2023.8 and newer! The Event entity sends an MQTT message for single, double, triple, long press actions, as well as action sequences.

Web application configuration

Recommended configuration method.

Sample webui configuration

Event entities menu view

View allowing for a preview of defined event entities, a preview of assigned actions, and the addition of new event entities. Additionally, it allows for their export and import.

Basic settings

Event entities menu view

Option NameDescription
Display NameThe name with which the input will be displayed in the controller's webui, MQTT, and HA.
boneIO InputSelection of the physical input of the controller.
Area/RoomSelection of the appropriate area.

Single / Double / Triple / Long

Event entities menu view

Action type - Opens a list of defined actions (available here). Depending on the selected action type, the available options change. Their list is in the tables below.

Output Action:
Option NameDescription
OutputSelection of a specific output.
Output ActionType of action to perform, e.g., the most common "Toggle".
Cover Action:
Option NameDescription
CoverSelection of a specific cover/shutter.
Cover ActionType of action to perform, e.g., the most common "Toggle".
Cover Over Mqtt Action:
Option NameDescription
CoverSelection of a specific cover/shutter.
Cover ActionType of action to perform, e.g., the most common "Toggle".
boneIO IDID of the boneIO controller where we want to perform the action.
Cover ID (pin)ID of the chosen Cover.
Cover ActionType of action to perform, e.g., the most common "Toggle".
Mqtt Action:
Option NameDescription
MQTT TopicAddress of the MQTT topic.
MQTT MessageThe MQTT message that the action should execute.
For Output Over Mqtt action:
Option NameDescription
boneIO IDID of the boneIO controller where we want to perform the action.
Output ID (pin)ID of the chosen Output.
Output ActionType of action to perform, e.g., the most common "Toggle".
For Remote Output action:
Option NameDescription
Remote DeviceName of the remote device the action concerns.
Output IDID of the output the action concerns.
Output ActionType of action to perform, e.g., the most common "Toggle".
For Remote Cover action:
Option NameDescription
Remote DeviceName of the remote device the action concerns.
Cover IDID of the cover the action concerns.
Cover ActionType of action to perform, e.g., the most common "Toggle".

Sequences

Event entities menu view

The sequence view allows performing similar actions as the previous ones (single, double, etc.). In the case of sequences, after selecting the MQTT option - sequence action will be send in mqtt

Advanced Settings

Event entities menu view

Option NameDescription
Bounce TimeDefault 30ms - the time between consecutive calls.
Double Click DurationTime window to detect a double click (Default 220ms) - defines the time in which two single clicks one after another will be interpreted as a double click.
Long Press DurationTime window after which holding the button will be defined as a long press. (Default 220ms)
Sequence WindowTime window to detect a sequence of clicks (Default 500ms).
Enable Triple ClickEnables detection of triple clicks.
Sequence Mode - EnabledMeans that base events are delayed. Allows detection and execution of only sequences / - Disabled - Base events are executed immediately, sequences are detected as additional events.
Sequence Mode - DisabledBase events are executed immediately, sequences are detected as additional events.

YAML Editor

Sample configuration

Sample configuration with boneio_input
event:
  - boneio_input: in_29
    name: Kitchen Button
    actions:
      single:
        - action: output
          boneio_output: OUT_01
          action_output: toggle

Configuration variables:

  • name (string) - Display name in Home Assistant.

  • boneio_input (Optional, string) - Reference to a predefined input configuration (e.g., in_01, in_02).

  • area (Optional, string) - Reference to an area ID defined in the areas section. Creates a sub-device associated with the main BoneIO device.

  • id (Optional, string) - Technical identifier used in MQTT topics and actions.

    • If boneio_input is set: id is optional (defaults to boneio_input value).
    • If boneio_input is NOT set: id is REQUIRED.
    • If both are set: id overrides boneio_input as the identifier.
  • Available only when the boneio: section is configured. Used as the default ID if the id field is not specified.

  • pin (Optional, string) - GPIO pin ID on the Beaglebone board, e.g., P9_33. Not needed when using boneio_input.

  • gpio_mode (Optional, string, default: gpio, allowed_values: ['gpio', 'gpio_pu', 'gpio_pd', 'gpio_input']) - How to initialize this GPIO. gpio means default gpio mode. gpio_pu = gpio pull up, gpio_pd = gpio pull down, gpio_input - to be checked.

  • clear_message (Optional, boolean, default: False) - Decides whether to send an empty message to MQTT after a pressed/released callback. Same as Zigbee2Mqtt does in button actions. Up to version 0.6.x, this was 'true' by default.

  • bounce_time (Optional, timeperiod, default: 30ms) - Debounce time for GPIO in milliseconds. For advanced use only.

  • double_click_duration (Optional, timeperiod, default: 220ms) - Time window in milliseconds to detect a double click. If a second click occurs within this time, it will be detected as a double click.

  • long_press_duration (Optional, timeperiod, default: 400ms) - Time in milliseconds to detect a long press. If the button is held longer than this time, it will be detected as a long press.

  • show_in_ha (Optional, boolean, default: True) - Send autodiscovery message to Home Assistant.

  • device_class (Optional, string, default: button, allowed_values: ["button", "doorbell", "motion"]) - Type of device to be visible in Home Assistant.

  • inverted (Optional, boolean, default: False) - Inverts the sensor input value displayed in MQTT.

  • actions (Optional, dictionary) - Dictionary of predefined actions ([single, double, long]).

Configuration variables that can be omitted if using boneio: and boneio_input: configuration:

  • pin (Required, string) - GPIO pin ID on the Beaglebone board, e.g., P9_33.
  • gpio_mode (Optional, string, default: gpio, allowed_values: ['gpio', 'gpio_pu', 'gpio_pd', 'gpio_input']) - How to initialize this GPIO. gpio means default gpio mode. gpio_pu = gpio pull up, gpio_pd = gpio pull down, gpio_input - to be checked.

Actions

  • single (Optional, list): List of actions to perform if the switch is pressed once.
  • double (Optional, list): List of actions to perform if the switch is double-clicked.
  • long (Optional, list): List of actions to perform if the switch is long-pressed.

Action variables for action list

  • action (Optional, string, default: output, allowed_values: ['mqtt', 'output', 'cover']) - Action type. 'Output' and 'cover' mean the command is sent directly to the output relay or cover. This mode does not require a network to function. 'Mqtt' means an additional action is sent to MQTT. For example, you can directly control a second boneIO!
  • boneio_output (Optional, string) - Reference to the output ID where the action is to be performed. Use with output action type. Recommended over the deprecated pin field.
  • boneio_cover (Optional, string) - Reference to the cover ID where the action is to be performed. Use with cover action type. Recommended over the deprecated pin field.
  • pin (Deprecated, string) - Older field for output/cover ID. Use boneio_output or boneio_cover instead.
  • topic (Optional, string) - Topic to use if mqtt action is selected.
  • action_cover (Optional, string, allowed_values: ['toggle', 'open', 'close', 'stop', 'toggle_open', 'toggle_close']) - Action to perform for the cover action type. toggle cycles between open/close. toggle_open alternates between open/stop, toggle_close alternates between close/stop.
  • action_output (Optional, string, allowed_values: ['toggle', 'on', 'off']) - Action to perform for the output action type.
  • action_mqtt_msg (Optional, string) - Message to send to the MQTT topic if the action is mqtt.