Projekte

Visionen umsetzen, Fortschritt gestalten.

BLE-basierte WiFi-AP-Konfiguration und robustes OTA-Update-System

Im Rahmen dieses Projekts wurde ein leistungsfähiges System auf Basis eines ESP32 entwickelt, das über BLE temporäre Zugangsdaten für die Konfiguration eines WiFi Access Points (AP) bereitstellte. Das System ermöglichte den Zugriff auf mehrere REST-Endpoints, die für die Bereitstellung kundenspezifischer Daten genutzt wurden. Die REST-API wurde so konzipiert, dass sie flexibel und sicher ist, um unterschiedliche Anforderungen der Kunden zu erfüllen.

Zusätzlich wurde eine Funktion für Over-the-Air (OTA) Firmware-Updates integriert. Dabei lag der Fokus auf Sicherheit und Zuverlässigkeit: Die Firmware-Pakete wurden auf eine gültige Signatur geprüft, um sicherzustellen, dass nur authentische und geprüfte Updates installiert werden konnten. Ein Rollback-Mechanismus wurde ebenfalls implementiert, um bei Fehlern während des OTA-Updates eine Wiederherstellung auf die vorherige Firmware-Version zu ermöglichen.

Das Ergebnis war ein robustes und sicheres System, das flexible Datenbereitstellung und eine wartungsfreundliche Firmware-Aktualisierung in einem IoT-Umfeld ermöglichte.

Eingesetzte Technologien:

WiFi-gestütztes Captive-Portal für intuitive ESP32-Geräteeinrichtung

In diesem Projekt wurde ein Captive-Portal auf Basis eines ESP32 entwickelt, das die Konfiguration eines Geräts über einen integrierten WiFi-Access Point ermöglicht. Das Captive-Portal wurde als zentrale Schnittstelle zur Verfügung gestellt, um gerätespezifische Einstellungen einfach und benutzerfreundlich vorzunehmen.

Eine der Hauptfunktionen des Captive-Portals war die Möglichkeit, verfügbare WiFi-Netzwerke zu scannen und diese übersichtlich anzuzeigen. Benutzer konnten so das ESP32-Gerät mit dem gewünschten Netzwerk verbinden, um es ins Internet zu bringen. Zusätzlich wurden spezifische Konfigurationsoptionen für die individuellen Anforderungen des Geräts bereitgestellt, wie z. B. Netzwerkeinstellungen, Benutzerparameter und weitere systemrelevante Anpassungen.

Die Implementierung umfasste die Entwicklung eines responsiven und leicht zu bedienenden Web-Interfaces, das über mobile Geräte oder Desktops zugänglich war. Das Ergebnis war ein flexibel einsetzbares System, das eine einfache Einrichtung und Konfiguration von IoT-Geräten ermöglichte und gleichzeitig die Interoperabilität mit bestehenden Netzwerken sicherstellte.

Eingesetzte Technologien:

Cross-Plattform Bluetooth-Datenaustausch mit MAUI und MVVM

Unser Projekt zielt darauf ab, eine plattformübergreifende Softwarelösung zu entwickeln, die das Microsoft MAUI-Framework nutzt, um Bluetooth-Peripheriegeräte (Peripherals) effizient in Anwendungen einzubinden. Dabei wird das MVVM-Pattern (Model-View-ViewModel) verwendet, um die Daten der Bluetooth-Characteristics einfach und intuitiv vom ViewModel an die Benutzeroberfläche (View) zu binden.
Hauptziele:

  • Plattformübergreifende Entwicklung: Nutzung von Microsoft MAUI für die Erstellung einer einheitlichen Anwendung, die auf verschiedenen Plattformen (iOS, Android, Windows, etc.) funktioniert.
  • Effiziente Datenbindung: Anwendung des MVVM-Patterns, um die Bluetooth-Daten von den Peripherals in den Characteristics nahtlos an die View zu binden.
  • Automatisierte Code-Generierung: Entwicklung einer Definitionssprache zur automatischen Generierung des notwendigen Codes für .NET-Anwendungen sowie für den Microcontroller, der als GATT-Server fungiert.

Projektumfang:

  • MAUI-Integration: Implementierung von MAUI für die Entwicklung der Benutzeroberfläche und die plattformübergreifende Kompatibilität.
  • MVVM-Architektur: Strukturierung der Anwendung nach MVVM-Pattern, um die Trennung von Geschäftslogik und Benutzeroberfläche zu gewährleisten.
  • Bluetooth-Konnektivität: Einrichtung und Verwaltung der Bluetooth-Verbindungen zu verschiedenen Peripheriegeräten.
  • Definitionssprache: Entwicklung einer IDL (Interface Definition Language), die den notwendigen Code für die Interaktion mit den GATT-Characteristics automatisch generiert, sowohl für die .NET-Seite als auch für den Microcontroller-GATT-Server.

    Eingesetzte Technologien:

    USB Keyboard Emulation für Bluetooth Low Energy GATT Service

    Das Projekt zielt darauf ab, eine Lösung zu entwickeln, bei der spezifische Zeichenketten von einem Smartphone über Bluetooth Low Energy (BLE) an einen PC übertragen werden. Hierbei soll das Smartphone die Zeichenketten über GATT Characteristics (Generic Attribute Profile) senden, während ein BLE-fähiger USB-Dongle die Daten empfängt und diese über den USB Human Interface Device (HID) Modus als Tastatureingaben an den PC weiterleitet.

    Eingesetzte Technologien:

    Moderner Anmeldedialog für Sicherheitsdaten

    Das Projekt umfasste die Entwicklung einer modernen WPF-Anwendung für die Eingabe sicherheitsrelevanter Anmeldedaten, einschließlich SmartCard-Informationen oder anderer Dienste. Der Anmeldedialog wurde so konzipiert, dass er flexibel konfigurierbar ist und vollständig im Corporate Design des Kunden erscheint.

    Eine besondere Herausforderung bestand darin, dass der Anmeldedialog sowohl aus bestehenden nativen Codes angesteuert werden konnte als auch eine Anbindung an einen RPC-Dienst erforderte. Dieser Dienst übertrug die Konfiguration zum Dialog-Service und sicherte gleichzeitig die Übertragung sensibler Anmeldedaten in gesicherten Verfahren zurück an die Anwendung.

    Eingesetzte Technologien:





    Kommunikationsmodul für Gastronomie-Spülsysteme

    Das Projekt umfasste die Entwicklung eines Kommunikationsmoduls für Gastronomie-Spülsysteme, basierend auf einem ESP32-WROOM-Modul mit Zephyr RTOS. Zu den Aufgaben gehörte die Beratung zur Verbesserung der Entwicklungsumgebung, die Build-Automatisierung mit Gitlab und die Erbringung von Funktionsnachweisen für Hardwarekomponenten wie WLAN, Bluetooth und serielle Schnittstelle. Weiterhin wurden Schnittstellen wie OAuth, MQTT, DHCP-Client, Bluetooth GATT-Server und Firmware-Update (OTA) implementiert. Alle Verbindungen mussten TLS verwenden und Server mussten über ihre Zertifikate authentifiziert werden. Es wurde eine Strategie für den Wechsel zwischen verschiedenen Softwarezuständen entwickelt und ein GATT-Server für die Steuerung von Aktoren, das Auslesen von Sensoren und Fehlerprotokollen sowie das Setzen von Parametern implementiert. Zusätzlich wurde die serielle Kommunikation mit der Maschine über ein kundenspezifisches Protokoll entwickelt und ein MQTT-Client für den Datenaustausch mit der Kunden-Server-Infrastruktur implementiert.

    Eingesetzte Technologien:

    Sub-Bit Packing

    Sub-Bit Packing ist eine bahnbrechende C++-Bibliothek zur effizienten Speicherung von Zuständen. Ideal für Anwendungen mit begrenztem Speicherplatz, insbesondere in eingebetteten Systemen. Die Bibliothek ermöglicht die optimierte Speicherung großer Zustandsmengen, was zu reduziertem Speicherbedarf und schnelleren Lese- und Schreibvorgängen führt. Einfache Integration und vielseitige Anwendbarkeit machen Sub-Bit Packing zu einem unverzichtbaren Werkzeug für die Entwicklung fortschrittlicher Projekte in C++. Erfahren Sie mehr in unserem GitHub-Repository.

    Eingesetzte Technologien:

    EnergySaver Pro

    Der EnergySaver Pro ist der innovative Begleiter für intelligente Energieeinsparung in Zusammenarbeit mit Tibber. Das Gerät zeigt stundengenaue Strompreise auf einem klaren E-Paper-Display an, ermöglicht umweltfreundlichen Batteriebetrieb und überzeugt mit einem vielseitigen Design zur einfachen Aufstellung oder Wandmontage. Durch das Wissen über präzise Strompreise können Nutzer ihren Verbrauch optimieren und so effizient Energie sparen, um Kosten zu reduzieren und einen Beitrag zur Nachhaltigkeit zu leisten.

    Eingesetzte Technologien:

    HeadlessLink

    “HeadlessLink” ist ein innovatives Software-Framework, das Headless-IoT-Geräte ohne Ein- und Ausgabemöglichkeiten mühelos über eine praktische Handy-App mit dem Internet verbindet. Das Framework besteht aus zwei leistungsstarken Bibliotheken für IoT-Geräte und Smartphone-App-Entwickler, die eine Vielzahl von Integrationsmöglichkeiten durch anpassbare Rückruf-Funktionen mit minimalem Aufwand bieten. Mit Unterstützung für Android und iOS sorgt “HeadlessLink” für ein reibungsloses Erlebnis auf verschiedenen Geräten. Dank Kompatibilität mit Systemen auf Basis von Zephyr RTOS und nativen ESP32-Projekten vereinfacht dieses Framework den Integrationsprozess und schafft eine nahtlose Verbindung zwischen Headless-IoT-Geräten und der digitalen Welt.

    Eingesetzte Technologien:

    Automatisches Parkflächen-Management über intelligente Kamerasysteme

    In diesem Projekt haben wir ein zentrales, webbasiertes Verwaltungssystem für das automatische Parkflächen-Management entwickelt. Durch den Einsatz intelligenter Kamerasysteme konnten wir Daten vor Ort erfassen und in Echtzeit an das Backend übermitteln.

    Unsere Prioritäten lagen auf sicherer, datensparsamer und zuverlässiger Kommunikation. Wir implementierten robuste Verschlüsselungstechnologien, um Daten während der Übertragung zu schützen, und reduzierten die gesammelten Daten auf das Wesentliche, um Effizienz und Datenschutz zu gewährleisten.

    Unser automatisches Parkflächen-Management über intelligente Kamerasysteme ermöglichte unseren Kunden eine optimierte Nutzung ihrer Parkressourcen. Mit unserer Lösung stellen wir sicher, dass die Kommunikation sicher, datensparsam und zuverlässig ist, um einen reibungslosen Betrieb des Systems zu gewährleisten.

    Eingesetzte Technologien:

    Automatisiertes Bluetooth-Testssystem

    Um die Bluetooth-Funktionalität eines modernen Bluetooth-Audio-Produktes automatisiert testen zu können, wurde ein umfangreiches Testframework für eine spezielle angefertigte Test-Hardware entwickelt.
    Hierfür wurden verschiedene Anwendungsfälle für das Produkt simuliert. Unter anderem Audioübertragung von verschiedenen Audioquellen, Datenübertragung und Steuerdaten wie Beispielsweise von Smartphone-Apps wurden nachgebildet.
    Die Tests wurden automatisch über Azure-Pipelines auf dedizierter Hardware ausgeführt und die Ergebnisse als Testreport in das Azure-Portal zurückgegeben.

    Eingesetzte Technologien:

    Synchronisierte RGB-LED-Steuerung für E-Auto-Ladesäulen

    Entwicklung und Programmierung einer zentralen LED-Steuerungseinheit für Ladesäulen von Elektrofahrzeugen, die jeweils zwei Ladepunkte bereitstellen. Jeder Ladepunkt wird mit RGB-LEDs ausgestattet, die verschiedene Farbmuster und -sequenzen anzeigen können, wie Blinken, Pulsieren oder statisches Leuchten. Diese visuellen Effekte dienen der Benutzerführung und zur Darstellung des Ladezustands und werden im gesamten Ladesäulennetzwerk synchronisiert, sodass alle LEDs der verteilten Säulen kohärent und zeitgleich ablaufen.

    Zur Anpassung an unterschiedliche Umgebungshelligkeiten wird ein I²C-gesteuerter Helligkeitssensor integriert, der die Intensität der LEDs dynamisch reguliert und damit für optimale Sichtbarkeit und Energieeffizienz sorgt.

    Eingesetzte Technologien:



    Entwicklung eines Cachesystems für sicherheitsrelevante Smartcard-Operationen

    Es wurde eine Softwarebibliothek entwickelt, um sicherheitskritische Smartcard-Operationen im Rahmen einer Finanzanwendungs-Suite effizienter zu gestalten. Dabei war es wichtig, dass verschiedene Daten typgesichert und über benannte, hierarchische Baumstrukturen zugänglich sind. Aufgrund der komplexen Einsatzszenarien, die sowohl virtuelle als auch Remote-Maschinen umfassen, musste das Framework zudem einen leistungsfähigen Interprozesskommunikations-Mechanismus (IPC) unterstützen. Besonderer Fokus lag dabei auf der Kombination aus hoher Geschwindigkeit und maximaler Datensicherheit.

    Eingesetzte Technologien:


    Modulares Treiber- und Anwendungs-Framework für Kommunikation mit medizinischen Geräten

    Um eine reibungslose Kommunikation während der Produktion und Konfiguration von medizinischen Geräten zu gewährleisten, haben wir ein innovatives modulares Kommunikationsframework entwickelt. Unser Ziel war es, eine einheitliche Schnittstelle zu schaffen, die es ermöglicht, sich mit verschiedenen Modellen und Versionen der Geräte zu verbinden – sei es über Kabel oder drahtlos. Dieses wegweisende Framework kann sowohl als eigenständiges Commandline-Tool (CLI) verwendet werden als auch als leistungsstarke Bibliothek (.NET) in die Produkte unserer Kunden und sogar in Matlab integriert werden. Dadurch eröffnen sich faszinierende Möglichkeiten für intensive Produktanalysen und eine optimale Integration in bestehende Systeme.

    Eingesetzte Technologien:

    BLE-gestützte Entfernungsmessung mit mobiler Konfiguration

    Im Rahmen des Projekts wurde eine Entfernungsmessung zwischen einem mobilen Handgerät und einem BLE-Beacon entwickelt. Das Handgerät wurde speziell für den batteriebetriebenen Einsatz optimiert, wobei Energieeffizienz eine zentrale Rolle spielte. Zur Anzeige der Messwerte und weiteren Statusinformationen wurde ein energiesparendes SPI-Display integriert.

    Die Konfiguration des Handgeräts erfolgte über eine UWP-Anwendung auf einem Windows-Tablet. Diese Anwendung kommunizierte mittels BLE-GATT-Services mit dem Handgerät, wodurch eine komfortable und drahtlose Einrichtung möglich war. Die Implementierung umfasste sowohl die Hardware- als auch die Softwareentwicklung, einschließlich der BLE-Kommunikationsprotokolle und der Anpassung der Benutzeroberfläche auf dem Tablet.

    Das Ergebnis war ein kompaktes und energieeffizientes System, das präzise Entfernungsmessungen und eine intuitive Benutzersteuerung ermöglichte.

    Eingesetzte Technologien:

    Entwicklung eines Hörgeräte-Prototypen

    Für die Entwicklung einer neuen Hörgeräte-Plattform wurde auf Basis eines aktuellen Produkts ein Prototyp mittels Entwicklungsboards geschaffen. Die Bluetooth-Funktionalität musste komplett nachgebildet werden und neue Features wie Audio-Streaming-for-Hearing-Aids (ASHA) für Android-Geräte implementiert werden. Hierfür wurden auch Android-Custom-Roms angefertigt, um Funktionalität vor Veröffentlichung implementieren und testen zu können.

    Eingesetzte Technologien:

    Bibliothek für Graphische Komponenten auf Vernetzten Embedded-Ladesystemen für Elektro-Gabelstapler

    Entwicklung einer modularen Bibliothek zur Bereitstellung grafischer Komponenten für vernetzte Embedded-Systeme auf Basis von Windows CE (WinCE). Die grafische Bibliothek wurde auf Grundlage spezifischer Designvorgaben eines UI/UX-Designers in ein C#-Framework implementiert und stellt die grafische Benutzeroberfläche für vernetzte Ladesysteme dar, die speziell für Elektro-Gabelstapler entwickelt wurden. Diese Systeme ermöglichen die Überwachung und Steuerung der Ladeprozesse über eine zentralisierte, netzwerkfähige Oberfläche.

    Messe-Attraktion zur Demonstration der Vernetzung

    Für die Produkteinführung auf einer Fachmesse wurde eine interaktive Kundenattraktion entwickelt, um die Netzwerkfähigkeit der Ladesysteme anschaulich zu präsentieren. Messebesucher konnten durch Eingabe ihrer Kontaktdaten eine Slot-Machine spielen, die auf drei vernetzten Ladegeräten simultan dargestellt wurde. Diese Anwendung zeigte die Echtzeit-Synchronisation und Kommunikation zwischen den Geräten und hob die Leistungsfähigkeit des Netzwerks hervor. Ziel war es, sowohl die technische Leistungsfähigkeit der vernetzten Geräte als auch die Möglichkeiten der Interaktion zu verdeutlichen.

    Funktionsweise der Slot-Machine

    • Die Slot-Machine wurde über das entwickelte Netzwerkmodul in Echtzeit synchronisiert und auf den Displays der vernetzten Ladesysteme angezeigt.
    • Die Synchronisation der Rollen der Slot-Machine zwischen den drei Ladegeräten erfolgte durch asynchrone Kommunikation, was den Messebesuchern die Robustheit und Präzision der Netzwerkarchitektur veranschaulichte.

      Eingesetzte Technologien:

      Bluetooth Audio Transmitter

      Im Rahmen dieses Projekts haben wir eine Geräte-Firmware entwickelt, die es ermöglicht, beliebige Audioquellen mittels einer analogen Klinkenverbindung oder einer digitalen, optischen Verbindung kabellos zu übertragen. Das Besondere an diesem Transmitter ist seine nahtlose Integration in das Ökosystem eines Hörgerätes.

      Durch die Verbindung des Bluetooth Audio Transmitters mit einem Hörgerät können Nutzerinnen und Nutzer ihre bevorzugten Audioquellen wie Fernseher, Musikplayer oder andere Geräte drahtlos über ihr Hörgerät wiedergeben. Dadurch entfällt die Notwendigkeit von Kabelverbindungen und ermöglicht eine komfortable und freie Nutzung.

      Der Transmitter bietet eine stabile und qualitativ hochwertige Bluetooth-Verbindung, um eine klare und verzögerungsfreie Übertragung des Audiosignals zu gewährleisten. Das Gerät verfügt über eine benutzerfreundliche Bedienung und kann einfach mit dem Hörgerät gekoppelt werden, um eine reibungslose Integration zu ermöglichen.

      Das Produkt eröffnet Hörgeräte-Trägerinnen und -Trägern die Möglichkeit, ihre Lieblingsinhalte in hoher Klangqualität und ohne Einschränkungen zu genießen. Durch die drahtlose Audioübertragung wird eine neue Dimension des Hörerlebnisses erreicht, wodurch Menschen mit Hörgeräten noch mehr Freiheit und Flexibilität in ihrer audiovisuellen Welt erhalten.

      Eingesetzte Technologien:

      Virtueller APDU-Übertragungsdienst für Webbasierte Chipkartenanwendungen

      Projektziel

      Konzeption und Entwicklung einer Kommunikationsinfrastruktur zur Übertragung von ISO-7816 Application Protocol Data Units (APDU) über Netzwerkverbindungen (LAN/WAN). Ziel ist es, einen sicheren und flexiblen Fernzugriff auf Chipkarten zu ermöglichen, indem APDU-Kommandos über eine virtuelle Verbindung ausgetauscht werden. Die Infrastruktur erlaubt so eine effiziente Verwaltung und Nutzung von Chipkarten in verteilten Netzwerken ohne direkte physische Verbindungen.

      Technische Umsetzung

      Das Protokoll wurde auf WebSocket implementiert, um den direkten Zugriff auf Smartcard-Funktionen über JavaScript im Browser zu ermöglichen. Der Dienst nutzt ein Server-Client-Modell, wobei der Server die Authentifizierung und Autorisierung übernimmt und APDUs zwischen den Clients und entfernten Chipkarten nach vordefinierten Regeln weiterleitet.

      Anwendungsfall und Mehrwert

      Die Lösung bietet Unternehmen eine einfache und skalierbare Möglichkeit, Chipkarten in verschiedenen Netzwerken sicher einzusetzen, etwa zur sicheren Authentifizierung in Browser-Anwendungen. Die entwickelte Technologie ist patentrechtlich geschützt (siehe EP3130165B1).

      Eingesetzte Technologien:

      Smartcard-basierter JCE-Provider für Android

      Das Projekt implementiert einen Java Cryptography Extension (JCE) Provider für Android, der hardwarebasierte kryptografische Funktionen über microSD- und BLE-Smartcards ermöglicht. Da Android keine zentrale Registrierung für JCE-Provider unterstützt, entwickelten wir eine Bibliothek, die Kunden direkt in ihre Apps integrieren können. Diese registriert im App-Kontext den JCE-Provider und kommuniziert über Android-IPC mit einem zentralen Service, der den Smartcard-Zugriff verwaltet.

      Die Lösung unterstützt RSA- und ECC-Operationen und ermöglicht sichere Anwendungen wie SMIME-Verschlüsselung in E-Mail-Clients, die der Standard-Android-Mail-Client nicht bietet. Durch Transaktions-Locking kann der Provider parallel in mehreren Apps genutzt werden, was ihn vielseitig und skalierbar macht.

      Eingesetzte Technologien:

      Bluetooth Low Energy Anmeldetoken

      Im Rahmen dieses Projekts haben wir die Entwicklung eines stromsparenden Sicherheitstokens im handlichen Schlüsselanhängerformat unterstützt. Unser Fokus lag auf der Entwicklung einer Kommunikationsbibliothek, die eine nahtlose Integration des Tokens mit Android-Geräten über Bluetooth Low Energy ermöglichte. Das Anmeldetoken bietet eine sichere Authentifizierung und optimale Batterielebensdauer, während die Kommunikationsbibliothek eine effiziente Integration und zuverlässige Kommunikation mit Android-Geräten gewährleistet. Das Projekt stellt eine robuste und benutzerfreundliche Lösung für sichere Kommunikation und Authentifizierung bereit, die vielseitig einsetzbar ist.

      Eingesetzte Technologien:

      Unsere Erfahrung überzeugt

      Wir beraten Sie gerne

      Für uns steht Ihr Software- bzw. Firmware-Projekt an erster Stelle. Wir sind passionierte Software-Entwickler und es liegt uns am Herzen Ihre digitale Vision zum Leben zu erwecken. Dabei stehen wir Ihnen mit einem Team aus erfahrenen Software-und Embedded-Software-Entwicklern in allen Phasen des Projektes zur Seite. Von der Beratung, über die Planung, bis hin zur Umsetzung können wir modular oder full-service unterstützen und haben dabei ihre Ziele und Nöte immer im Blick. Wir überzeugen Sie gerne!

      Start-up Paket – Ihre Vision, unser Support!

      50%*

      Nutzen Sie unser exklusives Angebot für Start-ups:

      • 50%* Vorteil auf Sofortkosten für die Entwicklung
      • Schnelle Umsetzung Ihrer Ideen
      • Exklusiver Zugang zu Experten & Netzwerken
      • Flexible Finanzierungsmöglichkeiten

      *50% Vorteil auf Sofortkosten für die Entwicklung. Der verbleibende Betrag wird im Rahmen eines Vesting-Modells durch Firmenanteile verrechnet. Dieses Angebot richtet sich speziell an Start-ups und wird individuell bewertet.