Hey guys,
I need a little help with a new device. I want to use Zigbee devices and I don´t want to stick something like a USB device directly to my server.
I stumbled over the projekt Zigbee2Tasmota. This project can use the sonoff zigbee bridge to act as a zigbee coordinator and turn the values into mqtt messages.
So I bought a sonoff zigbee bridge and a sonoff zigbee tem/hum sensor.
Then I flashed the bridge with the proper tasmota image and it´s working fine, the sensor sends it´s values to the bridge.
But now I´m at a hurdle I cannot step over.
The Zigbee2Tasmota will send all value in strings like this:
12:19:03 MQT: tele/tasmota_zigbee/SENSOR = {"ZbReceived":{"0xB426":{"Device":"0xB426","Name":"TempHumWohnzimmer","Humidity":57.5,"Endpoint":1,"LinkQuality":100}}}
The sensor device adress is 0xB426 and I want to extract the temp and the hum values.
My problem is, that all sensors will use the same mqtt topic “tele/tasmota_zigbee/SENSOR” and the separation has to use the device adress.
By using the PaperUI I made a thing for the Zigbee2Tasmota bridge. And in these thing I tried to make channels for each value I need. I think the separation has to work with JSONPATH but I don´t know how.
Here´s the log entry:
12:32:34.946 [WARN ] [tt.generic.ChannelStateTransformation] - Transformation service “JSONPATH for pattern $.0xB426.Humidity” not found!
12:32:34.948 [WARN ] [hab.binding.mqtt.generic.ChannelState] - Incoming payload ‘{“ZbReceived”:{“0xB426”:{“Device”:“0xB426”,“Name”:“TempHumWohnzimmer”,“Temperature”:23.54,“Humidity”:58.17,“Endpoint”:1,“LinkQuality”:97}}}’ not supported by type ‘NumberValue’
I will thankful for some hints.
Tank you
- Platform information:
- Hardware: Intel Pentium (don´t know the exact version)
- OS: Ubuntu 20.04
- official Dockerbuild
- openHAB version: 2.5.10