It’s made by Nice (owner of Fibaro) and it used to control motorized gates and doors. It compliant with Z-Wave Plus Version: 2, but I can’t find any reference to this module working with Home Assistant.
Any chance that’s it’s already integrated in native Home Assistant ZWave integration and will work normally as a ‘generic’ device " GENERIC_TYPE_SWITCH_MULTILEVEL " ?
Another update :
I’ve just migrated to ZWaveJS2MQTT.
This device is seen like a Light. It works but I got errors about incorrect “brightness” data received.
I will try to force it to be recognized as a gate device.
Does anyone know how I can proceed to integrate properly this module ? or submit a change request to ZWaveJS2MQTT team ?
I can see in the module specs a very interesting table for example :
Table 7 - Multilevel Switch Command Class Report
State Current Value Target Value Duration
Open 0x63 0x63 0x00
Opening 0xFE 0x63 0xFE
Stopped 0xFE 0xFE 0x00
Closing 0xFE 0x00 0xFE
Close 0x00 0x00 0x00
This suggests that this module should be able to send all these status, and not only on/off as I have today when it is recognized as a Light.
EDIT : currently with ZWaveJS2MQTT this module is seen like this :
The device was added to zwavejs in the latest version 7.4.
It’s working OK, but HA mapped it to Light entity instead of Cover.
I’ve open an issue on HA Core repo.
I did not notice. I’ve been using it as a ‘light’ for a few months now.
I confirm that is still seen as a light by HA event after Node Interview / Update Topics /…
Do you know if it means that we can now get the new status ‘opening’ and ‘closing’ when gate is being closed/opened ?
Regarding the status opening/closing, I thought it will happen once the device will officially be supported; so far no status update (I hope this is because it’s defined as a light entity).
Hi, can anybody make a pictures of inside PCB. Would like to see what components used to main zwave MCU. Have a plan to make all on esp8266. Maybe there is no any CAN bus. On IT4WIFI Nice used LTC2875 can bus transiever.
I just created a proper gate cover entity using a set of configurations.
Find the device ID for your IBT4ZWAVE. Open the device page, and copy the last chunk of the URL. That’s the device ID.
Under Devices / Helpers create a new text input. Mine is called: input_text.kapu_allapota
In the following snippets, always replace the device id and the input id with your values.
Create a set of automations that change the value of the text input when the value of the BiDi ZWave changes. You’ll need to add the following to your automations.yaml file.
- alias: Set gate=open
trigger:
- platform: zwave_js.value_updated
id: The gate is open
# At least one `device_id` or `entity_id` must be provided
device_id: ada001b6ca774d54e373efec48b81f8c # Garage Door Lock device ID
entity_id:
- light.kapunyito
# `property` and `command_class` are required
command_class: 38 # Door Lock CC
property: "currentValue"
# `property_key` and `endpoint` are optional
#property_key: null
#endpoint: 0
# `from` and `to` will both accept lists of values and the trigger will fire if the value update matches any of the listed values
to: "99"
action:
- service: input_text.set_value
target:
entity_id: input_text.kapu_allapota
data:
value: "open"
- alias: Set gate=closed
trigger:
- platform: zwave_js.value_updated
id: The gate closed
# At least one `device_id` or `entity_id` must be provided
device_id: ada001b6ca774d54e373efec48b81f8c # Garage Door Lock device ID
entity_id:
- light.kapunyito
# `property` and `command_class` are required
command_class: 38 # Door Lock CC
property: "currentValue"
# `property_key` and `endpoint` are optional
#property_key: null
#endpoint: 0
# `from` and `to` will both accept lists of values and the trigger will fire if the value update matches any of the listed values
to: "0"
action:
- service: input_text.set_value
target:
entity_id: input_text.kapu_allapota
data:
value: "closed"
- alias: Set gate=opening
trigger:
- platform: zwave_js.value_updated
id: The gate is opening
# At least one `device_id` or `entity_id` must be provided
device_id: ada001b6ca774d54e373efec48b81f8c # Garage Door Lock device ID
entity_id:
- light.kapunyito
# `property` and `command_class` are required
command_class: 38 # Door Lock CC
property: "targetValue"
# `property_key` and `endpoint` are optional
#property_key: null
#endpoint: 0
# `from` and `to` will both accept lists of values and the trigger will fire if the value update matches any of the listed values
to: "99"
action:
- service: input_text.set_value
target:
entity_id: input_text.kapu_allapota
data:
value: "opening"
- alias: Set gate=closing
trigger:
- platform: zwave_js.value_updated
id: The gate is closing
# At least one `device_id` or `entity_id` must be provided
device_id: ada001b6ca774d54e373efec48b81f8c # Garage Door Lock device ID
entity_id:
- light.kapunyito
# `property` and `command_class` are required
command_class: 38 # Door Lock CC
property: "targetValue"
# `property_key` and `endpoint` are optional
#property_key: null
#endpoint: 0
# `from` and `to` will both accept lists of values and the trigger will fire if the value update matches any of the listed values
to: "0"
action:
- service: input_text.set_value
target:
entity_id: input_text.kapu_allapota
data:
value: "closing"
Create the cover by adding to your configuration.yaml
That’s it. As an extra benefit, I wanted to add a button card to my dashboard as well. For this I created an “Open/Close the gate script” under Automations / Scripts. The YAML is the following:
Would be much much easier if the module was identified by ZWaveJS and pushed to HA as a gate and not a light.
I have done about the same templates than you. I have added ‘opening’ and ‘closing’ status juste a few weeks ago.
I had to add MQTT output to ZWaveJS just for this specific module, to get ‘currentvalue’ and ‘targetvalue’. I could not find a way to get them from ZWaveJS.
So I don’t have succcess to implement the stop call to API.
When I push wia mqtt in the same class the value to “Stop”, the gate is stoping.
Which method use here ?
This looks really interesting and a possible excuse to dip my foot into Z-Wave (I already have Zigbee). I currently have the Wifi version and it causes no end of problems when it decides to stop working.
When it is working, it also doesn’t properly integrate with HA. The “easy” option would be to set it up with the HomeKit integration but I would lose the ability to open 1 leaf of the gate. Does anyone know if the Z-Wave version would allow this?
@loic69 can you shared bit more info how did you manage to stop the gate? Is it through mqtt? What are you publishing and into which topic?
Also, are you using mqtt cover template?
Jeedom is more flexible for this and can manage the stop command.
So I call from HA the Jeedom API command to stop the gate…
I don’t find better for now.
It’s a problem for me because i’d like to remove jeedom instance…
From Homeassistant 2023.6 onwards the Nice IBT4ZWAVE module is finally recognized as a cover (see Breaking Changes in Zwave).
The stop command is working now. Only problem left: the Position won’t update on stop. So the status does not change (it remains open/close til it’s fully opended or closed).
Great question. I also have a dual leaf swing gate, so, of course, I want to be able to either partially or fully open the gate and ideally also differentiate between the two open states.
There is an OpenHAB integration for the IT4WIFI module written in Java based on reverse engineering which allows doing that.
Z-Wave would be more interesting for me but before looking into it, it would be nice to know if the hardware does support it.