Skip to content

Commit

Permalink
docs to monorepo multilingual
Browse files Browse the repository at this point in the history
  • Loading branch information
willwade committed Aug 14, 2023
1 parent 0b703b9 commit 5425de3
Show file tree
Hide file tree
Showing 155 changed files with 1,510 additions and 1 deletion.
1 change: 0 additions & 1 deletion .gitbook.yaml

This file was deleted.

1 change: 1 addition & 0 deletions docs/de/.gitbook.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
root: ./
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
62 changes: 62 additions & 0 deletions docs/de/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
---
description: Overview of the project and its components
cover: .gitbook/assets/jessimage.jpeg
coverY: 0
---

# 😎 Einleitung

Willkommen bei der RelayKeys-Dokumentation! Dieser umfassende Leitfaden hilft dir, schnell loszulegen, fortgeschrittene Funktionen zu entdecken und die einzigartigen Konzepte von RelayKeys kennenzulernen.

### Einführung in RelayKeys

RelayKeys ist eine Open-Source-Software und -Hardware, die eine nahtlose Kommunikation zwischen Computern, Tablets und Telefonen über Bluetooth-Verbindungen ermöglicht. Die vielseitige Technologie wurde ursprünglich für Geräte der Unterstützten Kommunikation (AAC) entwickelt, eignet sich aber auch für andere Nutzer/innen, die Texteingaben oder Mausbefehle für den Zugriff auf Bluetooth-fähige Geräte benötigen.

#### Zweck und Vorteile

RelayKeys dient verschiedenen Zwecken:

* **Kosteneffiziente Lösung**: Für manche ist es eine kostengünstige Alternative oder ein Ersatz für teure oder veraltete Hardware.
* **Zugänglichkeit für Menschen mit Behinderungen**: Unser Hauptaugenmerk liegt darauf, Menschen mit Behinderungen zu unterstützen. RelayKeys ermöglicht es Nutzern, die auf spezielle Systeme der Unterstützten Kommunikation wie Eyegaze angewiesen sind, auf andere Geräte zuzugreifen, die für Arbeit oder Freizeit wichtig sind. Im Gegensatz zu begrenzten kommerziellen Lösungen funktioniert RelayKeys geräteübergreifend und benötigt kein gemeinsames Netzwerk. Es verhält sich genau wie eine Bluetooth-Tastatur und -Maus - es gibt also nur eine minimale Verzögerung.
* **Benutzerdefinierte Steuerung**: Mit RelayKeys können Nutzer/innen ihre Tablets oder Telefone steuern. Das ist besonders nützlich für Aufgaben wie Musikbearbeitung oder Fotobearbeitung, die in der Regel eine bildschirmfüllende Steuerung erfordern. Jedes Gerät, das auf eine Bluetooth-Tastatur oder -Maus reagiert, funktioniert - z. B. Smart-TVs.
* **Offenes System**: Die offene Architektur von RelayKeys sorgt für Langlebigkeit und fördert die Zusammenarbeit bei Systemverbesserungen, die sowohl Menschen mit Behinderungen als auch der allgemeinen Bevölkerung zugute kommen.

{% embed url=["https://www.youtube.com/watch?v=2wrZMGWgvcE"](https://www.youtube.com/watch?v=2wrZMGWgvcE)%}

### Warum RelayKeys wählen?

Es gibt zwar auch andere kommerzielle Lösungen, aber RelayKeys bietet eine Reihe von einzigartigen Vorteilen:

* **Nutzerzentrierter Ansatz**: Wir ermutigen kommerzielle Entwickler, die Bedürfnisse der Nutzer zu berücksichtigen und offene Lösungen zu erforschen. Wenn unser Ansatz nicht mit deinen Vorstellungen übereinstimmt, kannst du in Erwägung ziehen, unseren Befehlssatz für Kompatibilität und Verbesserungen zu übernehmen.
* **Ergänzend zur Software**: RelayKeys kann auf verschiedene Weise mit deiner eigenen Software zusammenarbeiten. Wir haben Beispiele dafür, wie es mit Software für Unterstützte Kommunikation und einer in Python geschriebenen eigenständigen Anwendung funktioniert. Wir können sogar Beispiele dafür zeigen, wie es verwendet werden kann, um Text auf einem [separaten zweiten Bildschirm](https://github.com/AceCentre/open-ble-screen) anzuzeigen.
* **Standardisierung für Kompatibilität**: Ein offenes System gewährleistet Kompatibilität und vereinfacht die Entwicklung. So können Entwickler/innen leichter eigene Lösungen entwickeln, die mit unserer Befehlsstruktur übereinstimmen.

### Kernprinzipien

RelayKeys basiert auf einer Reihe von Grundprinzipien, die sein Wesen ausmachen:

* **Keine Client-Software/Hardware**: RelayKeys wurde für den Einsatz am Arbeitsplatz und in der Ausbildung entwickelt und funktioniert ohne zusätzliche Software oder Hardware auf dem Client-Gerät. Solange Bluetooth LE Unterstützung vorhanden ist, funktioniert RelayKeys.
* **Geräteunabhängig**: RelayKeys ist nicht an bestimmte Geräte oder Softwarelösungen gebunden. Seine Vielseitigkeit ermöglicht es Entwicklern, es auf verschiedene Weise zu nutzen und so Innovationen zu fördern.
* **Offene Architektur**: RelayKeys ist ein offenes und transparentes System, das sich von geschlossenen, proprietären Alternativen unterscheidet. Diese Offenheit fördert die Zusammenarbeit und stellt sicher, dass die Technologie lebensfähig bleibt, auch wenn die Hersteller ihren Schwerpunkt verlagern.

### Das RelayKeys-Ökosystem

Das RelayKeys-Ökosystem besteht aus mehreren Schlüsselkomponenten, die jeweils eine bestimmte Aufgabe erfüllen:

#### RelayKeys-Serial API (RK-Serial)

Unsere standardisierte API ermöglicht die nahtlose Kommunikation mit RelayKeys-kompatiblen Hardware-Geräten über serielle Verbindungen, z. B. USB-Busse oder serielle Bluetooth-Verbindungen. Weitere Informationen findest du unter folgendem [Link](https://relaykeys.example.com/rk-serial).

#### RelayKeys-Service (RK-Service / Daemon)

Der RK-Service funktioniert wie ein RPC-Dienst, der eingehende Verbindungen empfängt und Befehle verarbeitet. Diese Befehle werden in AT-Befehle übersetzt, die HID-Tastatur/Maus-Aktionen simulieren. Die AT-Befehle werden dann über eine serielle Verbindung an Bluetooth-fähige Zweitgeräte übertragen. Für den Dauerbetrieb unter Windows ist ein Installationsprogramm verfügbar.

#### RelayKeys-QT (RK-Desktop)

RK-Desktop ist eine Fensteranwendung, die für die Erfassung von Tastatureingaben und zukünftigen Mauseingaben zuständig ist. Sie leitet diese Daten zur Verarbeitung an den RelayKeys-Dienst weiter.

#### RelayKeys-CLI (RK-CLI)

Die RK-CLI bietet eine Befehlszeilenschnittstelle für die Interaktion mit RelayKeys und ist eine vielseitige und effiziente Methode für Benutzer, die mit terminalbasierten Interaktionen vertraut sind.

Diese Dokumentation soll dir das Wissen vermitteln, das du brauchst, um die Möglichkeiten von RelayKeys voll auszuschöpfen. Egal, ob du als unterstützt kommunizierender Nutzer einen erweiterten Zugang suchst oder als Entwickler an bahnbrechenden Lösungen arbeitest, RelayKeys bietet eine Plattform, die Barrierefreiheit und Innovation fördert.
44 changes: 44 additions & 0 deletions docs/de/SUMMARY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Inhaltsübersicht

* [😎 Einleitung](README.md)
* [⚙️ Installation](installation/README.md)
* [Einrichten eines Boards für RelayKeys](installation/supported-boards/README.md)

* [Adafruit Feather nRF52840 Express](installation/supported-boards/adafruit-feather-nrf52840-express.md)
* [Raytac Dongle - nRF52840 USB Key mit TinyUF2 Bootloader MDBT50Q-RX](installation/supported-boards/raytac-dongle-nrf52840-usb-key-with-tinyuf2-bootloader-mdbt50q-rx.md)
* [Adafruit Itsybitsy nRF52840](installation/supported-boards/adafruit-itsybitsy-nrf52840.md)
* [Bluefruit LE Freund](installation/supported-boards/bluefruit-le-friend.md)

* [Herunterladen und Einrichten (Software)](installation/download-and-setup-software.md)

* [Verbinden mit RelayKeys](installation/connecting-with-relaykeys/README.md)

* [Kabelgebundener Modus](installation/connecting-with-relaykeys/wired-mode.md)
* [Verkabelt + Empfangs-Dongle](installation/connecting-with-relaykeys/wired-+-recieving-dongle.md)
* [Drahtloser Modus](installation/connecting-with-relaykeys/wireless-mode.md)

* [Prüfen, ob es funktioniert](installation/checking-it-works.md)
* [🖥 RelayKeys verwenden](using-relaykeys/README.md)
* [RelayKeys Desktop (QT)](using-relaykeys/relaykeys-desktop-qt.md)

* [Verwendung der Kommandozeile](using-relaykeys/relaykeys-cli.md)

* [💬 Leitfaden für die Verwendung mit AAC](using-relaykeys/guides/README.md)

* [Tobii Communicator 5](using-relaykeys/guides/communicator.md)
* [Smartbox Grid 3](using-relaykeys/guides/grid3.md)
* [Jabbla MindExpress](using-relaykeys/guides/mindexpress.md)
* [Tobii Dynavox - Snap](using-relaykeys/guides/snap-corefirst.md)

* [Serielle API](using-relaykeys/relaykeys-serial.md)
* [❓ Fehlerbehebung](troubleshooting.md)
* [👩💻 Informationen für Entwickler](developers/README.md)
* [Architektur von RelayKeys](developers/architecture.md)
* [Entwickeln ohne ein Board](developers/developing-without-a-board.md)
* [Config File Details](developers/relaykeys-cfg.md)
* [Server (Daemon) Referenz](developers/relaykeys-daemon.md)
* [Erstellen einer Binärdatei](developers/building-a-binary.md)
* [Vorgeschichte/Verwandte Projekte](developers/other-projects.md)
* [Mitwirkende](developers/contributing.md)
* [Credits](developers/credits.md)
* [❤️ Unterstützung für RelayKeys](supporting-relaykeys.md)
2 changes: 2 additions & 0 deletions docs/de/developers/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Entwicklerinformationen

45 changes: 45 additions & 0 deletions docs/de/developers/architecture.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Architektur von RelayKeys

![RelayKeys-Skizze](../.gitbook/assets/untitled\_page.png)

RelayKeys ist eine Mischung aus einem Open-Hardware-Board, das über Bluetooth LE kommuniziert und als BLE-HID-Gerät (d. h. eine Tastatur/Maus) fungiert, das emulieren kann**alle** Tastaturtasten und deren Modifikatoren sowie Mausbewegungen. (4). Dies wird durch eine serielle Verbindung von einem Gerät gesteuert – entweder kabelgebunden (z. B. als USB-Dongle) oder drahtlos (z. B. als serielles BLE-Gerät).\ \ Wir haben einen RPC-Server (2) für einen Desktop-Computer entwickelt, der die Softwareverbindung vereinfacht den seriellen Bus und ermöglicht es uns, eine einfachere Möglichkeit zum Senden von Befehlen an das Gerät zu schaffen als AT-Befehle. Dies geschieht entweder direkt über den RPC-Server (_Daemon_) oder über einen**Befehlszeilenschnittstelle** (_CLI_). \*\* \*\* Zur Demonstration haben wir auch eine kleine grafische Schnittstellenanwendung (_RK-Desktop_, auch als Relaykeys-_QT-Anwendung_ bezeichnet) (1).

Wenn Sie Software erstellen und von den Funktionen von RelayKeys profitieren möchten, können Sie Befehle entweder an den RPC-Server (2) oder über unsere CLI (1) oder, wenn Sie möchten, direkt an die serielle Schnittstelle (6) schreiben. Dies kann seriell verkabelt oder drahtlos sein, wenn Sie das Gerät in den drahtlosen Modus versetzen (5). Auch wenn Sie unsere Hardware ignorieren möchten, bitten wir die Entwickler von Hilfstechnologien, das Kopieren der Befehlsstruktur auf einer dieser Ebenen in Betracht zu ziehen, um eine offene Entwicklung zu ermöglichen.

Das Arduino-basierte Board ist derzeit ein**Adafruit nrf52840 Express oder Adafruit nrf52840 itsybitsy** .

## Anatomie der Dateien

* `arduino/` - Firmware für das Arduino-Board
* `docs/` - VuePress-Dokumente fürhttp://acecentre.github.io/relayKeys/. Build-Skript ist**docs-deploy.sh**
* `resources/` - Hilfsdateien für die Entwicklung (z. B `demoSerial.py` das vorgibt, ein angeschlossenes Arduino-Board zu sein, viewComPorts, das die verbundenen COM-Ports ausgibt), AAC-Software-Seitensätze und all-keys.txt, das eine Ausgabe aller von RelayKeys unterstützten Schlüssel ist. Beachten Sie auch die Entwicklungsdateien - `relaykeys-pygame` Und `relaykeys.py` - das sind abgespeckte Versionen des gesamten Projekts. Nützlich zum Debuggen und Testen von Dingen ohne den Daemon-Server. Beweg dich einfach `relaykeys.py` in das Stammverzeichnis, damit es funktioniert.
* `blehid.py` - Bibliothek/Importdatei, die von Relaykeysd verwendet wird. Enthält die Funktion, die den AT-Befehl an den seriellen Port schreibt, den seriellen Port initialisiert und Tastatur-/Mauscodes sendet.
* `build.py`, `buildinstaller.nsi` - Erstellen Sie Dateien, um dieses Projekt in ein Installationsprogramm umzuwandeln. Laufen `python build.py` um den Build auszulösen.
* `docs-deploy.sh` – Stellt die Dokumentation auf der Github-Seiten-Site bereit.
* `relaykeys-cli.py` – Dies ist die Befehlszeilenschnittstellenversion von Relaykeys. Stellt eine Verbindung zum Daemon-Server her.
* `relaykeys-example.cfg` – Die Standardkonfigurationsdatei. Beachten Sie, dass dies bei der Installation an den richtigen Speicherort kopiert und als Standardkonfiguration verwendet wird. Beachten Sie die auskommentierten Baud- und Entwicklungszeilen. Dev behebt das Problem `COM` Port, wenn der COM-Port-Suchcode nicht funktioniert
* `relaykeys-qt.py` - Die GUI-Version unserer Relakeys-Test-App.
* `relaykeys.spec.ini` – Wird für den NSIS-Build verwendet (d. h `buildinstaller.nsi`)
* `relaykeysclient.py` – Die Hauptbibliotheksdatei, die von den Versionen -cli und -qt verwendet wird. Verbindet sich mit dem Server.
* `relaykeysd-service-restart.bat`, `relaykeysd-service.py` – Die Windows-Dienstanwendung
* `relaykeysd.py` - Der Dämon. Dies wird im Hintergrund ausgeführt – und vom Dienst gesteuert. Wenn Sie RelayKeys testen möchten, führen Sie zuerst diese Datei aus und lassen Sie sie laufen. z.B `python relakyeysd.py &&`. Beachten Sie die Befehlszeilenflags im Header.

## Schritte zum Ausführen von RelayKeys (Methode ohne Installationsprogramm)

_Voraussetzungen_

* [Python 3 installieren](https://www.python.org/downloads/windows/)
* Haben Sie Zugriff auf ein Arduino-Board Nrf52840. zB der Adafruit nrf52840 Express

1. Besorgen Sie sich ein nrf52840-Board und laden Sie den Arduino-Code darauf. Stecken Sie es in einen USB-Steckplatz Ihres Computers
2. Überprüfen Sie, ob Ihr Arduino wie erwartet funktioniert. Suchen und notieren Sie den COM-Port, um den es sich handelt ([im Gerätemanager gefunden](https://www.sevenforums.com/attachments/hardware-devices/263068d1486601972t-com-port-missing-device-manager-com-port-pic.jpg) )
3. Laden Sie den Code an einen sinnvollen Ort herunter – z `git clone https://github.com/AceCentre/RelayKeys.git`
4. Kopiere das `relaykeys-example.cfg` Datei z.B `copy relaykeys-example.cfg relaykeys.cfg`
5. Installationsanforderungen, z. B `pip install -r requirements.txt`
6. Führen Sie den Daemon-Code aus. `python relaykeysd.py`
7. Koppeln Sie Ihr Relaykeys Arduino mit einem PC/Mac/iOS/Android-Gerät und öffnen Sie eine Textdatei
8. Testen Sie es mit der CLI-Datei, z. B `python relaykeys-cli.py type:Hello`

Wenn alles wie erwartet funktioniert, sollten Sie die Eingabe auf dem zweiten Gerät sehen. Wenn nicht, schauen Sie sich die Protokolldateien an.

Ein Problem könnte sein, dass der Daemon den COM-Port nicht finden kann. Sie können dies beheben, indem Sie den in Schritt 2 gefundenen COM-Port reparieren und in die Konfigurationsdatei einfügen. zB hinzufügen `dev=COM6` wenn der COM-Port 6 ist. Weitere Informationen finden Sie hier[here](../../developers/relaykeys-cfg.html#dev-defining-your-port-of-the-relaykeys-hardware)
18 changes: 18 additions & 0 deletions docs/de/developers/building-a-binary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Erstellen einer Binärdatei

Der Schwerpunkt der Builds liegt auf Windows – wir haben jedoch mit der Arbeit an einem MacOS-Build begonnen.

**Für Windows**

Du brauchst[nsis](http://nsis.sourceforge.io/) installiert und installiert das SimpleSC-Plugin:[https://nsis.sourceforge.io/NSIS\_Simple\_Service\_Plugin](https://nsis.sourceforge.io/NSIS\_Simple\_Service\_Plugin) . \ \ Dann

```
pip install -r requirements.txt
pip install -r equirements-build.txt
python build.py
```

Sie erhalten dann eine setup.exe

Wenn Sie eine UF2-Datei für die Firmware erstellen möchten, folgen wir den Anweisungen[diesen Leitfaden](https://learn.adafruit.com/adafruit-metro-m0-express/uf2-bootloader-details#entering-bootloader-mode-2929745) (siehe „Erstellen Sie Ihr eigenes UF2“) – beachten Sie, dass wir auf M4-basierten Platinen arbeiten.

Loading

0 comments on commit 5425de3

Please sign in to comment.