Skip to content

Latest commit

 

History

History
133 lines (117 loc) · 3.16 KB

File metadata and controls

133 lines (117 loc) · 3.16 KB

H6113

Contributors


Eric Golde

Checklist of packets

  • Keep alive
  • Change Color
  • Set global brightness
  • Query & Response
  • Change to music mode
  • Change music mode to cycle colors

How packets work

From my understanding, all packets are 20 bytes long. The first byte is a identifier, followed by 18 bytes of data, followed by a XOR of all the bytes.

IDENTIFIER, DATA, DATA, DATA, DATA, DATA, DATA, DATA, DATA, DATA, DATA, DATA, DATA, DATA, DATA, DATA, DATA, DATA, DATA, XOR
Type Unformatted UUID Formatted UUID
Service 000102030405060708090a0b0c0d1910 00010203-0405-0607-0809-0a0b0c0d1910
Characteristic 000102030405060708090a0b0c0d2b11 00010203-0405-0607-0809-0a0b0c0d2b11

Keep Alive

It is always this, it never seems to change. This is sent every 2 seconds from the mobile app to the device.

0xAA, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xAB

Set Color

RED, GREEN, BLUE range is 0 - 255 or 0x00 - 0xFF

0x33, 0x05, 0x02, RED, GREEN, BLUE, 0x00, 0xFF, 0xAE, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (0x31 ^ RED ^ GREEN ^ BLUE)

Set Brightness

BRIGHTNESS range is 0 - 255 or 0x00 - 0xFF

0x33, 0x04, BRIGHTNESS, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (0x33 ^ 0x04 ^ BRIGHTNESS)

Query

Query Command

0x81, 0x8a, 0x8b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, CHECKSUM

Query Response

Packet reply is always length of 14:

0: ???
1: ???
2: on == 0x23
3: mode (see modes)
4: ???
5: speed
6: red
7: green
8: blue
9: ww
10: firmware version??? Was 7 when firmware was 7, and 9 when firmware was 9.
11: cw
12: ???
13: Checksum?

Modes

0x25 -> seven_color_cross_fade
0x26 -> red_gradual_change
0x27 -> green_gradual_change
0x28 -> blue_gradual_change
0x29 -> yellow_gradual_change
0x2a -> cyan_gradual_change
0x2b -> purple_gradual_change
0x2c -> white_gradual_change
0x2d -> red_green_cross_fade
0x2e -> red_blue_cross_fade
0x2f -> green_blue_cross_fade
0x30 -> seven_color_strobe_flash
0x31 -> red_strobe_flash
0x32 -> green_strobe_flash
0x33 -> blue_stobe_flash
0x34 -> yellow_strobe_flash
0x35 -> cyan_strobe_flash
0x36 -> purple_strobe_flash
0x37 -> white_strobe_flash
0x38 -> seven_color_jumping

0x61 -> color
0x62 -> special
0x60 -> custom

Misc notes:

Set static color:

  • u0: 129
  • u1: 53
  • u4: 23
  • u12: 15

Candle:

  • u0: 129
  • u1: 53
  • Mode: 95
  • u4: 23
  • u12:
    • 240 - RGB
    • 15 - WW CW

Microphone

  • u0: 129
  • u1: 53
  • on = true ????
  • mode: "special" 98
  • u4: 23
  • u12: 240

Music

  • u0: 129
  • u1: 53
  • on = false???
  • mode: "special" 98
  • u4: 23
  • u12:
    • 240 - most of the time.
    • 15 - randomly jumps to then back to 240