Different status values between HomematicIP smoke detectors and their openHAB groups

Hello everyone,

I’m experiencing an interesting behavior with my HomematicIP smoke detectors in openHAB and would appreciate your insights on how to handle this best.

I’ve created non-semantic groups to collect alarm items from my HomematicIP smoke detectors.
2025-01-05_20-46

I’ve noticed that there are differences between the individual device states and the group states:

  1. Normal Operation:
  • Individual devices show: “Standby”
  • Group shows: “IDLE_OFF”
  1. In case of an alarm:
  • In groups WITHOUT the triggering device:

    • All devices show: “Alarm triggered by other device”
    • Group value is: “SECONDARY_ALARM”
  • In the group WITH the triggering device:

    • The triggering device shows: “Local alarm”
    • Other devices show: “Alarm triggered by other device”
    • Group value becomes “UNDEF” due to these different member states

I suspect openHAB is doing some state conversion here. Currently, my group items have a Members Base Type of String and therefore no aggregation function.

My goal is to be able to directly determine on which floor and in which room the alarm was triggered. What would be the best way to achieve this?

Thank you in advance for your help!

Best regards

The binding sets state descriptions and command options for the channel and items once you create a thing. For any reason I am not able to see both in the GUI. Maybe a bug…
Just call openhab‘s rest api directly and you‘ll see.

http://openhab:8080/rest/items/HmIPdevice_SmokeDetectorAlarmStatus

You see the item‘s „displayState“ while the group shows you the „original“ state as it comes from the device (unless you add the same state description to the group)

1 Like

@Oliver2 Thank you for your answer.

You are absolutely right.

         {
            "value":"IDLE_OFF",
            "label":"Standby"
         },
         {
            "value":"PRIMARY_ALARM",
            "label":"Local alarm"
         },
         {
            "value":"INTRUSION_ALARM",
            "label":"Burglar alarm"
         },
         {
            "value":"SECONDARY_ALARM",
            "label":"Alarm triggered by other device"
         }

values are shown as group value and label is shown as item value.

I guess I will set the value of the group where the device with “PRIMARY_ALARM” is located to “ON” with a rule, unless there is a better suggestion here. :sweat_smile: