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:

  1. Native CH9329-Protokollkompatibilität: USB-HID-Deskriptoren müssen nicht von Grund auf implementiert werden, sofort einsatzbereit
  2. RISC-V-Architektur: Quelloffener Befehlssatz, im Einklang mit der Open-Source-Philosophie des Projekts
  3. Geringe Kosten: Chips aus chinesischer Produktion, kontrollierbare BOM-Kosten
  4. Niedriger Stromverbrauch: Geeignet für tragbare EDC-Geräte
  5. 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)

BASH
# 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

BASH
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:

BASH
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

BASH
# 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

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