Der FT6336 auf einen Blick
Eigenschaft | Wert | Quelle |
|---|---|---|
Touch-Punkte | 2, oder 1 plus Gesten | FT6336G-Datenblatt |
I2C-Adresse (7-Bit) | | Adafruit- und Espressif-Treiber |
I2C SCL | 10 bis 400 kHz | FT6336G-Datenblatt |
Report-Rate | Bis zu 100 Hz | FT6336G-Datenblatt |
Betriebsspannung | 2,8 V bis 3,6 V | FT6336G-Datenblatt |
IOVCC | Unabhängig, 1,8 V bis 3,6 V | FT6336G-Datenblatt |
Betriebstemperatur | −40 °C bis 85 °C | FT6336G-Datenblatt |
Die Feature-Liste des Datenblatts nennt 2,8 V bis 3,6 V, während die DC-Tabelle VDDA und VDD3 mit 2,8 V bis 3,3 V angibt. Dimensionieren Sie auf den engeren Bereich, sofern Ihr Modullieferant nichts anderes angibt.
Welchen FT6336 haben Sie?
Baustein | Kanäle | Gehäuse | Panelgröße |
|---|---|---|---|
FT6336G | 31 | QFN 5×5, 40 Pins | Bis zu 4,0″ |
FT6336DMB | 36 | QFN 6×6, 48 Pins | Bis zu 4,5″ |
Diese Angaben stammen aus zwei FocalTech-Datenblättern: dem FT6336G v1.0 und der FT6X36-Serie v0.3. Ein Datenblatt zum FT6336U haben wir nicht gefunden, daher stammen unsere Aussagen dazu aus dem Quellcode des Treibers.
Auslesen eines Touch-Punkts
Der FT63x6-Quellcode von ESPHome liest folgende Register:
Register | Inhalt |
|---|---|
| Gerätemodus (ESPHome schreibt |
| Anzahl der Touch-Punkte, untere 4 Bits |
| Event in Bits 7:6, obere X-Bits in Bits 3:0 |
| X unteres Byte |
| Touch-ID in Bits 7:4, obere Y-Bits in Bits 3:0 |
| Y unteres Byte |
| Touch-Gewicht |
| Touch-Schwelle |
| Abtastrate bei aktivem Touch (ESPHome schreibt |
| Chip-ID |
Der zweite Touch-Punkt nutzt denselben Aufbau, 6 Bytes höher, beginnend bei 0x09. Eine Touch-Anzahl von 0x00 oder 0xFF ignoriert ESPHome.
Reset- und Power-on-Timing
Aus dem FT6336G-Datenblatt:
- Reset-Impuls (Trst): mindestens 5 ms Low an RSTN.
- Nach dem Reset (Trsi): mindestens 300 ms, bis die Meldung von Touch-Punkten beginnt.
- Nach dem Einschalten (Tpon): mindestens 300 ms, bis die Meldung von Touch-Punkten beginnt.
- Vor dem Einschalten: RSTN auf Low halten. INT und die I2C-Leitungen sollten ebenfalls auf Low liegen.
- Neustart nach Stromausfall (Power Cycling): die Versorgungsspannung für mehr als 5 ms unter 0,3 V fallen lassen.
Hier unterscheiden sich die Treiber. Der edt-ft5x06-Treiber von Linux wartet nach dem Freigeben des Resets 300 ms, was zum Datenblatt passt. Die Reset-Routine von ESPHome hält den Reset 10 ms auf Low und wartet danach nicht. Der FT5x06-Treiber von Espressif hält den Reset 10 ms und wartet dann 10 ms.
Betriebsmodi und I2C
Das Datenblatt listet drei Modi auf:
- Active: Abtastung standardmäßig mit 60 Bildern pro Sekunde, vom Host änderbar.
- Monitor: Abtastung standardmäßig mit 25 Bildern pro Sekunde. Ein Touch schaltet zurück in Active. Laut Datenblatt ist in diesem Modus „die serielle Schnittstelle geschlossen“.
- Hibernation: Abschaltmodus, der einen Reset oder ein Wake-up-Signal vom Host benötigt.
Der Hinweis zum Monitor-Modus kann bei I2C-Scans an einem ungenutzten (idle) Panel relevant sein. Das haben wir nicht selbst gemessen, halten Sie es daher als mögliche Ursache im Blick: Berühren Sie das Panel, während Sie scannen.
Symptome und Lösungen
Symptom | Prüfung |
|---|---|
Nichts an | Bestätigen Sie, dass RSTN high ist, warten Sie 300 ms nach dem Reset und berühren Sie dann das Panel, während Sie scannen. Prüfen Sie anschließend SDA, SCL und die Pull-ups. |
ESPHome protokolliert "FT6336U touch driver failed to start" | ESPHome liest |
Library lehnt die Chip-ID ab | Die IDs unterscheiden sich je nach Teil: Adafruit listet |
Touch zu empfindlich oder nicht empfindlich genug | Register |
Ein dritter Finger wird nicht gemeldet | Das ist die Grenze des Chips: Datenblatt und Linux-Treiber geben beide 2 Punkte an. Für mehr Punkte siehe GT911. |
Treiberunterstützung
- ESPHome: verwenden Sie die Plattform
ft63x6mit optionalenreset_pinundinterrupt_pin. I2C muss konfiguriert sein. Die Dokumentation nennt das Board WT32-SC01, und der Quellcode protokolliert FT6336U. - Linux: es gibt keinen Eintrag für den FT6336. Am nächsten liegt
focaltech,ft6236im edt-ft5x06-Treiber, mit 2 Punkten und den erforderlichen Propertiescompatible,regundinterrupts. Wir haben dies nicht mit einem FT6336 getestet. - ESP-IDF: der Treiber
esp_lcd_touch_ft5x06verwendet standardmäßig die Adresse0x38und 100 kHz. Sein Quellcode deckt bis zu 5 Punkte ab und nennt den FT6336 nicht, prüfen Sie also Ihr Bauteil, bevor Sie sich darauf verlassen. - Arduino: Adafruits FT6206-Library definiert die Chip-ID des FT6336U und verwendet standardmäßig
0x38.
Verwandte Controller
Für Ein-Finger-Touch bei runden Displays siehe CST816S. Für größere Panels siehe GT911. Das M5Stack Core2 ist ein Board, das einen FT6336U verwendet.
Leitfäden & Vergleiche
FT6336: Fehlersuche & FAQ
Wie lautet die I2C-Adresse des FT6336?
Adafruit- und Espressif-Treiber verwenden 0x38 (7-bit), und Linux nutzt denselben Wert in seinem Binding-Beispiel für die FT5x06-Familie. Das FT6336G-Datenblatt, das wir gelesen haben, gibt die Adresse nicht an, bestätigen Sie sie also mit einem I2C-Scan auf Ihrem Board.
Warum reagiert mein FT6336 nicht auf I2C?
Prüfen Sie, dass RSTN high ist, und warten Sie nach dem Reset mindestens 300 ms: das ist das Minimum laut Datenblatt, bevor er Punkte meldet. Das Datenblatt sagt außerdem, dass die serielle Schnittstelle im Monitor-Modus geschlossen ist, berühren Sie also das Panel und scannen Sie erneut, bevor Sie die Verdrahtung verdächtigen.
Was ist der Unterschied zwischen FT6336, FT6336G und FT6336U?
FocalTechs Datenblätter listen den FT6336G mit 31 Kanälen für Panels bis 4.0″ auf und den FT6336DMB mit 36 Kanälen für Panels bis 4.5″. Ein Datenblatt für den FT6336U haben wir nicht gefunden. Adafruits Library weist ihm die Chip-ID 0x64 zu, dieselbe wie beim FT6236U.
Quellen
- FocalTech: FT6336G-Datenblatt v1.0
- FocalTech: FT6X36-Seriendatenblatt v0.3
- ESPHome: FT63X6-Touchscreen
- ESPHome: ft63x6.cpp-Quellcode
- Linux-Kernel: drivers/input/touchscreen/edt-ft5x06.c
- Linux-Kernel: edt-ft5x06 Device-Tree-Binding
- Espressif ESP-BSP: esp_lcd_touch_ft5x06 Treiber
- Adafruit: FT6206-Bibliotheksheader