Hi,
I’m not sure I understand everything, I used google translate and it’s not exactly perfect
Regarding ONOFF values, it the device has “Measurements” channel it probably has a xml config file. In that case, there might be an ONOFF value in there. Use that one instead of ZIGBEE_CHANNEL_ONOFF.
The reason is that the channels that are not defined in an xml file are generated by querying the device and using generic info about the zigbee clusters. The ONOFF cluster has an ONOFF attribute that is ‘read only’, so you cannot write into it, you can only read it or receive reports for it. zigbee specs do have also some ‘commands’, which in the ONOFF cluster case are without payload, so they are exposed as ACTION. You have to write into those in order to change values into the switch. Either into ONOFF.ON.ACTION, ONOFF.OFF.ACTION or ONOFF.TOGLE.ACTION.
The device xml files have the ONOFF parameter defined in such a way that it sends the proper zigbee command if you write it so it’s simpler to deal with that, you can both read and write it.
Check out the 0Plug_01b.xml as an example on how to have such a file for a device that does not have a config file yet. The file name must be changed, obviously (the convention is manufacturer id + device name + endpoint number) and also the ‘device id’ must be changed accordingly in the xml file. The typeNumber also must be changed to a unique id. hasBattery might need to be changed, depending if the device is battery powered or not.
Another thing that could be different for some devices is the ‘frame control’ for the defined packets, some have a bit set, some others don’t.
As for having pairing ok but not receiving anything or being able to control the device, the distance might be too big. If only notifications do not come, that could be a device configuration issue, but still values should be readable and you should be able to control the device.