martinberlin / lv_port_esp32-epaper

LVGL ported to ESP32 including various display and touchpad drivers. Forked to support parallel epaper displays (using EPDiy as a component) Supports also L58 touch controller used in Lilygo EPD47
https://www.tindie.com/search/?q=Kindle
MIT License
47 stars 11 forks source link

Adding touch driver Cypress TMA445 #13

Closed martinberlin closed 5 months ago

martinberlin commented 6 months ago

Describe the issue

Kindle paperwhite 1 has TMA445 touch panel and it's a great candidate to make a board and possible a product to support LVGL on fast eink displays. However there is no embedded touch driver.

Existing Code ?

No Arduino library or similar. We 've just got to know that Tesla uses TMA touch for some of it's models so there is an existing Linux driver: https://github.com/BOOKEEN/kernel-linux-3.0/blob/master/drivers/input/touchscreen/cyttsp4/

Not easy to read a Linux driver though, unless you know what you are doing, but at least there are some registers and constants that could work.

Powering it on epdiy v7 it appears listed in a I2C scan as expected:

Calling app_main()
I (324) i2c test: SCL_GPIO = 40
I (334) i2c test: SDA_GPIO = 39
I2C scan: 
Found device at: 0x20 PCA9535
Found device at: 0x24 TT21100 or some Touch