Professional Documents
Culture Documents
1 INTRODUCTION
One ring project is started since 8 - 2014. The project aims to help people get more
easy to connect and control hi tech things in your house with one device only.
Touching the device to connect, and making a gesture to control your device are
two simplest steps to bring you to the new era of technology.
One day you have a presentation. You will need an air mouse can click, move next
and back, play a video or handle a problem in your presentation without moving
forward and backward between your computer and your place. Your finger is your
pointer, your gestures are your commands. These things give you an option to
liberate you from mouse stuffs. Or when you are in a car, you need to answer a call,
make a call to your favorite person, play a music, or open a navigation system, all
your needs is simple click and make gesture. Your life will be better, more
convenient than ever.
2 FIRMWARE DESCRIPTION
In this part, we will discuss about the technology behind the ring: Firmware and its
algorithm.
The system of the ring can be describe as the picture below:
MCU with RF
module inside
6 axis
acceleromet
er
gyroscope.
2.1
SENSOR
Touch
senso
r
This sensor called MPU 6050 with can provide two types of data: raw data ,
Calculated data( quaternion , Euler vector) from an inside processor called Digital
Motion Processor DMP .
In order to control mouse: raw data will be used to navigate the location of the
mouse pointer, because of the low latency of reading raw data.
In order to record a gesture, data from DMP will be used to analyze because its
require quaternion data which is not be affects when you are not wearing the ring
100% in the center.
2.1.1 Quaternions and spatial rotation.
When you first click your ring before making a gesture, current quaternion will be
recorded to calculate the rotation vector matrix to original vector (1,0,0) a vector
point ( can be also (0,1,0); (0,0,1) depend on the position of the sensor).
Rotation
Original vector
Current vector
Rotation
Current
Rotated
Rotated
A point in 2d
space
3 GESTURE RECOGNITION
Currently, the gesture recognition can record 6 gestures:
1)
2)
3)
4)
5)
6)
Up
Down
Anti-clockwise
Clockwise
Next
Back
The current algorithm is very simple. It detects two dimension of the image
(height and wide ) and original point to detect 4 gesture : Up, down, next, back.
For clockwise and anti-clockwise detection, we need to add more parameter: the
movement vector of the original vector to detect the anti-clockwise and
clockwise detection
Limits of this algorithm:
Hard to develop more gestures: It was limited by the power of MCU ,as
well as lack of parameter to detect the gestures
Limited in wide angle gesture: Because the pointer is converted from 3d to
2d space. Which means you will get an error when you finger move too
much, outside of the 2d space. You can have a look at the picture below
Height =+