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 Registerzugriffput_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.soaus 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.
