]> git.basschouten.com Git - openhab-addons.git/commitdiff
[enocean] Fix discovery of D2-50 devices (#10577)
authorDavid <davidgiga1993@gmail.com>
Sat, 1 May 2021 08:24:23 +0000 (10:24 +0200)
committerGitHub <noreply@github.com>
Sat, 1 May 2021 08:24:23 +0000 (10:24 +0200)
This change accepts a new message type which is sent by some air ventilation devices durin teach in. This is required for the search feature to detect these devices correctly.

Signed-off-by: David Schumann <david@dev-core.org>
bundles/org.openhab.binding.enocean/src/main/java/org/openhab/binding/enocean/internal/eep/D2_50/D2_50.java

index ee12d418e843d4d6e32b62a8d00ca60286fadc2f..42107f1a06758208a18804363303b36760348443 100644 (file)
@@ -44,6 +44,7 @@ public class D2_50 extends _VLDMessage {
     protected static final byte MT_CONTROL = 0x20;
     protected static final byte MT_BASIC_STATUS = 0x40;
     protected static final byte MT_EXTENDED_STATUS = 0x60; // not yet implemented
+    protected static final byte MT_UNKNOWN_STATUS = (byte) 0x80; // Sent by some systems during teach in
 
     protected static final byte rmtMask = (byte) 0x0f;
     protected static final byte RMT_BASIC_STATUS = 0x00;
@@ -177,7 +178,10 @@ public class D2_50 extends _VLDMessage {
                 return bytes.length == 14;
             case MT_EXTENDED_STATUS: // MT_EXTENDED_STATUS is not yet supported, however return true to avoid Exceptions
                 return true;
+            case MT_UNKNOWN_STATUS:
+                return true;
             default:
+                logger.error("Invalid data, unknown message type: {} ({})", getMessageType(bytes[0]), bytes);
                 return false;
         }
     }