Zum Hauptinhalt springen
Praktische Workflows fuer Projektsetup, Hardware-Interaktion, Firmware-Entwicklung, Debugging und Sitzungsverwaltung. Jeder Abschnitt enthaelt Beispiel-Prompts, die du anpassen kannst.

Neues Projekt starten

1

Projekt erstellen oder auswaehlen

embedder
/project
Dialog zur Projektauswahl mit Suchfeld, Schaltflaeche zum Erstellen eines neuen Projekts und Liste vorheriger Projekte
Waehle ein bestehendes Projekt aus oder erstelle ein neues.Embedder fordert dich automatisch zum Erstellen eines Projekts auf, wenn das aktuelle Verzeichnis noch keinem Projekt zugeordnet ist. Daher ist /project nicht immer notwendig.
2

Plattform auswaehlen

Waehle deine Plattform aus unserem Katalog oder fuege eine eigene hinzu.
Dialog zur Plattformauswahl mit Suchfeld und nRF9xxx-Plattformen von Nordic Semiconductor
Um eine eigene Plattform hinzuzufuegen, gib den Plattformnamen ein und klicke auf + Add "[platform name]". Danach wirst du zum Hochladen deiner Dokumentation aufgefordert.
Dialog zur Plattformauswahl mit Menue zum Hochladen von Dokumentation als PDF
3

Peripherie hinzufuegen

Waehle die Peripherie aus unserem Katalog oder fuege eigene Komponenten hinzu.
Dialog zur Peripherieauswahl mit Suchfeld und Komponenten von Analog Devices, Nexperia und Allegro MicroSystems
Waehle die Peripherie, die du verwendest (I2C-Sensoren, SPI-Displays, UART-Module usw.).Eigene Peripherie und Datenblaetter kannst du ueber denselben Prozess wie bei Plattformen im vorherigen Schritt hinzufuegen.Fuehre /peripheral jederzeit erneut aus, um die Konfiguration zu erweitern oder anzupassen.
4

EMBEDDER.md generieren

embedder
/init
Erstellt eine EMBEDDER.md mit Projektkontext, Konfiguration und mehr.
Fuer Geraete, die nicht im Katalog enthalten sind, lade eigene Dokumentation oder Datenblaetter ueber /peripheral oder die Web-Konsole (/console) hoch, um die Agent-Qualitaet zu verbessern.

Hardware-Interaktion

Seriellen Monitor nutzen

Das serielle Terminal ist direkt in Embedder integriert. Die KI liest serielle Ausgaben automatisch. Serielle Seitenleiste oeffnen:
Embedder
/serial
Oder per Tastaturkuerzel: Ctrl+` (Backtick) Auto-Connect-Verhalten: Standardmaessig verbindet sich Embedder nach dem Flashen automatisch mit deinem Geraet. Um Auto-Connect zu deaktivieren, aktualisiere deine EMBEDDER.md oder gib folgenden Prompt ein:
Embedder
> don't auto-connect to serial after flashing
Serielle Ausgabe filtern: Klicke in der seriellen Toolbar auf [Filter], um Ausgaben per Regex zu filtern. Das ist hilfreich, um relevante Logs oder Fehler in verrauschten Ausgaben zu isolieren.
Filter im seriellen Terminal mit Regex-Pattern zum Filtern der Ausgabe

Firmware-Entwicklung

Peripherie-Treiber schreiben

Embedder nutzt Kontext aus deinen Datenblaettern und deiner Dokumentation. Bitte Embedder beim Entwickeln von Treibern, Pinbelegungen, Registermaps und Implementierungsdetails nachzuschlagen.
Embedder
> schreibe einen I2C-Treiber fuer den BME280-Sensor auf I2C1 (SDA=PB7, SCL=PB6).
> integriere funktionen fuer temperatur, luftfeuchtigkeit und druck.
> nutze die vorhandenen HAL_I2C-funktionen in unserer codebasis.
Embedder
> erstelle einen UART-Treiber fuer ein GPS-Modul an UART2 mit 9600 Baud.
> implementiere einen Ringpuffer fuer RX, parse NMEA-Saetze und extrahiere Breiten-/Laengengrad.
Embedder
> implementiere einen SPI-Treiber fuer das SD-Karten-Modul an SPI1.
> inkl. initialisierung, single-block read/write und korrekter CS-Pin-Behandlung an PA4.

Build und Flash

Embedder nutzt deine Projektkonfiguration, um benoetigte Toolchains und Abhaengigkeiten zu bestimmen.
1

Abhaengigkeiten installieren

Embedder
> hilf mir, die abhaengigkeiten fuer dieses projekt zu installieren
2

Projekt bauen

Embedder
> baue das projekt
3

Firmware flashen

Embedder
> flashe die firmware auf das geraet
4

Bauen, flashen und ueberwachen

Embedder
> baue und flashe, und zeige mir dann die serielle ausgabe

Mit HALs und SDKs arbeiten

Frage nach vendorspezifischen HALs und SDKs:
Embedder
> wie konfiguriere ich STM32 HAL fuer I2C?
Embedder
> zeig mir, wie ich den ESP-IDF GPIO-Treiber nutze
Embedder
> wie initialisiere ich DMA auf diesem Chip korrekt?

Mit serieller Ausgabe debuggen

Embedder liest serielle Ausgaben und kann Probleme in Echtzeit analysieren.

Fehler analysieren

Embedder
> was verursacht diesen fehler in der seriellen ausgabe?
Embedder
> das geraet startet staendig neu, analysiere den crash dump
Embedder
> parse die debug-logs und finde das problem

Ausfuehrung nachverfolgen

Embedder
> fuege debug-prints hinzu, um die initialisierungssequenz zu verfolgen
Embedder
> warum wird der interrupt-handler nicht aufgerufen?

Plan-Modus vs. Act-Modus

Embedder hat zwei Modi fuer unterschiedliche Workflows.

Act-Modus (Standard)

Voller Toolzugriff. Embedder kann lesen, schreiben und ausfuehren. Geeignet fuer:
  • Code schreiben und aendern
  • Firmware bauen und flashen
  • Aenderungen am Projekt vornehmen

Plan-Modus

Read-only-Analyse. Embedder recherchiert ohne Aenderungen. Geeignet fuer:
  • Komplexe Refactorings planen
  • Architektur vor Aenderungen reviewen
  • Datenblaetter analysieren
Zwischen Modi wechseln:
  • Tastatur: Shift+Tab
  • Befehle: /plan oder /act
Im Plan-Modus starten:
Embedder
> /plan
> analysiere die power-management-implementierung und schlage verbesserungen vor
Der Plan-Modus ist ideal, um komplexe Aenderungen vor der Umsetzung zu planen.

Dokumentation und Kontext

Hochgeladene Dokumentation nutzen

Plattformen und Peripherie aus unserem Katalog haben bereits hochgeladene Dokumentation. Du kannst weitere Dokumente ueber die Web-Konsole hochladen, erreichbar mit /console.
Web-App mit Bereich zum Hochladen von Dokumentation fuer dein Projekt
Embedder nutzt diese Dokumente automatisch:
Embedder
> was ist die maximale I2C-Taktfrequenz fuer diesen Sensor?
Embedder
> zeig mir die register-map fuer den beschleunigungssensor
Embedder
> welche leistungsaufnahme hat er im sleep-modus?

Hardware-spezifische Unterstuetzung

Stelle hardwarespezifische Fragen zu deinem Board:
Embedder
> welche schalterstellung auf dem stm32n6570-dk aktiviert den flash-modus?
Embedder
> wie ist das pin-mapping fuer den Arduino-Header?
Embedder
> kann ich DMA mit diesem UART-Peripheriebaustein verwenden?

Bash-Modus

Umgehe den KI-Agenten und fuehre Terminalbefehle direkt mit dem Praefix ! aus.
!ls -la
!make clean
!git status
Der Befehl wird ohne KI-Interpretation direkt im Terminal ausgefuehrt. Nuetzlich fuer schnelle Kommandos ohne Assistenz.

Serieller Sendemodus

Sende Nachrichten direkt ueber seriell an deinen MCU mit dem Praefix ~.
embedder
~help
embedder
~reset
embedder
~get status
Der Text wird direkt an die serielle Konsole deines Geraets gesendet. Geeignet fuer:
  • AT-Befehle senden
  • Mit Device-CLI/REPL interagieren
  • Manuelle Debug-Befehle

Dateien und Verzeichnisse referenzieren

Nutze @, um Dateien oder Verzeichnisse schnell in deine Prompts einzubinden.
1

Datei referenzieren

Embedder
> erklaere die logik in @src/main.c
Embedder
> was macht @drivers/i2c.h?
2

Verzeichnis referenzieren

Embedder
> was ist in @src/drivers/?
Embedder
> zeig mir die struktur von @lib/
3

Mehrere Referenzen

Embedder
> vergleiche @src/old_driver.c und @src/new_driver.c
Dateipfade koennen relativ oder absolut sein. Bei Verzeichnis-Referenzen werden Dateilisten gezeigt, nicht Dateiinhalte.

Sitzungsverwaltung

Projekte wechseln

Embedder
/project    # Zu einem anderen Projekt wechseln

Fruehere Sitzungen fortsetzen

Embedder
/history    # Fruehere Konversationen durchsuchen und fortsetzen

Kontext verwalten

Fuer lange Konversationen:
Embedder
/compress   # Konversation komprimieren, um Kontext zu sparen

Schnelle Referenz

WorkflowBefehl/Shortcut
Neues Projekt-Setup/project -> /peripheral -> /init
Serieller Monitor/serial oder Ctrl+`
Modus wechselnShift+Tab oder /plan /act
Peripherie hinzufuegen/peripheral
Datei referenzieren@dateiname im Prompt
Bash-Modus!command (z. B. !ls)
Seriell senden~message (z. B. ~help)
Letzte Nachricht rueckgaengig/undo oder Ctrl+Z
Konversation zurueckspulen/rewind oder Ctrl+Z (2x)
Sitzung fortsetzen/history
Kontext komprimieren/compress
Web-Konsole/console
Hilfe/help
Last modified on March 5, 2026