]> git.donarmstrong.com Git - qmk_firmware.git/blob - docs/fr-fr/faq_debug.md
7a85fd1f249aebbad0d09bb61e79e23d4c610b22
[qmk_firmware.git] / docs / fr-fr / faq_debug.md
1 # FAQ Débugage
2
3 Cette page détaille diverses questions fréquemment posées par les utilisateurs sur le dépannage de leurs claviers.
4
5 # Console de débugage
6
7 ## `hid_listen` ne reconnaît pas de périphérique
8
9 Lorsque la console de débugage sur votre périphérique n'est pas prêt, vous obtiendrez un message similaire :
10
11 ```
12 Waiting for device:.........
13 ```
14
15 Une fois le périphérique connecté, *hid_listen* le trouve et vous obtiendrez ce message :
16
17 ```
18 Waiting for new device:.........................
19 Listening:
20 ```
21
22 Si vous ne recevez pas ce message `Listening:`, essayez de compiler avec `CONSOLE_ENABLE=yes` dans le [Makefile]
23
24 Il se peut que vous ayez besoin de certains privilèges avancés pour accéder à des périphériques sur des OS comme Linux.
25
26 - Essayez `sudo hid_listen`
27
28 ## Ne reçoit pas de messages sur la console
29
30 Vérifiez :
31
32 - *hid_listen* trouve votre périphérique. Voir ci-dessus.
33 - Activez le débugage en appuyant sur **Magic**+d. Voir [Commandes Magic](https://github.com/tmk/tmk_keyboard#magic-commands).
34 - Définissez `debug_enable=true` en général dans `matrix_init()` du fichier **matrix.c**.
35 - Essayez d'utiliser la fonction `print` à la place du debug print. Voir **common/print.h**.
36 - Déconnectez tous les autres périphériques qui utilisent la fonction console. Voir [Issue #97](https://github.com/tmk/tmk_keyboard/issues/97).
37
38 ## Linux ou les systèmes UNIX nécessitent des privilèges super utilisateur
39
40 Utilisez `sudo` pour exécuter *hid_listen* avec des privilèges étendus.
41
42 ```
43 $ sudo hid_listen
44 ```
45
46 Ou ajoutez une *udev rule* pour les périphériques TMK en plaçant un fichier dans le répertoire rules. Le chemin vers ce répertoire peut varier en fonction du système.
47
48 Fichier: /etc/udev/rules.d/52-tmk-keyboard.rules(sous Ubuntu)
49 ```
50 # tmk keyboard products     https://github.com/tmk/tmk_keyboard
51 SUBSYSTEMS=="usb", ATTRS{idVendor}=="feed", MODE:="0666"
52 ```
53
54 ***
55
56 # Divers
57
58 ## Considérations de sécurité
59
60 Vous ne voulez probablement pas "briquer" votre clavier, rendre impossible d'écrire un firmware dessus. Il y a quelques paramètres qui montrent ce qui est (et n'est probablement pas) trop risqué.
61
62 - Si votre map de clavier n'inclut pas de RESET, pour entrer en mode DFU, vous devrez appuyer sur le bouton reset du PCB. Cela implique que vous devrez certainement dévisser certaines pièces de votre clavier pour y accéder.
63 - Modifier les fichiers tmk_core / common peut rendre le clavier inutilisable
64 - Si un fichier .hex trop large est la cause du problème : `make dfu` supprime le bloc puis teste la taille (il ne fait pas les choses dans le bon ordre), ce qui provoque une erreur. En résultat, le flash n’aura pas été fait et le clavier restera en mode DFU.
65 - Pour finir, notez que la taille maximale d'un fichier .hex sur un Plank est de 7000h (28672 decimal)
66
67 ```
68 Linking: .build/planck_rev4_cbbrowne.elf                                                            [OK]
69 Creating load file for Flash: .build/planck_rev4_cbbrowne.hex                                       [OK]
70
71 Size after:
72    text    data     bss     dec     hex filename
73       0   22396       0   22396    577c planck_rev4_cbbrowne.hex
74 ```
75
76 - La taille du fichier ci-dessus est de 22396/577ch, ce qui est en dessous de 28672/7000h
77 - Tant que vous avez un fichier .hex alternatif correct, vous pouvez réessayer en le chargeant
78 - Certaines options que vous pouvez spécifier dans votre Makefile consomme de la mémoire supplémentaire. Faites attention aux options BOOTMAGIC_ENABLE, MOUSEKEY_ENABLE, EXTRAKEY_ENABLE, CONSOLE_ENABLE, API_SYSEX_ENABLE.
79 - Les outils DFU **ne** vous permettent **pas** d'écrire dans le bootloader (à moins que vous n'ajoutiez des options spéciales), il n'y a donc peu de risque.
80 - Les EEPROM ont environ 100000 cycles d'écriture. Ne réécrivez pas le firmware de manière continue et répétée. Vous allez détruire définitivement l'EEPROM.
81
82 ## NKRO ne fonctionne pas
83
84 Premièrement, vous devez compiler le firmware avec l'option de compilation `NKRO_ENABLE` dans le **Makefile**.
85
86 Essayez la commande `Magic` **N** (`LShift+RShift+N` par défaut) si **NKRO** ne fonctionne toujours pas. Vous pouvez utiliser cette commande pour basculer temporairement entre le mode **NKRO** et **6KRO**. Sous certaines conditions, **NKRO** ne fonctionnera pas et vous devrez basculer en **6KRO**, en particulier lorsque vous êtes dans le BIOS.
87
88 Si votre firmware est compilé avec `BOOTMAGIC_ENABLE` vous devrez l'activer avec la commande `BootMagic` **N** (`Espace+N` par défaut). Cette option est enregistrée dans l'EEPROM et sera gardé entre deux cycles de démarrage.
89
90 https://github.com/tmk/tmk_keyboard#boot-magic-configuration---virtual-dip-switch
91
92 ## Le TrackPoint a besoin Circuit de réinitialisation (Support de souris PS/2)
93
94 Sans circuit de réinitialisation vous allez avoir des résultats inconsistants à cause de la mauvaise initialisation du matériel. Regardez le schéma du circuit du TPM754.
95
96 - http://geekhack.org/index.php?topic=50176.msg1127447#msg1127447
97 - http://www.mikrocontroller.net/attachment/52583/tpm754.pdf
98
99 ## Impossible de lire la colonne de la matrice après 16
100
101 Utilisez `1UL<<16` à la place de `1<<16` dans `read_cols()` du fichier [matrix.h] lorsque le nombre de vos colonnes dépassent 16.
102
103 En C, `1` implique un type [int] qui est [16 bits] pour les AVR, ce qui implique que vous ne pouvez pas décaler à gauche de plus de 15. Si vous utilisez `1<<16`, vous aurez un résultat non attendu de zéro. Vous devez donc utiliser un type [unsigned long] en utilisant `1UL`.
104
105 http://deskthority.net/workshop-f7/rebuilding-and-redesigning-a-classic-thinkpad-keyboard-t6181-60.html#p146279
106
107 ## Bootloader Jump ne fonctionne pas
108
109 Configurez correctement la taille du bootloader dans le **Makefile**. Une mauvaise taille de section du bootloader empêchera probablement le démarrage avec **Magic command** et **Boot Magic**.
110
111 ```
112 # Size of Bootloaders in bytes:
113 #   Atmel DFU loader(ATmega32U4)   4096
114 #   Atmel DFU loader(AT90USB128)   8192
115 #   LUFA bootloader(ATmega32U4)    4096
116 #   Arduino Caterina(ATmega32U4)   4096
117 #   USBaspLoader(ATmega***)        2048
118 #   Teensy   halfKay(ATmega32U4)   512
119 #   Teensy++ halfKay(AT90USB128)   2048
120 OPT_DEFS += -DBOOTLOADER_SIZE=4096
121 ```
122
123 La taille de la section de démarrage de AVR est définie par l'option **BOOTSZ** fuse. Vérifiez la fiche technique du MCU. Veuilez noter que les tailles et adresses sont définies en **Word** (2 octets) dans la fiche technique alors que TMK utilise des **Byte**.
124
125 La section de boot AVR se trouve à la fin de la mémoire flash, comme suit.
126
127 ```
128 byte     Atmel/LUFA(ATMega32u4)          byte     Atmel(AT90SUB1286)
129 0x0000   +---------------+               0x00000  +---------------+
130          |               |                        |               |
131          |               |                        |               |
132          |  Application  |                        |  Application  |
133          |               |                        |               |
134          =               =                        =               =
135          |               | 32KB-4KB               |               | 128KB-8KB
136 0x6000   +---------------+               0x1E000  +---------------+
137          |  Bootloader   | 4KB                    |  Bootloader   | 8KB
138 0x7FFF   +---------------+               0x1FFFF  +---------------+
139
140
141 byte     Teensy(ATMega32u4)              byte     Teensy++(AT90SUB1286)
142 0x0000   +---------------+               0x00000  +---------------+
143          |               |                        |               |
144          |               |                        |               |
145          |  Application  |                        |  Application  |
146          |               |                        |               |
147          =               =                        =               =
148          |               | 32KB-512B              |               | 128KB-2KB
149 0x7E00   +---------------+               0x1FC00  +---------------+
150          |  Bootloader   | 512B                   |  Bootloader   | 2KB
151 0x7FFF   +---------------+               0x1FFFF  +---------------+
152 ```
153
154 Référez-vous à cette discussion pour plus de référence.
155 https://github.com/tmk/tmk_keyboard/issues/179
156
157 Si vous utilisez un TeensyUSB, il y a un [bug connu](https://github.com/qmk/qmk_firmware/issues/164) qui fait que le bouton reset matériel empêche la touche RESET de fonctionner. Débrancher et rebrancher le clavier devrait résoudre le problème.
158
159 ## Les touches spéciales ne fonctionnent pas (Touche Système, Touches de contrôle du son)
160
161 Vous devez définir `EXTRAKEY_ENABLE` dans le fichier `rules.mk` pour les utiliser dans QMK.
162
163 ```
164 EXTRAKEY_ENABLE = yes          # Audio control and System control
165 ```
166
167 ## Réveiller du mode veille ne fonctionne pas
168
169 Sous Windows, activez l'option `Permettre au périphérique de sortir l'ordinateur de veille` dans les paramètres des **Options d'alimentations** du **Gestionnaire de périphériques**. Vérifiez aussi les paramètres du BIOS.
170
171 Appuyer sur n'importe quelle touche en mode veille devrait sortir l'ordinateur de veille.
172
173 ## Vous utilisez un Arduino ?
174
175 **Faites attention au fait que le nommage des pin d'un Arduino diffère de la puce**. Par exemple, la pin `D0` n'est pas `PD0`. Vérifiez le circuit avec la fiche technique.
176
177 - http://arduino.cc/en/uploads/Main/arduino-leonardo-schematic_3b.pdf
178 - http://arduino.cc/en/uploads/Main/arduino-micro-schematic.pdf
179
180 Les Arduino Leonardo et micro ont des **ATMega32U4** et peuvent être utilisés avec TMK, mais le bootloader Arduino peut causer des problèmes.
181
182 ## Activer JTAG
183
184 Par défaut, le débugage des interfaces JTAG est désactivé dès que le clavier démarre. Les MCUs compatible JTAG viennent d'usine avec le fusible `JTAGEN` activé, et il prend certaines pins du MCU que la board pourrait utiliser pour la matrice, les LEDs, etc.
185
186 Si vous voulez garder JTAG activé, ajoutez la ligne suivante à votre fichier `config.h` :
187
188 ```c
189 #define NO_JTAG_DISABLE
190 ```
191
192 ## Adding LED Indicators of Lock Keys
193
194 Si vous souhaitez votre propre indicateur LED pour CapsLock, ScrollLock et NumLock alors lisez ce post.
195
196 http://deskthority.net/workshop-f7/tmk-keyboard-firmware-collection-t4478-120.html#p191560
197
198 ## Programmer Arduino Micro/Leonardo
199
200 Appuyez sur le bouton reset puis lancez la commande suivante dans les 8 secondes.
201
202 ```
203 avrdude -patmega32u4 -cavr109 -b57600 -Uflash:w:adb_usb.hex -P/dev/ttyACM0
204 ```
205
206 Le nom du périphérique peut varier en fonction de votre système.
207
208 http://arduino.cc/en/Main/ArduinoBoardMicro
209 https://geekhack.org/index.php?topic=14290.msg1563867#msg1563867
210
211 ## Compatibilité USB 3
212
213 Il semble que certaines personnes ont eu des problèmes avec les ports USB 3, essayez un port USB 2.
214
215 ## Compatibilité Mac
216
217 ### OS X 10.11 et Hub
218
219 https://geekhack.org/index.php?topic=14290.msg1884034#msg1884034
220
221 ## Problème sur BIOS (UEFI) / Resume (Mise en veille et réveil) / Redémarrage
222
223 Certaines personnes ont eu des problèmes de fonctionnement de leur clavier dans le BIOS et/ou après des redémarrages.
224
225 Pour le moment, l'origine du problème n'est pas comprise, mais certaines options de compilation semble liées. Dans le Makefile, essayez de désactiver les options comme  `CONSOLE_ENABLE`, `NKRO_ENABLE`, `SLEEP_LED_ENABLE` et/ou d'autres.
226
227 https://github.com/tmk/tmk_keyboard/issues/266
228 https://geekhack.org/index.php?topic=41989.msg1967778#msg1967778
229
230 ## FLIP ne marche pas
231
232 ### `AtLibUsbDfu.dll` Not Found
233
234 Supprimez le pilote actuel et réinstallez celui donné par FLIP dans le gestionnaire de périphériques.
235
236 http://imgur.com/a/bnwzy