SiS95XX series TOUCH DATA FORMAT
SiS95XX series

Power On/Reset Sequence

Figure 2-2 Power on rising time
Figure 2-3 Reset pulse width
Figure 2-4 Power On Sequence
DescriptionMinMaxUnit
VDD power on rising time from 0.1*VDD to 0.9*VDD-1ms
External reset pulse width5-ms
From VDD stable at 3.3V to RESET# reach at 2V5-ms
Time of starting to report point after Reset# reach at 3.3V100-
ms
### I2C AC Waveform
Figure 2-5 AC Waveform
Table 2-4
SymbolParameterSCL=100KHzSCL=400KHzUnit
MinMaxMinMax
Tw(SCLH)SCL clock high time4.71.3us
Tw(SCLL)SCL clock low time4.00.6
Tsu(SDA)SDA setup time250100ns
Th(SDA)SDA data hold time00900
Tr(SDA)
Tr(SCL)
SDA&SCL rise time1000
300
Tf(SDA)
Tf(SCL)
SDA&SCLA fall time300300
Th(STA)Start condition hold time4.00.6us
Tsu(STA)Repeated Start condition setup time4.79.6
Tsu(STO)Stop condition setup time4.00.6
Tw(STO:STA)Stop to Start condition time(bus free)4.71.3

I2C Touch Package Format

HID over I2C Touch Package Format

The HID over I2C touch packet format is fixed length which depends on Report ID. While the touch event is happening, each touch packet will have maximum 5 touch data. If actual touch data is less than 5, the rest of touch data should be set zero in each touch packet for keeping the fixed length.
There is no Cyclic Reduntancy Check(CRC) in the HID over I2C touch packet format.
The 1st packet, sending touch data from touch data0 to touch data4 with total touch count number in this touch package. The 2nd package, sending touch data from touch data5 to touch data9 with touch count equal to 0.
1st packet

2 Bytes1 Byte6-11 Bytes6-11 Bytes1 Byte2 Bytes
LengthReport IDTouch Data()Touch Data4Touch CNTScan Time
2nd packet
2 Bytes1 Byte6-11 Bytes6-11 Bytes1 Byte2 Bytes
LengthReport IDTouch Data5Touch Data9Touch CNT=0Scan Time
#### Touch Data Format **General I2C Touch Packet Format**

Life: Report touch event Death: Don’t report touch event #### Customized Touch Data Format **Customized I2C Touch Packet Format**

Customer application can get Palm or Eraser data format while the byte0 status is 0x1 and can be set it as Palm/Eraser function if needed by the application.

USB Touch Protocol

SiS95XX series is using USB standard control flow such as device enumeration and configuration. Interrupt type is used for touch data format. Each HID transaction frame transfers one HID packet data.
Host will use the report descripter information of USB HID enumeration and read the touch data by polling.


### USB Touch Packet Format The default USB touch packet format is report ID 0x10. One USB HID packet is sending 64 bytes data with maximum 10 touch datas. If there are more than 10 touch datas, it will be reported by multi touch packets. **USB HID package**
1 Bytes6 Bytes...6 Bytes1 Bytes2 Bytes
Report IDTouch Data0...Touch DataNTouch CNTScan Time
#### Touch Data format General USB Touch Packet Format

Life: Report touch event Death: Don’t report touch event #### Customized Touch Data Format One touch package is splitted to 2 packets if there are 10 touch datas. The 1st packet, sending touch data from touch data0 to touch data4 with total touch count number in this touch package. The 2nd packet, sending touch data from touch data5 to touch data9 with touch count equal to 0. The touch packet format is fixed length which depends on Report ID. While the touch event is happening, each touch packet will have maximum 5 touch data. If actual touch data is less than 5, the rest of touch data should be set 0xFF in each touch packet for keeping the fixed length. You can refer to Report ID Definition and data format table in next section. Below is the example of touch packet format and touch data with Width, Height and Pressure. **USB HID Packet Format**

Customer application can get Palm or Eraser data format while the byte0 status is 0x1 and can be set it as Palm/Eraser function if needed by the application.

I2C Touch Protocol

Each I2C transaction transfers one I2C package data. The INT pin is low level trigger. Touch device controller will pulls INT pin low until all data was stored in controller buffer or all controller buffer data was received by host.

Figure 2-1 I2C Touch Protocol

Each touch packet is maximum 64 bytes. Normally, there are 2 packets in one touch package. Host needs to read the package for input report retrieval. Each touch packet contains 2 bytes”Length” and maximum 62 bytes data payload. The value of “Length” is calculated by 2 bytes for “Length” field and N bytes for valid input data in the payload.

SAddressRAck
Length
-LSB
AckLength
-MSB
AckDATAAck.....Data
Nack
P
S: Start Address: bit7~bit1, touch device slave address (default 0x5C) R: bit0, Host Read Length: byte number of all valid input data including length field, touch data, CNT, scan time and CRC DATA: input data P: Stop ### I2C I/O Pin Definition
Pin NumberPin NamePin AttributeDescription
1VDDPWR3.3V
2I2C_CLKIn/OutI2C Clock
3I2C_DAIn/OutI2C Data
4INTOutInterrupt Pin
5GNDPWRGround
6GNDPWRGround

I2C ACPI setting

Table 2-1
VendorSiS
Slave Address0x5c(7-bits addressing, programmable)
Clock rate@400 kHz (fast mode)
Interrupt modeDefault active low, level trigger
_CIDPNP0C50
_DSM3CDFF6F7-4267-4555-AD05-B30A3D8938DE
HID Descriptor address0x0000

Touch Data Format Table

Report ID Definition

Bit (0 ~ 3)Main class for Report IDBit (4 ~ 7)Extend class for Data Format
valuebinaryDescriptionvaluebinaryDescription
0x10001General Touch Data0x00000Touch
0x40100Function Key0x10001Touch + Area(Width, Height)
0x40100Touch + Pressure
0x50101Touch+ Pressure + Area(Width, Height)
0x81000Touch + Scan time
0x91001Touch + Area (Width, Height) + Scan time
0xc1100Touch + Pressure + Scan time
0xd1101Touch+ Pressure + Area (Width, Height) + Scan time
- Report ID for communicating with AP tool is: 0x21, 0x25, 0x29, 0x2d. ### USB Touch Data Format Table
Report IDLength
0x2164 * 1
0x2564 * 5
0x2964 * 9
0x2d64 * 13
### USB Touch Data Format Table
B0B1B2B3B4B5B6B7B8B9B10B11B12B13B14B15B16B17......Bxx...............B63
0x240x000x81S1ID1X1X1Y1Y1S2ID2X2X2Y2Y2.....................Y5CntTimeTime
0x240x000x81S6ID6X6X6Y6Y6S7ID7X7X7Y7Y7.....................Y10CntTimeTime
0x380x000x91S1ID1X1X1Y1Y1W1W1H1H1S2ID2X2X2Y2Y2W2W2...H5
CntTimeTime
0x380x000x91S6ID6X6X6Y6Y6W6W6H6H6S7ID7X7X7Y7Y7W7W7...H10CntTimeTime
0x290x000xc1S1ID1X1X1Y1Y1P1S2ID2X2X2Y2Y2P2..................P5CntTimeTime
0x290x000xc1S6ID6X6X6Y6Y6P6S7ID7X7X7Y7Y7P7..................P10CntTimeTime
0x3D0x000xd1S1ID1X1X1Y1Y1P1W1W1H1H1S2ID2X2X2Y2Y2P2...H5CntTimeTime
0x3D0x000xd1S6ID6X6X6Y6Y6P6W6W6H6H6S7ID7X7X7
Y7Y7P7...H10CntTimeTime
0x240x000x04S1ID1X1X1Y1Y1S2ID2X2X2Y2Y2..................Y5CntFKFK
0x240x000x04S6ID6X6X6Y6Y6S7ID7X7X7Y7Y7..................Y10CntFKFK
0x380x000x14S1ID1X1X1Y1Y1W1W1H1H1S2ID2X2X2Y2Y2W2W2..H5CntFKFK
0x380x000x14S6ID6X6X6Y6Y6W6W6H6H6S7ID7X7X7Y7Y7W7W7...H10CntFKFK
0x290x000x44S1ID1X1X1Y1Y1P1S2ID2X2X2Y2Y2P2...............P5CntFKFK
0x290x000x44S6ID6X6X6Y6Y6P6S7ID7X7X7Y7Y7P7...............P10CntFKFK
0x3D0x000x54S1ID1X1X1Y1Y1P1W1W1H1H1ID2S2
X2X2
Y2Y2
P2...H5CntFKFK
0x3D0x000x54S6ID6X6X6Y6Y6P6W6W6H6H6ID7S7
X7X7
Y7Y7
P7...H10CntFKFK
0x260x000x84S1ID1X1X1Y1Y1S2ID2X2X2Y2Y2..................Y5CntTimeTimeFKFK
0x260x000x84S6ID6X6X6Y6Y6S7ID7X7X7Y7Y7..................Y10CntTimeTimeFKFK
0x3A0x000x94S1ID1X1X1Y1Y1W1W1H1H1S2ID2X2X2Y2Y2W2W2...H5CntTimeTimeFKFK
0x3A0x000x94S6ID6X6X6Y6Y6W6W6H6H6S7ID7X7X7Y7Y7W7W7...H10CntTimeTimeFKFK
0x2B0x000xc4S1ID1X1X1Y1Y1P1S2ID2X2X2Y2Y2P2............P5CntTimeTimeFKFK
0x2B0x000xc4S6ID6X6X6Y6Y6P6S7ID7X7X7Y7Y7P7............P10CntTimeTimeFKFK
0x3F0x000xd4S1ID1X1X1Y1Y1P1W1W1H1H1S2ID2X2X2
Y2Y2
P2...H5CntTimeTimeFKFK
0x3F0x000xd4S6ID6X6X6Y6Y6P6W6W6H6H6S7ID7X7X7
Y7Y7
P7...H10CntTimeTimeFKFK
### HID over I2C Touch Data Format Table
B0B1B2B3B4B5B6B7B8B9B10B11B12B13B14B15B16B17......Bxx...............B63
0x240x000x81S1ID1X1X1Y1Y1S2ID2X2X2Y2Y2...............
0x240x000x81S6ID6X6X6Y6Y6S7ID7X7X7Y7Y7...............
0x380x000x91S1ID1X1X1Y1Y1W1W1H1H1S2ID2X2X2Y2Y2W2W2...H5CntTimeTime
0x380x000x91S6ID6X6X6Y6Y6W6W6H6H6S7ID7X7X7Y7Y7W7W7...H10CntTimeTime
0x290x000xc1S1ID1X1X1Y1Y1P1S2ID2X2X2Y2Y2P2...............P5CntTimeTime
0x290x000xc1S6ID6X6X6Y6Y6P6S7ID7X7X7Y7Y7P7...............P10CntTimeTime
0x3D0x000xd1S1ID1X1X1Y1Y1P1W1W1H1H1S2ID2X2X2Y2Y2P2...H5CntTimeTime
0x3D0x000xd1S6ID6X6X6Y6Y6P6W6W6H6H6S7ID7X7X7Y7Y7P7...H10CntTimeTime
0x260x000x84S1ID1X1X1Y1Y1S2ID2X2X2Y2Y2.....................Y5CntTimeTimeFKFK
0x260x000x84S6ID6X6X6Y6Y6S7ID7X7X7Y7Y7.....................Y10CntTimeTimeFKFK
0x3A0x000x94S1ID1X1X1Y1Y1W1W1H1H1S2ID2X2X2Y2Y2W2W2...H5CntTimeTimeFKFK
0x3A0x000x94S6ID6X6X6Y6Y6W6W6H6H6S7ID7X7X7Y7Y7W7W7...H10CntTimeTimeFKFK
0x2B0x000xc4S1ID1X1X1Y1Y1P1S2ID2X2X2Y2Y2P2...............P5CntTimeTimeFKFK
0x2B0x000xc4S6ID6X6X6Y6Y6P6S7ID7X7X7Y7Y7P7...............P10CntTimeTimeFKFK
0x3F0x000xd4S1ID1X1X1Y1Y1P1W1W1H1H1S2ID2X2X2Y2Y2P2...H5CntTimeTimeFKFK
0x3F0x000xd4S6ID6X6X6Y6Y6P6W6W6H6H6S7ID7X7X7Y7Y7P7...H10CntTimeTimeFKFK