kogan_vacuum_lx15.yaml 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382
  1. # Protocol 3.3
  2. name: Robot vacuum
  3. products:
  4. - id: fwdjfuvqy9qogefw
  5. manufacturer: Kogan
  6. model: LX15
  7. entities:
  8. - entity: vacuum
  9. dps:
  10. - id: 101
  11. name: activate # clean_switch
  12. type: boolean
  13. - id: 102
  14. name: command # pause_switch
  15. type: boolean
  16. mapping:
  17. - dps_val: true
  18. value: pause
  19. - dps_val: false
  20. constraint: clean_mode
  21. conditions:
  22. - dps_val: smart
  23. value: smart
  24. - dps_val: pose
  25. value: clean_spot
  26. - dps_val: zone
  27. value: zone
  28. - dps_val: backcharge
  29. value: return_to_base
  30. - id: 104
  31. name: clean_mode
  32. type: string
  33. - id: 105
  34. name: status # robot_state
  35. type: string
  36. mapping:
  37. - dps_val: idle
  38. value: standby
  39. - dps_val: pointing\areaing
  40. value: pointing_areaing
  41. - dps_val: totaling
  42. value: cleaning
  43. - dps_val: sweep
  44. value: sweep
  45. - dps_val: mop
  46. value: mop
  47. - dps_val: fault
  48. value: error
  49. - dps_val: pause
  50. value: paused
  51. - dps_val: chargring
  52. value: charging
  53. - dps_val: tocharge
  54. value: returning
  55. - dps_val: fullcharge
  56. value: charged
  57. - dps_val: remotectl
  58. value: remotectl
  59. - id: 109
  60. name: fan_speed # fan_mode
  61. type: string
  62. mapping:
  63. - dps_val: quiet
  64. value: Quiet
  65. - dps_val: strong
  66. value: Strong
  67. - dps_val: auto
  68. value: Auto
  69. - id: 111
  70. name: direction_control # remote_ctrl
  71. optional: true
  72. type: string
  73. mapping:
  74. - dps_val: forward
  75. value: forward
  76. - dps_val: backward
  77. value: backward
  78. - dps_val: left
  79. value: left
  80. - dps_val: right
  81. value: right
  82. - dps_val: stop
  83. value: stop
  84. - id: 112
  85. name: locate # seek_robot
  86. optional: true
  87. type: boolean
  88. - id: 123
  89. name: path_comm
  90. optional: true
  91. type: string
  92. - id: 124
  93. name: cmd_comm
  94. optional: true
  95. type: string
  96. - id: 125
  97. name: request_data
  98. optional: true
  99. type: string
  100. - id: 126
  101. name: comm_flag
  102. optional: true
  103. type: string
  104. - id: 127
  105. name: comm_raw
  106. optional: true
  107. type: string
  108. - id: 128
  109. name: message_report
  110. optional: true
  111. type: string
  112. - id: 130
  113. name: sn
  114. optional: true
  115. type: string
  116. - id: 131
  117. name: uuid
  118. optional: true
  119. type: string
  120. - id: 132
  121. name: device_info
  122. optional: true
  123. type: string
  124. - name: Charge switch
  125. entity: switch
  126. category: config
  127. icon: "mdi:power-plug"
  128. dps:
  129. - id: 103
  130. name: switch
  131. type: boolean
  132. - class: battery
  133. entity: sensor
  134. dps:
  135. - id: 106
  136. type: integer
  137. name: sensor
  138. unit: "%"
  139. class: measurement
  140. - name: Current clean time
  141. entity: sensor
  142. category: diagnostic
  143. class: duration
  144. icon: "mdi:clock-outline"
  145. dps:
  146. - id: 107
  147. name: sensor
  148. type: integer
  149. unit: s
  150. - name: Current clean area
  151. entity: sensor
  152. class: area
  153. category: diagnostic
  154. dps:
  155. - id: 108
  156. name: sensor
  157. type: integer
  158. unit: m2
  159. - translation_key: mopping
  160. entity: select
  161. category: config
  162. dps:
  163. - id: 110
  164. name: option
  165. type: string
  166. mapping:
  167. - dps_val: low
  168. value: low
  169. - dps_val: mid
  170. value: medium
  171. - dps_val: high
  172. value: high
  173. - translation_key: do_not_disturb
  174. entity: switch
  175. category: config
  176. dps:
  177. - id: 113
  178. name: switch
  179. type: boolean
  180. - entity: number
  181. translation_key: volume
  182. category: config
  183. dps:
  184. - id: 114
  185. type: integer
  186. name: value
  187. range:
  188. min: 0
  189. max: 10
  190. - name: Get times
  191. entity: button
  192. category: config
  193. icon: "mdi:clock-outline"
  194. dps:
  195. - id: 115 # Consumables reset
  196. type: string
  197. name: button
  198. optional: true
  199. mapping:
  200. - dps_val: gettime
  201. value: true
  202. - name: Reset side brush
  203. entity: button
  204. category: config
  205. icon: "mdi:clock-outline"
  206. dps:
  207. - id: 115
  208. type: string
  209. name: button
  210. optional: true
  211. mapping:
  212. - dps_val: resetsidebrush
  213. value: true
  214. - name: Reset main brush
  215. entity: button
  216. category: config
  217. icon: "mdi:clock-outline"
  218. dps:
  219. - id: 115
  220. type: string
  221. name: button
  222. optional: true
  223. mapping:
  224. - dps_val: resetmainbrush
  225. value: true
  226. - translation_key: filter_reset
  227. entity: button
  228. category: config
  229. dps:
  230. - id: 115
  231. type: string
  232. name: button
  233. optional: true
  234. mapping:
  235. - dps_val: resetfilter
  236. value: true
  237. - name: Reset map
  238. entity: button
  239. category: config
  240. icon: "mdi:map-marker-remove"
  241. hidden: true # Because it'd be annoying to press by accident
  242. dps:
  243. - id: 129
  244. name: button
  245. optional: true
  246. type: boolean
  247. - name: Total clean time
  248. entity: sensor
  249. category: diagnostic
  250. class: duration
  251. icon: "mdi:clock-outline"
  252. dps:
  253. - id: 116
  254. name: sensor
  255. type: integer
  256. unit: s
  257. optional: true
  258. - name: Total clean area
  259. entity: sensor
  260. class: area
  261. category: diagnostic
  262. dps:
  263. - id: 117
  264. name: sensor
  265. type: integer
  266. unit: m2
  267. optional: true
  268. - name: Total clean count
  269. entity: sensor
  270. category: diagnostic
  271. icon: "mdi:counter"
  272. dps:
  273. - id: 118
  274. name: sensor
  275. type: integer
  276. optional: true
  277. - name: Side brush time
  278. entity: sensor
  279. category: diagnostic
  280. class: duration
  281. icon: "mdi:clock-outline"
  282. dps:
  283. - id: 119
  284. name: sensor
  285. optional: true
  286. type: integer
  287. unit: s
  288. - name: Main brush time
  289. entity: sensor
  290. category: diagnostic
  291. class: duration
  292. icon: "mdi:clock-outline"
  293. dps:
  294. - id: 120
  295. name: sensor
  296. optional: true
  297. type: integer
  298. unit: s
  299. - translation_key: filter_life
  300. entity: sensor
  301. category: diagnostic
  302. class: duration
  303. dps:
  304. - id: 121
  305. name: sensor
  306. optional: true
  307. type: integer
  308. unit: s
  309. - class: problem
  310. entity: binary_sensor
  311. category: diagnostic
  312. dps:
  313. - id: 122
  314. type: bitfield
  315. name: sensor
  316. mapping:
  317. - dps_val: 0
  318. value: false
  319. - value: true
  320. - id: 122
  321. type: bitfield
  322. name: fault_code
  323. - id: 122
  324. name: description
  325. type: bitfield
  326. mapping:
  327. - dps_val: 0
  328. value: ok
  329. - dps_val: 2
  330. value: Battery low
  331. - dps_val: 32
  332. value: Drop sensor abnormal
  333. - dps_val: 4096
  334. value: Abnormal main brush
  335. - dps_val: 32768
  336. value: Dust collector absent
  337. - dps_val: 524288
  338. value: Machine trapped
  339. - dps_val: 1048576
  340. value: Was picked up at work
  341. - dps_val: 33554432
  342. value: Recharge failed
  343. - name: Auto boost
  344. entity: switch
  345. icon: "mdi:car-turbocharger"
  346. category: config
  347. dps:
  348. - id: 137
  349. type: boolean
  350. optional: true
  351. name: switch
  352. - translation_key: uv_sterilization
  353. entity: switch
  354. category: config
  355. dps:
  356. - id: 142
  357. type: boolean
  358. name: switch
  359. - translation_key: language
  360. entity: select
  361. category: config
  362. dps:
  363. - id: 133
  364. name: option
  365. type: string
  366. mapping:
  367. - dps_val: "0"
  368. value: korean
  369. - dps_val: "1"
  370. value: english
  371. - dps_val: "2"
  372. value: english_child
  373. - dps_val: "3"
  374. value: chinese
  375. - name: Pause
  376. entity: switch
  377. icon: "mdi:pause"
  378. category: config
  379. dps:
  380. - id: 102
  381. type: boolean
  382. name: switch