blog-pagina-01

Blog & Nieuws

Huis - Blog & Nieuws - Van demobord tot industrieel product: GT911 + LVGL-touchscreens stabiel maken voor continu gebruik

Van demobord tot industrieel product: GT911 + LVGL-touchscreens stabiel maken voor continu gebruik

2026-05-29 11:19

Inhoudslijst

     

     

    Van demobord tot industrieel product: GT911 + LVGL-touchscreens stabiel maken voor continu gebruik

     

    Een handleiding voor hardware- en firmware-engineering met betrekking tot EMC-verharding, thermisch beheer, burn-in-validatie, aanraakconsistentie en firmware-onderhoud op lange termijn voor HMI-displays van productiekwaliteit.

    Door het technische team van Kadi Display |  www.kadidisplay.com

     

    De kloof die producten kapotmaakt: demo versus productie.

     

    De meeste embedded display-projecten volgen hetzelfde patroon. Een engineer assembleert een ontwikkelingskit – een ESP32-S3 ontwikkelbord, een 7-inch IPS-paneel met GT911-touchscreen en de LVGL-grafische bibliotheek – en heeft binnen een week een demo die er werkelijk indrukwekkend uitziet. De gebruikersinterface is vloeiend, de touchrespons is snel en de kleuren zijn levendig. Het project gaat verder.

     

    Vervolgens belanden de eerste pre-productie-eenheden in de fabriek. Of de eerste pilot-implementatie vindt plaats in een voedselverwerkingsbedrijf. Of honderd exemplaren worden geleverd aan een wagenpark in Noord-Canada. Binnen enkele weken beginnen de storingen binnen te komen: ongewenste aanrakingen bij het opstarten, schermen die vastlopen na 72 uur continu gebruik, aanraakbediening die perfect werkt bij kamertemperatuur maar onbetrouwbaar wordt bij -10 °C. Niets van dit alles deed zich voor tijdens de ontwikkeling van de demo.

     

    Het verschil tussen een werkende demo en een betrouwbaar industrieel touchscreen dat 24/7 operationeel is, is geen softwarefout. Het is een samenloop van technische disciplines die bij de ontwikkeling van demo's simpelweg niet aan bod komen: EMC-immuniteit, thermisch beheer over het volledige werkingsbereik, component verouderingsgedrag, consistentie in aanraking over productiebatchesen Firmware-onderhoud zonder fysieke toegang.Elk van deze typen heeft specifieke faalmodi, specifieke oplossingen en specifieke validatietests. Deze handleiding behandelt ze alle vijf.

     

    GT911 LVGL-demobord versus mislukking in een industriële implementatieomgeving

     

    EMC-versterking — Interferentie stoppen voordat deze GT911 bereikt

     

    De GT911-aanraakcontroller werkt door extreem kleine capaciteitsveranderingen te meten – doorgaans in het bereik van 0,1–1 pF – over de aanraakelektrodematrix. Elke elektrische storing die in de aanraakfilm of de I²C-communicatielijnen terechtkomt, produceert ruis die de controller interpreteert als valse aanraakgebeurtenissen. In een laboratoriumomgeving met een via USB gevoed ontwikkelingsbord is dit zelden een probleem. In een industriële omgeving met motorsturingen, solenoïden, TL-verlichting en schakelende voedingen in de buurt, is dit echter de belangrijkste oorzaak van storingen.

     

    De vier interferentiekoppelingspaden

     

    Inzicht in waar storingen het systeem binnenkomen is een voorwaarde om ze te stoppen. Vier koppelingspaden zijn relevant voor industriële touchscreens op basis van de GT911:

     

    Pad Bron Effect op GT911 Primaire mitigatie
    Geleid (stroomleiding) VFD's, relaisschakeling, motorinschakelstroom DC-railruis komt in VDDIO terecht en destabiliseert de aanraakdrempelkalibratie. LC-filter op de VDDIO-rail; aparte voeding voor de touchcontroller, los van de hoofdlogica-rail.
    Uitgestraald (nabijveld H) Schakelregelaars, stroomkabels in de buurt van aanraakfolie Een magnetisch veld induceert stroom in de contactelektroden. Leid de kabels van de aanraakelektroden uit de buurt van de stroomvoorziening; gebruik afgeschermde flexibele printplaten (FPC).
    Capacitief (ESD) De beweging van de operator wordt overgebracht naar het touchscreen. Een directe ontladingsgebeurtenis activeert een valse aanraking van de GT911 of een I²C-vergrendeling. ESD-beveiligingsdiodes op de INT- en RST-pinnen; massavlak onder de aanraakfolie.
    Common-mode (aarde) Potentiaalverschil tussen de massa van het beeldscherm en de massa van het systeem. Verstoort de I²C-signaalniveaus; veroorzaakt I²C NAK-fouten en communicatieverlies. Enkelvoudige aardverbinding; chassis-aarding naar het beeldschermframe

     

    Voedingsrailfiltering: de belangrijke cijfers

     

    De GT911 verbruikt tijdens actief scannen ongeveer 30-80 mA van de VDD-voeding. De voedingsspanning moet onder alle belastingomstandigheden, inclusief de inschakelstroom bij koude start, binnen ±5% van de nominale waarde (doorgaans 2,8 V of 3,3 V) blijven. In industriële systemen met gedeelde voedingsrails is een lokaal filter direct bij de voedingspinnen van de GT911 in de praktijk noodzakelijk.

     

    Aanbevolen filtertopologie: een weerstand van 10 Ω in serie met de voeding, gevolgd door een elektrolytische condensator van 10 µF en een keramische condensator van 100 nF naar aarde, geplaatst binnen 5 mm van de AVDD- en VDDIO-pinnen van de GT911. Dit creëert een laagdoorlaatfilter met een kantelpunt van -3 dB bij ongeveer 1,6 kHz, waardoor de rimpel van de schakelregelaar (doorgaans 100-500 kHz) met meer dan 40 dB wordt gedempt. Meet de rimpel op de voedingspinnen van de GT911 met een oscilloscoop met een bandbreedte van 200 MHz na filtering — het streefdoel is een piek-tot-piekwaarde van minder dan ±50 mV onder volledige bedrijfsbelasting.

     

    I²C-busverharding

     

    De I²C-bus transporteert aanraakgegevens met een frequentie van 400 kHz (snelle modus) tussen de GT911 en de hostprocessor. Bij deze frequentie beginnen kabeluiteinden langer dan ongeveer 100 mm als antennes te fungeren die stralingsinterferentie oppikken. Drie maatregelen voorkomen I²C-communicatiestoringen in productiehardware:

     

    • Houd de lengte van de I²C-kabel onder de 150 mm. Waar mogelijk. Als het paneel fysiek gescheiden moet worden van de printplaat, gebruik dan een afgeschermde twisted-pair kabel waarbij de afscherming slechts aan één uiteinde met aarde is verbonden.
    • Tel er 4,7 bij op. pull-up weerstanden naar SDA en SCL aan de hostzijde. Pull-upweerstanden die te zwak zijn (>10 kΩ bij een bussnelheid van 400 kHz) produceren langzame stijgende flanken die eruitzien als datafouten wanneer er ruis aanwezig is.
    • Plaats serie-afsluitcondensatoren van 22 pF. op SDA en SCL bij de randconnector van de host-PCB. Deze vertragen de flankfrequentie voldoende om de uitgestraalde emissies te verminderen zonder de I²C-timingconformiteit te beïnvloeden — een techniek die vaak wordt gebruikt in IEC 61000-4-4 gecertificeerde ontwerpen.

    IEC 61000-4-4 (immuniteit tegen snelle elektrische transiënten/bursts) is de norm waaraan de meeste industriële displayapparatuur wordt getest voor CE-markering. De test omvat bursttransiënten van 2 kV die worden toegepast op de voedings- en I/O-lijnen. Ontwerpen die deze test doorstaan ​​zonder GT911-communicatiefouten met de hierboven beschreven filtermethode, voldoen doorgaans ook aan IEC 61000-4-2 (ESD) niveau 3 en IEC 61000-4-6 (geleidingsimmuniteit) niveau 3 – de drie normen die het meest relevant zijn voor industriële HMI-apparatuur.

     

    GT911 industriële EMC-verhardingsschakeling met I2C-filtering en ESD-bescherming

     

    Thermisch beheer — Werking over het volledige temperatuurbereik

     

    De LVGL + GT911-stack die 24/7 draait op een industrieel touchscreen genereert drie afzonderlijke warmtebronnen die moeten worden beheerd: de LED-achtergrondverlichting (de belangrijkste bron), de hostprocessor (aanzienlijk tijdens intensieve LVGL-rendering) en het scancircuit van de touchcontroller (klein, doorgaans < 200 mW). In een afgesloten industriële behuizing moeten alle drie de warmtebronnen naar de behuizingswanden worden afgevoerd — convectie is niet mogelijk.

     

    Thermische belasting van de achtergrondverlichting

     

    Een 7-inch IPS-paneel met een achtergrondverlichting van 800 nits voert doorgaans 8–14 W aan warmte af van de LED-array. Deze warmte moet van de LED-strips aan de rand van het paneel, door de achterplaat van het paneel, via een thermisch geleidend materiaal (TIM) naar de behuizing worden afgevoerd. De temperatuurstijging van de omgevingstemperatuur naar de LED-junctie wordt bepaald door:

     

    ΔT = P × (R_TIM + R_behuizing)

     

    Waarbij P het vermogen van de achtergrondverlichting is (W), R_TIM de thermische weerstand van de TIM-laag (°C/W) en R_enclosure de thermische weerstand van de binnenwand van de behuizing naar de omgevingslucht (°C/W). Met een 0,1 mm grafiet TIM (R_TIM ≈ 0,05 °C/W per cm²) en een 2 mm dikke aluminium behuizingswand (R_enclosure ≈ 1,2 °C/W voor een paneel van 150 × 100 mm) produceert een achtergrondverlichting van 10 W een temperatuurstijging van de junctie van ongeveer 12 °C boven de omgevingstemperatuur. Bij een omgevingstemperatuur van +55 °C (een veelvoorkomende buitentemperatuur voor panelen) bereikt de junctietemperatuur van de LED ongeveer 67 °C – ruim binnen de 85 °C-norm voor hoogwaardige achtergrondverlichtings-LED's, maar met slechts 18 °C marge voor productievariatie.

     

    De praktische ontwerpregel: Specificeer adaptieve dimming en streef naar een achtergrondverlichtingsvermogen van maximaal 60% van het nominale maximum tijdens continu gebruik.Dit zorgt ervoor dat de junctietemperatuur onder de 65 °C blijft bij een omgevingstemperatuur van +55 °C met een typische thermische weerstand van de behuizing, wat een voldoende lange levensduur garandeert. LVGL-systemen implementeren dit via een omgevingslichtsensor (ALS) die de PWM-controller van de achtergrondverlichting aanstuurt – dit wordt behandeld in het firmwaregedeelte.

     

    Koudstartgedrag en LCD-vloeistofrespons

     

    De vloeibare kristalvloeistof in TFT-LCD-panelen vertoont een viscositeit die sterk toeneemt onder 0°C. Een standaard LCD-paneel dat bij -10°C wordt ingeschakeld, zal een trage pixelrespons vertonen — het scherm is technisch gezien aan, maar beweging lijkt alsof het paneel met 10-15 fps werkt, zelfs wanneer de framebuffer met 60 Hz wordt bijgewerkt. Dit is een materiaaleigenschap van de LC-vloeistof, geen firmwareprobleem, en het is niet zichtbaar tijdens demo-ontwikkeling die bij kamertemperatuur wordt uitgevoerd.

     

    Voor implementaties met koude startscenario's – buitenkiosken, displays op voertuigen, magazijnterminals in gekoelde faciliteiten – zijn twee benaderingen mogelijk:

     

    • Specificaties van panelen met een breed temperatuurbereikIPS-panelen met een uitgebreide LC-vloeistofformulering behouden een reactietijd van ≥5 ms tot −20 °C. Deze panelen hebben andere specificaties dan standaard commerciële IPS-panelen; controleer de specificatie voor de reactietijd bij lage temperaturen expliciet bij uw paneelleverancier.
    • Verwarmingsfolie achter het LCD-schermEen weerstandsverwarmingselement, bevestigd aan de achterzijde van het paneel en aangestuurd door een thermistor, zorgt ervoor dat de paneeltemperatuur boven de minimale bedrijfsdrempel blijft bij koude omgevingsomstandigheden. Het typische vermogen van de verwarming is 5-10 W; deze wordt geactiveerd onder +5 °C en gedeactiveerd boven +15 °C. De verwarming moet worden aangesloten op dezelfde gereguleerde voeding als het paneel om te voorkomen dat spanningspieken tijdens het schakelen van de verwarming de GT911-kalibratie verstoren.

    Thermische cycli en betrouwbaarheid van FPC-connectoren

     

    Temperatuurschommelingen – de dagelijkse cyclus van een koude omgevingstemperatuur 's nachts naar een warme bedrijfstemperatuur – veroorzaken mechanische spanning in de FPC-connectoren (flat printed cable) tussen de contactlaag en de printplaat. Het verschil in thermische uitzettingscoëfficiënt (CTE) tussen het FR4-substraat van de printplaat (CTE ≈ 17 ppm/°C) en de polyimide FPC (CTE ≈ 20 ppm/°C) veroorzaakt een relatieve beweging van ongeveer 0,03 mm per centimeter kabellengte per temperatuurverandering van 50 °C. Over duizenden cycli belast dit de ZIF-contacten (zero insertion force) van de connector.

     

    Productiebeperking: breng een trekontlastingsrand aan met een siliconenlijm met lage hardheid (Shore A 30-40) op het punt waar de FPC de ZIF-connector verlaat. Dit is een productiestap van 5 minuten die het aantal FPC-gerelateerde storingen in de praktijk bij thermische belasting aanzienlijk vermindert. Controleer deze verbinding als onderdeel van uw kwaliteitscontroleproces voor geassembleerde displaymodules.

     

    Ontwerp van thermische geleiding en trekontlasting voor industriële displays

     

    Inbrandtesten en validatie met versnelde veroudering

     

    Het verzenden van de eerste productiebatch zonder burn-in-test is de meest voorkomende fout bij de ontwikkeling van industriële HMI-producten. Componentdefecten volgen de bekende badkuipcurve: het uitvalpercentage is hoog in de beginfase (kindersterfte), daalt naar een stabiel laag niveau gedurende de operationele levensduur en stijgt vervolgens weer naarmate componenten slijten. Een 24-uurs burn-in-test bij verhoogde temperatuur sluit defecten door kindersterfte uit voordat het product de klant bereikt.

     

    Inbrandprotocol voor GT911 + LVGL-systemen

     

    Een inbrandprotocol voor een industrieel touchscreen dat 24/7 wordt gebruikt, moet alle mogelijke faalmodi simuleren die tot kindersterfte kunnen leiden:

     

    Testfase Duur Temperatuur Wat wordt er geoefend? Slagingscriteria
    Power cycle soak 4 uur Omgevingstemperatuur (+25°C) Inschakelstroom van de voeding, PMIC-opstart, herhaalbaarheid van de GT911-resetsequentie 100% ingeschakeld in <3 s; geen I²C-fouten in het logboek
    Thermische opslag (hoog) 8 uur +65°C (oven) Thermische stabiliteit van de achtergrondverlichting, LCD-vloeistof bij hoge temperaturen, integriteit van de soldeerverbindingen Schermhelderheid binnen ±10% van de oorspronkelijke waarde; geen pixelartefacten.
    Thermische opslag (laag) 4 uur −20°C (kamer) LCD-reactie bij lage temperaturen, GT911-kalibratie bij koude start, FPC-connector bij koude temperaturen Scherm actief binnen 30 seconden; touchscreen functioneert met de aangegeven nauwkeurigheid.
    Thermische cyclus 4 uur −20°C ↔ +65°C (3 cycli) CTE-mismatch-stress op FPC-connectoren, soldeerverbindingen en TIM-hechting Geen nieuwe I²C-fouten; visuele inspectie van FPC geslaagd
    Tastbestendigheid 4 uur +25°C GT911-kalibratieafwijking bij continu gebruik van het touchscreen. Na de test was de afwijking in de aanraakcoördinaten in elke schermhoek minder dan 2 mm.

     

    � Industrie Basislijn — Wat een inloopperiode van 24 uur registreert
    Uit praktijkgegevens van fabrikanten van embedded displays blijkt dat burn-in testen bij +65 °C gedurende 24 uur ongeveer 68% van de vroege uitvalgevallen opspoort die anders binnen de eerste 500 uur in de praktijk zouden optreden. De meest voorkomende defecten die werden opgespoord waren: slechte soldeerverbindingen op de touchcontroller (23% van de gedetecteerde defecten), intermitterend contact van de FPC-connector (31%), instabiliteit van de backlight-driver onder thermische belasting (18%), GT911 I²C-adresblokkering door een marginale resetcircuit (15%) en een LVGL-watchdog-resetlus door een geheugentoewijzingsfout (13%).

     

    Geautomatiseerde validatie van de aanraaknauwkeurigheid

     

    Het testen van de aanraakgevoeligheid door mensen tijdens de inbrandfase is onpraktisch en inconsistent. Validatie van de aanraakgevoeligheid op productieschaal vereist een mal — een armatuur dat een geleidende stylus (of een reeks stylussen) naar bekende coördinaten op het touchscreenoppervlak stuurt onder gecontroleerde kracht (doorgaans 150-250 gf volgens IEC 60068-2-75 equivalent), de gerapporteerde coördinaat uitleest van de hostfirmware en de fout registreert.

     

    De minimale testmatrix voor GT911 PCAP-touchvalidatie: de vier hoeken van het actieve gebied, de vier middelpunten van de randen en het midden – in totaal negen punten. Meet op elk punt 20 aanraakgebeurtenissen en bereken de gemiddelde absolute fout en de standaardafwijking. Aanvaardbare productiespecificatie voor industriële HMI: Gemiddelde fout < 2 mm, standaardafwijking < 0,8 mm, op alle negen punten, zowel bij +25°C als bij +65°C. Elk apparaat dat deze drempelwaarden niet haalt, duidt op een probleem met de registratie van de aanraakfolie. Dit kan worden verholpen door herkalibratie via GT911-configuratieregister 0x8047–0x80FF — maar alleen als de onderliggende mechanische assemblage in orde is.

     

    Consistente aanraking in alle productiebatches

     

    Een GT911-touchscreenkalibratie die perfect werkt bij de eerste productiebatch, moet mogelijk bij de tweede batch worden aangepast als de leverancier panelen levert met een iets andere dikte van de touchfilm of een andere diëlektrische constante. Dit is geen kwaliteitsfout, maar normale variatie binnen de componentspecificaties. Het vereist echter wel een validatiestap in de kwaliteitscontrole van de inkomende componenten, die veel teams overslaan.

     

    GT911-configuratieregisters — Wat verandert er tussen batches?

     

    Het 186-byte configuratieblok van de GT911 (registers 0x8047–0x80FF) bevat parameters die bepalen hoe de controller ruwe capaciteitsmetingen interpreteert als aanraakgebeurtenissen. Drie registers zijn verantwoordelijk voor het grootste deel van de variatie in aanraakgedrag tussen verschillende batches:

     

    Register Standaard Functie Wanneer moet je aanpassen?
    0x8057 0x32 Aanraakgevoeligheidsdrempel Als aanraken buitensporige kracht vereist → verlagen; als er spookaanrakingen optreden → verhogen met stappen van 0x0A
    0x8058 0x28 Aanraakdrempel voor loslaten Moet 4–8 tellingen onder de gevoeligheidsdrempel liggen; batchvariatie in de diëlektrische constante van de film verschuift dit.
    0x8056 0x0A Rapportagesnelheid (ms per rapport) Verhoging (langzamer) als de I²C-bus overbelast is; verlaging alleen als een hogere rapportagesnelheid stabiel is bevestigd.
    0x8068–0x806B Paneelafmetingen Breedte × hoogte van het actieve gebied in pixels Moet overeenkomen met het werkelijke actieve oppervlak van het paneel; de fabrieksinstelling is vaak onjuist voor panelen op maat.
    0x80FF Controlesom Controlesom van het configuratieblok Moet opnieuw berekend en weggeschreven worden telkens wanneer configuratieregisters wijzigen; onjuiste checksum = GT911 gebruikt fabrieksinstellingen

     

    Implementatie van een configuratieverificatiestap bij ICT

     

    Een in-circuit test (ICT) of functionele test aan het einde van de printplaatassemblagelijn is de juiste plek om de GT911-configuratie te valideren. De testprocedure is als volgt: de printplaat inschakelen, het volledige GT911-configuratieblok via I²C uitlezen, vergelijken met de gouden referentieconfiguratie die in uw testsysteem is opgeslagen, eventuele afwijkingen signaleren en optioneel het gecorrigeerde configuratieblok en de geverifieerde checksum schrijven voordat de eenheid verdergaat met de uiteindelijke assemblage.

     

    Code
    // Pseudocode voor verificatie van de GT911-configuratie
     // Lees het 186-byte configuratieblok uit register 0x8047
     uint8_t config[186];
     i2c_read(GT911_ADDR, 0x8047, config, 186);
    
     // Controleer de checksum op config[186-1] (register 0x80FF)
     uint8_t calc_sum = 0;
     for (int i = 0; i < 184; i++) calc_sum += config[i];
     calc_sum = (~calc_sum) + 1; // Tweevoudig complement
     assert(calc_sum == config[184]); // MISLUKT → configuratie beschadigd
    
     // Controleer of de gevoeligheidsdrempel binnen ±0x10 van de gouden referentie ligt.
     assert(abs(config[0x8057-0x8047] - GOLDEN_SENSITIVITY) <= 0x10);
    
     // Controleer of de paneelafmetingen overeenkomen met de productspecificaties
     uint16_t breedte = config[0x8068-0x8047] | (config[0x8069-0x8047] << 8);
     uint16_t hoogte = config[0x806A-0x8047] | (config[0x806B-0x8047] << 8);
     assert(width == PANEL_H_RES && height == PANEL_V_RES);

    spreidingsdiagram voor de validatie van de aanraaknauwkeurigheid van de GT911-productiebatch

     

    Firmware-watchdogarchitectuur voor 24/7-werking

     

    Een touchscreen dat 23 uur en 59 minuten correct functioneert, maar na 24 uur opnieuw moet worden opgestart, is geen 24/7 industrieel display — het is een apparaat dat toevallig continu aan staat. De firmware moet expliciet ontworpen zijn voor onbeperkte, onbeheerde werking, wat betekent dat elk softwareonderdeel als een potentiële bron van storingen moet worden beschouwd en dat er voor elk onderdeel herstelmechanismen moeten worden ontworpen.

     

    De drielaagse waakhondhiërarchie

     

    De robuuste, 24/7 ingebouwde firmware maakt gebruik van een gelaagde watchdog-architectuur in plaats van een enkele hardwarematige watchdog-timer:

     

    Laag Uitvoering Time-out Wat het vangt
    L1 — Hardware WDT ESP32-S3 RWDT (RTC-watchdog) 8–30 seconden Volledige vastloop van de firmware, stack-overflow, oneindige lus in elke taak, inclusief FreeRTOS-schedulerfout
    L2 — Taakbewaker ESP-IDF TWDT per FreeRTOS-taak 5–15 seconden per taak Individuele taakuithongering — de LVGL-taak, de aanraakleestaak en de netwerktaak hebben elk onafhankelijke startvereisten.
    L3 — Applicatiebewakingshond Softwareteller in LVGL-weergave flush callback 30–120 seconden LVGL frame rendering deadlock — als flush_cb niet binnen N seconden is aangeroepen, start dan een gecontroleerde herstart.

     

    Code
    // LVGL flush callback watchdog — applicatielaag (L3)
     statische volatile uint32_t last_flush_tick = 0;
    
     // Wordt door LVGL aangeroepen telkens wanneer een framegebied wordt weergegeven
     void disp_flush_cb(lv_disp_drv_t *drv, const lv_area_t *area, lv_color_t *buf) {
     last_flush_tick = xTaskGetTickCount(); // Watchdog resetten
     // ... DMA-overdracht naar paneel ...
     lv_disp_flush_ready(drv);
     }
    
     // Watchdog-monitortaak — draait onafhankelijk
     void watchdog_task(void *arg) {
     const uint32_t TIMEOUT_MS = 60000; // 60 seconden
     terwijl (1) {
     vTaskDelay(pdMS_TO_TICKS(10000));
     uint32_t now = xTaskGetTickCount();
     uint32_t elapsed = (now - last_flush_tick) * portTICK_PERIOD_MS;
     als (verstreken tijd > TIMEOUT_MS) {
     ESP_LOGE("WDT", "LVGL flush timeout — herstart wordt gestart");
     esp_restart(); // Gecontroleerde herstart
     }
     }
     }

    GT911 I²C-herstel — Afhandeling van busblokkering

     

    Een van de meest hardnekkige betrouwbaarheidsproblemen bij GT911-implementaties, die 24/7 plaatsvinden, is het vastlopen van de I²C-bus: een scenario waarbij een tijdelijke stroomonderbreking of ESD-gebeurtenis de GT911 midden in een transmissie laat vastlopen, waardoor SDA laag blijft en verdere I²C-communicatie wordt geblokkeerd. De hardware-watchdog kan deze situatie niet detecteren omdat de firmware normaal functioneert – deze zit alleen vast in afwachting van I²C.

     

    De herstelprocedure moet in software worden geïmplementeerd en worden geactiveerd door I²C-time-outfouten:

     

    Code
    // GT911 I2C-busherstel — aanroep bij herhaalde I2C NACK of time-out
     void gt911_recover_i2c_bus(void) {
     // Stap 1: Sluit de vastgelopen transactie af.
     // Configureer SCL als GPIO-uitgang, SDA als GPIO-ingang
     gpio_set_direction(TOUCH_SCL_PIN, GPIO_MODE_OUTPUT);
     for (int i = 0; i < 9; i++) {
     gpio_set_level(TOUCH_SCL_PIN, 1);
     esp_rom_delay_us(5);
     gpio_set_level(TOUCH_SCL_PIN, 0);
     esp_rom_delay_us(5);
     if (gpio_get_level(TOUCH_SDA_PIN)) break; // SDA vrijgegeven
     }
     // Stap 2: Verzend de STOP-conditie
     gpio_set_direction(TOUCH_SDA_PIN, GPIO_MODE_OUTPUT);
     gpio_set_level(TOUCH_SDA_PIN, 0);
     gpio_set_level(TOUCH_SCL_PIN, 1);
     esp_rom_delay_us(5);
     gpio_set_level(TOUCH_SDA_PIN, 1);
     // Stap 3: Initialiseer het I2C-stuurprogramma opnieuw
     i2c_driver_delete(TOUCH_I2C_PORT);
     vTaskDelay(pdMS_TO_TICKS(10));
     i2c_driver_install(TOUCH_I2C_PORT, I2C_MODE_MASTER, 0, 0, 0);
     // Stap 4: GT911 resetten
     gt911_reset_sequence(); // RST-schakelaar om opnieuw te initialiseren
     }
    ⚠ Track Herstelgebeurtenissen in niet-vluchtig logboek
    Elke automatische herstelgebeurtenis — I²C-busreset, LVGL-watchdogherstart, hardware-WDT — moet worden vastgelegd in NVS (Non-Volatile Storage) met een tijdstempel en gebeurteniscode. Wanneer een apparaat in het veld wordt teruggestuurd voor onderzoek, onthult dit logboek of de hardware intermitterende fouten of een systematische storing vertoont. Zonder dit logboek is de oorzaak van problemen met de 24/7-betrouwbaarheid slechts giswerk.

     

    OTA-firmware-updates — Het 24/7 operationeel houden van systemen in het veld

     

    Een industrieel touchscreen dat 24/7 operationeel moet zijn en waarvoor fysieke toegang nodig is voor firmware-updates, vormt een operationeel probleem op grote schaal. Apparaten die worden ingezet in afgelegen locaties, voertuigvloten of onbemande kiosknetwerken hebben een betrouwbaar OTA-updateproces (over-the-air) nodig dat 24/7 beschikbaarheid garandeert tijdens het updateproces.

     

    Veilige OTA voor LVGL-beeldschermsystemen

     

    Het OTA-updateproces van ESP-IDF schrijft de nieuwe firmware-image naar een secundaire OTA-partitie terwijl de huidige image blijft draaien. Vervolgens wordt de nieuwe image gevalideerd voordat deze wordt opgeslagen. Dit zorgt voor atomaire updates: als de nieuwe image niet opstart, keert de bootloader automatisch terug naar de vorige versie. Voor beeldschermsystemen gelden aanvullende aandachtspunten:

     

    • Het scherm bevriezen tijdens een OTA-download. — LVGL-rendering tijdens een OTA HTTP-download concurreert om PSRAM-bandbreedte met de download-DMA. Het weergeven van een statisch 'Update bezig'-scherm (een enkel lv_label op een effen achtergrond) reduceert het PSRAM-verkeer van LVGL tot bijna nul en elimineert de belangrijkste bron van corruptie bij OTA-downloads in systemen met een beeldscherm.
    • Controleer de weergave- en aanraakfunctionaliteit voordat u de wijzigingen opslaat. — Nadat de nieuwe image voor de eerste keer is opgestart, voert u een zelftest uit voordat u de functie aanroept. esp_ota_mark_app_valid_cancel_rollback()De zelftest moet het volgende bevestigen: I²C-communicatie met GT911 (uitlezen van product-ID-register 0x8140), voltooiing van het RGB-frameflushproces binnen 200 ms en uitvoering van LVGL lv_timer_handler() zonder vast te lopen.
    • Plan updates tijdens perioden met weinig activiteit. — De adaptieve helderheid en activiteitsmonitoring van LVGL kunnen perioden zonder aanraakinput (meestal 's nachts) detecteren. OTA-downloads die tijdens deze perioden worden gestart, voorkomen verstoring van actieve gebruikers.

    GT911 Firmware- en configuratiebeheer

     

    De configuratieregisters van de GT911 worden opgeslagen in het interne OTP-achtige geheugen van de controller en blijven behouden na het uitschakelen en opnieuw inschakelen van de stroom. Wanneer een firmware-update de lay-out van de LVGL-gebruikersinterface wijzigt op een manier die de vereisten voor de aanraakgevoeligheid verandert (bijvoorbeeld door kleinere aanraakdoelen toe te voegen die een hogere GT911-gevoeligheid vereisen), moet de GT911-configuratie worden bijgewerkt als onderdeel van de applicatie-firmware-update.

     

    Beste werkwijze: sla het configuratieblok van de GT911 op in de ESP32-firmware-image als een constante array. Lees bij elke opstart, na de initialisatie van de GT911, de huidige configuratie, vergelijk de checksum met de checksum van de doelconfiguratie en schrijf, indien deze verschillen, de doelconfiguratie weg en reset de GT911. Dit zorgt ervoor dat de GT911-configuratie gesynchroniseerd blijft met de firmwareversie tijdens OTA-updates, zonder dat een aparte firmware-update van de GT911 nodig is.

     

    OTA-firmware-updatestatusmachine voor 24/7 LVGL-weergave

     

    Een paneelleverancier selecteren voor 24/7-productieverplichtingen

     

    De hardwarekeuzes die tijdens het ontwerp worden gemaakt – met name de combinatie van displaymodule en touchscreen – bepalen de maximale betrouwbaarheid die de firmware kan bereiken. Een paneel dat vroegtijdige degradatie van de achtergrondverlichting vertoont, een inconsistente GT911-kalibratie vanuit de fabriek heeft of kwaliteitsproblemen met de FPC-connector, zal leiden tot storingen in het veld die door geen enkele firmware-watchdog of OTA-update kunnen worden verholpen.

     

    Belangrijkste kwalificatiecriteria voor leveranciers van 24/7 industriële displays:

     

    Criterium Wat u van de leverancier kunt vragen
    Levensduurgegevens van de achtergrondverlichting De levensduur van de T70 bij nominale helderheid en bij 60% helderheid (typisch gebruik) moet ≥50.000 uur bedragen bij 60% inschakelduur.
    Breed temperatuurbereik Bedrijfstemperatuurbereik met bevestigde LCD-responstijd bij -20 °C en opslagtemperatuurbereik tot minimaal -30 °C.
    GT911 configuratiedocumentatie Basiswaarden van de configuratieregisters, gekalibreerd voor het specifieke paneel; configuratiechecksum voor verificatie van de batchconsistentie.
    FPC-connectorspecificatie Fabrikant van de connector, modelnummer, aantal koppelingscycli (minimaal ≥30 cycli) en richtlijnen voor trekontlasting.
    leveringscontinuïteitsgarantie Schriftelijk beleid voor EOL-meldingen (End-of-Life) — een minimale opzegtermijn van 24 maanden is de industriestandaard voor industriële componenten.
    Burn-in test in de fabriek Bevestiging dat de modules vóór verzending een duurtest ondergaan waarbij ze continu ingeschakeld blijven; vraag naar de testduur en de criteria om de test te halen.

     

    Kadi Display’ s industriële TFT-LCD-touchscreenmodules Dit omvat configuraties met in de fabriek gekalibreerde GT911-controllers, IPS-paneeltechnologie met brede kijkhoeken en een breed temperatuurbereik. Voor productontwerpteams die naast betrouwbaarheid ook de esthetiek van het paneel beoordelen, is hun handleiding over Op maat gemaakt afdekglas en industrieel touchscreen-ontwerp Dit document behandelt het volledige scala aan aanpassingsmogelijkheden voor behuizingsglas voor industriële HMI-implementaties onder eigen merknaam. De selectie van paneeltechnologie wordt uitgebreid besproken. Vergelijkende gids voor TN, IPS en VA — Relevante context voor teams die moeten kiezen tussen verschillende paneeltypen voor omgevingen waar 24/7 gekeken moet worden.

     

    Checklist voor productiegereedheid

     

    Een gestructureerde evaluatie vóór de eerste productielevering. Elk item vertegenwoordigt een tekortkoming die in de praktijk tot storingen in industriële HMI-implementaties heeft geleid:

     

      gereedheidsitem Validatiemethode
    EMC: rimpelspanning op de voedingsrail < ±50 mV bij GT911 VDDIO onder volledige belasting Oscilloscope aangesloten op de voedingspinnen van de GT911 met motorsturing werkend op een gedeelde voeding.
    EMC: I²C-foutkans = 0 tijdens ontlading van 4 kV ESD-pistool op touchscreen-oppervlak IEC 61000-4-2 contactontladingstest; registreer het aantal I²C-fouten tijdens de test.
    Thermisch: display functioneert bij een koude start van -20°C binnen 30 seconden. Thermische kamer; inschakelen bij -20 °C; meet de tijd tot het eerste LVGL-frame is weergegeven.
    Thermisch: temperatuur van de achtergrondverlichting ≤ 70 °C bij een omgevingstemperatuur van +55 °C, nominale helderheid Thermokoppel bij LED-strip; 4 uur weken in een oven bij +55 °C omgevingstemperatuur
    FPC-trekontlasting is toegepast en gecontroleerd op 100% van de eenheden. Visuele inspectiestap in de montageprocedure; fotoreferentie voor operators.
    Inloopperiode: 24 uur inwerken volgens protocol in sectie 4 zonder storingen. Inbrandrack met automatische stroomcyclus en I²C-foutbewaking
    Aanraaknauwkeurigheid: 9-punts test ≤ 2 mm fout, ≤ 0,8 mm standaarddeviatie op 100% van de geteste eenheden Geautomatiseerde tastmal met gedocumenteerd pass/fail-logboek per serienummer.
    De GT911-configuratie is op elk exemplaar geverifieerd aan de hand van de gouden referentie. ICT-stap; een mismatch leidt tot een herschrijving van de configuratie en een nieuwe verificatie vóór verzending.
    Alle drie de bewakingslagen zijn operationeel; herstelgebeurtenissen zijn geregistreerd in NVS. Firmware-zelftest bij het opstarten; geverifieerd door het veroorzaken van een I²C-blokkering en het bevestigen van automatisch herstel.
    OTA-update getest: succesvolle update, mislukte terugdraaiing van update en GT911-configuratiesynchronisatie Volledige OTA-regressietest op 5 eenheden vóór de firmware-vergrendeling voor massaproductie.
    Het EOL-beleid van de paneelleverancier is schriftelijk bevestigd. De koopovereenkomst bevat een clausule voor kennisgeving na 24 maanden gebruik.

     

    Productreferentie en technische ondersteuning
    Voor industriële TFT-LCD-touchscreenmodules met in de fabriek gekalibreerde GT911-touchscreen, IPS-paneeltechnologie, een breed temperatuurbereik en leveringsgaranties die geschikt zijn voor 24/7 industriële toepassingen, kunt u contact opnemen met Kadi Display. Sales@sz-kadi.comOEM- en ODM-services beschikbaar, waaronder op maat gemaakt afdekglas, optische bonding en paneelspecificaties voor een breed temperatuurbereik. Bekijk industriële TFT-touchscreenmodules →

     

    Vrijwaring: Codevoorbeelden en faalpercentagegegevens in deze handleiding zijn bedoeld als educatieve referentie en zijn gebaseerd op algemene praktijkervaring. Specifieke waarden (watchdog-time-outs, filtercomponentwaarden, temperatuurdrempels) moeten voor elke implementatieomgeving en hardwareconfiguratie worden gevalideerd. Verwijzingen naar IEC-normen zijn opgenomen ter informatie; conformiteitstesten moeten worden uitgevoerd door een geaccrediteerd testlaboratorium. GT911 is een handelsmerk van Shenzhen. Goodix ESP32-S3 is een handelsmerk van Technology Co., Ltd. Espressief Systemen. LVGL is een open-sourceproject onder de MIT-licentie. Alle andere merknamen behoren toe aan hun respectievelijke eigenaren.

    Laat een reactie achter
    0086-13662585086
    Sales@sz-kadi.com