Hi all,
I have an Adafruit Metro (Uno R3) and an Adafruit 2.8" capacitive LCD touchscreen. The graphical controller is a ILI9341 using SPI and the touchscreen controller is a FT6206.
Touchscreen link:
Arduino link:
When I plug the touchscreen directly into the Arduino as a shield, the touchscreen works totally fine with my application. I can view graphics and it reads my touches perfectly well.
However, I want to be able to physically separate the touchscreen from the Arduino using wires. This is for packaging and electrical purposes (adding an RTC onto the I2C bus).
Because I am overconfident, I soldered wires directly to the touchscreen shield. I plugged the wires into the Arduino and everything except touch works fine. The screen lights up, displays graphics, but the touch does not work.
I thought I did something wrong, so I did the same to a second (identical) touchscreen to a second (identical) Arduino. Same issue.
I verified my I2C connections with a multimeter (measuring an exposed part of the base of the pins on the touchscreen shield to the backside of the via on the Arduino) and I read 0 ohms. I tried measuring across the two wires and I got open wire (~12MOhm). I think I am fairly confident this isn't necessarily exclusively an issue with the wiring being incorrect. I think something is either missing or I am missing a core concept.
Here is the relevant part of my code where I define the touchscreen pins and start the touch and video controllers:
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
Adafruit_FT6206 ts = Adafruit_FT6206();
#define TFT_CS 10
#define TFT_DC 9
void setup() {
tft.begin();
ts.begin();
}
That said, I don't think it's a code issue, as the touchscreen module works fine plugged directly into the Arduino as a shield. Something seems to be going wrong with I2C comms in the conversion between the touchscreen being used as a shield and the touchscreen being connected with wires to the Arduino.
The SPI is using pins 11-13, FYI. SPI handles video, so again, this should not be a problem, but I am including this here for completeness. I should also say I am using single conductor 20AWG wire from Adafruit
Can anyone point me to what may be going wrong? I am at the end of my rope here.
Thanks!
