Description

The FingerGestureStream command is used to enable or disable the streaming of detected finger gestures including swipe left/right/up/down, flip left/right, or double tap. The gestures are functional when Neblina is attached to a finger.

Protocol

This command uses the Command-Ack-Response-Data protocol.

Command

Byte Name C Type Value
0 Control Byte ( Packet Type (7:5) / SubSystem (4:0) ) uint8_t 0x41 ( 0b010 / 0b00001 )
1 Payload Length uint8_t 1
2 CRC uint8_t Calculated
3 Command uint8_t 0x11

Payload

Byte Name C Type Value
4 State uint8_t 0x00 (Disable) or 0x01 (Enable)

Response

Header

Byte Name C Type Value
0 Control Byte ( Packet Type (7:5) / SubSystem (4:0) ) uint8_t 0x01 ( 0b000 / 0b00001 )
1 Payload Length uint8_t 4
2 CRC uint8_t Calculated
3 Command uint8_t 0x11

Payload

Byte Name C Type Value
4 - 5 Downsample uint16_t Varies
6 - 7 Rate uint16_t Varies

Data

Header

Byte Name C Type Value
0 Control Byte ( Packet Type (7:5) / SubSystem (4:0) ) uint8_t 0x61 ( 0b011 / 0b00001 )
1 Payload Length uint8_t 5
2 CRC uint8_t Calculated
3 Command uint8_t 0x11

Payload

Byte Name C Type Value
4 - 7 Timestamp uint32_t Varies
8 Gesture uint8_t See Below

The following table details all finger gesture:

Identifier Gesture
0x00 Swipe Left
0x01 Swipe Right
0x02 Swipe Up
0x03 Swipe Down
0x04 Flip Left
0x05 Flip Right
0x06 Double Tap
0x07-0xFE Reserved
0xFF No Gesture