syssi / xiaomi_cooker

Xiaomi Mi Electric Rice Cooker integration for Home Assistant
Apache License 2.0
141 stars 37 forks source link

@syssi I decompiled the APK for the chunmi.cooker.eh1, found a few things from some preliminary testing: #19

Closed liangleslie closed 4 years ago

liangleslie commented 4 years ago

@syssi I decompiled the APK for the chunmi.cooker.eh1, found a few things from some preliminary testing:

  1. profile codes are as follows: profile_baowen = "020103000000040c00001800000100800100000000000000002091827d7800000091827d7800000091827d78000000915a7d7820000091827d7800000091826e78ff000091827d7800000091826e7810000091826e7810000091827d7800000091827d780000a082007882140010871478030000eb820078821400108714780300012d8200788214001087147a0501ffff8200788214001087147d0501200000000000000000000000000000000090e5"; profile_duntang = "02010400000005e601000100000a00800102050a14000000002091827d7800000091827d7800000091827d78001e00915a7d7820000091827d7800000091826e78ff000091827d7800000091826e7810ffff91827d78ff000091827d7800000091827d780000a082007882140010871478030000eb820078821400108714780300012d8200788214001087147a0501ffff8200788214001087147d0501200000000000000000000000000000000020b5"; profile_jingzhu = "02010000000001e101000000000000800101050814000000002091827d7800050091822d781c0a0091823c781c1e0091ff827820ffff91828278000500ffff8278ffffff91828278000d00ff828778ff000091827d7800000091827d7800ffff91826078ff0100490366780701086c0078090301af540266780801086c00780a02023c5701667b0e010a71007a0d02ffff5701667b0f010a73007d0d032005000000000000000000000000000000cf53"; profile_kuaizhu = "02010100000002e100280000000000800101050614000000002091827d7800000091823c7820000091823c781c1e0091ff827820ffff91828278000500ffff8278ffffff91828278000d00ff828778ff000082827d7800000091827d7800ffff91826078ff0164490366780701086c007409030200540266780801086c00760a0202785701667b0e010a7100780a02ffff5701667b0f010a73007b0a032005000000000000000000000000000000ddba"; profile_zhuzhou = "02010200000003e2011e0400002800800101050614000000002091827d7800000091827d7800000091827d78001e0091ff877820ffff91827d78001e0091ff8278ffffff91828278001e0091828278060f0091827d7804000091827d7800000091827d780001f54e0255261802062a0482030002eb4e0255261802062a04820300032d4e0252261802062c04820501ffff4e0152241802062c0482050120000000000000000000000000000000009ce2"; I am able to start the device using the following command: miiocli -d cooker --ip IPADDR --token TOKEN raw_command set_menu "['02010000000001e101000000000000800100050814000000002091827d7800050091822d781c0a0091823c781c1e0091ff827820ffff91828278000500ffff8278ffffff91828278000d00ff828778ff000091827d7800000091827d7800ffff91826078ff0100490366780701086c0078090301af540266780801086c00780a02023c5701667b0e010a71007a0d02ffff5701667b0f010a73007d0d032005000000000000000000000000000000cf53']"

  2. Seems like the cooker implements a new method for stopping. The methods implemented in the cooker class don't work with the chunmi.cooker.eh1. I am able to stop the cooker using the following command: miiocli -d cooker --ip IPADDR--token TOKEN raw_command cancel_cooking []

Still not too sure how to send settings like rice type etc. to the cooker, but at least this allows some basic operations like starting and stopping.

I'm also attaching the MiioDevice class from the APK, which has details on how the methods are implemented com.chunmi.ehcooker.device.MiioDevice.txt

_Originally posted by @liangleslie in https://github.com/syssi/xiaomi_cooker/issues/3#issuecomment-616309848_

liangleslie commented 4 years ago

Duplicate of #3