kleine Anpassungen

pull/8/head
jonas-commits 2 years ago
parent 6f14d03f9b
commit 2a898dc4fb
  1. 12
      docs/Hardware/Hardwaretreiber.md

@ -5,16 +5,16 @@ Möchte oder kann man das Layout softwareseitig nicht ändern, besteht die Mögl
## Umsetzungen
### Neo-Layout Projekt
Für das Neo-Layout existiert ein [dediziertes Projekt](https://github.com/Jonas-commits/Neo-Keyboard-Adapter), welches die Funktionalität der Neo-Tastatur weitgehend vollständig abbildet indem alle Ebenen und die wichtigsten Compose-Sequenzen implementiert sind. Weiter sind zusätzliche Features, wie das schnelle umschalten zwischen Neo-Layout und Pass-Through möglich.
Für das Neo-Layout existiert ein [Hardware Adapter](https://github.com/Jonas-commits/Neo-Keyboard-Adapter), welches die Funktionalität der Neo-Tastatur weitgehend vollständig abbildet indem alle Ebenen und die wichtigsten Compose-Sequenzen implementiert sind. Weiter sind zusätzliche Features, wie das schnelle Umschalten zwischen Neo-Layout und Standard-Layout möglich.
### TMK Projekt
Das [TMK-Projekt](https://github.com/tmk/tmk_keyboard) ist ein Projekt, welches ein generisches remapping bietet. Entweder direkt in programmierbaren Tastaturen wie der [Ergodox](Ergodox.md), oder durch Umsetzung auf Zwischensteckern wie einem [USB-USB-Konverter](https://github.com/tmk/tmk_keyboard/tree/master/converter/usb_usb). Es ist universeller nutzbar, unterstützt allerdings nicht alle Eigenarten des Neo-Layouts.
### QMK Projekt
Das [QMK-Projekt](https://qmk.fm/) ist ein Projekt, welches einen generisches Tastaturtreiber bietet. Entweder direkt in programmierbaren Tastaturen wie der [Ergodox](Ergodox.md), oder durch Umsetzung auf Zwischensteckern wie einem [USB-USB-Konverter](https://github.com/qmk/qmk_firmware/tree/master/keyboards/converter/usb_usb). Es ist universeller nutzbar, unterstützt allerdings nicht alle Eigenarten des Neo-Layouts.
## Technik
Eine Standardtastatur sendet nicht etwa das Zeichen, welches gedrückt wird, sondern einen Scancode, welche die Position des Zeichens wiedergibt. Drückt man beispielsweise auf einer QUERTZ-Tastatur das `Z`, wird das gleiche gesendet, wie wenn man auf einer QUERTY-Tastatur das `Y` sendet. Die Entscheidung, wie das Zeichen interpretiert wird, findet softwareseitig durch das ausgewählte Tastaturlayout statt. So wird hier bei einem deutschen Layout ein `Z` bei einem englischen ein `Y` und beim Neo-Layout ein `K` interpretiert.
Eine Standardtastatur sendet nicht etwa das Zeichen, welches gedrückt wird, sondern einen Code, welche die Position des Zeichens wiedergibt. Drückt man beispielsweise auf einer QUERTZ-Tastatur das `Z`, wird das gleiche gesendet, wie wenn man auf einer QUERTY-Tastatur das `Y` sendet. Die Entscheidung, wie das Zeichen interpretiert wird, findet softwareseitig durch das ausgewählte Tastaturlayout statt. So wird hier bei einem deutschen Layout ein `Z` bei einem englischen ein `Y` und beim Neo-Layout ein `K` interpretiert.
Bei einer Hardware-Umsetzung greift man an dieser Stelle ein. Man sendet anstelle des eigentlich Scancodes einen anderen. Sendet man bei eingestelltem Quertz-Layout beispielsweise anstelle des Scancodes der Taste `Z` den der Taste `K`, dann wird diese Taste als `K` interpretiert, trotz eingestelltem Quertz-Layout. Stellt man das Querty-Layout ein müsste man natürlich den Scancode der Taste `Y` modifizieren. Hierfür braucht es dedizierte Hardware, wie einem Teensy oder Arduino Mirco, welches eine USB-Tastatur emuliert. Die eigentliche Tastatur steuert nun nur noch die Hardware, welche beispielsweise mittels USB-Host-Shield die Tasteneingaben einliest und bei Tastendruck eine Aktion ableitet, wie dem Senden eines Scancodes.
Bei einer Hardware-Umsetzung greift man an dieser Stelle ein. Man sendet anstelle des eigentlich Scancodes einen anderen. Sendet man bei eingestelltem Quertz-Layout beispielsweise anstelle des Scancodes der Taste `Z` den der Taste `K`, dann wird diese Taste als `K` interpretiert, bei eingestelltem Quertz-Layout. Stellt man das Querty-Layout ein müsste man natürlich den Scancode der Taste `Y` modifizieren. Zum ummappen braucht es dedizierte Hardware, wie einem Teensy oder Arduino Mirco, welches eine USB-Tastatur emuliert. Die eigentliche Tastatur ist über einen Adapter mit diesem Board verbunden und liest die Tastaureingaben ein. Bei Tastendruck wird eine Aktion abgeleitet. Dies kann das Senden eines Tastendrucks sein, oder aber auch eine interne Zustandsänderung, wie eine Ebenenumschaltung.
## Vor- und Nachteile
@ -35,4 +35,4 @@ Bei einer Hardware-Umsetzung greift man an dieser Stelle ein. Man sendet anstell
* Compose-Sequenzen auf Speicher der Hardware beschränkt
### Schlussfolgerung
Eine Hardwareumsetzung hat insbesondere dann Vorteile, wenn man mit Windows arbeitet, da der Linux Treiber relativ gut funktioniert. Wenn man sich oft auf Remote Maschinen einwählt funktioniert die Arbeit einwandfrei. Nicht vorteilhaft ist die Verwendung dann, wenn oft Unicode-Zeichen in verschiedenen Anwendungen benötigt werden oder ohne externe Tastatur gearbeitet werden soll. Weiter sollte man auf Sonderfunktionen der verwendeten Tastatur verzichten können.
Eine Hardwareumsetzung hat insbesondere dann Vorteile, wenn man mit Windows arbeitet, da dieser dort die meisten Probleme bereitet. Wenn man sich oft auf Remote Maschinen einwählt funktioniert die Arbeit einwandfrei. Nicht vorteilhaft ist die Verwendung dann, wenn oft Unicode-Zeichen in verschiedenen Anwendungen benötigt werden oder ohne externe Tastatur gearbeitet werden soll. Weiter sollte man auf Sonderfunktionen der verwendeten Tastatur verzichten können, da es nur schwer möglich ist, den kompletten HID-Standard in einem Adapter umzusetzen.
Loading…
Cancel
Save