Reverse engineering PS4 Touchpad Part 2 : mXT112S, Linux and STM8L

Finally. Atmel Maxtouch mXT112S with STM8L !

With a bit of experimenting with the code. I was able to interface with mXT112S. But for some weird reason. The reserved report ID 0xFF (for Invalid message report) was used as first finger report of T9 (Multi-touch).

I did some modification to the Linux driver code to make the mXT112S works (by messing up the IRQ number). I was able to get the touch report :

HID report !

And this is I2C captured data during the touch.

I messed up IRQ stuffs and make the code kind of polling-ly read data from the mXT112S.

After I studied the report packet of mXT112S. I then “correct” the STM8L code. And finally it works !! :


Reverse engineer this thing doesn’t take a lot of afford as the Synaptics S3501, but this thing is surely take quite a while to make the software works. Since I got this working. I planned to couple this thing up with my upcoming iCE40 FPGA board (Named iCEStamp1K) to test out the SB_I2C and do some more Finite state machine practicing. Until then, please stay tuned!


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s