This is an old revision of the document!
−Table of Contents
PMIC
The gamepad's power management IC is a Texas Instruments SN1010007. So far no datasheet has been found.
It is connected to the UIC's I2C bus, where its device ID is 0x48.
Pinout
Pin | Desc. |
---|---|
1 | ?? |
2 | ?? |
3 | ?? |
4 | ?? |
5 | Battery pin 1 (red) |
6 | Battery pin 1 (red) |
7 | ?? |
8 | ?? |
9 | ?? |
10 | 4.75V input from AC adapter |
11 | Battery pin 2 (gray) (through 510ohm resistor) |
12 | ?? |
13 | ?? |
14 | ?? |
15 | ?? |
16 | ?? |
17 | Ground |
18 | ?? |
19 | ?? |
20 | ?? |
21 | ?? |
22 | ?? |
23 | ?? |
24 | ?? |
25 | ?? |
26 | ?? (to UIC pin 19) |
27 | UIC I2C - SDA |
28 | UIC I2C - SCL |
29 | ?? |
30 | Ground |
31 | ?? |
32 | ?? |
33 | ?? |
34 | ?? |
35 | ?? |
36 | ?? |
37 | ?? |
38 | ?? |
39 | ?? |
40 | ?? (to UIC pin 17, with 100k pull-up resistor) |
41 | ?? |
42 | Ground |
43 | Battery pin 4 (white) |
44 | ?? |
45 | ?? |
46 | ?? |
47 | ?? |
48 | ?? |
The gamepad is rated for 4.75V 1.6A. In practice, the PMIC accepts an input voltage of up to 5.2V (as often delivered by third-party AC adapters) without problem. This makes USB chargers a viable substitute for the proprietary AC adapter, as long as they can deliver enough current.
I2C communications
Communications to the PMIC always start by writing one byte, which is likely a register ID/address. Then further bytes are written or read in order to access the registers themselves.
The UIC firmware has code for accessing the following registers:
Register | Description |
---|---|
0x01 | Charge status – bit6=AC, bit7=USB (1=connected) |
0x02 | ?? |
0x03 | ?? |
0x04 | ?? |
0x06 | ?? |
0x07 | ?? |
0x08 | ?? – seemingly accessed after 0x07 |
0x09 | Battery level LSB (format/bounds unknown) |
0x0A | Battery level MSB |
0x0D | ?? |
0x0F | ?? |
0x18 | Backlight related – 0x90=on 0x10=off |
0x19 | Backlight related – maybe timeout/delay? |
Which battery level is read out of registers 0x09/0x0A seems to depend on settings in register 0x07.