Просмотр исходного кода

Fixed Base64 Decoding with only valid values

Florian Stamer 9 месяцев назад
Родитель
Сommit
eb97e1068c
1 измененных файлов с 24 добавлено и 12 удалено
  1. 24 12
      custom_components/tuya_local/devices/inkbird_ibs_m2.yaml

+ 24 - 12
custom_components/tuya_local/devices/inkbird_ibs_m2.yaml

@@ -26,8 +26,7 @@ entities:
         name: sensor
         name: sensor
         unit: "C"
         unit: "C"
         class: measurement
         class: measurement
-        offset: 1
-        length: 2
+        mask: "0000FFFF"
         endianness: little
         endianness: little
         mapping:
         mapping:
           - scale: 10
           - scale: 10
@@ -42,8 +41,7 @@ entities:
         name: battery
         name: battery
         unit: "%"
         unit: "%"
         class: measurement
         class: measurement
-        offset: 9
-        length: 1
+        mask: "FF00000000"
         mapping:
         mapping:
           - scale: 1
           - scale: 1
 
 
@@ -57,12 +55,26 @@ entities:
         name: sensor
         name: sensor
         unit: "C"
         unit: "C"
         class: measurement
         class: measurement
-        offset: 1
-        length: 2
+        mask: "0000FFFF"
         endianness: little
         endianness: little
         mapping:
         mapping:
           - scale: 10
           - scale: 10
 
 
+  - entity: sensor
+    name: Probe 2 Battery
+    class: battery
+    dps:
+      - id: 104
+        optional: true
+        type: base64
+        name: battery
+        unit: "%"
+        class: measurement
+        mask: "FF00000000"
+        endianness: little
+        mapping:
+          - scale: 1
+
   - entity: sensor
   - entity: sensor
     name: Temperature probe 3
     name: Temperature probe 3
     class: temperature
     class: temperature
@@ -74,7 +86,7 @@ entities:
         unit: "C"
         unit: "C"
         class: measurement
         class: measurement
         endianness: little
         endianness: little
-        mask: "FFFF"
+        mask: "0000FFFF"
         mapping:
         mapping:
           - scale: 10
           - scale: 10
 
 
@@ -89,7 +101,7 @@ entities:
         unit: "C"
         unit: "C"
         class: measurement
         class: measurement
         endianness: little
         endianness: little
-        mask: "FFFF"
+        mask: "0000FFFF"
         mapping:
         mapping:
           - scale: 10
           - scale: 10
 
 
@@ -104,7 +116,7 @@ entities:
         unit: "C"
         unit: "C"
         class: measurement
         class: measurement
         endianness: little
         endianness: little
-        mask: "FFFF"
+        mask: "0000FFFF"
         mapping:
         mapping:
           - scale: 10
           - scale: 10
 
 
@@ -119,7 +131,7 @@ entities:
         unit: "C"
         unit: "C"
         class: measurement
         class: measurement
         endianness: little
         endianness: little
-        mask: "FFFF"
+        mask: "0000FFFF"
         mapping:
         mapping:
           - scale: 10
           - scale: 10
 
 
@@ -134,7 +146,7 @@ entities:
         unit: "C"
         unit: "C"
         class: measurement
         class: measurement
         endianness: little
         endianness: little
-        mask: "FFFF"
+        mask: "0000FFFF"
         mapping:
         mapping:
           - scale: 10
           - scale: 10
 
 
@@ -149,7 +161,7 @@ entities:
         unit: "C"
         unit: "C"
         class: measurement
         class: measurement
         endianness: little
         endianness: little
-        mask: "FFFF"
+        mask: "0000FFFF"
         mapping:
         mapping:
           - scale: 10
           - scale: 10