Hi! We're discussing a clarification of the content license; please look over to Current events if you're interested in editing.
Raphael Navi
From Htc-linux
There are 5 hard buttons on the navi: Up, Down, entire Left section, entire Right section, Action. Can use gpio_event_matrix to map these 5 buttons along with Volume controls
[edit] I2C
See RaphaelMicroP for LED behaviors
The I2C id is 0x62 (0xc4>>1)
Read 18 bytes from data address 0x1
| byte | value | description |
| 0 | 11 | Action "quadrant" |
| 22 | Left quadrant | |
| 44 | Directional "ring" | |
| 88 | Right quadrant | |
| (combined) | multiple simultaneous quadrants | |
| +01 | 00 - 44 | \"x\" coordinate in Left section |
| ff | Not in left section | |
| +02 | 00 - 44 | \"y\" coordinate in Left section |
| ff | Not in left section | |
| +03 | 00 - 0f | Left on ring |
| 10 - 1f | Up on ring | |
| 20 - 2f | Right on ring | |
| 30 - 3f | Down on ring | |
| ff | Not touching ring | |
| +04 | 00 | No function ?? |
| +05 | 00 - 44 OR ff | "x" coordinate in Right section |
| +06 | 00 - 44 | "y" coordinate in Right section |
| ff | Not in right section | |
| -- | -- | -- |
| Unconfirmed: | ||
| +07 | 01 - 2b+ (?) | ?? related to action button |
| 00 | Not on Action | |
| +08 | 00 - ff | Surface area on Right section? |
| +09 | ? - ? | Undetermined |
| +0a | ? - ? | Undetermined |
| +0b | 00-3f | 04,0c,0d,0e all related? Movement/gestures? |
| +0c | 00-3f | 04,0c,0d,0e all related? ^ |
| +0d | 00-3f | 04,0c,0d,0e all related? ^ |
| +0e | 82 | Doesn't change ? |
| +0f | 00 | Doesn't change ? |
| +10 | 20 | Doesn't change ? |
| +11 | 00 - ff | unknown |
Found on raph100, used in experimental navipad driver (Jobo)
| byte | function | values |
| 00 | touched areas | 0x11 center, left,0x44 ring, rightit seems that the higher nibble has its lowest bit high on a first touch? |
| 01 | left X | 0..0x43 left=zero |
| 02 | left Y | 0..0x43 top=zero |
| 03 | ring | 0..0x49 (bottom-leftzero, clockwisepositive)
|
| 04 | touch move release | guess: 0x00 steady touching, 0x84 moving, 0x82 = release
|
| 05 | right X | 0..0x43 left=zero |
| 06 | right Y | 0.0x43 top=zero |
| 07 | pressure/area on center | 0x10..~0x25, 0x00 = not |
| 08 | touched area on right | lower 8 bits, top 4 are in 0x09 0x00..0xFF |
| 09 | touched area l/r | high nibble is high nibble for right low for left |
| 0A | touched area on left | same as byte 0x08, but for left |
| 0B | ring | same as byte 0x03 |
| 0C | ring(-1) | so as to tell deltas |
| 0D | ring(-2) | ? |
| 0E | always 0x01 | |
| 0F | always 0x02 | |
| 10 | always 0x36 | |
| 11 | ?? | I don't know |
| 12 | always 0x12 |
