Hello forum, this post has now been edited as I have gained more insight.
The OpenHAB ZigBee binding does not seem to work correctly and I may have found the error.
But first some info on how I got to the point.
I bought a Philips Hue motion sensor and wanted to bind it to OpenHAB via ZigBee.
Unfortunately it didn’t work, because OpenHAB doesn’t find the device.
Additionally I have a few Ledvance sockets to connect here.
Time wise, my ZigBee stick broke. I guess the firmware on the stick shot it, so I had to buy a new one ![]()
(Don’t have anything to flash here).
With a new stick, I now run into the same problems again.
- Stick is recognized and mounted
- After several changes of the config and about 20 restarts of the Raspberry Pi, the binding finally finds the devices again.
=> The setup is easy, scanning for devices is probably already a first big hurdle (Here the problem from 8 months ago: ZigBee (CC2531) + Tuya Switch - OH3) - Found devices can be created as Thing
The problem is that OpenHAB has no idea what kind of Zigbee-stick I’m using.
- what kind of stick I am using
- the connected devices are at all
Why?
OpenHAB creates XML configurations here: /var/lib/openhab/zigbee/zigbee_coordinator_cc2531_NAME.
I guess these are not filled in correctly.
Luckily I made a config backup of the last working state with my broken stick and have the old XML data on hand.
The new config it USB sticks looks like this:
<ZigBeeNode>
<ieeeAddress>0011223344556677</ieeeAddress>
<networkAddress>0</networkAddress>
<endpoints/>
<bindingTable/>
</ZigBeeNode>
(MAC intentionally faked)
The original config actually looks like this:
<ZigBeeNode>
<ieeeAddress>0011223344556677</ieeeAddress>
<networkAddress>0</networkAddress>
<nodeDescriptor>
<apsFlags>0</apsFlags>
<bufferSize>80</bufferSize>
<complexDescriptorAvailable>false</complexDescriptorAvailable>
<manufacturerCode>0</manufacturerCode>
<logicalType>COORDINATOR</logicalType>
<serverCapabilities class="sorted-set">
<ServerCapabilitiesType>PRIMARY_TRUST_CENTER</ServerCapabilitiesType>
</serverCapabilities>
<incomingTransferSize>160</incomingTransferSize>
<outgoingTransferSize>160</outgoingTransferSize>
<userDescriptorAvailable>false</userDescriptorAvailable>
<frequencyBands>
<FrequencyBandType>FREQ_2400_MHZ</FrequencyBandType>
</frequencyBands>
<macCapabilities class="sorted-set">
<MacCapabilitiesType>ALTERNATIVE_PAN</MacCapabilitiesType>
<MacCapabilitiesType>FULL_FUNCTION_DEVICE</MacCapabilitiesType>
<MacCapabilitiesType>MAINS_POWER</MacCapabilitiesType>
<MacCapabilitiesType>RECEIVER_ON_WHEN_IDLE</MacCapabilitiesType>
</macCapabilities>
<extendedEndpointListAvailable>false</extendedEndpointListAvailable>
<extendedSimpleDescriptorListAvailable>false</extendedSimpleDescriptorListAvailable>
<stackCompliance>0</stackCompliance>
</nodeDescriptor>
<powerDescriptor>
<currentPowerMode>RECEIVER_ON_IDLE</currentPowerMode>
<availablePowerSources>
<PowerSourceType>MAINS</PowerSourceType>
</availablePowerSources>
<currentPowerSource>MAINS</currentPowerSource>
<powerLevel>FULL</powerLevel>
</powerDescriptor>
<endpoints/>
<bindingTable/>
</ZigBeeNode>
I was able to repeat the same game with a dimmer from 3A Smart Home.
New config from OpenHAB:
<ZigBeeNode>
<ieeeAddress>0011223344556677</ieeeAddress>
<networkAddress>21917</networkAddress>
<endpoints/>
<bindingTable/>
</ZigBeeNode>
Actual Config:
<ZigBeeNode>
<ieeeAddress>0011223344556677</ieeeAddress>
<networkAddress>19135</networkAddress>
<nodeDescriptor>
<apsFlags>0</apsFlags>
<bufferSize>82</bufferSize>
<complexDescriptorAvailable>false</complexDescriptorAvailable>
<manufacturerCode>4478</manufacturerCode>
<logicalType>ROUTER</logicalType>
<serverCapabilities class="sorted-set"/>
<incomingTransferSize>82</incomingTransferSize>
<outgoingTransferSize>82</outgoingTransferSize>
<userDescriptorAvailable>false</userDescriptorAvailable>
<frequencyBands>
<FrequencyBandType>FREQ_2400_MHZ</FrequencyBandType>
</frequencyBands>
<macCapabilities class="sorted-set">
<MacCapabilitiesType>FULL_FUNCTION_DEVICE</MacCapabilitiesType>
<MacCapabilitiesType>MAINS_POWER</MacCapabilitiesType>
<MacCapabilitiesType>RECEIVER_ON_WHEN_IDLE</MacCapabilitiesType>
</macCapabilities>
<extendedEndpointListAvailable>false</extendedEndpointListAvailable>
<extendedSimpleDescriptorListAvailable>false</extendedSimpleDescriptorListAvailable>
<stackCompliance>22</stackCompliance>
</nodeDescriptor>
<powerDescriptor>
<currentPowerMode>RECEIVER_ON_IDLE</currentPowerMode>
<availablePowerSources>
<PowerSourceType>MAINS</PowerSourceType>
</availablePowerSources>
<currentPowerSource>MAINS</currentPowerSource>
<powerLevel>FULL</powerLevel>
</powerDescriptor>
<endpoints>
<ZigBeeEndpoint>
<endpointId>1</endpointId>
<profileId>260</profileId>
<deviceId>257</deviceId>
<deviceVersion>1</deviceVersion>
<inputClusterIds/>
<outputClusterIds/>
<inputClusters>
<ZclCluster>
<clusterId>0</clusterId>
<isClient>false</isClient>
<attributes>
<entry>
<int>0</int>
<ZclAttribute>
<id>0</id>
<name>ZCL Version</name>
<dataType>UNSIGNED_8_BIT_INTEGER</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
<lastReportTime>
<time>1627414953208</time>
<timezone>Europe/Berlin</timezone>
</lastReportTime>
<lastValue class="int">3</lastValue>
</ZclAttribute>
</entry>
<entry>
<int>16384</int>
<ZclAttribute>
<id>16384</id>
<name>SW Build ID</name>
<dataType>CHARACTER_STRING</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>1</int>
<ZclAttribute>
<id>1</id>
<name>Application Version</name>
<dataType>UNSIGNED_8_BIT_INTEGER</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
<lastReportTime>
<time>1627414953209</time>
<timezone>Europe/Berlin</timezone>
</lastReportTime>
<lastValue class="int">0</lastValue>
</ZclAttribute>
</entry>
<entry>
<int>2</int>
<ZclAttribute>
<id>2</id>
<name>Stack Version</name>
<dataType>UNSIGNED_8_BIT_INTEGER</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
<lastReportTime>
<time>1627414953208</time>
<timezone>Europe/Berlin</timezone>
</lastReportTime>
<lastValue class="int">0</lastValue>
</ZclAttribute>
</entry>
<entry>
<int>3</int>
<ZclAttribute>
<id>3</id>
<name>HW Version</name>
<dataType>UNSIGNED_8_BIT_INTEGER</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
<lastReportTime>
<time>1627414953208</time>
<timezone>Europe/Berlin</timezone>
</lastReportTime>
<lastValue class="int">0</lastValue>
</ZclAttribute>
</entry>
<entry>
<int>4</int>
<ZclAttribute>
<id>4</id>
<name>Manufacturer Name</name>
<dataType>CHARACTER_STRING</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
<lastReportTime>
<time>1627414953208</time>
<timezone>Europe/Berlin</timezone>
</lastReportTime>
<lastValue class="string">3A Smart Home DE</lastValue>
</ZclAttribute>
</entry>
<entry>
<int>5</int>
<ZclAttribute>
<id>5</id>
<name>Model Identifier</name>
<dataType>CHARACTER_STRING</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
<lastReportTime>
<time>1627414953208</time>
<timezone>Europe/Berlin</timezone>
</lastReportTime>
<lastValue class="string">LXN56-DS27LX1.3</lastValue>
</ZclAttribute>
</entry>
<entry>
<int>6</int>
<ZclAttribute>
<id>6</id>
<name>Date Code</name>
<dataType>CHARACTER_STRING</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
<lastReportTime>
<time>1627414953208</time>
<timezone>Europe/Berlin</timezone>
</lastReportTime>
<lastValue class="string">20200421</lastValue>
</ZclAttribute>
</entry>
<entry>
<int>7</int>
<ZclAttribute>
<id>7</id>
<name>Power Source</name>
<dataType>ENUMERATION_8_BIT</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>8</int>
<ZclAttribute>
<id>8</id>
<name>Generic Device Class</name>
<dataType>ENUMERATION_8_BIT</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>9</int>
<ZclAttribute>
<id>9</id>
<name>Generic Device Type</name>
<dataType>ENUMERATION_8_BIT</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>10</int>
<ZclAttribute>
<id>10</id>
<name>Product Code</name>
<dataType>CHARACTER_STRING</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>11</int>
<ZclAttribute>
<id>11</id>
<name>Product URL</name>
<dataType>CHARACTER_STRING</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>16</int>
<ZclAttribute>
<id>16</id>
<name>Location Description</name>
<dataType>CHARACTER_STRING</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>17</int>
<ZclAttribute>
<id>17</id>
<name>Physical Environment</name>
<dataType>ENUMERATION_8_BIT</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>18</int>
<ZclAttribute>
<id>18</id>
<name>Device Enabled</name>
<dataType>BOOLEAN</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>19</int>
<ZclAttribute>
<id>19</id>
<name>Alarm Mask</name>
<dataType>BITMAP_8_BIT</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>20</int>
<ZclAttribute>
<id>20</id>
<name>Disable Local Config</name>
<dataType>BITMAP_8_BIT</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
</attributes>
<supportedCommandsReceived class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsReceived>
<supportedCommandsGenerated class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsGenerated>
</ZclCluster>
<ZclCluster>
<clusterId>3</clusterId>
<isClient>false</isClient>
<attributes>
<entry>
<int>0</int>
<ZclAttribute>
<id>0</id>
<name>Identify Time</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
</attributes>
<supportedCommandsReceived class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsReceived>
<supportedCommandsGenerated class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsGenerated>
</ZclCluster>
<ZclCluster>
<clusterId>4</clusterId>
<isClient>false</isClient>
<attributes>
<entry>
<int>0</int>
<ZclAttribute>
<id>0</id>
<name>Name Support</name>
<dataType>BITMAP_8_BIT</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
</attributes>
<supportedCommandsReceived class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsReceived>
<supportedCommandsGenerated class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsGenerated>
</ZclCluster>
<ZclCluster>
<clusterId>5</clusterId>
<isClient>false</isClient>
<attributes>
<entry>
<int>0</int>
<ZclAttribute>
<id>0</id>
<name>Scene Count</name>
<dataType>UNSIGNED_8_BIT_INTEGER</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>1</int>
<ZclAttribute>
<id>1</id>
<name>Current Scene</name>
<dataType>UNSIGNED_8_BIT_INTEGER</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>2</int>
<ZclAttribute>
<id>2</id>
<name>Current Group</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>3</int>
<ZclAttribute>
<id>3</id>
<name>Scene Valid</name>
<dataType>BOOLEAN</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>4</int>
<ZclAttribute>
<id>4</id>
<name>Name Support</name>
<dataType>BITMAP_8_BIT</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>5</int>
<ZclAttribute>
<id>5</id>
<name>Last Configured By</name>
<dataType>IEEE_ADDRESS</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
</attributes>
<supportedCommandsReceived class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsReceived>
<supportedCommandsGenerated class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsGenerated>
</ZclCluster>
<ZclCluster>
<clusterId>6</clusterId>
<isClient>false</isClient>
<attributes>
<entry>
<int>0</int>
<ZclAttribute>
<id>0</id>
<name>On Off</name>
<dataType>BOOLEAN</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>true</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
<lastReportTime>
<time>1627415055222</time>
<timezone>Europe/Berlin</timezone>
</lastReportTime>
<lastValue class="boolean">false</lastValue>
</ZclAttribute>
</entry>
<entry>
<int>16384</int>
<ZclAttribute>
<id>16384</id>
<name>Global Scene Control</name>
<dataType>BOOLEAN</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>16385</int>
<ZclAttribute>
<id>16385</id>
<name>On Time</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>16386</int>
<ZclAttribute>
<id>16386</id>
<name>Off Wait Time</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>true</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>16387</int>
<ZclAttribute>
<id>16387</id>
<name>Start Up On Off</name>
<dataType>ENUMERATION_8_BIT</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
</attributes>
<supportedCommandsReceived class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsReceived>
<supportedCommandsGenerated class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsGenerated>
</ZclCluster>
<ZclCluster>
<clusterId>8</clusterId>
<isClient>false</isClient>
<attributes>
<entry>
<int>0</int>
<ZclAttribute>
<id>0</id>
<name>Current Level</name>
<dataType>UNSIGNED_8_BIT_INTEGER</dataType>
<mandatory>true</mandatory>
<implemented>true</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>true</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
<lastReportTime>
<time>1627415025285</time>
<timezone>Europe/Berlin</timezone>
</lastReportTime>
<lastValue class="int">254</lastValue>
</ZclAttribute>
</entry>
<entry>
<int>16384</int>
<ZclAttribute>
<id>16384</id>
<name>Start Up Current Level</name>
<dataType>UNSIGNED_8_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>1</int>
<ZclAttribute>
<id>1</id>
<name>Remaining Time</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>2</int>
<ZclAttribute>
<id>2</id>
<name>Minimum Level</name>
<dataType>UNSIGNED_8_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>3</int>
<ZclAttribute>
<id>3</id>
<name>Maximum Level</name>
<dataType>UNSIGNED_8_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>4</int>
<ZclAttribute>
<id>4</id>
<name>Current Frequency</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>true</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>5</int>
<ZclAttribute>
<id>5</id>
<name>Minimum Frequency</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>6</int>
<ZclAttribute>
<id>6</id>
<name>Maximum Frequency</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>15</int>
<ZclAttribute>
<id>15</id>
<name>Options</name>
<dataType>BITMAP_8_BIT</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>false</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>16</int>
<ZclAttribute>
<id>16</id>
<name>On Off Transition Time</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>17</int>
<ZclAttribute>
<id>17</id>
<name>On Level</name>
<dataType>UNSIGNED_8_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>18</int>
<ZclAttribute>
<id>18</id>
<name>On Transition Time</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>19</int>
<ZclAttribute>
<id>19</id>
<name>Off Transition Time</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
<entry>
<int>20</int>
<ZclAttribute>
<id>20</id>
<name>Default Move Rate</name>
<dataType>UNSIGNED_16_BIT_INTEGER</dataType>
<mandatory>false</mandatory>
<implemented>false</implemented>
<readable>true</readable>
<writable>true</writable>
<reportable>false</reportable>
<minimumReportingPeriod>0</minimumReportingPeriod>
<maximumReportingPeriod>0</maximumReportingPeriod>
<reportingTimeout>0</reportingTimeout>
</ZclAttribute>
</entry>
</attributes>
<supportedCommandsReceived class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsReceived>
<supportedCommandsGenerated class="java.util.Collections$UnmodifiableSet">
<c class="set"/>
</supportedCommandsGenerated>
<supportedAttributes class="java.util.Collections$UnmodifiableSet">
<c class="set">
<int>0</int>
<int>65533</int>
</c>
</supportedAttributes>
</ZclCluster>
</inputClusters>
<outputClusters/>
</ZigBeeEndpoint>
</endpoints>
<bindingTable/>
</ZigBeeNode>
However, the devices still do not work.
New devices, of which I have no XML-Config, are displayed in OpenHAB as “offline” with the reason “Node has not completed discovery”.
For devices for which I have a config, they are shown as online, but as soon as I try to change the value (e.g. turn on the light), they go offline.
I have this e.g. with the Philips Hue motion sensor and the Ledvance sockets.
How can I fix the whole thing again?
It’s slightly humble like that.
I’d like to keep it simple, which the ZigBee binding had managed quite well so far.
Zigbee2Mqtt I therefore do not want to do to myself.
