La disposition physique d’un PCB de clavier détermine l’emplacement des touches. Sa matrice relie les interrupteurs au contrôleur, et le firmware transforme les valeurs relevées en événements de touches. Avant de commander, assurez-vous que ces trois éléments décrivent le même clavier.
Exemple de PCB de clavier. Le choix des composants et la disposition de la carte varient selon la conception.
Pour un clavier mécanique personnalisé, la séquence de conception la plus utile est la suivante :
- Définir la position des touches et les contraintes mécaniques.
- Choisir les interrupteurs, la méthode de montage et les stabilisateurs.
- Associer chaque interrupteur à une position de matrice et à une broche du contrôleur.
- Configurer le firmware pour qu’il corresponde au circuit.
- Distinguer les fichiers et les travaux nécessaires à la fabrication de la carte, à l’assemblage du PCB et à l’assemblage final du clavier.
Commencez par la disposition mécanique
Placez les interrupteurs à l’aide des plans des pièces exactes que vous comptez utiliser. Vérifiez leur orientation et leur empreinte par rapport à la disposition des touches, en particulier autour des grandes touches qui nécessitent des stabilisateurs.
Le PCB doit également s’intégrer dans un empilement mécanique plus large. Avant validation, vérifiez ensemble les éléments suivants plutôt que de les considérer indépendamment :
- Empreintes et orientation des interrupteurs et, le cas échéant, des supports hot-swap
- Emplacement des stabilisateurs et dégagements nécessaires
- Ouvertures et support de la plaque
- Épaisseur de la carte et interaction avec les pièces choisies
- Points de fixation au boîtier et dégagements internes
- Position du connecteur et accès à travers le boîtier
Par exemple, les plans du support CPG151101S11-16 et de l’interrupteur CPG1511F01S06 de Kailh servent de référence pour ces pièces précises, et non pour tous les supports ou interrupteurs. Utilisez les plans des fabricants correspondant aux pièces que vous avez choisies, puis vérifiez l’empilement à l’aide d’un prototype.
Soudé ou hot-swap ?
Dans une conception soudée, les interrupteurs sont reliés au PCB lors de l’assemblage. Une conception hot-swap utilise des supports compatibles installés sur la carte, ce qui permet d’insérer les interrupteurs séparément. Ce choix modifie à la fois l’empreinte et le plan d’assemblage.
Pour une conception hot-swap, vérifiez la position et l’orientation des supports par rapport au plan de l’interrupteur, et déterminez qui fournit et installe les supports. Dans les deux cas, évaluez la manière dont la plaque, le boîtier et le PCB soutiennent les interrupteurs. Ne supposez pas que la seule modification de l’empreinte suffit à obtenir un assemblage mécanique fonctionnel.
Concevez la matrice et choisissez le contrôleur conjointement
Une matrice de touches relie les interrupteurs entre des nets de lignes et de colonnes. Le firmware balaie ces nets pour déterminer quelles positions sont actives. Cela peut réduire le nombre de lignes d’E/S nécessaires sur le contrôleur par rapport à l’attribution d’une entrée distincte à chaque interrupteur, mais cela signifie aussi que le schéma et le firmware doivent utiliser la même correspondance.
Choisissez un contrôleur après avoir comptabilisé les E/S nécessaires à la matrice et aux autres fonctions prévues. Examinez également les exigences réelles de la conception en matière d’interface, de prise en charge par le firmware, d’alimentation et de protection. La présence d’un contrôleur dans un autre projet de clavier ne prouve pas qu’il prend en charge votre affectation des broches ou votre configuration du firmware.
Ghosting et sens des diodes
Sans isolation, une combinaison d’interrupteurs actionnés peut créer un chemin non souhaité dans une matrice. Le système de balayage peut alors enregistrer une touche qui n’a pas été actionnée : c’est le ghosting. Par exemple, trois interrupteurs actionnés aux trois coins d’un rectangle de deux lignes et deux colonnes peuvent créer un chemin qui semble activer le quatrième coin.
Une diode en série avec chaque interrupteur peut empêcher ces chemins parasites dans la matrice lorsque sa polarité et le circuit de balayage sont conçus de manière cohérente. Le sens des diodes n’est pas universel : il doit correspondre au trajet du courant dans le schéma et à la convention de balayage du firmware choisi.
La suppression des chemins parasites de la matrice ne constitue pas non plus à elle seule la définition complète du N-key rollover (NKRO). Ce que le clavier peut transmettre dépend du matériel, du firmware et de l’hôte. Considérez le rollover comme un comportement à vérifier sur la conception achevée, et non comme une conséquence garantie par l’ajout de diodes.
Exemple détaillé : une matrice de quatre touches
La correspondance suivante est hypothétique et ne constitue pas un résultat mesuré. Imaginons quatre touches disposées en deux lignes physiques et deux colonnes. Le contrôleur balaie les lignes actives à l’état bas une par une ; les colonnes disposent de résistances de tirage vers le haut et les lignes non sélectionnées sont en haute impédance.
Dans le circuit choisi ici, chaque chemin va de la colonne à la ligne en passant par l’interrupteur et la diode. L’anode de la diode est orientée vers le côté interrupteur/colonne, et sa cathode vers le côté ligne. Le firmware doit être configuré pour ce circuit et cette convention de balayage.
C0 o---[SW1]---|>|---o R0
C1 o---[SW2]---|>|---o R0
C0 o---[SW3]---|>|---o R1
C1 o---[SW4]---|>|---o R1
Chaque étiquette répétée représente le même net : les deux extrémités C0 sont par exemple connectées à la colonne C0. Dans ce schéma, |>| représente chaque diode avec sa barre de cathode orientée vers la ligne. Le contrôleur balaie les lignes et lit les colonnes maintenues à l’état haut ; le choix des broches exactes du contrôleur est distinct.
| Emplacement physique | Interrupteur | Position dans la matrice | Orientation de la diode | Coordonnée du firmware | Événement de touche attendu |
|---|---|---|---|---|---|
| En haut à gauche | SW1 | R0, C0 | Anode vers C0 ; cathode vers R0 | (0, 0) | Q |
| En haut à droite | SW2 | R0, C1 | Anode vers C1 ; cathode vers R0 | (0, 1) | W |
| En bas à gauche | SW3 | R1, C0 | Anode vers C0 ; cathode vers R1 | (1, 0) | A |
| En bas à droite | SW4 | R1, C1 | Anode vers C1 ; cathode vers R1 | (1, 1) | S |
Ici, la coordonnée (0, 1) du firmware est censée lire SW2 et émettre W. Ce résultat attendu doit encore être vérifié sur le prototype assemblé : une rotation d’empreinte, des nets intervertis, un placement incorrect de diode ou une erreur de correspondance dans le firmware pourraient produire un résultat différent.
Les pages de QMK Comment fonctionne une matrice de clavier et référence de configuration sont des sources primaires utiles pour comprendre le balayage de la matrice et adapter la configuration au circuit choisi. Consultez la documentation du firmware et de la version que vous sélectionnez réellement.
Vérifiez la cohérence du schéma et du firmware
Avant de commander, suivez un interrupteur dans les trois descriptions de la conception :
- Schéma : SW2 relie la colonne C1 à la ligne R0 par l’intermédiaire de sa diode ; vérifiez ensemble le symbole de la diode et la polarité de son empreinte.
- Affectation des broches : notez les broches réelles du contrôleur connectées à R0 et C1. Dans cet exemple, les noms
R0etC1sont des noms de nets, et non des numéros de broches du microcontrôleur. - Firmware : affectez les mêmes broches et le même sens de balayage de la matrice dans le firmware choisi. Vérifiez que la coordonnée de matrice
(0, 1)correspond à l’événement de touche prévu. - Prototype : actionnez SW2 et vérifiez qu’il produit W. Testez ensuite une combinaison pertinente de trois touches, par exemple SW1, SW2 et SW3, et vérifiez que SW4 ne s’enregistre pas de lui-même.
Répétez la vérification individuelle pour les autres interrupteurs et consignez les résultats réels. Les événements attendus dans le tableau constituent un plan de test, et non la preuve qu’un PCB ou un firmware particulier a réussi ces tests.
Routez et vérifiez le PCB
Une fois les positions mécaniques et la matrice stabilisées, routez les nets des lignes et des colonnes et reliez-les aux broches prévues du contrôleur. Veillez à pouvoir établir la correspondance entre le schéma, les repères du PCB et le mapping du firmware. Examinez le routage des connecteurs, les connexions d’alimentation et les besoins de protection de l’interface choisie plutôt que de les copier sans vérifier les exigences du contrôleur et du système.
Le guide de conception de PCB couvre le processus de placement et de routage dans son ensemble. Pour un clavier, ajoutez des vérifications propres au produit :
- Comparez chaque empreinte d’interrupteur au plan de la pièce choisie et à son orientation physique.
- Vérifiez la polarité des diodes dans le schéma, l’empreinte du PCB et la documentation d’assemblage.
- Confirmez que les dégagements des interrupteurs, stabilisateurs, supports et connecteurs sont compatibles avec la plaque et le boîtier.
- Vérifiez que l’affectation des broches du contrôleur correspond à la matrice du firmware.
- Prévoyez un accès pour la programmation et les contrôles fonctionnels que vous souhaitez effectuer.
Le prototype est l’étape pratique à laquelle vérifier à la fois l’ajustement et le comportement. Parmi les contrôles proposés figurent l’inspection de l’orientation des diodes, la confirmation de chaque événement de touche, l’essai de combinaisons pertinentes de plusieurs touches et la vérification de l’ajustement du connecteur et du boîtier. Consignez les résultats réels séparément de la correspondance attendue.
Définissez ce que vous commandez
Un projet de clavier peut comporter trois périmètres distincts :
- Fabrication de la carte nue : fabriquer le PCB à partir des fichiers de carte validés et des exigences de fabrication.
- Assemblage du PCB (PCBA) : installer les composants électroniques convenus sur la carte.
- Assemblage final du clavier : réunir le PCB, les interrupteurs ou supports, la plaque, les stabilisateurs, le boîtier et les autres pièces choisies, selon les modalités convenues.
Ne supposez pas qu’une demande portant sur un périmètre inclut les autres. Convenez séparément de la fourniture des composants, de leur installation et des tests, notamment pour déterminer si les interrupteurs, les supports ou les connecteurs font partie des travaux demandés.
Pour la carte, préparez les fichiers de fabrication et vérifiez leur conformité à la conception. Le guide qu’est-ce qu’un fichier Gerber ? explique une partie de cette transmission. Pour le PCBA, fournissez une nomenclature claire, des informations de placement des composants et des plans d’assemblage ; consultez comment préparer une nomenclature pour un assemblage de PCB clé en main et les éléments essentiels d’un plan d’assemblage. Identifiez les composants sensibles à la polarité et ceux qui doivent rester non montés.
Avant validation, utilisez la liste de contrôle de conception pour l’assemblage pour examiner le dossier dans son ensemble. Si vous avez besoin d’aide pour définir les travaux, décrivez le périmètre souhaité pour la fabrication, l’assemblage et les tests lorsque vous demandez un devis, ou contactez APTPCB pour les questions de conception que vous devez résoudre.
