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

Add support for Ultenic air fryer.

Issue #556
Jason Rumney 2 лет назад
Родитель
Сommit
ddfe8e94e1
3 измененных файлов с 214 добавлено и 0 удалено
  1. 1 0
      ACKNOWLEDGEMENTS.md
  2. 1 0
      DEVICES.md
  3. 212 0
      custom_components/tuya_local/devices/ultenic_air_fryer.yaml

+ 1 - 0
ACKNOWLEDGEMENTS.md

@@ -225,3 +225,4 @@ Further device support has been made with the assistance of users.  Please consi
 - [thewolf-oz](https://github.com/thewolf-oz) for assisting with support for Arlec 12-speed tower fans, 6-speed floor fans and 19-speed wall fans, and contributing support for Arlec/Deta dimming lightbulbs.
 - [dhuddle](https://github.com/dhuddle) for assisting with support for Chanfok ceiling fan with light, Inkbird BBQ thermometer, Lepro lights (variant of RGBCW light without timer) and Yieryi pH meter.
 - [theshop35](https://github.com/theshop35) for assisting with support for CC curtains.
+- [blakadder](https://github.com/blakadder) for assisting with support for Ultonic K10 air fryer.

+ 1 - 0
DEVICES.md

@@ -183,6 +183,7 @@
 - Inkbird sous vide cooker
 - Kogan glass 1.7L smart kettle
 - Silvercrest 1.7L smart kettle
+- Ultenic K10 air fryer
 
 ### Smart Meter/Circuit Breaker
 

+ 212 - 0
custom_components/tuya_local/devices/ultenic_air_fryer.yaml

@@ -0,0 +1,212 @@
+name: Air fryer
+products:
+  - id: agpcmyexmpd49vpw
+    name: Ultenic K10
+primary_entity:
+  entity: switch
+  name: Power
+  icon: "mdi:power"
+  dps:
+    - id: 1
+      type: boolean
+      name: switch
+    - id: 12
+      type: bitfield
+      name: error_code
+    - id: 104
+      type: string
+      name: cooking_report
+secondary_entities:
+  - entity: switch
+    name: Cooking
+    icon: "mdi:toaster-oven"
+    dps:
+      - id: 2
+        type: boolean
+        name: switch
+  - entity: select
+    name: Mode
+    category: config
+    dps:
+      - id: 3
+        type: string
+        name: option
+        mapping:
+          - dps_val: chicken
+            value: Chicken wings
+            icon: "mdi:food-drumstick"
+          - dps_val: steaks
+            value: Steak
+            icon: "mdi:food-steak"
+          - dps_val: shrimp
+            value: Shrimp
+            icon: "mdi:sausage"
+          - dps_val: fish
+            value: Fish
+            icon: "mdi:fish"
+          - dps_val: onion
+            value: Onion
+            icon: "mdi:bullseye"
+          - dps_val: pizza
+            value: Pizza
+            icon: "mdi:pizza"
+          - dps_val: bacon
+            value: Bacon
+            icon: "mdi:food-steak"
+          - dps_val: cake
+            value: Baking
+            icon: "mdi:cake-variant"
+          - dps_val: toast
+            value: Toast
+            icon: "mdi:bread-slice"
+          - dps_val: vegetables
+            value: Vegetables
+            icon: "mdi:carrot"
+          - dps_val: custom
+            value: Custom
+            icon: "mdi:cogs"
+          - dps_val: cloud
+            value: Cloud recipe
+            icon: "mdi:cloud-print-outline"
+          - dps_val: default
+            value: Default
+            icon: "mdi:toaster-oven"
+          - dps_val: keepwarm
+            value: Keep warm
+            icon: "mdi:heat-wave"
+          - dps_val: preheat
+            value: Preheat
+            icon: "mdi:fire"
+  - entity: sensor
+    name: Status
+    class: enum
+    dps:
+      - id: 5
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: "0"
+            value: Standby
+            icon: "mdi:power-standby"
+          - dps_val: "1"
+            value: Preheating
+            icon: "mdi:fire"
+          - dps_val: "2"
+            value: Cooking
+            icon: "mdi:toaster-oven"
+          - dps_val: "3"
+            value: Done
+            icon: "mdi:check"
+          - dps_val: "4"
+            value: Keeping warm
+            icon: "mdi:heat-wave"
+          - dps_val: "5"
+            value: "Off"
+            icon: "mdi:power-off"
+          - dps_val: "8"
+            value: Scheduled
+            icon: "mdi:calendar-clock"
+  - entity: number
+    name: Cooking temperature
+    class: temperature
+    dps:
+      - id: 6
+        type: integer
+        name: value
+        range:
+          min: 75
+          max: 400
+        mapping:
+          - step: 5
+      - id: 14
+        type: string
+        name: unit
+        mapping:
+          - dps_val: "0"
+            value: C
+          - dps_val: "1"
+            value: F
+  - entity: sensor
+    name: Temperature
+    class: temperature
+    dps:
+      - id: 7
+        type: integer
+        name: sensor
+        unit: C
+        class: measurement
+  - entity: number
+    name: Cooking time
+    icon: "mdi:timer"
+    dps:
+      - id: 9
+        type: integer
+        name: value
+        unit: min
+        range:
+          min: 1
+          max: 720
+  - entity: sensor
+    name: Time remaining
+    class: duration
+    dps:
+      - id: 10
+        type: integer
+        name: sensor
+        unit: min
+  - entity: binary_sensor
+    name: Error
+    class: problem
+    category: diagnostic
+    dps:
+      - id: 12
+        type: bitfield
+        name: sensor
+        mapping:
+          - dps_val: 0
+            value: false
+          - value: true
+  - entity: switch
+    name: Pause cooking
+    dps:
+      - id: 13
+        type: boolean
+        name: switch
+  - entity: select
+    name: Temperature unit
+    icon: "mdi:temperature-celsius"
+    category: config
+    dps:
+      - id: 14
+        type: string
+        name: option
+        mapping:
+          - dps_val: "0"
+            value: Celsius
+          - dps_val: "1"
+            value: Fahrenheit
+  - entity: switch
+    name: Preheat
+    icon: "mdi:fire"
+    category: config
+    dps:
+      - id: 15
+        type: boolean
+        name: switch
+  - entity: switch
+    name: Keep warm
+    category: config
+    icon: "mdi:heat-wave"
+    dps:
+      - id: 101
+        type: boolean
+        name: switch
+  - entity: sensor
+    name: Current mode remaining time
+    class: duration
+    category: diagnostic
+    dps:
+      - id: 105
+        type: integer
+        name: sensor
+        unit: min