Skip to content

Latest commit

 

History

History
48 lines (37 loc) · 1.19 KB

README.md

File metadata and controls

48 lines (37 loc) · 1.19 KB

GT911

GT911 Touch library for Arduino

This is experimental, only tested with an ESP32 & DFRobot DFR0669 TFT Touchscreen

Based off these repos

I needed a GT911 library to use with a DFRobot TFT LCD Capacitive Touchscreen but as the RST pin is shared with SPI I couldn't use the existing libs.

It's been changed for my own needs so it can be used with polling instead of an interrupt. The GT911 config can be read and written too but make sure you check the docs for values;

Polling example

#include <Arduino.h>
#include <GT911.h>

GT911 ts = GT911();

void setup() {
  Serial.begin(115200);
  ts.begin();
}

void loop() {
  uint8_t touches = ts.touched(GT911_MODE_POLLING);

  if (touches) {
    GTPoint* tp = ts.getPoints();
    for (uint8_t  i = 0; i < touches; i++) {
      Serial.printf("#%d  %d,%d s:%d\n", tp[i].trackId, tp[i].x, tp[i].y, tp[i].area);
    }
  }
}

Config update example

void setup() {
  GTConfig *cfg = ts.readConfig();
  cfg->hSpace = (5 | (5 << 4));
  cfg->vSpace = (5 | (5 << 4));
  ts.writeConfig();
}