aboutsummaryrefslogtreecommitdiff
path: root/docs/de/newbs_testing_debugging.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/de/newbs_testing_debugging.md')
-rw-r--r--docs/de/newbs_testing_debugging.md102
1 files changed, 0 insertions, 102 deletions
diff --git a/docs/de/newbs_testing_debugging.md b/docs/de/newbs_testing_debugging.md
deleted file mode 100644
index 4d4e7cfee..000000000
--- a/docs/de/newbs_testing_debugging.md
+++ /dev/null
@@ -1,102 +0,0 @@
1# Testen und Debuggen
2
3Nachdem Du deine Tastatur mit deiner angepassten Firmware geflasht hast, ist es nun an der Zeit sie auszuprobieren. Mit ein bisschen Glück sollte alles ohne Probleme funktionieren, wenn dies nicht der Fall ist, soll dieses Dokument dir dabei helfen, herauszufinden wo das Problem liegt.
4
5## Testen
6
7Die Tastatur zu testen ist relativ selbsterklärend. Drücke jede der Tasten um dich zu versichern, dass der gesendete Keyode der ist, den du erwarten würdest. Dafür gibt es sogar ein paar Programme die helfen sollen, dass keine Taste ausgelassen wurde.
8
9Anmerkung: Diese Programme werden weder von QMK bereitgestellt oder gutgeheißen.
10
11* [Switch Hitter](https://elitekeyboards.com/switchhitter.php) (Nur für Windows)
12* [Keyboard Viewer](https://www.imore.com/how-use-keyboard-viewer-your-mac) (Nur für Mac)
13* [Keyboard Tester](https://www.keyboardtester.com) (Web basiert)
14* [Keyboard Checker](https://keyboardchecker.com) (Web basiert)
15
16## Debuggen
17
18Deine Tastatur wird Debug Informationen liefern wenn Du `CONSOLE_ENABLE = yes` in deiner `rules.mk` gesetzt hast. Die default-Ausgabe ist sehr beschränkt und kann wenn nötig durch die Aktivierung des Debug-Modes erhöht werden. Benutze dafür entweder den `DEBUG` Keycode in deiner Tastaturbelegung, das [Command](de/feature_command.md)-Feature oder füge den folgenden Code zu deiner Tastaturbelegung hinzu.
19
20```c
21void keyboard_post_init_user(void) {
22 // Customise these values to desired behaviour
23 debug_enable=true;
24 debug_matrix=true;
25 //debug_keyboard=true;
26 //debug_mouse=true;
27}
28```
29
30### Debuggen mit der QMK Toolbox
31
32Für kompatible Plattformen kann die [QMK Toolbox](https://github.com/qmk/qmk_toolbox) benutzt werden um Debug-Nachrichten deiner Tastatur anzuzeigen.
33
34### Debuggen mit hid_listen
35
36Bevorzugst Du es lieber auf der Befehlszeile zu debuggen? Dafür eignet sich das Programm [hid_listen](https://www.pjrc.com/teensy/hid_listen.html) von PJRC. Binaries sind für Windows, Linux und MacOS verfügbar.
37
38<!-- FIXME: Describe the debugging messages here. -->
39
40## Eigene Debug-Nachrichten senden
41
42Manchmal ist es hilfreich Debug-Nachrichten innerhalb deines eigenen [Custom Codes](de/custom_quantum_functions.md) zu drucken. Das ist ziemlich einfach. Beginne damit `print.h` am Anfang deiner Datei zu inkludieren:
43
44```c
45#include "print.h"
46```
47
48Danach stehen dir verschiedene Druck-Funktionen zur Verfügung:
49
50* `print("string")`: Druckt einen simplen String
51* `uprintf("%s string", var)`: Druckt einen formatierten String
52* `dprint("string")` Druckt einen simplen String, aber nur wenn der Debug-Mode aktiviert ist
53* `dprintf("%s string", var)`: Druckt einen formatierten String, aber nur wenn der Debug-Mode aktiviert ist
54
55## Debug Beispiele
56
57Anbei findest Du eine Sammlung von hilfreichen Beispielen. Für weitere Informationen Informationen sei an dieser Stelle auf [Debugging/Troubleshooting QMK](de/faq_debug.md) verwiesen.
58
59### Which matrix position is this keypress?
60### Welche Matrix Position hat dieser Tastenanschlag
61
62Beim Portieren, oder bei der Fehlerdiagnose von PCB Problemen, ist es nützlich sich anzeigen zu lassen ob ein Tastenanschlag richtig erkannt wurde. Um die Protokollierung für diesen Fall zu aktivieren, füge bitte folgenden Code zu deiner Tastaturbelegung `keymap.c` hinzu.
63
64```c
65bool process_record_user(uint16_t keycode, keyrecord_t *record) {
66 // Wenn 'console' aktiviert ist wird die Matrix-Position und der Status jedes Tastenanschlags ausgegeben
67#ifdef CONSOLE_ENABLE
68 uprintf("KL: kc: %u, col: %u, row: %u, pressed: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed);
69#endif
70 return true;
71}
72```
73
74Beispiel Ausgabe:
75```text
76Waiting for device:.......
77Listening:
78KL: kc: 169, col: 0, row: 0, pressed: 1
79KL: kc: 169, col: 0, row: 0, pressed: 0
80KL: kc: 174, col: 1, row: 0, pressed: 1
81KL: kc: 174, col: 1, row: 0, pressed: 0
82KL: kc: 172, col: 2, row: 0, pressed: 1
83KL: kc: 172, col: 2, row: 0, pressed: 0
84```
85
86### Wieviel Zeit wurde benötigt um einen Tastenanschlag zu detektieren?
87
88Wenn Performance-Probleme auftreten ist es hilfreich die Frequenz, mit der die Matrix gescannt wird, zu wissen. Um dies in diesem Fall zu aktiveren füge, den folgenden Code zu deiner Tastaturbelegung in `config.h` hinzu.
89
90```c
91#define DEBUG_MATRIX_SCAN_RATE
92```
93
94Beispiel Ausgabe
95```text
96 > matrix scan frequency: 315
97 > matrix scan frequency: 313
98 > matrix scan frequency: 316
99 > matrix scan frequency: 316
100 > matrix scan frequency: 316
101 > matrix scan frequency: 316
102```