iam trying to read touch events by microcotroller from android mobile phones touch panels.
but the problem is i have no deep knowlege about lowlevel languages and hardware .iam a python developer.
1 . is there any projects that already successfully read capactitve touchscreen touch events from android mobilephones .
2. what kind of electrical flow is happening between touch panel and controller ic.
4. please write all information you know about it. because it will help me in this research
I'm inclined to believe (but not certain) that by the time you get to something with the complexity of an Android touch-screen, you're no longer dealing with bare capacitive sensing, but rather with interface to some sort of higher-level controller on the display controller that is intimately attached to the screen.
I don't understand the workings of a full high-res x/y touch screen, but I'm pretty sure it requires more pins than are present on a tiny85.
There are microcontrollers that run python, and there's a library for talking to (at least some) touch-screens:
But Interfacing to an android phone touch-screen may involve running some code on the android that translates touch-screen events into some easier-to-read message (serial? BT? Internet?) on your Arduino.
// ESP32 Touch Test reading Microchip_12_way_keypad
// from https://lastminuteengineers.com/esp32-basics-capacitive-touch-pins/
#define threshold 20 // test for a keypress column
#define thresholdROW 17 // test for a keypress row
void setup() {
Serial.begin(115200);
delay(1000); // give me time to bring up serial monitor
Serial.println("ESP32 Touch Test \n"
"Microchip_Microchip_12_way_keypad");
}
void loop() {
Serial.print("Touch: ");
Serial.print(touchRead(4)); // get touch value on GPIO 4
Serial.print(" ");
Serial.print(touchRead(15)); // get touch value on GPIO 15
Serial.print(" ");
Serial.print(touchRead(32)); // get touch value on GPIO 32
Serial.print(" ");
Serial.print(touchRead(33));
Serial.print(" ");
Serial.print(touchRead(27));
Serial.print(" ");
Serial.print(touchRead(14));
Serial.print(" ");
Serial.print(touchRead(12));
Serial.print(" ");
//Serial.print(touchRead(13));
//Serial.print(" ");
int column=-100, row=0, key=0;
if (touchRead(4) < threshold) column=0;
if (touchRead(15) < threshold) column=1;
if (touchRead(32) < threshold) column=2;
if (touchRead(33) < threshold) column=3;
if (touchRead(27) < thresholdROW) row=2;
if (touchRead(14) < thresholdROW) row=1;
if (touchRead(12) < thresholdROW) row=0;
//if (touchRead(13) < threshold) row=3;
Serial.printf(" column %d row %d", column, row);
key =column + row*4;
if(key>=0)Serial.printf(" key %d\n", key);
else Serial.println(" no key pressed");
delay(1000);
}
some test results showing the sensor readings and the key decoding
thank,you guys. if my dev board not enough then i am willing to buy another .
hi horace . thank you for the code. but i have no idea from where i start.
i have a touchpanel in my phone and i want to detect touch from it.
there is many wires coming out from touchpanel. how can i identify the wires.
i mean which is input line which is output.etc.