Stop al doppio inserimento di caratteri: una soluzione globale con AutoHotkey contro il “chattering” della tastiera Una soluzione semplice e pratica per eliminare definitivamente il problema dei tasti che scrivono due volte, testata su Logitech G915 X Lightspeed

Stop Double Typing: A Global AutoHotkey Debounce Fix for “Chattering” Keyboards

Se stai leggendo questo articolo, significa che probabilmente stai cercando di risolvere un fastidioso problema che si verifica con molte tastiere meccaniche: scrivi una parola perfettamente normale e ti ritrovi con una lettera doppia non voluta. “questto”, “spazzio”, “helloo”, etc.

Non è sempre colpa delle dita. Spesso è un problema noto come key chatter (o “rimbalzo del tasto”): una singola pressione viene interpretata dal sistema come due pressioni ravvicinate. È un fenomeno fastidioso e ricorrente che può colpire molte tastiere, anche di fascia alta.

Nel mio caso, la tastiera è una Logitech G915 X Lightspeed: ottima per digitazione e gaming, ma soggetta (nel tempo, o in modo intermittente) a episodi di doppia battuta casuale. Volevo una soluzione che fosse:

  • Globale (non limitata a pochi tasti)
  • Intelligente (che non blocchi la ripetizione quando un tasto viene tenuto premuto)
  • Disattivabile automaticamente in certe applicazioni (ad esempio alcuni giochi)
  • Configurabile e facile da manutenere

La risposta è stata uno script AutoHotkey v2 che applica un debounce globale alla tastiera, distinguendo tra “doppia pressione involontaria” e “tasto tenuto premuto”.

Lo script presentato in questo articolo fa parte di AutoHotKey-Scripts, una raccolta di script AutoHotkey gratuiti e open-source disponibili su GitHub con licenza MIT.

Cos’è il “debounce” in termini pratici

Quando un tasto “rimbalza”, Windows riceve due eventi di pressione in rapidissima successione. Se ignoriamo il secondo evento quando arriva entro una soglia (ad esempio 150 millisecondi), eliminiamo gran parte delle doppie battute.

La difficoltà è non rovinare l’esperienza d’uso: tenere premuto un tasto deve continuare a funzionare (auto-repeat), altrimenti diventa un disastro in scrittura e in gioco.


Come funziona la mia soluzione

Lo script fa tre cose chiave:

  • Intercetta i tasti tramite scancode (copertura ampia, quasi globale).
  • Memorizza l’ultima “pressione valida” per ogni tasto e sopprime un secondo tap troppo ravvicinato.
  • Traccia lo stato down/up del tasto: se il tasto è già fisicamente premuto, considera i keydown successivi come auto-repeat e li lascia passare.

In pratica:

  • Doppio tap involontario → viene bloccato.
  • Tasto tenuto premuto → funziona normalmente.

Script completo (AutoHotkey v2) pronto all’uso

Requisiti: AutoHotkey v2 installato. Salva il file come .ahk (es. KeyboardDebounceGlobal.ahk) ed eseguilo.

Cosa puoi configurare:

  • debounceThreshold → soglia in millisecondi (parti da 150 e regola in base al caso).
  • ignoreWindows → elenco di finestre/app dove disattivare automaticamente il debounce.
  • excludedSC → tasti esclusi dal debounce (qui ho escluso modificatori e anche Backspace/Canc, Insert e Delete).

Installazione rapida

  1. Installa AutoHotkey v2.
  2. Crea un file: KeyboardDebounceGlobal.ahk.
  3. Incolla lo script e salva.
  4. Esegui il file (icona AHK nell’area di notifica).
  5. Prova a digitare: se il problema era “chatter”, le doppie battute dovrebbero sparire.

Avvio automatico: se vuoi eseguirlo a ogni accensione, crea un collegamento al file e mettilo nella cartella di avvio di Windows.


Come regolo la soglia (debounceThreshold)

Ogni tastiera (e ogni difetto) è diverso. Io consiglio:

  • 150 ms come base (tipicamente efficace).
  • 100–120 ms se ti sembra “troppo aggressivo” e mangia doppi tocchi legittimi.
  • 180–220 ms se il bounce è severo e qualche doppia battuta passa ancora.

Se noti che sequenze volute come “tt” o “pp” vengono ridotte, abbassa la soglia. Se invece compare ancora qualche doppia lettera fantasma, alzala leggermente.


Escludere applicazioni (utile per giochi)

La lista ignoreWindows disattiva automaticamente il debounce quando una di quelle finestre è attiva. Puoi aggiungere:

  • "ahk_exe nomeprogramma.exe"
  • "ahk_class NomeClasseFinestra"

Così tengo la digitazione pulita in Windows, ma evito qualunque interferenza in software sensibili alla latenza o in giochi specifici.


Limiti e aspettative realistiche

Questa è una soluzione software: non ripara un problema hardware alla radice. Ma se il difetto è intermittente, difficile da “provare” in assistenza, o se vuoi semplicemente allungare la vita di una tastiera che ti piace, è un workaround sorprendentemente efficace.

Nel mio caso, ha trasformato un fastidio ricorrente in qualcosa che non noto più, ed è esattamente quello che volevo.

About Ryan

IT Project Manager, Web Interface Architect e Lead Developer di numerosi siti e servizi web ad alto traffico in Italia e in Europa. Dal 2010 si occupa anche della progettazione di App e giochi per dispositivi Android, iOS e Mobile Phone per conto di numerose società italiane. Microsoft MVP for Development Technologies dal 2018.

View all posts by Ryan

Leave a Reply

Your email address will not be published. Required fields are marked *


Il periodo di verifica reCAPTCHA è scaduto. Ricaricare la pagina.

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.