|
|
@@ -0,0 +1,204 @@
|
|
|
+name: Pet feeder
|
|
|
+products:
|
|
|
+ - id: pvq5aho6c0xsczab
|
|
|
+ model: TA-FD-BL6
|
|
|
+entities:
|
|
|
+ - entity: switch
|
|
|
+ translation_key: flip_image
|
|
|
+ category: config
|
|
|
+ dps:
|
|
|
+ - id: 103
|
|
|
+ type: boolean
|
|
|
+ optional: true
|
|
|
+ name: switch
|
|
|
+ - entity: select
|
|
|
+ translation_key: motion_sensitivity
|
|
|
+ category: config
|
|
|
+ dps:
|
|
|
+ - id: 106
|
|
|
+ type: string
|
|
|
+ optional: true
|
|
|
+ name: option
|
|
|
+ mapping:
|
|
|
+ - dps_val: "0"
|
|
|
+ value: low
|
|
|
+ - dps_val: "1"
|
|
|
+ value: medium
|
|
|
+ - dps_val: "2"
|
|
|
+ value: high
|
|
|
+ - entity: sensor
|
|
|
+ class: enum
|
|
|
+ translation_key: sd_status
|
|
|
+ category: diagnostic
|
|
|
+ dps:
|
|
|
+ - id: 110
|
|
|
+ type: integer
|
|
|
+ optional: true
|
|
|
+ name: sensor
|
|
|
+ mapping:
|
|
|
+ - dps_val: 1
|
|
|
+ value: normal
|
|
|
+ - dps_val: 2
|
|
|
+ value: fault
|
|
|
+ - dps_val: 3
|
|
|
+ value: full
|
|
|
+ - dps_val: 4
|
|
|
+ value: formatting
|
|
|
+ - dps_val: 5
|
|
|
+ value: missing
|
|
|
+ - id: 109
|
|
|
+ type: string
|
|
|
+ optional: true
|
|
|
+ name: capacity
|
|
|
+ - entity: button
|
|
|
+ name: Format SD
|
|
|
+ category: config
|
|
|
+ icon: "mdi:micro-sd"
|
|
|
+ dps:
|
|
|
+ - id: 111
|
|
|
+ type: boolean
|
|
|
+ optional: true
|
|
|
+ name: button
|
|
|
+ - id: 117
|
|
|
+ type: integer
|
|
|
+ optional: true
|
|
|
+ name: state
|
|
|
+ mapping:
|
|
|
+ - dps_val: -2000
|
|
|
+ value: Formatting
|
|
|
+ - dps_val: -2001
|
|
|
+ value: Format failed
|
|
|
+ - dps_val: -2002
|
|
|
+ value: Card missing
|
|
|
+ - dps_val: -2003
|
|
|
+ value: Card error
|
|
|
+ - dps_val: 0
|
|
|
+ value: Formatted
|
|
|
+ - entity: select
|
|
|
+ name: Motion recording
|
|
|
+ icon: "mdi:file-video"
|
|
|
+ category: config
|
|
|
+ dps:
|
|
|
+ - id: 113
|
|
|
+ type: boolean
|
|
|
+ optional: true
|
|
|
+ name: option
|
|
|
+ mapping:
|
|
|
+ - dps_val: true
|
|
|
+ value: Motion
|
|
|
+ - dps_val: false
|
|
|
+ value: Continuous
|
|
|
+ - entity: switch
|
|
|
+ translation_key: motion_detection
|
|
|
+ category: config
|
|
|
+ dps:
|
|
|
+ - id: 134
|
|
|
+ type: boolean
|
|
|
+ optional: true
|
|
|
+ name: switch
|
|
|
+ - entity: select
|
|
|
+ translation_key: recording_mode
|
|
|
+ category: config
|
|
|
+ dps:
|
|
|
+ - id: 151
|
|
|
+ type: string
|
|
|
+ optional: true
|
|
|
+ name: option
|
|
|
+ mapping:
|
|
|
+ - dps_val: "1"
|
|
|
+ value: event
|
|
|
+ - dps_val: "2"
|
|
|
+ value: continuous
|
|
|
+ - entity: number
|
|
|
+ translation_key: manual_feed
|
|
|
+ category: config
|
|
|
+ dps:
|
|
|
+ - id: 201
|
|
|
+ type: integer
|
|
|
+ optional: true
|
|
|
+ name: value
|
|
|
+ unit: portions
|
|
|
+ range:
|
|
|
+ min: 1
|
|
|
+ max: 10
|
|
|
+ mapping:
|
|
|
+ - dps_val: -2000
|
|
|
+ value: null # Feeding in progress
|
|
|
+ - dps_val: -2001
|
|
|
+ value: null # Feeding failed
|
|
|
+ - entity: sensor
|
|
|
+ name: Feed result
|
|
|
+ category: diagnostic
|
|
|
+ dps:
|
|
|
+ - id: 201
|
|
|
+ type: integer
|
|
|
+ optional: true
|
|
|
+ name: sensor
|
|
|
+ unit: portions
|
|
|
+ mapping:
|
|
|
+ - dps_val: -2000
|
|
|
+ value: In progress
|
|
|
+ hidden: true
|
|
|
+ - dps_val: -2001
|
|
|
+ value: Failed
|
|
|
+ hidden: true
|
|
|
+ - entity: sensor
|
|
|
+ name: Food weight
|
|
|
+ class: weight
|
|
|
+ category: diagnostic
|
|
|
+ dps:
|
|
|
+ - id: 202
|
|
|
+ type: integer
|
|
|
+ optional: true
|
|
|
+ name: sensor
|
|
|
+ unit: g
|
|
|
+ class: measurement
|
|
|
+ mapping:
|
|
|
+ - scale: 10
|
|
|
+ - entity: number
|
|
|
+ name: Feed control
|
|
|
+ category: config
|
|
|
+ icon: "mdi:cogs"
|
|
|
+ hidden: true
|
|
|
+ dps:
|
|
|
+ - id: 203
|
|
|
+ type: integer
|
|
|
+ optional: true
|
|
|
+ name: value
|
|
|
+ range:
|
|
|
+ min: 1
|
|
|
+ max: 20
|
|
|
+ - entity: sensor
|
|
|
+ name: Realtime data
|
|
|
+ category: diagnostic
|
|
|
+ hidden: true
|
|
|
+ dps:
|
|
|
+ - id: 204
|
|
|
+ type: integer
|
|
|
+ optional: true
|
|
|
+ name: sensor
|
|
|
+ - id: 206
|
|
|
+ type: integer
|
|
|
+ optional: true
|
|
|
+ name: history
|
|
|
+ - entity: number
|
|
|
+ name: Auto feed config
|
|
|
+ category: config
|
|
|
+ hidden: true # Encodes flag as hundreds, and portion size as tens and ones
|
|
|
+ dps:
|
|
|
+ - id: 205
|
|
|
+ type: integer
|
|
|
+ optional: true
|
|
|
+ name: value
|
|
|
+ range:
|
|
|
+ min: 1
|
|
|
+ max: 255
|
|
|
+ - entity: text
|
|
|
+ translation_key: schedule
|
|
|
+ category: config
|
|
|
+ hidden: true
|
|
|
+ dps:
|
|
|
+ - id: 207
|
|
|
+ type: string
|
|
|
+ optional: true
|
|
|
+ name: value
|