Bosch water sensor BWA-1: How to set up using install code?


I have a Bosch water sensor (BWA-1), that I would like to set up with deconz.
I managed to have it show up in deconz as a hex value, but there are no clusters available.

The device is listed on the supported devices page with the footnote “Device requires usage of zigbee install code to be able to join, which is currently limitedly usable for public.”
The install code is printed on the device, but I found no possibility to enter it in any UI or via an API.

So my question here is: How can I set up the sensor correctly?



It is very comlicated at this time to set it up. Requiring additional software and some other knowledge.
I recommend to wait until Installcodes are implemented into the Phoscon App which is already in the making.

Is there a way with the API?

Rest API is just a part of the procedure.

That’s not an answer to my question.

Either way, it seems this device is not supported at this point.

I’ve removed it from the wiki.

In the meantime I got some help on discord and managed to get the sensor running. I use the deconz docker container for that. I needed to (1) connect the sensor and (2) compile the most recent version of deconz-rest-api since the last release did not support the sensor yet.
My procedure is as follows:

  • Add deb jessie main and deb buster-beta main to the apt-sources
  • Install silabs-zigbee-gateway to get the hashing-cli binary. Also install 'qt5-qmake qt5-default deconz-dev` to be able to compile the deconz-rest-plugin
  • Compile and install deconz-rest-api using the instructions provided in the repository, restart the container to load the new library
  • Run ln -s /opt/siliconlabs/zigbeegateway/tools/key-derivation/hashing-cli /bin/hashing-cli, to add hashing-cli to a $PATH directory
  • Connect the sensor by (1) activate the connection mode in the web UI, (2) issue a PUT-request to http://<IP>:8090/api/<APIKEY>/devices/<MacAddressOfSensor>/installcode with the JSON body parameter installcode = <first 16 bytes of install code printed on the sensor>, (3) while holding down the button on the base of the sensor insert the batteries, keep holding the button until it flashes yellow
  • Immediately after connection using the deconz UI (via VNC in my case) open the settings of the IAS zone cluster and write the MAC address of the coordinator (connbee stick in my case) to attribute 0x0010 of the sensor. This has to be done rather quickly to avoid the sensor going to sleep

Afterwards the sensor was properly connected and I was able to receive sensor data using the API


@ChrisHae Perhaps usefull to add to the documentation :wink:

Would like to see this incorporated soon:

I found this thread on a google search because I had problems with my Bosch Thermostat II too.
I just want to add, that it is not necessary to compile a dev version anymore and the issuing a PUT request part is quite easy with Home Assistant.
It also worked for me, without the part setting the coordinators MAC via VNC.
So here is how I managed it with Home Assistant using the deconz integration and deconz docker 2.23.01:

  1. Activate the connection mode in the Phoscon web UI
  2. Run the following service on Home Assistant devtools:
service: deconz.configure
    installcode: <Installcode>
  field: devices/<MacAddressOfSensor>/installcode
  1. enjoy

<MacAddressOfSensor> and <Installcode> are entered without hyphens, colons or brackets.

Thanks to @sbonfert

It would be great if it was possible only using the Phoscon UI