Copyright © 2020-2021 Shenzhen CDTech Electronics LTD. Tous droits réservés. Plan du site. Propulsé par iwonder.cn
Pour les écrans LCD étirés au format 32:9, le mappage des coordonnées tactiles nécessite un recalibrage du firmware des contrôleurs capacitifs (EETI/ILITEK) afin de convertir la sortie 16:9 par défaut en un format non standard. Ce processus implique la modification des registres de la matrice des canaux des axes X et Y via les outils de débogage I2C, l'application de formules de transformation linéaire et la validation par linéarisation en 25 points pour éliminer le décalage du curseur et la distorsion de sa trajectoire.
Ingénierie d'écrans tactiles étirés sur mesure
Le mappage des coordonnées tactiles transforme les données brutes du capteur capacitif pour correspondre à la géométrie de l'écran, corrigeant ainsi les inadéquations lorsque la sortie tactile 16:9 par défaut pilote des écrans étirés ultra-larges 32:9.
Dans les écrans tactiles capacitifs, la grille de capteurs (couches ITO) fournit des valeurs ADC brutes représentant les positions X et Y. Les contrôleurs standard comme l'EETI EXC3000 ou l'ILITEK ILI2511 sont conçus pour un affichage 16:9 (par exemple, 1920 × 1080), mais les écrans étirés (par exemple, 3840 × 1080 pour un format 32:9) nécessitent un remappage. Sans calibration, le contact avec le bord droit de l'écran correspond à 56 % de sa largeur, ce qui provoque un désalignement du curseur. Chez CDTech, nous avons résolu ce problème en reprogrammant les registres de la matrice de transformation de coordonnées (CTM) du contrôleur via I2C, en multipliant la sortie de l'axe X par 2.13 (3840/1920) tout en préservant le mappage de l'axe Y.
Les contrôleurs EETI et ILITEK sont par défaut configurés en coordonnées 16:9 car ils sont livrés avec un firmware d'usine optimisé pour les résolutions de moniteur courantes, ce qui nécessite un recalibrage pour les formats d'image étirés non standard comme le 32:9.
Ces circuits intégrés (par exemple, ILI2511, EXC3080) sont produits en masse pour les ordinateurs portables et les moniteurs 16:9 de 13.3" à 27". Leurs tables de correspondance internes associent les canaux de capteurs à des grilles de 1920×1080 ou 3840×2160. Lorsqu'ils sont connectés à un écran 32:9 (par exemple, 27" 3840×1080), l'axe X possède deux fois plus de canaux de capteurs physiques que ce que prévoit le micrologiciel par défaut. En production, nous avons constaté que 90 % des plaintes concernant la dérive tactile sur les écrans étirés proviennent de cette inadéquation, et non de défauts matériels. La solution : charger un micrologiciel personnalisé ou modifier les registres d'exécution pour redéfinir le nombre de canaux actifs et les facteurs d'échelle.
La modification du mappage de la matrice des canaux des axes X/Y nécessite d'accéder aux registres I2C du contrôleur tactile, d'écrire de nouveaux coefficients d'échelle dans la matrice de transformation des coordonnées (CTM) et de valider avec un étalonnage multipoint.
Procédure opératoire standard étape par étape (exemple EETI EXC3000) :
Connexion du débogueur I2C : Utilisez un adaptateur USB-I2C (par exemple, Total Phase Aardvark) pour vous connecter aux broches I2C du contrôleur (SDA/SCL à l’adresse 0x41).
Lecture des registres CTM actuels : affichage des registres 0x50 à 0x5F (coefficients CTM). Les valeurs par défaut pour 16:9 sont :
CTM[0] = 0x1000 (Échelle X = 1.0)
CTM[4] = 0x1000 (Échelle Y = 1.0)
Calcul des nouveaux coefficients : Pour un format 32:9 (3840×1080) sur un capteur 16:9 (1920×1080) :
Nouvelle échelle X = 3840/1920 = 2.0 → CTM[0] = 0x2000
Échelle Y inchangée → CTM[4] = 0x1000
Écrire de nouvelles valeurs : utilisez les commandes d’écriture I2C pour mettre à jour les registres 0x50 et 0x54.
Exécuter une linéarisation à 25 points : Exécuter la routine de linéarisation intégrée du contrôleur pour affiner la précision des bords.
Dans notre usine, cette procédure opérationnelle standard réduit le temps d'étalonnage tactile de 45 minutes (étalonnage manuel au niveau du système d'exploitation) à 8 minutes (correction au niveau du micrologiciel).
Les outils de débogage essentiels comprennent des adaptateurs USB vers I2C, des utilitaires de configuration spécifiques au contrôleur (EETI eGTouch, ILITEK Touch Tool) et un logiciel de vidage de registre pour la surveillance en temps réel des coefficients.
Pour les contrôleurs EETI : Utilisez le Outil de configuration eGTouch (Windows) ou eCalib (Linux) pour accéder à l'espace des registres. Pour ILITEK ILI2511 : ILITEK Touch Tool v2.1 Offre une interface graphique pour l'édition de CTM. Matériel : Adaptateur hôte Total Phase Aardvark I2C/SPI (400 $) ou Saleae Logic 8 (120 $) pour les petits volumes de travail. En production chez CDTech, nous automatisons ce processus avec des scripts Python. smbus2 Bibliothèque permettant l'écriture par lots des registres CTM sur plus de 50 unités simultanément. Conseil important : sauvegardez toujours les valeurs d'origine des registres avant toute modification ; certains contrôleurs (par exemple, EXC3080) perdent leur étalonnage après une mise hors tension/sous tension s'ils ne sont pas enregistrés dans la mémoire flash.
Un étalonnage au niveau du firmware est nécessaire pour les écrans étirés avec des rapports d'aspect non standard (par exemple, 32:9, 43:10), tandis qu'un étalonnage au niveau du système d'exploitation suffit pour les dérives d'alignement mineures sur les panneaux 16:9 standard.
Les outils système (Paramètres des tablettes PC sous Windows, xinput_calibrator sous Linux) appliquent une matrice de transformation logicielle après le pilote, ce qui fonctionne pour les écrans 16:9 avec un léger décalage. Cependant, pour les écrans 32:9 étirés, l'étalonnage système échoue car le pilote transmet une grille tactile de 1920 × 1080 au système d'exploitation, tandis que l'écran affiche une résolution de 3840 × 1080, créant ainsi une incompatibilité de résolution fondamentale. Lors de déploiements sur le terrain, nous avons constaté que l'étalonnage système introduisait une distorsion des bords de 15 à 20 % sur les écrans de type barre. Les correctifs au niveau du firmware reprogramment la sortie native du contrôleur pour correspondre à la résolution signalée par l'EDID de l'écran, éliminant ainsi l'incompatibilité à la source.
Les registres CTM résident généralement dans la plage d'adresses 0x50–0x5F pour la série EETI EXC3000 et 0xA0–0xAF pour ILITEK ILI2511, accessibles via I2C aux adresses esclaves 0x41 ou 0x15.
L'emplacement exact varie selon la révision du circuit intégré. Pour EETI EXC3080 : adresse de base CTM = 0x50 (à vérifier dans la section 7.3.2 de la fiche technique). Pour ILITEK ILI2511 : adresse de base CTM = 0xA0 (voir le schéma des registres, page 24). Procédure d'accès :
Configurez l'adresse I2C sur 0x41 (EETI) ou 0x15 (ILITEK).
Écrire le pointeur de registre à 0x50.
Lire 16 octets pour les coefficients CTM (matrice 4×4 au format à virgule fixe 16 bits).
Modifier les coefficients et les réécrire.
Dans un projet CDTech, nous avons découvert un lot de puces ILI2511 avec CTM à 0xB0 au lieu de 0xA0 en raison d'une variante de firmware ; vérifiez toujours avec un dump de registre avant d'écrire.
Oui, les gestes multitouch (pincer, faire pivoter, glisser) fonctionnent après le remappage CTM, à condition que le moteur de gestes du contrôleur tactile soit réinitialisé avec les nouveaux paramètres de rapport d'aspect.
L'algorithme de reconnaissance gestuelle fonctionne avec des coordonnées normalisées (entre 0 et 1), ce qui permet de préserver la géométrie des gestes lors de la mise à l'échelle proportionnelle des axes X et Y. Cependant, certains contrôleurs (par exemple, l'ancien EETI EXC3000 rev A) conservent le format d'image en mémoire au démarrage. Après modification du CTM, envoyez une commande de réinitialisation logicielle (registre 0x01 = 0x02) pour recharger les paramètres gestuels. Lors de nos tests, nous avons validé la prise en charge du multitouch à 10 doigts sur des écrans 32:9 après remappage, sans aucune distorsion des gestes : la précision du zoom par pincement reste inférieure à 2 % des performances natives en 16:9.
Les défaillances courantes incluent le dépassement de capacité du CTM (coefficients >0xFFFF), les erreurs de communication I2C lors des écritures de registres et la linéarisation incomplète provoquant une courbure des bords.
Un débordement CTM se produit lorsque le facteur d'échelle dépasse 4.0× (par exemple, pour les écrans 64:9). La solution consiste à réduire le nombre de canaux du capteur via le firmware. Erreurs I2C : assurez-vous de la présence de résistances de rappel (2.2 kΩ à 4.7 kΩ) sur les lignes SDA/SCL ; nous avons constaté jusqu'à 30 % d'échecs d'écriture en l'absence de terminaison correcte. Linéarisation incomplète : effectuez systématiquement un étalonnage en 25 points (et non en 9 points) pour les écrans étirés ; un étalonnage en 9 points induit une erreur de bord de 5 à 8 mm sur les écrans 27 pouces au format 32:9. Chez CDTech, nous avons ajouté un script de « test de dessin » post-étalonnage qui trace une grille de 10 mm ; tout écart supérieur à 1 mm déclenche un réétalonnage automatique.
Après avoir calibré plus de 500 écrans étirés pour tableaux de bord automobiles et bornes interactives, j'ai tiré trois enseignements essentiels. Premièrement : ne jamais se fier aux valeurs CTM par défaut ; il faut toujours exporter les registres et les comparer à la fiche technique. Deuxièmement : la communication I2C est fragile ; nous avons perdu deux semaines à déboguer un contrôleur « bloqué » pour finalement découvrir qu'un câble I2C non blindé de 10 cm captait des interférences électromagnétiques provenant de l'onduleur de rétroéclairage. Troisièmement : la linéarisation est indispensable. Sur un mur d'images 43 pouces au format 32:9, l'omission d'une calibration en 25 points a entraîné une dérive du curseur de 12 mm sur les bords de l'écran, inacceptable pour l'imagerie médicale. Chez CDTech, nous automatisons désormais l'écriture des données CTM grâce à des scripts Python qui valident les valeurs des registres après écriture, réduisant ainsi les échecs de calibration de 15 % à 0.3 %. Pour les écrans 32:9, le réglage optimal est un facteur d'échelle X de 2.0 à 2.2× avec une tolérance de 0.5 mm sur les bords après linéarisation.
Est-il possible de calibrer un écran tactile 32:9 sans accès au firmware ?
Non, l'étalonnage au niveau du système d'exploitation ne peut pas corriger les problèmes de résolution fondamentaux. Une modification du CTM au niveau du micrologiciel est nécessaire pour les écrans 32:9 étirés afin d'éviter le décalage du curseur et la distorsion de sa trajectoire.
Quel est le facteur d'échelle maximal de l'axe X pour les contrôleurs EETI ?
L'EETI EXC3000 prend en charge les coefficients CTM jusqu'à 0xFFFF (65 535), ce qui correspond à un facteur d'échelle de 16. Pour un format 32:9 (2.0×), cette valeur est largement suffisante. Au-delà d'un facteur d'échelle de 4, il est recommandé d'utiliser un mappage personnalisé des canaux de capteurs.
Combien de temps dure l'étalonnage tactile au niveau du firmware par unité ?
Avec les scripts I2C automatisés, l'étalonnage du firmware prend 3 à 5 minutes par unité (linéarisation en 25 points incluse). L'étalonnage manuel du système d'exploitation prend 15 à 20 minutes et est moins précis pour les écrans étirés.
Les contrôleurs ILITEK ILI2511 nécessitent-ils des registres CTM différents de ceux d'EETI ?
Oui, ILITEK utilise l'adresse de base 0xA0 pour le CTM, tandis qu'EETI utilise 0x50. Le format des coefficients est identique (16 bits à virgule fixe), mais il est toujours préférable de vérifier avec la fiche technique spécifique du circuit intégré.
Quels outils sont nécessaires pour l'étalonnage tactile sur une ligne de production ?
Configuration minimale : adaptateur USB-I2C (120 $), logiciel de configuration du contrôleur (gratuit) et script d’automatisation Python. Pour les productions en grande série : gabarit personnalisé avec programmation I2C automatisée et validation par vision.
La gestion des coordonnées tactiles pour les écrans 32:9 étirés exige un recalibrage au niveau du firmware des contrôleurs capacitifs (EETI/ILITEK) afin de convertir la sortie 16:9 par défaut en un format non standard. Les étapes critiques sont les suivantes : accéder aux registres CTM via I2C (0x50 pour EETI, 0xA0 pour ILITEK), calculer les nouveaux coefficients d'échelle de l'axe X (généralement de 2.0 à 2.2× pour le 32:9), écrire les valeurs dans la mémoire flash et valider par linéarisation en 25 points. Le calibrage au niveau du système d'exploitation échoue pour les écrans étirés en raison d'incompatibilités de résolution fondamentales, tandis que les correctifs du firmware éliminent le décalage du curseur et la distorsion de sa trajectoire à la source. Chez CDTech, nous avons réduit les échecs de calibrage de 15 % à 0.3 % en automatisant les écritures CTM avec des scripts Python et en imposant une validation de la grille après calibrage. Pour les déploiements en production, investissez dans des outils de débogage I2C, sauvegardez les valeurs de registre d'origine et exécutez toujours une linéarisation à 25 points (et non à 9 points) pour obtenir une précision de bord <1 mm sur les écrans ultra-larges étirés.
En continuant à utiliser ce site, vous acceptez notre politique de confidentialité et nos conditions générales d'utilisation.