Software-Entwicklung

Software entwickeln, ohne das Rad immer wieder neu zu erfinden: Das ist unser Ding, mit Fokus auf einer guten Mischung aus Opensource und Eigenentwicklung.

  • Embedded Betriebssysteme, Linux-Treiberentwicklung
  • Tool-Entwicklung Test und Verifikation
  • HDL-Entwicklung und In-The-Loop Simulation: Beweisen, dass ein Gerät richtig arbeitet.
  • Schnelles, robustes Prototyping von komplexen Gerätefernsteuerungen und Logik-Controllern

Eigenentwicklungen im Überblick:

  • VisionKit: embedded Linux Kamera-Framework für schnelle, verlustfreie Bilderfassung und Verarbeitung, Bildverarbeitungs-Pipelines (FPGA).
  • netpp: Kommunikationsbibliothek für ’embedded’ Geräte und smarte Sensorik
  • MaSoCist: FPGA SoC mit kompletter Debugger-Toolchain für verschiedene FPGAs/ASIC
  • uniproxy: JTAG Hardware-Debugger Proxy, erlaubt Debugging von FPGA SoC und ASIC-Lösungen über das GDB (GNU debugger) Remote-Protokoll.

Für nachhaltige Lösungsansätze können Sie als Kunde auf diese Entwicklungspakete zugreifen, müssen aber Ihre spezifischen Erweiterungen nicht offenlegen, sofern kein GPL-Zwang (z.B. Linux-Kerneltreiber) vorliegt.

Weiteres Knowhow/Frameworks:

  • Datenbanken auf SQL-Basis
  • Datenaufbereitung über Style-sheets (XML, XSL, Javascript, CSS)
  • Web to machine-Interfaces, SCADA

Teamwork

Covid-19-Update:

Die momentane Situation betreffend Covid-19 hat dazu geführt, dass bis absehbar Februar 2021 keine Vor-Ort-Unterstützung möglich ist.

Ich habe deshalb viel Zeit in investiert, Know-How zu effektiven Methoden der Zusammenarbeit über die Ferne aufzubauen und bestehende, jahrelang etablierte Strategien aus der Opensource-Szene auf sicherheitsrelevante Bereiche der Closed-Source auszuweiten.

Das ermöglicht:

  • Virtualisierte Gerätemodelle für den Test im Browser/in der Cloud
  • Remote-Debugging (seit 2008 bestehende Dienstleistung für Blackfin-Plattformen) nun auch für ARM, FPGA
  • Verteilte und automatisierte Tests: der Kunde verifiziert die logische Funktionalität des Gerätemodells selbst, ohne Offenlegung des Quellcodes von Drittparteien)
  • Ausführung von fertigen Software-Paketen zur Evaluation in der Cloud oder lokal (Docker-Container)

Die Sicherheit und der Schutz der proprietären Entwicklungen ist durch die klassische SSL-basierte (verschlüsselte Tunnelung) garantiert und kann unter Windows wie auch Linux mit den gängigen Tools stattfinden.

Dank der von Google unterstützten Binder Entwicklungen können somit komplette Online-Lehrgänge und Einführungen ohne weitere Installation von Software stattfinden.

Als Beispiel, ein Jupyter Notebook zur Online-Erstellung von Hardware-Designs in VHDL, Verilog oder MyHDL: