diff options
Diffstat (limited to 'docs/de')
-rw-r--r-- | docs/de/README.md | 32 | ||||
-rw-r--r-- | docs/de/_summary.md | 122 | ||||
-rw-r--r-- | docs/de/cli.md | 150 | ||||
-rw-r--r-- | docs/de/driver_installation_zadig.md | 47 | ||||
-rw-r--r-- | docs/de/newbs.md | 22 | ||||
-rw-r--r-- | docs/de/newbs_building_firmware.md | 78 | ||||
-rw-r--r-- | docs/de/newbs_flashing.md | 369 | ||||
-rw-r--r-- | docs/de/newbs_getting_started.md | 101 | ||||
-rw-r--r-- | docs/de/newbs_learn_more_resources.md | 14 | ||||
-rw-r--r-- | docs/de/newbs_testing_debugging.md | 102 |
10 files changed, 0 insertions, 1037 deletions
diff --git a/docs/de/README.md b/docs/de/README.md deleted file mode 100644 index f5f35d9d1c..0000000000 --- a/docs/de/README.md +++ /dev/null @@ -1,32 +0,0 @@ -# Quantum Mechanical Keyboard Firmware - -[![Aktuelle Version](https://img.shields.io/github/tag/qmk/qmk_firmware.svg)](https://github.com/qmk/qmk_firmware/tags) -[![Discord](https://img.shields.io/discord/440868230475677696.svg)](https://discord.gg/Uq7gcHh) -[![Docs Status](https://img.shields.io/badge/docs-ready-orange.svg)](https://docs.qmk.fm) -[![GitHub contributors](https://img.shields.io/github/contributors/qmk/qmk_firmware.svg)](https://github.com/qmk/qmk_firmware/pulse/monthly) -[![GitHub forks](https://img.shields.io/github/forks/qmk/qmk_firmware.svg?style=social&label=Fork)](https://github.com/qmk/qmk_firmware/) - -## Was ist QMK Firmware? - -QMK (*Quantum Mechanical Keyboard*) ist eine Open-Source-Community, welche die QMK-Firmware, die QMK-Toolbox, [qmk.fm](https://qmk.fm) und diese Dokumententation betreut. QMK-Firmware ist eine Weiterentwicklung der [tmk\_keyboard](https://github.com/tmk/tmk_keyboard)-Tastatur-Firmware mit vielen nützlichen Zusatzfunktionen für Atmel AVR-Prozessoren. Ursprünglich wurde sie für Produkte von [OLKB](https://olkb.com), das [ErgoDox EZ](https://www.ergodox-ez.com) und das [Clueboard](https://clueboard.co/) entwickelt. Im Laufe der Zeit wurde sie mit Hilfe von [ChibiOS](https://chibios.org) auch für die ARM-Architektur angepasst. Außerdem ist es inzwischen möglich, auch handverdrahtete Tastaturen und selbst geätzte PCBs mit QMK zu verwenden. - -## Bezugsquelle für QMK - -Wenn Du vorhast, deine Tastatur, Tastaturbelegung oder Features zu QMK beizusteuern, geht das am einfachsten, indem Du das [Repository auf GitHub](https://github.com/qmk/qmk_firmware#fork-destination-box) forkst, die Änderungen in deinem lokalen Repo vornimmst und anschließend einen [Pull Request](https://github.com/qmk/qmk_firmware/pulls) einreichst. - -Ansonsten kannst Du es als [zip](https://github.com/qmk/qmk_firmware/zipball/master) oder [tar](https://github.com/qmk/qmk_firmware/tarball/master) herunterladen, oder es direkt via git klonen (`git clone git@github.com:qmk/qmk_firmware.git` bzw. `git clone https://github.com/qmk/qmk_firmware.git`). - - -## Anleitung fürs Kompilieren - -Bevor Du in der Lage bist, die Firmware zu kompilieren, musst Du eine [Entwicklungsumgebung](de/getting_started_build_tools.md) für AVR und/oder ARM aufsetzen. Danach kannst Du mit dem `make` Befehl eine Keymap für deine Tastatur erzeugen. Die Notation dafür ist: - - make planck/rev4:default - -Dies generiert die Revision `rev4` für eine Tastatur vom Type `planck` mit der `default` Tastaturbelegung. Nicht alle Tastaturen haben Revisionen (auch bekannt als Subprojekt oder Unterordner) weswegen dies auch ausgelassen werden kann: - - make preonic:default - -## Möglichkeiten der Anpassung - -QMK hat viele [Features](de/features.md), die es zu entdecken gibt. In der [Dokumentation](https://docs.qmk.fmk) kannst Du Dir einen Überblick verschaffen. Die meisten Features basieren darauf, die [Tastaturbelegung](de/keymap.md) anzupassen und das Verhalten der [Keycodes](de/keycodes.md) zu verändern. diff --git a/docs/de/_summary.md b/docs/de/_summary.md deleted file mode 100644 index ffbd292bd4..0000000000 --- a/docs/de/_summary.md +++ /dev/null @@ -1,122 +0,0 @@ -* [Anleitung für Anfänger](de/newbs.md) - * [Erste Schritte](de/newbs_getting_started.md) - * [Die erste Firmware](de/newbs_building_firmware.md) - * [Firmware flashen](de/newbs_flashing.md) - * [Testen und Debuggen](de/newbs_testing_debugging.md) - * [Git Tips und Tricks](de/newbs_best_practices.md) - * [Hilfreiche Ressourcen](de/newbs_learn_more_resources.md) - -* [QMK Basics](de/README.md) - * [QMK Einführung](de/getting_started_introduction.md) - * [QMK CLI](de/cli.md) - * [QMK CLI Konfiguration](de/cli_configuration.md) - * [Zu QMK beitragen](de/contributing.md) - * [Anleitung für GitHub](de/getting_started_github.md) - * [Nach Hilfe fragen](de/getting_started_getting_help.md) - -* [Breaking Changes](de/breaking_changes.md) - * [2019 Aug 30](de/ChangeLog/20190830.md) - -* [FAQ](de/faq.md) - * [Häufige Fragen](de/faq_general.md) - * [Build/Kompilieren](de/faq_build.md) - * [Debugging/Troubleshooting](de/faq_debug.md) - * [Keymap](de/faq_keymap.md) - * [Treiber Installation mit Zadig](de/driver_installation_zadig.md) - -* Detailierte Guides - * [Build Tools installieren](de/getting_started_build_tools.md) - * [Vagrant Guide](de/getting_started_vagrant.md) - * [Build/Compile Anleitung](de/getting_started_make_guide.md) - * [Firmware flashen](de/flashing.md) - * [Funktionalität anpassen](de/custom_quantum_functions.md) - * [Keymap Überblick](de/keymap.md) - -* [Hardware](de/hardware.md) - * [AVR Prozessoren](de/hardware_avr.md) - * [Treiber](de/hardware_drivers.md) - -* Referenz - * [Tastatur Richtlinien](de/hardware_keyboard_guidelines.md) - * [Konfigurations Optionen](de/config_options.md) - * [Keycodes](de/keycodes.md) - * [Coding Konventionen - C](de/coding_conventions_c.md) - * [Coding Konventionen - Python](de/coding_conventions_python.md) - * [Dokumentations Best Practices](de/documentation_best_practices.md) - * [Dokumentations Templates](de/documentation_templates.md) - * [Glossar](de/reference_glossary.md) - * [Unit Testing](de/unit_testing.md) - * [Nützliche Funktionen](de/ref_functions.md) - * [Configurator Support](de/reference_configurator_support.md) - * [info.json Format](de/reference_info_json.md) - * [Python CLI Development](de/cli_development.md) - -* [Features](de/features.md) - * [Basic Keycodes](de/keycodes_basic.md) - * [US ANSI Shifted Keys](de/keycodes_us_ansi_shifted.md) - * [Quantum Keycodes](de/quantum_keycodes.md) - * [Advanced Keycodes](de/feature_advanced_keycodes.md) - * [Audio](de/feature_audio.md) - * [Auto Shift](de/feature_auto_shift.md) - * [Backlight](de/feature_backlight.md) - * [Bluetooth](de/feature_bluetooth.md) - * [Bootmagic](de/feature_bootmagic.md) - * [Combos](de/feature_combo.md) - * [Command](de/feature_command.md) - * [Debounce API](de/feature_debounce_type.md) - * [DIP Switch](de/feature_dip_switch.md) - * [Dynamic Macros](de/feature_dynamic_macros.md) - * [Encoders](de/feature_encoders.md) - * [Grave Escape](de/feature_grave_esc.md) - * [Haptic Feedback](de/feature_haptic_feedback.md) - * [HD44780 LCD Controller](de/feature_hd44780.md) - * [Key Lock](de/feature_key_lock.md) - * [Layouts](de/feature_layouts.md) - * [Leader Key](de/feature_leader_key.md) - * [LED Matrix](de/feature_led_matrix.md) - * [Macros](de/feature_macros.md) - * [Mouse Keys](de/feature_mouse_keys.md) - * [OLED Driver](de/feature_oled_driver.md) - * [One Shot Keys](de/one_shot_keys.md) - * [Pointing Device](de/feature_pointing_device.md) - * [PS/2 Mouse](de/feature_ps2_mouse.md) - * [RGB Lighting](de/feature_rgblight.md) - * [RGB Matrix](de/feature_rgb_matrix.md) - * [Space Cadet](de/feature_space_cadet.md) - * [Split Keyboard](de/feature_split_keyboard.md) - * [Stenography](de/feature_stenography.md) - * [Swap Hands](de/feature_swap_hands.md) - * [Tap Dance](de/feature_tap_dance.md) - * [Terminal](de/feature_terminal.md) - * [Thermal Printer](de/feature_thermal_printer.md) - * [Unicode](de/feature_unicode.md) - * [Userspace](de/feature_userspace.md) - * [Velocikey](de/feature_velocikey.md) - -* Für Maker und Modder - * [Hand Wiring Guide](de/hand_wire.md) - * [ISP Flashing Guide](de/isp_flashing_guide.md) - * [ARM Debugging Guide](de/arm_debugging.md) - * [I2C Driver](de/i2c_driver.md) - * [SPI Driver](de/spi_driver.md) - * [GPIO Controls](de/internals_gpio_control.md) - * [Proton C Conversion](de/proton_c_conversion.md) - -* Für ein tieferes Verständnis - * [Wie Tastaturen funktionieren](de/how_keyboards_work.md) - * [QMK verstehen](de/understanding_qmk.md) - -* Andere Themen - * [Eclipse mit QMK](de/other_eclipse.md) - * [VSCode mit QMK](de/other_vscode.md) - * [Support](de/getting_started_getting_help.md) - * [Übersetzungen](de/translating.md) - -* QMK Internals (In Progress) - * [Defines](de/internals_defines.md) - * [Input Callback Reg](de/internals_input_callback_reg.md) - * [Midi Device](de/internals_midi_device.md) - * [Midi Device Setup Process](de/internals_midi_device_setup_process.md) - * [Midi Util](de/internals_midi_util.md) - * [Send Functions](de/internals_send_functions.md) - * [Sysex Tools](de/internals_sysex_tools.md) diff --git a/docs/de/cli.md b/docs/de/cli.md deleted file mode 100644 index 259aeecf75..0000000000 --- a/docs/de/cli.md +++ /dev/null @@ -1,150 +0,0 @@ -# QMK CLI (Kommandozeile) - -Diese Seite beschreibt die Einrichtung und den Umgang mit dem QMK CLI (Kommandozeile). - -# Übersicht - -Die QMK CLI vereinfacht das Zusammenbauen und Arbeiten mit QMK Tastaturen. Hier findest Du wichtige Befehle, um beispielsweise das Herunterladen und Kompilieren der QMK Firmware oder das Erstellen von Tastaturbelegungen (und vieles mehr) zu erleichtern. - -* [Globale CLI](#globale-cli) -* [Lokale CLI](#lokale-cli) -* [CLI-Befehle](#cli-befehle) - -# System-Anforderungen - -Die CLI benötigt Python 3.5 oder höher. Außerdem ist es nötig, die Packages laut [`requirements.txt`](https://github.com/qmk/qmk_firmware/blob/master/requirements.txt) zu installieren. - -# Globale CLI - -QMK bietet ein installierbares CLI, das Du zum Einrichten Deiner QMK Build-Umgebung verwenden kannst. Dieses ermöglicht Dir das Arbeiten mit QMK, und erleichtert das Arbeiten mit mehreren Kopien der `qmk_firmware`. Wir empfehlen, dieses CLI zu installieren und regelmäßig upzudaten. - -## Installation mit Homebrew (macOS, manche Linux) - -Solltest Du [Homebrew](https://brew.sh) installiert haben, kannst Du QMK per tap installieren: - -``` -brew tap qmk/qmk -brew install qmk -export QMK_HOME='~/qmk_firmware' # Optional: setzt den Installationsort für `qmk_firmware` -qmk setup # Dies klont `qmk/qmk_firmware` und richtet optional auch Deine Build-Umgebung ein -``` - -## Installation mit easy_install oder pip - -Falls Du kein Homebrew hast, kannst Du QMK auch manuell installieren. Zuerst musst Du sicherstellen, dass Python 3.5 (oder höher) und pip installiert ist. Dann installiere QMK mit diesem Befehl: - -``` -pip3 install qmk -export QMK_HOME='~/qmk_firmware' # Optional: setzt den Installationsort für `qmk_firmware` -qmk setup # Dies klont `qmk/qmk_firmware` und richtet optional auch Deine Build-Umgebung ein -``` -## Installation mit git Repo - -`git clone https://github.com/qmk/qmk_cli.git && cd qmk_cli && python3 setup.py install` - -## Packaging für andere Betriebssysteme - -Wir suchen nach Freiwilligen, die ein `qmk`-Package für weitere Betriebssysteme erstellen und pflegen. Falls Du ein Package für Dein OS erstellen möchtest, bitte befolge diese Richtlinien: - -* Verwende "Best Practices" für Dein OS, sollten sie mit diesen Richtlinien in Konflikt stehen. - * Dokumentiere den Grund in einem Kommentar, wenn Du abweichen musstest. -* Installiere mit einem [virtualenv](https://virtualenv.pypa.io/en/latest/). -* Weise den User an, die Umgebungs-Variable `QMK_HOME` zu setzen, um die Firmware-Quelle anders einzustellen als `~/qmk_firmware`. - -# CLI-Befehle - -## `qmk compile` - -Dieser Befehl erlaubt es dir, die Firmware - aus egal welchem Datei-Verzeichnis - zu compilen. Du kannst JSON-Exporte von <https://config.qmk.fm> oder Keymaps in der Repo kompilen. - -**Anwendung für Konfigurations-Exports**: - -``` -qmk compile <configuratorExport.json> -``` - -**Anwendung für Keymaps**: - -``` -qmk compile -kb <keyboard_name> -km <keymap_name> -``` - -## `qmk format-c` - -Dieser Befehl formatiert C-Code im clang-Format. Benutze ihn ohne Argumente, um den core-Code zu formatieren, oder benutze Namen von Dateien in der CLI, um den Befehl auf bestimmte Dateien anzuwenden. - -**Anwendung**: - -``` -qmk format-c [file1] [file2] [...] [fileN] -``` - -## `qmk config` - -Dieser Befehl konfiguriert das Verhalten von QMK. Für die volle `qmk config`-Dokumentation gehe zu [CLI-Konfiguration](cli_configuration.md). - -**Anwendung**: - -``` -qmk config [-ro] [config_token1] [config_token2] [...] [config_tokenN] -``` - -## `qmk docs` - -Dieser Befehl startet einen lokalen HTTP-Server, den Du zum Browsen oder Verbessern der Dokumentation verwenden kannst. Der Default-Port ist 8936. - -**Anwendung**: - -``` -qmk docs [-p PORT] -``` - -## `qmk doctor` - -Dieser Befehl untersucht Deine Umgebung und warnt Dich vor potentiellen Build- oder Flash-Problemen. - -**Anwendung**: - -``` -qmk doctor -``` - -## `qmk list-keyboards` - -Dieser Befehl listet alle zurzeit in `qmk_firmware` definierten Tastaturen/Keyboards auf. - -**Anwendung**: - -``` -qmk list-keyboards -``` - -## `qmk new-keymap` - -Dieser Befehl erstellt eine neue Keymap basierend auf einer existierenden Standard-Keymap eines bestimmten Keyboards. - -**Anwendung**: - -``` -qmk new-keymap [-kb KEYBOARD] [-km KEYMAP] -``` - -## `qmk format-py` - -Dieser Befehl formatiert Python-Code in `qmk_firmware`. - -**Anwendung**: - -``` -qmk format-py -``` - -## `qmk pytest` - -Dieser Befehl führt die Python Test Suite aus. Wenn Du Python-Code veränderst, solltest Du sicherstellen, dass der Test erfolgreich ausgeführt wurde. - -**Anwendung**: - -``` -qmk pytest -``` diff --git a/docs/de/driver_installation_zadig.md b/docs/de/driver_installation_zadig.md deleted file mode 100644 index bd04e05430..0000000000 --- a/docs/de/driver_installation_zadig.md +++ /dev/null @@ -1,47 +0,0 @@ -# Bootloader Treiber Installation mit Zadig - -QMK erscheint für den Host als normales HID Eingabegerät und benötigt deshalb keine zusätzlichen Treiber. Der Bootloader, den Du für das Flashen der Firmware benötigst, jedoch meistens schon. - -Hierzu gibt es zwei Ausnahmen: den Caterina Bootloader, meistens auf Pro Micros, sowie den HalfKay Bootloader auf PJRC Teensys. Diese erscheinen als serieller Port und als generisches HID Gerät und benötigen keine Treiber. - -Wir empfehlen deshalb [Zadig](https://zadig.akeo.ie/). Wenn Du die Entwicklungsumgebung mit MSYS2 oder WSL installiert hast, wird dich dass `qmk_install.sh` Skript gefragt haben, ob es die Treiber für dich installieren sollte. - -## Installation - -Versetze deine Tastatur in den Bootloader-Modus, entweder durch Betätigung des physischen `RESET` Schalters - meist auf der Unterseite der Platine - oder durch das Auslösen des Key-Codes `RESET` bzw. `KC_RESET` (sollte in der zur Tastatur gehörigen `keycode.c` zu entnehmen sein). Sollte deine Tastatur weder noch besitzen, versuche es damit die `Escape`-Taste oder `Leertaste + B` zu halten während Du die Tastatur mit dem PC verbindest (Siehe auch [Bootmagic](de/feature_bootmagic.md) für weitere Details). Ein paar Tastaturen benutzen das [Command](de/feature_command.md)-Feature an Stelle von Bootmagic; in diesem Fall kannst du mit den Tastenkombinationen `linkes Shift + rechtes Shift + B` oder `linkes Shift + rechtes Shift + Escape` zu jeder Zeit in den Bootloader wechseln solange die Tastatur verbunden ist. - -Eingie Tastaturen haben u.U. spezielle Anweisungen um in den Bootloader-Modus zu gelangen. Zum Beispiel kann die [Bootmagic-Lite](de/feature_bootmagic.md#bootmagic-lite)-Taste (default: Escape) auf eine andere Taste gemappt sein; oder die magische Kombination (default: linkes Shift+rechtes Shift) verwendet anstatt Shift die STRG-Tasten. Die zur Tastatur gehörige README sollte dir Aufschluss darüber geben wie der Bootloader-Modus ausgelöst werden kann wenn Du unsicher bist. - -Um ein Gerät mit USBaspLoader in den Bootloader-Modus zu versetzen, halte `BOOT` gedrückt während Du den `RESET`-Knopf drückst. -Alternativ, halte `BOOT` gedrückt während Du das USB-Kabel einsteckst. - -Zadig sollte das Bootloader-Gerät automatisch erkennen. Manchmal musst Du zusätzlich noch **Options → List All Devices** auswählen. - - - Tastaturen mit Atmel AVR MCUs sollten als `ATm32U4DFU` (oder ähnlich) angezeigt werden, mit der Vendor ID `03EB`. - - USBasp werden als `USBasp` angezeigt, mit VID/PID `16C0:05DC`. - - Tastaturen AVR controller und dem QMK-DFU Bootloader haben den namen `<Tastatur Name> Bootloader` und die VID `03EB`. - - Die meisten ARM Tastaturen werden als `STM32 BOOTLOADER` angezeigt, mit VID/PID `0483:DF11`. - -!> Sollte Zadig ein oder mehrere Geräte mit `HidUsb`-Treiber anzeigen, dann ist deine Tastatur wahrscheinlich nicht im Bootloader-Modus. Der Pfeil wird orange eingefärbt sein und Du wirst nach einer Bestätigung gefragt um Veränderungen am System vorzunehmen. In diesem Fall **fahre nicht fort**! - -Wenn der Pfeil grün angezeigt wird, wähle den Treiber aus und klicke auf **Treiber installieren**. Der `libusb-win32`-Treiber sollte gewöhnlich für AVR verwendet werden und `WinUSB` für ARM. Sollte es danach noch nicht möglich sein die Tastatur zu flashen, versuche es mit einem anderen Treiber. Für USBaspLoader Geräte, die über die Befehlszeile mit MSYS2 geflasht werden, wird der `libusbk`-Treiber empfohlen. Ansonsten sollte `libusb-win32` funktionieren wenn die QMK Toolbox verwendet wird. - -![Zadig mit Bootloader-Treiber korrekt installiert](https://i.imgur.com/b8VgXzx.png) - -Entferne nun deine Tastatur und verbinde sie erneut um sicherzugehen dass der neue Treiber erfolgreich installiert wurde. Wenn Du QMK Toolbox benutzt, starte die Anwendung zur Sicherheit einmal neu, da Veränderungen am Treiber manchmal nicht richtig erkannt werden. Wenn dies immer noch nicht erfolgreich war hilft es an dieser Stelle manchmal ein Neustart des Computers. - -## Wiederherstellung einer Installation für ein falsches Gerät - -Wenn Du feststellst dass Du anschließend auf deiner Tastatur nicht mehr tippen kannst, ist etwas bei der Installation schief gelaufen. Ein häufiger Fehler ist es dass die Tastatur nicht im Bootloader-Modus war und stattdessen der Treiber für das HID-Gerät ersetzt wurde. Dies kannst Du einfach mit Zadig überprüfen, eine funktionierende Tastatur verwendet als Treiber `HidUsb` auf allen Interfaces . - -![Eine funktionierende Tastatur aus Zadigs Sicht](https://i.imgur.com/Hx0E5kC.png) - -Öffne den Geräte-Manager und suche nach einem Gerät das wie deine Tastatur aussieht. - -![Die Tastatur mit dem falschen Treiber installiert, im Geräte-Manager](https://i.imgur.com/L3wvX8f.png) - -Rechtsklick und **Gerät deinstallieren** anklicken. Bitte gehe sicher dass in diesem Schritt auch **Treibersoftware für dieses Gerät löschen** markiert ist. - -![Der "Gerät deinstallieren"-Dialog, mit "Treibersoftware für dieses Gerät entfernen" markiert](https://i.imgur.com/aEs2RuA.png) - -Klick **Aktion → Suche nach veränderter Hardware**. Nun solltest Du wieder in der Lage sein normal zu tippen. Vergewissere dich mit Hilfe von Zadig dass die Tastatur nun `HidUsb` als Treiber verwendet. Wenn dies der Fall ist sollte wieder alles funktionieren. diff --git a/docs/de/newbs.md b/docs/de/newbs.md deleted file mode 100644 index 61139a99e1..0000000000 --- a/docs/de/newbs.md +++ /dev/null @@ -1,22 +0,0 @@ -# Anleitung für absolute Beginner -QMK ist eine mächtige Open Source Firmware für mechanische Tastaturen. Mit QMK kannst Du deine Tastatur sowohl sehr einfach als auch sehr umfangreich anpassen. Menschen unterschiedlichen Wissensstandes - vom kompletten Anfänger bis zum erfahrenen Programmierer - haben ihre Tastaturen mit QMK erfolgreich auf ihre persönlichen Bedürfnisse angepasst. Diese Anleitung soll Dir unabhängig von deinen Vorkenntnissen dabei helfen dies ebenfalls zu bewältigen. - -Bist Du unsicher ob deine Tastatur QMK unterstützt? Wenn es eine mechanische Tastatur ist, die Du selbst gebaut hast, stehen deine Chancen gut. Wir unterstützen eine [Vielzahl](https://qmk.fm/keyboards/) selbst gebauter Tastaturen, sodass selbst wenn deine jetzige Tastatur nicht unterstützt wird Du keine Probleme haben solltest eine für deine Anforderungen zu finden. - -## Übersicht - -Diese Anleitung ist in 7 Abschnitte unterteilt: - -* [Die ersten Schritte](newbs_getting_started.md) -* [Die erste Firmware auf der Kommandozeile erzeugen](newbs_building_firmware.md) -* [Die erste Firmware mit der Online GUI erzeugen](newbs_building_firmware_configurator.md) -* [Firmware flashen](newbs_flashing.md) -* [Testen und Debuggen](newbs_testing_debugging.md) -* [Git Leitfaden](newbs_best_practices.md) -* [Weitere hilfreiche Ressourcen für Anfänger](newbs_learn_more_resources.md) - -Diese Anleitung richtet sich an Personen, die vorher noch nie Software kompiliert haben. Die Entscheidungen und Empfehlungen basieren auf dieser Grundannahme. Es gibt unterschiedliche Herangehensweisen für viele der Prozeduren und wir unterstützen die meisten Alternativen. Wenn Du mal nicht weiter weißt oder Dir nicht sicher bist, wie Du an ein Problem herangehen sollst, kannst Du uns gerne [um Hilfe bitten](getting_started_getting_help.md). - -## Weitere Ressourcen - -* [Thomas Baart's QMK Basics Blog](https://thomasbaart.nl/category/mechanical-keyboards/firmware/qmk/qmk-basics/) – Ein äußerst hilfreicher Blog eines Community-Mitglieds, der einige Grundlagen der QMK-Firmware aus der Sicht des Benutzers erklärt (auf Englisch). diff --git a/docs/de/newbs_building_firmware.md b/docs/de/newbs_building_firmware.md deleted file mode 100644 index b6d4840249..0000000000 --- a/docs/de/newbs_building_firmware.md +++ /dev/null @@ -1,78 +0,0 @@ -# Eine eigene Firmware erstellen - -Nachdem Du nun eine funktionierende Entwicklungsumgebung aufgesetzt hast, bist Du nun bereit, deine eigene Firmware zu erstellen. Dieses Sektion des Guides wird zwischen drei Programmen hin- und herwechseln: deinem Dateimanager, deinem Texteditor und der Befehlszeile. Lasse diese drei Fenster geöffnet, bis Du fertig und zufrieden mit deiner Tastatur-Firmware bist. - -Solltest Du die Befehlszeile zwischenzeitlich geschlossen haben, vergiss nicht wieder in das richtige Verzeichnis zu navigieren, benutze dazu den Befehl `cd qmk_firmware`. - -## Navigiere in deinen Keymap Ordner - -Beginne damit, in das `keymaps` Verzeichnis für deine Tastatur zu navigieren. - -Wenn Du macOS oder Windows benutzt, kannst Du einfach in das keymaps Verzeichnis wechseln. - -?> macOS:<br> - open keyboards/<keyboard_folder>/keymaps - -?> Windows:<br> - start .\\keyboards\\<keyboard_folder>\\keymaps - -## Eine Kopie der `default` Tastaturbelegung erstellen - -Wenn Du den `keymaps` Ordner geöffnet hast, solltest Du zuerst eine Kopie des `default` Verzeichnisses erstellen. Wir empfehlen dafür deinen GitHub Benutzernamen zu verweden, aber Du kannst auch jeden anderen Namen verwenden solange er nur aus Kleinbuchstaben, Zahlen und Unterstrichen besteht. - -Um den Prozess zu automatisieren kannst Du dazu auch das Skript `new_keymap.sh` verwenden. - -Navigiere dazu in das `qmk_firmware/util` Verzeichnis und gib folgenden Befehl ein: - -``` -./new_keymap.sh <keyboard path> <username> -``` - -Um zum Beispiel den Benutzernamen John für die Tastaturbelegung eines 1up60hse zu verwenden, würdest Du Folgendes eingeben: - -``` -./new_keymap.sh 1upkeyboards/1up60hse john -``` - -## Öffne `keymap.c` in deinem bevorzugtem Text Editor - -Öffne deine `keymap.c`. In dieser Datei findest Du die Strukturen, die das Verhalten deiner Tastatur bestimmen. Oben in der `keymap.c` befinden sich Definitionen (defines) und Aufzählungen (enums), die die Tastaturbelegung leserlicher machen sollen. Weiter unten wirst Du eine Zeile finden, die wie folgt aussieht: - - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -Diese Zeile markiert den Anfang der Liste der Ebenen (Layers). Darunter befinden sich Zeilen die entweder `LAYOUT` oder `KEYMAP` enthalten, das deutet auf den Start einer Ebene hin. Danach folgt eine Liste von Tasten, die dieser Ebene zugewiesen sind. - -!> Beim Bearbeiten einer Tastaturbelegung solltest Du darauf achten, keine Kommata hinzuzufügen oder zu entfernen. Ansonsten kann dies dazu führen, dass deine Firmware nicht mehr kompiliert und es ist nicht immer einfach festzustellen, wo genau ein Komma zuviel oder zu wenig ist. Die letzte Zeile hat am Ende kein Komma, die Zeilen davor jedoch schon. - -## Personalisiere die Tastaturbelegung nach deinen Wünschen - -Wie Du diesen Schritt abschließt ist vollkommen Dir überlassen. Ändere die eine Sache die Dich stört oder verändere alles von Grund auf. Du kannst Ebenen entfernen die Du nicht brauchst oder Neue hinzufügen, bis zu 32 Stück. Die folgende Dokumentation verrät Dir was Du hier alles definieren kannst: - -* [Keycodes](de/keycodes.md) -* [Features](de/features.md) -* [FAQ](de/faq.md) - -?> Während Du langsam ein Gefühl dafür kriegst wie Keymaps funktionieren, solltest Du darauf achten nicht zuviel auf einmal zu verändern. Größere Änderungen machen es schwieriger, Probleme zu debuggen. - -## Deine Firmware erzeugen - -Wenn Du damit fertig bist, deine Tastaturbelegung anzupassen, musst Du noch die Firmware erzeugen. Öffne dazu wieder die Befehlszeile und führe folgenden Befehl aus: - - make <my_keyboard>:<my_keymap> - -Wenn deine Tastaturbelegung z.B. "xyverz" heißt und Du die Belegung für ein rev5 planck erzeugen möchtest, lautet der Befehl: - - make planck/rev5:xyverz - -Während des Kompiliervorgangs wird viel Text auf dem Bildschirm ausgegeben. Es sollte am Ende mit etwas enden das ungefähr so aussieht: - -``` -Linking: .build/planck_rev5_xyverz.elf [OK] -Creating load file for flashing: .build/planck_rev5_xyverz.hex [OK] -Copying planck_rev5_xyverz.hex to qmk_firmware folder [OK] -Checking file size of planck_rev5_xyverz.hex [OK] - * File size is fine - 18392/28672 -``` - -## Deine Firmware flashen -Bitte fahre mit [Firmware flashen](de/newbs_flashing.md) fort, um zu erfahren, wie Du deine neue Firmware auf deine Tastatur flashen kannst. diff --git a/docs/de/newbs_flashing.md b/docs/de/newbs_flashing.md deleted file mode 100644 index 940438669e..0000000000 --- a/docs/de/newbs_flashing.md +++ /dev/null @@ -1,369 +0,0 @@ -# Deine Tastatur flashen - -Nachdem deine Firmware nun fertig ist musst Du Sie noch auf deine Tastatur flashen. - -## Flash-Vorgang mit QMK Toolbox - -Der einfachste Weg deine Tastatur zu flashen ist mit Hilfe der [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) - -Leider ist die QMK Toolbox derzeit nur für Windows und macOS verfügbar. Wenn Du Linux benutzt (oder es vorziehst die Firmware mit der Kommandozeile zu flashen) solltest Du die Methode benutzen die [hier](de/newbs_flashing.md#tastatur-mit-der-befehlszeile-flashen) beschrieben wird. - -### Lade die Datei in QMK Toolbox - -Beginne damit die Datei in der QMK Toolbox Anwendung zu laden. Versichere dich dass Du die Firmware-Datei im Finder oder Explorer findest. Deine Tastatur-Firmware sollte entweder vom Typ `.hex` oder `.bin` sein sein. QMK sollte die für deine Tastatur entsprechende Datei automatisch in das Root-Verzeichnis (normalerweise `qmk_firmware`) kopieren. - -?> Wenn Du Windows oder macOS benutzt kannst Du mit folgenden Befehlen ganz einfach das aktuelle Firmware-Verzeichnis im Explorer oder Finder öffnen. - -#### Windows: - -``` start . ``` - -#### macOS: - -``` open . ``` - -Die Firmware-Dateien folgen dabei immer folgendem Schema: - - <meine_Tastatur>_<meine_Tastaturbelegung>.{bin,hex} - -Zum Beispiel würde ein `planck/rev5` mit der `default` Tastaturbelegung folgenden Dateinamen haben: - - planck_rev5_default.hex - -Wenn Du die Firmware-Datei gefunden hast kannst Du sie in das "Local file" ("Lokale Datei") Feld in der QMK Toolbox ziehen, alternativ kannst Du auf "Öffnen" klicken und in das Verzeichnis navigieren indem sich die Firmware-Datei befindet. - -### Die Tastatur in den DFU (Bootloader) Modus versetzen - -Um deine angepasste Firmware auf deine Tastatur zu flashen musst Du diese erst in einen speziellen "flashing"-Modus versetzen. Während die Tastatur in diesem Modus ist kannst Du nicht auf ihr tippen oder sie wie gewohnt als Tastatur benutzen. Es ist wichtig dass der flashing-Prozesses nicht unterbrochen oder die Tastatur ausstöpselst wird, da der Vorgang ansonst wiederholt werden muss. - -Verschiedene Tastaturen verwenden unterschiedliche Methoden um in den Bootloader-Modus zu gelangen. Wenn dein PCB im Moment QMK oder TMK verwendet und Du keine spezifischen Anweisungen erhalten hast probiere die folgenden Methoden in dieser Reihenfolge: - -* Halte beide Shift-Tasten und drücke `Pause` -* Halte beide Shift-Tasten und drücke `B` -* Entferne deine Tastatur vom Computer, drücke gleichzeitig `Leertaste` und `B`, verbinde die Tastatur wieder mit dem Computer und warte eine Sekunde bevor Du die Tasten wieder loslässt. -* Drücke den physischen `RESET`-Knopf auf der Unterseite des PCBs -* Suche auf dem PCB den Pin mit dem Label `RESET`, verbinde diesen mit deinem GND-Pin -* Suche auf dem PCB den Pin mit dem Label `BOOT0`, verbinde diesen mit GND und schließe die Tastatur wieder an den PC an TODO: DIS IS DANGEROUS!! - -Wenn Du damit erfolgreich warst solltest Du in der QMK Toolbox eine Nachricht sehen die ungefähr so aussieht: - -``` -*** Clueboard - Clueboard 66% HotSwap disconnected -- 0xC1ED:0x2390 -*** DFU device connected -``` - -### Tastatur flashen - -Klicke auf den `Flash`-Knopf in der QMK Toolbox. Die Ausgabe wird ungefähr so aussehen: - -``` -*** Clueboard - Clueboard 66% HotSwap disconnected -- 0xC1ED:0x2390 -*** DFU device connected -*** Attempting to flash, please don't remove device ->>> dfu-programmer atmega32u4 erase --force - Erasing flash... Success - Checking memory from 0x0 to 0x6FFF... Empty. ->>> dfu-programmer atmega32u4 flash qmk_firmware/clueboard_66_hotswap_skully.hex - Checking memory from 0x0 to 0x55FF... Empty. - 0% 100% Programming 0x5600 bytes... - [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success - 0% 100% Reading 0x7000 bytes... - [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success - Validating... Success - 0x5600 bytes written into 0x7000 bytes memory (76.79%). ->>> dfu-programmer atmega32u4 reset - -*** DFU device disconnected -*** Clueboard - Clueboard 66% HotSwap connected -- 0xC1ED:0x2390 -``` - -## Tastatur mit der Befehlszeile flashen - -Zunächst solltest Du versuchen herauszufinden welchen Bootlader deine Tastatur benutzt. Diese vier Bootloader sind am Weitesten verbreitet: - -| MCU | Bootloader | -| --- | --- | -| Pro-Micro und Klone | CATERINA | -| Teensy | Halfkay | -| OLKB Boards | QMK-DFU | -| sonstige atmega32u4 | DFU | - -Auf der Seite [Flash Anleitung und Bootloader Informationen](de/flashing.md) kannst Du mehr über das Thema erfahren. - -Wenn Du weißt welchen Bootloader deine Tastaur verwendet, kannst Du diese Information bei der Kompilation hinzufügen um den Flash-Vorgang mit dem `make`-Befehl zu automatisieren. -```rules.mk -... -BOOTLOADER = caterina -... -``` - -### DFU - -Wenn Du den DFU-Bootloader verwendest und Du bereit bist deine Firmware zu kompilieren und zu flashen, öffne ein Befehlszeile und führe folgenden Befehl aus: - - make <meine_Tastatur>:<meine_Tastaturbelegung>:dfu - -Wenn deine Tastaturbelegung z.B den Namen "xzverz" trägt und Du ein rev5 planck flashen möchtest sähe der Befehl wie folgt aus: - - make planck/rev5:xyverz:dfu - - -Nachdem der Vorgang abgeschlossen ist sollte die Ausgabe ungefähr so aussehen: - -``` -Linking: .build/planck_rev5_xyverz.elf [OK] -Creating load file for flashing: .build/planck_rev5_xyverz.hex [OK] -Copying planck_rev5_xyverz.hex to qmk_firmware folder [OK] -Checking file size of planck_rev5_xyverz.hex - * File size is fine - 18574/28672 - ``` - -Wenn dieser Punkt erreicht ist wird das Build-Skript alle 5 Sekunden nach einem DFU Bootloader suchen. Dieser Vorgang wird wiederholt bis er erfolgreich ist oder abgebrochen wird. - - dfu-programmer: no device present. - Error: Bootloader not found. Trying again in 5s. - -Wenn diese Nachricht erscheint konnte das Build-Skript den Controller nicht eigenständig in den DFU Modus versetzen (z.B. weil der Modus in rules.mk falsch gesetzt wurde oder ein Problem mit der Hardware besteht), wenn dies eintritt musst Du die oben beschrieben Schritte benutzen um den Controller in den DFU Modus zu versetzen. Danach sollte die Ausgabe ungefähr so aussehen: - -``` -*** Attempting to flash, please don't remove device ->>> dfu-programmer atmega32u4 erase --force - Erasing flash... Success - Checking memory from 0x0 to 0x6FFF... Empty. ->>> dfu-programmer atmega32u4 flash qmk_firmware/clueboard_66_hotswap_skully.hex - Checking memory from 0x0 to 0x55FF... Empty. - 0% 100% Programming 0x5600 bytes... - [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success - 0% 100% Reading 0x7000 bytes... - [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success - Validating... Success - 0x5600 bytes written into 0x7000 bytes memory (76.79%). ->>> dfu-programmer atmega32u4 reset -``` - -?> Wenn Du mit diesem Schritt Probleme hast (z.B. `dfu-programmer: no device present`) hilft dir hoffentlich der Abschnitt [Häufig gestellte Fragen (Build/Kompilieren)](de/faq_build.md). - -#### DFU Befehle - -Es gibt verschiedene DFU Befehle um die Firmware auf ein DFU Gerät zu flashen: - -* `:dfu` - Dies ist die default Option. Es wird gecheckt ob ein DFU Gerät verfügbar ist, ist dies der Fall wird die Firmware geflasht. Dieser Check wird alle 5 Sekunden ausgeführt bis ein DFU Gerät erkannt wird. -* `:dfu-ee` - Der Flash-Vorgang benutzt eine `.eep` Datei anstatt einer `.hex` Datei. Dies ist eher unüblich. -* `:dfu-split-left` - Dies flasht die Firmware wie gewohnt (`:dfu`). Allerdings nur die "linke Seite" der EEPROM für geteilte Tastaturen. _Dies ist ideal für auf Elite C basierenden geteilten Tastaturen._ -* `:dfu-split-right` - Dies flasht die Firmware wie gewohnt (`:dfu`). Allerdings nur die "rechte Seite" der EEPROM für geteilte Tastaturen. _Dies ist ideal für auf Elite C basierenden geteilten Tastaturen._ - - -### Caterina -Für Arduinos und andere ProMicro Klone (z.B. SparkFun ProMicro), wenn Du bereit bist zu kompilieren und die Tastatur zu flashen, öffne ein Befehlszeilen-Fenster und führe den Build-Befehl aus: - - make <meine_Tastatur>:<meine_Tastaturbelegung>:avrdude - -Wenn deine Tastaturbelegung zum Beispiel den Namen "xyverz" hat und Du eine Tastaturbelegung für ein "rev2 Lets Split" erzeugen möchtest, lautet der Befehl dafür: - - make lets_split/rev2:xyverz:avrdude - -Nachdem die Kompilation abgeschlossen ist sollte die Ausgabe ungefähr so aussehen: - -``` -Linking: .build/lets_split_rev2_xyverz.elf [OK] -Creating load file for flashing: .build/lets_split_rev2_xyverz.hex [OK] -Checking file size of lets_split_rev2_xyverz.hex [OK] - * File size is fine - 27938/28672 -Detecting USB port, reset your controller now.............. -``` - -Nun wird die Tastatur automatisch zurückgesetzt und das Skript wird die Firmware flashen sobald es den Bootloader erkennt. Die Ausgabe sollte ungefähr so aussehen: - -``` -Detected controller on USB port at /dev/ttyS15 - -Connecting to programmer: . -Found programmer: Id = "CATERIN"; type = S - Software Version = 1.0; No Hardware Version given. -Programmer supports auto addr increment. -Programmer supports buffered memory access with buffersize=128 bytes. - -Programmer supports the following devices: - Device code: 0x44 - -avrdude.exe: AVR device initialized and ready to accept instructions - -Reading | ################################################## | 100% 0.00s - -avrdude.exe: Device signature = 0x1e9587 (probably m32u4) -avrdude.exe: NOTE: "flash" memory has been specified, an erase cycle will be performed - To disable this feature, specify the -D option. -avrdude.exe: erasing chip -avrdude.exe: reading input file "./.build/lets_split_rev2_xyverz.hex" -avrdude.exe: input file ./.build/lets_split_rev2_xyverz.hex auto detected as Intel Hex -avrdude.exe: writing flash (27938 bytes): - -Writing | ################################################## | 100% 2.40s - -avrdude.exe: 27938 bytes of flash written -avrdude.exe: verifying flash memory against ./.build/lets_split_rev2_xyverz.hex: -avrdude.exe: load data flash data from input file ./.build/lets_split_rev2_xyverz.hex: -avrdude.exe: input file ./.build/lets_split_rev2_xyverz.hex auto detected as Intel Hex -avrdude.exe: input file ./.build/lets_split_rev2_xyverz.hex contains 27938 bytes -avrdude.exe: reading on-chip flash data: - -Reading | ################################################## | 100% 0.43s - -avrdude.exe: verifying ... -avrdude.exe: 27938 bytes of flash verified - -avrdude.exe: safemode: Fuses OK (E:CB, H:D8, L:FF) - -avrdude.exe done. Thank you. -``` -Sollten dabei Probleme auftreten (z.B. "Zugriff verweigert" / "Permission denied") muss der Make-Befehl mit privilegierten Berechtigungen ausgeführt werden: - - sudo make <meine_Tastatur>:<meine_Tastaturbelegung>:avrdude - -Zusätzlich ist es möglich mehrere Tastaturen in einem Vorgang zu flashen: - - make <keyboard>:<keymap>:avrdude-loop - -Du kannst den Loop mit STRG + C unterbrechen sobald der Vorgang abgeschlossen ist. Die korrekte Tastenkombination kann abweichen und hängt vom Betriebssystem ab. - - -### HalfKay - -Für Tastaturen mit PJRC Controllern (Teensy's), wenn Du bereit bist zu kompilieren und die Tastatur zu flashen, öffne ein Befehlszeilen-Fenster und führe den Build-Befehl aus: - - make <meine_Tastatur>:<meine_Tastaturbelegung>:teensy - -Wenn deine Tastaturbelegung zum Beispiel den Namen "xyverz" hat und Du eine Tastaturbelegung für ein Ergodox oder Ergodox EZ erzeugen möchtest, lautet der Befehl dafür: - - make ergodox_ez:xyverz:teensy - -Nachdem die Kompilation abgeschlossen ist sollte die Ausgabe ungefähr so aussehen: - -``` -Linking: .build/ergodox_ez_xyverz.elf [OK] -Creating load file for flashing: .build/ergodox_ez_xyverz.hex [OK] -Checking file size of ergodox_ez_xyverz.hex [OK] - * File size is fine - 25584/322 |