Document Kiiroo PowerBlow Protocol
denialtek opened this issue · comments
BLE Name: PowerBlow R1
Services
Init Service UUID: 0x1900
Init TX UUID: 0x1902
Suction/Release Service UUID: 0x1400
Suction TX UUID: 0x1401
Release TX UUID: 0x1402
Color Control Service UUID: 0x1600
Color Control TX UUID: 0x1601
Initialization
Send 0x0032000000 to 0x1902.
Control
Change color:
Send 0xRRGGBBWW to 0x1601
- RR = red 00-ff
- GG = green 00-ff
- BB = blue 00-ff
- WW = brightness? 00-ff
Suction:
Send 0xXXYY to 0x1401
- XX = suction intensity (0x80-0xff)
- The device does respond to lower values than 0x80, but that's the starting intensity in the official app.
- YY = time to turn on for (0x01-0xff)
- 0x01 = ~0.05s, 0xff = ~12.75s
- Command can be repeated before the previous command finishes to keep the suction going
- Suction remains held after the time is up until the release command is sent
Release:
Send 0xXXYY to 0x1402
- XX = speed of release?
- YY = time spent releasing suction?
The official app generally sends the same values to the release command as it sent to the suction command.