UStackUStack
embedist icon

embedist

embedist ist eine Windows-Desktopumgebung für Embedded-Firmware: board-aware KI-Unterstützung, PlatformIO Build/Upload und Echtzeit-Serial-Monitor.

embedist

Was ist embedist?

Embedist ist eine Windows-Desktopanwendung, die KI-Unterstützung mit der Embedded-Firmware-Entwicklung kombiniert. Sie ist so konzipiert, dass Sie in einer einzigen Umgebung mit KI-unterstütztem Debugging, Serial-Monitoring und dem Erstellen/Hochladen von Firmware arbeiten können – unter Verwendung von Kontextinformationen zu Ihrer Zielhardware.

Das Projekt basiert auf Tauri 2, React und TypeScript. Das Ziel ist, dass Sie einen Ordner mit einem Embedded-Projekt (z. B. ESP32- oder Arduino-Codebasen) öffnen und board-spezifische KI-Unterstützung beim Bearbeiten, Erstellen, Hochladen und Überwachen der Geräteausgabe erhalten.

Wichtige Funktionen

  • KI-Modi für Chat, Planung, Agentenausführung und Debug-Chat: Bietet verschiedene Interaktionsstile (Chat, Plan, Agent, Debug Chat) für unterschiedliche Phasen der Embedded-Arbeit.
  • Multi-Provider-KI-Unterstützung: Nutzt KI-Provider wie OpenAI, Anthropic, Google, DeepSeek, Ollama, NVIDIA NIM und benutzerdefinierte vLLM-Endpunkte.
  • Board-spezifischer Kontext für Debugging: KI-Debugging nutzt erkannte Board-Informationen (z. B. ESP32-Varianten und Arduino-Boards), um hardware-spezifische Lösungen anzupassen.
  • Echtzeit-Serial-Monitor: Streamt Gerätekommunikation mit konfigurierbaren Baudraten und Auto-Connect-Verhalten.
  • PlatformIO-Build- und Upload-Integration: Verwendet PlatformIO CLI mit Live-Output-Streaming, parst Fehler/Warnungen in ein Problems-Panel und enthält eine Schaltfläche „Build stoppen“.
  • Code-Editor und Projekt-Navigation: Umfasst einen Datei-Explorer mit Breadcrumbs, kürzliche Dateien, Inline-Umbenennen, Mehrfachauswahl und einen Monaco-basierten Editor mit Tab-Verwaltung und Dirty-Indikatoren.
  • VS-Code-ähnliche Tastenkürzel und Befehlspalette: Unterstützt Ctrl-basierte Kürzel für gängige Operationen und eine Befehlspalette (Ctrl+Shift+P).
  • Leichtgewichtige Windows-Executable: Verwendet einen Tauri-2-Rust-Backend; das Repository beschreibt eine Executable-Größe von ~5,7 MB.
  • Persistente API-Schlüssel für benutzerdefinierte Endpunkte: Behält API-Schlüssel für benutzerdefinierte Endpunkte über App-Neustarts hinweg.

So verwenden Sie embedist

  1. Herunterladen und ausführen: Laden Sie embedist.exe aus den Releases herunter und führen Sie es unter Windows aus.
  2. Projektordner öffnen: Drücken Sie Ctrl+O oder verwenden Sie Datei > Ordner öffnen, um den Ordner mit Ihrem Embedded-Code zu öffnen.
  3. KI und Provider einrichten: In Einstellungen (Ctrl+,) konfigurieren Sie Ihren KI-Provider und ggf. Anmeldedaten.
  4. (Optional für Build/Upload): Stellen Sie sicher, dass PlatformIO installiert ist, wenn Sie Build- und Upload-Funktionen nutzen möchten.
  5. Erstellen, hochladen und überwachen: Verwenden Sie das Build-Panel für PlatformIO-gesteuertes Erstellen/Hochladen, dann sehen Sie Laufzeitausgaben im Serial-Monitor.

Falls eine Windows-SmartScreen-Warnung für eine nicht signierte Anwendung erscheint, weist das Repository darauf hin, dass es sich um eine Standard-Windows-Sicherheitsmeldung für nicht signierte Apps handelt, und empfiehlt, Weitere Infos zu wählen und dann Trotzdem ausführen.

Anwendungsfälle

  • Firmware-Debugging mit board-spezifischer KI: Wenn Ihr Projekt ein bekanntes Board anspricht (z. B. ESP32 Dev Module oder Arduino Uno), nutzen Sie den KI-Debug-Modus, um hardwarebasierte Lösungen anzufordern.
  • Planung vor dem Codieren: Verwenden Sie den Plan-Modus, um vor Codeänderungen an einem Projektplan zu arbeiten, dann fahren Sie mit Bearbeitungen im integrierten Editor fort.
  • Autonome Iteration mit Aktivitätsprotokoll: Im Agent-Modus delegieren Sie Implementierungsschritte und überprüfen ein Live-Aktivitätsprotokoll, während Änderungen angewendet werden.
  • Überwachen des Geräteverhaltens über Serial: Verbinden Sie sich mit Ihrem Gerät und nutzen Sie den Serial-Monitor für Echtzeitausgaben, passen Sie die Baudrate an und verlassen Sie sich auf Auto-Connect, um manuelle Einrichtung zu minimieren.
  • Erstellen und Beheben von Compile-/Upload-Fehlern: Führen Sie PlatformIO-Builds mit gestreamtem Output durch und lassen Sie geparste Fehler/Warnungen in einem Problems-Panel anzeigen, um Iterationen zu beschleunigen.

FAQ

Gibt es embedist für Plattformen außer Windows?
Das Repository beschreibt eine Windows-Desktopanwendung und nennt Windows 10/11 (64-Bit) als Voraussetzung.

Brauche ich PlatformIO?
PlatformIO ist eine optionale Voraussetzung, aber erforderlich für Build- & Upload-Funktionen.

Brauche ich einen KI-API-Schlüssel für die App?
Die Voraussetzungen listen einen optionalen „KI-API-Schlüssel“, der für KI-Debugging-Funktionen erforderlich ist. Für nicht-KI-Workflows ist die App möglicherweise nutzbar, aber KI-Debugging erfordert den Schlüssel.

Welche Boards werden unterstützt?
Unterstützte Boards umfassen ESP32-Familienboards (wie ESP32 Dev Module, ESP32 WROOM/WROVER, ESP32 S3, ESP32 C3/C6 und ESP32 CAM) sowie Arduino-Familienboards (Uno/Nano/Mega, Pro Mini, Leonardo, Due und Zero), wobei auch ESP8266 erwähnt wird.

Wie handhabt embedist benutzerdefinierte KI-Endpunkte?
Es unterstützt die Bearbeitung benutzerdefinierter Endpunkte und gibt an, dass API-Schlüssel für benutzerdefinierte Endpunkte über Neustarts persistent sind.

Alternativen

  • PlatformIO in einem Editor/IDE (mit separatem KI-Assistenten): Wenn Sie hauptsächlich Build/Upload und Fehleranalyse benötigen, deckt PlatformIO in Ihrer bestehenden IDE den Build-Workflow ab, während die KI-Unterstützung aus einem anderen Tool kommt.
  • VS Code mit Embedded-Entwicklungs-Extensions + KI-Tools: Ein gängiges Setup ist VS Code für die Bearbeitung und PlatformIO-ähnliche Extensions für Embedded-Workflows, kombiniert mit einem externen KI-Chat/Debug-Tool.
  • Allgemeine Serial-Terminal-Tools: Wenn Ihr Hauptbedarf Serial-Monitoring ist, bieten dedizierte Serial-Terminal-Anwendungen Streaming und Baud-Konfiguration, enthalten jedoch keine board-aware KI-Debugging und integriertes Build/Upload.
  • KI-Coding/Chat-Tools mit Projektkontext: Für Nutzer, die KI-Unterstützung wünschen, aber bereits eine bevorzugte Embedded-Toolchain haben, können allgemeine KI-Coding-Assistenten helfen, bieten jedoch möglicherweise nicht dasselbe board-aware Debugging und die embedist-spezifische Serial/Build-Integration.