Was ist Openterface KeyMod
Openterface KeyMod ist ein 100% quelloffener USB- + Bluetooth-HID-Emulator von TechXArtisan Studio. Seine Kernaufgabe besteht darin, Ihr Smartphone in eine tragbare Tastatur und ein Touchpad zu verwandeln – schließen Sie einfach den KeyMod an den USB-Port des Zielgeräts an und steuern Sie den Zielcomputer, Werbedisplays, Smart-TVs oder Kiosks über die Smartphone-App (KeyCmd).
Im Gegensatz zu proprietären kommerziellen KVM-Switches auf dem Markt ist KeyMod vollständig quelloffen – von Hardwareschaltplänen, PCB-Design, Firmware-Quellcode bis hin zur Smartphone-App. Das Projekt steht unter der AGPL-3.0-Softwarelizenz und der CERN-OHL-S-2.0-Hardware-Open-Source-Lizenz und verfügt über die OSHWA Open-Source-Hardware-Zertifizierung (UID CN000015).
KeyMod gehört zur Openterface-Produktlinie, die auch folgende Produkte umfasst:
| Produkt | Positionierung | Repository Stars |
|---|---|---|
| Mini-KVM | Tragbarer KVM auf BIOS-Ebene | 299 (Hardware) + 162 (Desktop) |
| KVM-GO | Erweiterte tragbare KVM | 21 (Hardware) |
| KeyMod Series | USB + BLE HID Tastatur/Touchpad | Thema dieses Artikels |
| uConsole KVM Extension | uConsole tragbare KVM-Erweiterungsplatine | 5 (Hardware) |
Produktvarianten: Mini und Plus
KeyMod ist in zwei Hardwareversionen erhältlich, die die gleichen Kernfunktionen teilen:
| Feature | KeyMod Mini | KeyMod Plus |
|---|---|---|
| USB-Anschluss | USB-A Stecker | USB-A Stecker + USB-C Buchse |
| Einsatzszenario | Moderne Geräte (USB-C) | Ältere Geräte + Passthrough-Ladung |
| Bluetooth | BLE HID | BLE HID |
| Smartphone-Verbindung | USB / BLE | USB / BLE |
| Abmessungen | Ultra-kompakt EDC | Etwas größer, mit Passthrough-Port |
Der Verbindungsaufbau lautet: Smartphone (KeyCmd App) → KeyMod (USB oder Bluetooth) → Zielgerät. Auf dem Zielgerät muss keine Software installiert werden – KeyMod ist eine echte Hardware-HID-Emulation.
Kern-Hardware: CH32V208
Der zentrale Steuerchip des KeyMod ist der WCH CH32V208, ein auf der RISC-V-Architektur basierender Mikrocontroller aus chinesischer Produktion. Der CH32V208 verfügt über ein CH32V208-kompatibles Protokoll und kann direkt USB-HID-Tastatur/-Maus emulieren, ohne dass Treiber auf dem Zielgerät installiert werden müssen.
Hardware-Design-Highlights
┌─────────────────────────────────────────────┐
│ KeyMod PCB │
│ │
│ ┌──────────┐ ┌──────────┐ │
│ │ CH32V208 │ │ BLE Modul│ │
│ │ RISC-V │◄──►│ Bluetooth│ │
│ │ MCU │ │ 5.x │ │
│ └────┬─────┘ └──────────┘ │
│ │ │
│ ┌────┴─────┐ │
│ │ USB- │ → Verbindung zum Zielgerät │
│ │ Anschluss│ (HID Tastatur/Maus) │
│ └──────────┘ │
│ │
│ ┌──────────┐ │
│ │ Program- │ Programmierbarer Knopf │
│ │ mierbarer│ (Custom Macros/Schalter) │
│ │ Knopf │ │
│ └──────────┘ │
└─────────────────────────────────────────────┘
Wichtige Hardware-Komponenten:
- Hauptchip: CH32V208 (RISC-V, CH9329-kompatibles Protokoll)
- Kabellose Verbindung: BLE Bluetooth (HID Tastatur/Maus)
- USB-Anschluss: Mini-Version USB-C Stecker / Plus-Version USB-A Stecker + USB-C Buchse
- Programmierbarer Knopf: Unterstützt benutzerdefinierte Makrobefehle und Konfigurationswechsel
- Zertifizierungen: CE, UKCA, RoHS, WEEE
Warum CH32V208?
Der CH32V208 bietet gegenüber gängigen RP2040- oder ESP32-Lösungen einige einzigartige Vorteile:
- Native CH9329-Protokollkompatibilität: USB-HID-Deskriptoren müssen nicht von Grund auf implementiert werden, sofort einsatzbereit
- RISC-V-Architektur: Quelloffener Befehlssatz, im Einklang mit der Open-Source-Philosophie des Projekts
- Geringe Kosten: Chips aus chinesischer Produktion, kontrollierbare BOM-Kosten
- Niedriger Stromverbrauch: Geeignet für tragbare EDC-Geräte
- Kompaktes Gehäuse: Hilft bei der Umsetzung eines ultrakompakten Hardwaredesigns
KeyCmd App: Die voll ausgestattete Smartphone-Steuerung
Die Begleit-App des KeyMod heißt KeyCmd und unterstützt Android und iPadOS (einschließlich iOS). KeyCmd ist nicht nur eine einfache Tastatur/ein Touchpad, sondern eine funktionsreiche HID-Steuerungsplattform.
Funktionsmatrix
| Funktionsmodul | Beschreibung |
|---|---|
| Tastatur & Maus (Basis) | Vollbild-Tastatur + langes Drücken für Wiederholung + Tastenvorschau + Ziffernblock |
| Tastatur & Maus Pro | Kombiniertes Layout + Shortcut Hub Schnellzugriffsleiste + geteilte Tastatur + IME-Eingabe |
| Präsentationsmodus | Diashow-Fernbedienung + Timer (unterstützt Google Slides usw.) |
| Gamepad | Virtuelles Gamepad + anpassbare Preset-Layouts + Multi-Touch |
| Shortcut Hub | Profilbasierte Tastenkürzel (Blender, KiCAD, Photoshop, VS Code) |
| Makrobefehle | Programmierbare Tastensequenzen + Verzögerungssteuerung |
| Spracheingabe | Sprache-zu-Tastatur basierend auf Whisper API |
| Terminal | Bluetooth SSH Fernzugriff auf Befehle |
| Agent | KI-gesteuerte direkte HID/SSH-Befehlssteuerung |
Shortcut Hub im Detail
Der Shortcut Hub ist eine der herausragendsten Funktionen von KeyCmd. Er ermöglicht Benutzern das Erstellen, Importieren und Exportieren von Tastenkürzelprofilen für verschiedene professionelle Software:
Shortcut Hub Konfigurationsbeispiele
├── Blender.json # 3D-Modellierung Tastenkürzel
├── KiCAD.json # PCB-Design Tastenkürzel
├── Photoshop.json # Bildbearbeitung Tastenkürzel
├── VS Code.json # Code-Bearbeitung Tastenkürzel
└── Custom.json # Benutzerdefinierte Konfiguration
Entwickler können eigene Konfigurationen für ihre häufig genutzten Tools erstellen und über die Community teilen.
Agent-Modus: KI-gesteuerte HID-Steuerung
Der Agent-Modus von KeyCmd ist eine zukunftsweisende Funktion – über KI werden direkt HID- oder SSH-Befehle generiert, um den Zielcomputer zu steuern. Das bedeutet, Sie können Operationen in natürlicher Sprache beschreiben, und die KI wandelt diese in konkrete Tastatur-/Maus-Eingabesequenzen um.
GitHub-Repository-Struktur
Das Openterface-Projekt verwendet auf GitHub eine Multi-Repository-Organisation, betreut von TechxArtisanStudio:
Überblick über die Kern-Repositories
| Repository | Stars | Inhalt | Lizenz |
|---|---|---|---|
| Openterface | 124 | Offizielle Website (GitHub Pages) | — |
| Openterface_Mini-KVM_Hardware | 299 | Hardware-Design, Schaltpläne, BOM | CERN-OHL-S-2.0 |
| Openterface_QT | 162 | Windows/Linux Desktop-Version | AGPL-3.0 |
| Openterface_MacOS | 62 | macOS Desktop-Version | AGPL-3.0 |
| Openterface_Android | 39 | Android App | AGPL-3.0 |
| Openterface_WebExtension | 6 | Chrome/Firefox Browser-Erweiterung | AGPL-3.0 |
| Openterface_KVM-GO_Hardware | 21 | KVM-GO Hardware-Design | CERN-OHL-S-2.0 |
| Openterface_KVM_Ext_Hardware | 5 | uConsole KVM-Erweiterungsplatinen-Hardware | CERN-OHL-S-2.0 |
Repository-Verzeichnisstruktur (am Beispiel Mini-KVM Hardware)
Openterface_Mini-KVM_Hardware/
├── docs/ # Hardwaredokumentation
├── hardware/ # KiCad PCB-Designdateien
│ ├── schematics/ # Schaltpläne
│ ├── pcb/ # PCB-Layout
│ └── gerber/ # Produktionsdateien
├── models/ # 3D-Modelle (Gehäuse)
├── part/ # Bauteildokumentation
├── LICENSE # CERN-OHL-S-2.0
└── README.md
Desktop-Code-Struktur (Openterface_QT)
Openterface_QT/
├── CMakeLists.txt # CMake-Build-Konfiguration
├── src/
│ ├── main.cpp # Einstiegspunkt
│ ├──mainwindow.cpp # Hauptfenster
│ ├── video/ # HDMI-Videoerfassung
│ ├── hid/ # USB-HID-Kommunikation
│ └── ui/ # Qt UI-Komponenten
├── packaging/ # Desktop-Integrationsdateien
└── docs/
└── BUILD.md # Kompilierungsanleitung
Open-Source-Lizenzen erklärt
Openterface verwendet eine Doppel-Lizenzstrategie:
Software: AGPL-3.0
Der gesamte Softwarecode (Desktop, Android, Firmware) verwendet die GNU Affero General Public License v3.0:
- Freie Nutzung: Für private und kommerzielle Zwecke
- Modifikationen müssen quelloffen sein: Abgewandelte Werke müssen unter derselben Lizenz veröffentlicht werden
- Netzwerknutzung löst Klausel aus: Auch bei Bereitstellung als Dienst über das Netzwerk (SaaS) muss der Quellcode offengelegt werden
- Geeignet für: Sicherstellung, dass Community-Verbesserungen dem Projekt zugutekommen
Hardware: CERN-OHL-S-2.0
Die Hardware-Designdateien verwenden die CERN Open Hardware License — Strongly Reciprocal:
- Freie Herstellung: Sie können PCBs basierend auf den Designdateien selbst fertigen
- Modifikation und Weitergabe erlaubt: Modifizierte Designs müssen unter derselben Lizenz veröffentlicht werden
- Kommerzielle Nutzung erlaubt: Verkauf von Produkten basierend auf dem Open-Source-Design gestattet
- Vollständige Dokumentation: Original-Designdateien und Änderungsbeschreibungen müssen beiliegen
Praxis: Desktop-Version aus dem Quellcode erstellen
Am Beispiel von Openterface_QT (Windows/Linux Desktop-Version) wird gezeigt, wie aus dem Quellcode kompiliert wird:
Umgebungsvorbereitung (Ubuntu/Debian)
# Abhängigkeiten installieren
sudo apt install cmake build-essential qt6-base-dev \
qt6-multimedia-dev libusb-1.0-0-dev libfftw3-dev
# Repository klonen
git clone https://github.com/TechxArtisanStudio/Openterface_QT.git
cd Openterface_QT
Kompilierungsschritte
mkdir build && cd build
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DUSE_SHARED_FFMPEG=ON
make -j$(nproc)
Fedora-Hinweise
Bei der Kompilierung unter Fedora ist das Problem des FFmpeg-Shared-Library-Pfads zu beachten. Siehe den Workaround in BUILD.md:
cmake .. -DFFMPEG_PREFIX=/usr/local/ffmpeg
Häufige Probleme
| Problem | Lösung |
|---|---|
undefined symbol: vaMapBuffer2 |
System-FFmpeg und mitgelieferte VA-Bibliothek nicht mischen |
| CMake erfolgreich, aber keine Binärdatei | Zusätzlich make ausführen |
| Desktop-Kategorie falsch | Categories=Utility; verwenden |
Einsatzszenarien in der Praxis
Szenario 1: Wartung von Außenwerbeanlagen
LED-Werbeanlagen im Freien müssen vor Ort konfiguriert werden, aber eine Tastatur mitzuführen ist unpraktisch:
1. KeyMod Mini in den USB-C-Port der Werbeanlage stecken
2. KeyCmd auf dem Smartphone öffnen, KeyMod über BLE verbinden
3. Bildschirmtastatur des Smartphones zur Eingabe der Konfigurationsbefehle nutzen
4. Nach Abschluss der Wartung KeyMod abziehen
Szenario 2: Kiosk-Debugging
1. KeyMod Plus in den USB-A-Port des Terminals stecken
2. Smartphone über USB mit KeyMod verbinden (stabiler)
3. Shortcut Hub verwenden, um die terminalspezifische Konfiguration zu laden
4. Debug-Befehle schnell eingeben
Szenario 3: Entwickler-Workflow beschleunigen
1. KeyMod in den Entwicklungsrechner stecken
2. KeyCmd lädt die VS Code Shortcut Hub Konfiguration
3. Makrobefehle für schnelle Ausführung wiederkehrender Operationen nutzen
4. Agent-Modus für komplexe Aufgaben in natürlicher Sprache
Wie Sie mitwirken können
Openterface ist eine aktive Open-Source-Community, die Beiträge in jeder Form willkommen heißt:
Issues einreichen
- Bug-Reports: Problem beschreiben, Reproduktionsschritte, Firmware-Version
- Funktionsvorschläge: Einsatzszenario und erwartetes Verhalten beschreiben
- Hardware-Probleme: Entsprechende Issue-Labels des jeweiligen Repositories verwenden
Pull Requests einreichen
# 1. Repository forken
# 2. Feature-Branch erstellen
git checkout -b feature/your-feature
# 3. Entwickeln und testen
# 4. PR an den main-Branch einreichen
Dokumentationsverbesserungen
Das Dokumentations-Repository Openterface/Openterface verwendet MkDocs und unterstützt mehrere Sprachen (Chinesisch, Englisch, Japanisch, Koreanisch, Französisch, Deutsch, Italienisch, Portugiesisch, Rumänisch). Übersetzungs-PRs sind sehr willkommen.
Community-Kanäle
- Discord: openterface.com/discord — Echtzeit-Kommunikation
- GitHub Discussions: Funktionsdiskussionen und technische Fragen
- Forum: openterface.com/forum — Langzeitdiskussionen
- YouTube: TechxArtisan — Produktdemos und Tutorials
Vergleich mit anderen Open-Source-HID-Lösungen
| Feature | Openterface KeyMod | TinyUSB HID | Arduino HID | BluePill HID |
|---|---|---|---|---|
| Controller | CH32V208 (RISC-V) | Multi-Plattform | AVR/ARM | STM32F103 |
| Bluetooth | ✅ BLE | ❌ Extern nötig | ❌ Extern nötig | ❌ Extern nötig |
| Smartphone App | ✅ KeyCmd | ❌ Eigenentwicklung | ❌ Eigenentwicklung | ❌ Eigenentwicklung |
| Open-Source-Hardware | ✅ CERN-OHL | ❌ Nur Firmware | ❌ Nur Firmware | ✅ Teilweise |
| Plug & Play | ✅ Treiberfrei | ✅ Treiberfrei | ✅ Treiberfrei | ✅ Treiberfrei |
| Produktisierungsgrad | Serienprodukt | Entwicklungs-Framework | Entwicklungs-Framework | DIY-Lösung |
| KI-Integration | ✅ Agent-Modus | ❌ | ❌ | ❌ |
Häufig gestellte Fragen
Was unterscheidet KeyMod von herkömmlichen KVM-Switches?
Herkömmliche KVM-Switches dienen dazu, eine Tastatur/Maus/Monitor zwischen mehreren Computern umzuschalten. KeyMod hat eine andere Ausrichtung – er verwandelt das Smartphone in Tastatur und Touchpad zur Steuerung eines einzelnen Zielrechners ohne Eingabegeräte. Geeignet für Außenwerbeanlagen, Kiosks, Smart-TVs und ähnliche Szenarien.
Benötigt KeyMod eine Softwareinstallation auf dem Zielgerät?
Nein. KeyMod ist eine echte Hardware-HID-Emulation. Das Zielgerät erkennt ihn als Standard-USB-Tastatur und -Maus, ohne jegliche Treiber oder Software.
Kann man KeyMod selbst herstellen?
Ja. Die Hardware-Designdateien sind unter der CERN-OHL-S-2.0-Lizenz quelloffen verfügbar. Sie können die Gerber-Dateien herunterladen, PCBs selbst fertigen lassen und entsprechend der BOM Bauteile beschaffen und zusammenbauen.
Welche Plattformen unterstützt die KeyCmd App?
Derzeit werden Android und iPadOS (iOS) unterstützt. Desktop-Versionen (Windows/macOS) sind im Openterface-Ökosystem bereits als QT- und macOS-native Apps verfügbar.
Welche Einschränkungen gelten bei kommerzieller Nutzung der Open-Source-Lizenzen?
Die Software verwendet AGPL-3.0 – kommerzielle Nutzung ist erlaubt, aber modifizierter Code muss quelloffen sein. Die Hardware verwendet CERN-OHL-S-2.0 – Produktion und Verkauf basierend auf dem Open-Source-Design sind erlaubt, aber modifizierte Designs müssen ebenfalls quelloffen sein.
Zusammenfassung
Openterface KeyMod repräsentiert Best Practices der kooperativen Open-Source-Hardware- und -Softwareentwicklung:
- 100% quelloffen: Hardwaredesign, Firmware, App vollständig öffentlich, OSHWA-zertifiziert
- Praktisches Werkzeug: Löst reale Szenarien wie Außenwartung, Terminal-Debugging, Workflow-Beschleunigung
- Fortschrittliche Technik: CH32V208 RISC-V Controller + BLE + KI-Agent-Modus
- Aktive Community: Multi-Repository-Kooperation, mehrsprachige Dokumentation, Discord-Echtzeitkommunikation
Ob Sie RISC-V-Embedded-Entwicklung lernen, das USB-HID-Protokoll verstehen oder ein praktisches tragbares Eingabewerkzeug benötigen – Openterface KeyMod verdient Ihre Aufmerksamkeit.
Weiterführende Links: - GitHub-Organisation: github.com/TechxArtisanStudio - Offizielle Dokumentation: docs.openterface.com/products/keymod - Offizielle Website: openterface.com - Discord-Community: openterface.com/discord - Verwandtes Tutorial: Openterface Mini-KVM Deep Dive