Featured image of post Pydepp: Python Trifft Fpga

Pydepp: Python Trifft Fpga

Mit PyDEPP wird die Arbeit mit Digilent-FPGA-Boards endlich einfach: Die Python-Bibliothek bringt modernen Zugriff auf Register, Streams und Debug-Funktionen – basierend auf dem DEPP-Protokoll des Adept SDKs. Open Source, MIT-lizenziert und bereit für dein nächstes Embedded-Projekt.

Ich habe ein neues Open-Source-Projekt veröffentlicht: PyDEPP – eine Python-Bibliothek für die Kommunikation mit Digilent-FPGA-Boards über das DEPP-Protokoll. Ziel war es, eine moderne, objektorientierte Schnittstelle für den Zugriff auf Register, Datenströme und Debug-Funktionen zu schaffen, die direkt auf dem Adept SDK von Digilent aufbaut.

Warum das Ganze?

Digilent stellt mit dem DEPP-Protokoll eine leistungsfähige, aber recht sperrig zu bedienende Schnittstelle bereit. Wer schon einmal versucht hat, mit den C-APIs zu arbeiten, weiß: Das geht eleganter. PyDEPP abstrahiert diese Komplexität und bringt den Zugriff auf Register und Streams auf Python-Niveau – inklusive Kontextmanagement via with, flexibler Timeout-Steuerung und Debug-Dumps.

Highlights:

  • get_reg() / set_reg() – einfacher Registerzugriff
  • put_stream() / get_stream() – performante Datenübertragung
  • Anpassbare Timeouts
  • Kontext-Manager für sauberes Ressourcen-Handling
  • Register-Dumps zur Fehlersuche

Die Bibliothek ist vollständig quelloffen und unter MIT-Lizenz verfügbar. Wer auf Python-basierte Hardwarekommunikation setzt, wird hier fündig.

Getestet mit:

  • Digilent Nexys2 FPGA-Board
  • Python 3.11 unter Debian
  • Shared Libraries: libdmgr.so, libdepp.so aus dem Adept SDK

➡️ Wer sich für Embedded-Entwicklung mit Python interessiert oder einfach die DEPP-Schnittstelle besser nutzen möchte, ist herzlich eingeladen, mitzuwirken.

Erstellt mit Hugo
Theme Stack gestaltet von Jimmy