Embedded Softwareentwicklung
Embedded SW-Development von echten Profis für echte Profis
-
ARM Cortex
AVR
Bulidroot
C#
C++/11/14/17
C11
CAN
Clean Code
cmake
Dependency Injection
Design for Testability
Embedded
Embedded Linux
Firmware Platform
GCC
GIT
IAR Workbench
Issue Tracking
Jira
JSON
Lua
MISRA
Modbus
MSP430
OOP
PC-Lint
Publish-Subscribe
Python
QA-C++
Refactoring
SIL
Subversion
TCP
UDP
UML
Unit-Tests
Visual Studio
XML
Yocto
Embedded SW-Development von echten Profis für echte Profis
Sich den vielfältigen Herausforderungen eingebetteter Systeme zu stellen und optimale Lösungen für unsere Kunden zu finden ist unser Kerngeschäft.
Ob Low-Level-Treiber, proprietärer Protokollstack, geräteübergreifende Plattform oder gerätespezifische Applikation, awinia kann auf jahrelange Erfahrung in Entwicklung technischer Software zurückgreifen.
Zur Gewährleistung, der im industriellen Umfeld entscheidenden Eigenschaften Betriebssicherheit, Zuverlässigkeit und Echtzeit kombinieren wir lang bewährte Verfahren der Softwaretechnik mit neuen Technologien und Methodiken.
Den anhaltenden Trends der Vernetzung, der Produktdiversifikation und dem Customizing halten wir innovative Softwarekonzepte entgegen.
Technologie
BSP, Treiber
und Bootloader
Zeitlicher Determinismus
ohne Kompromisse
Schnellere Time-to-Market
und schlankere Firmware
Die mächtigste und komplexeste Sprache beherrschen
Optimaler Zugriff
von Feldbus bis Webserver
Keep your software
running continuously
Konsequent auf
Standards setzen
Kostenreduktion durch
Einführung einer SW-Plattform
Microcontroller Programming
BSP, Treiber und Bootloader
Sie benötigen zur Unterstützung bei hardwarenaher Programmierung jemanden, der sich mit Eigenheiten und Tücken verschiedener Mikrocontroller auskennt? Vom AVR-8-Bitter über C16x, MSP430, Coldfire und Renesas RX bis zur ARM Cortex-M-Reihe hat awinia schon auf vielen Plattformen Low-Level-Probleme gelöst.
Wir entwickeln für Sie passend zu Ihrem Board ein BSP, das die Unebenheiten des Mikrocontrollers und der Peripherie ausgleicht.
Wo die Treiber-Library des Chipherstellers unvollständig ist, entwickeln wir maßgeschneiderte anwendungsspezifische Treiber für die vielen in Mikrocontrollern verbauten Funktionseinheiten. Ob I2C, SPI, UART oder Crypto-Beschleuniger – awinia schafft eine sinnvolle Abstraktion und implementiert effiziente Treiber.
Oft unterschätzt und doch für Firmware-Updates im Feld essentiell, fordert ein Bootloader spezielles Know-how. Wir haben langjährige Erfahrung mit der Entwicklung von Bootloadern für Ein- und Mehrprozessorsysteme. Wie dürfen wir Ihnen helfen?
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0) 761 52 07 449 0 | E-Mail: info@awinia.de
C++11/14/17/20
Die mächtigste und komplexeste Sprache beherrschen
Muss Ihre Firmware nicht nur performant und ressourcenschonend, sondern auch deterministisch, plattformunabhängig, modular und flexibel wiederverwendbar sein? C++ bietet Ihnen dies alles und mit jeder neuen Version noch mehr. Sie vollständig zu verstehen und zu beherrschen ist fast schon eine Lebensaufgabe.
Mit unserem C++ Know-how lassen Sie geräteübergreifende Bibliotheken und große Applikationen entstehen. Dabei ist Einfachheit unser oberstes Designprinzip. Ist Flexibilität gefordert, setzen wir auf den konsequenten Einsatz standardisierter, objektorientierter Design-Patterns. Von Anfang an achten wir auf gute Testbarkeit durch interfacebasierte Programmierung.
In C++ führen häufig kleine Fehler, die nicht mit statischen Verfahren aufzuspüren sind, zu langwierigen Bugs. Dabei spielen die Komplexität der Sprache selbst, sowie Eigenheiten verschiedener Plattformen, Compiler und Entwicklungsumgebungen eine Rolle. Die Einhaltung spezieller Coding-Conventions und Normen – wie z.B. der IEC 61508 – hilft solche Fehler zu reduzieren. Setzen Sie in Ihrem Projekt auf embedded C++ Experten von awinia.
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0) 761 52 07 449 0 | E-Mail: info@awinia.de
Embedded Linux
Konsequent auf Standards setzen
Wir empfehlen als Betriebssystem auf dem Target wenn möglich embedded Linux einzusetzen. Sehr häufig existieren für Ihre Hardware schon stabile betriebsbewährte Treiber und Standardprogramme und IP-Stack sind seit vielen Jahren ausgereift. Mit dem reichhaltigen und mächtigen Tooling sind auch neue Entwickler im Projekt sofort produktiv.
Gerne setzt awinia für Sie mit Yocto oder Buildroot einen Prozess auf der das passende Systemimage für Ihr Gerät erzeugt. Falls noch nicht vorhanden, entwickeln wir zu Ihrer Hardware den passenden Kernel-Treiber. Ihre Plattform oder Applikation setzen wir auf der standardisierten POSIX API auf.
Um Komponenten zu entkoppeln ist in reaktiven Systemen der konsequente Einsatz nebenläufiger Programmierung notwendig. Unter Linux setzt awinia seit Jahren das bewährte Ausführungsmodell pthreads ein. Bessere Echtzeitfähigkeit erreichen wir durch den Linux-Realtime-Patch.
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0) 761 52 07 449 0 | E-Mail: info@awinia.de
Real-Time
Zeitlicher Determinismus ohne Kompromisse
In Ihrem System benötigen Sie sehr kurze Reaktionszeiten, denn Informationen sind nach einer gegebenen Deadline nichts mehr wert? Dann setzen Sie ein Echtzeitbetriebssystem (RTOS) wie FreeRTOS, MQX oder embOS ein. awinia hat Erfahrung mit unzähligen freien oder kommerziellen RTOSen.
Wir setzen Message Passing zur Kommunikation zwischen Tasks oder zwischen Task und Interrupt-Handler ein. Zur Entkoppelung von Softwarekomponenten verwenden wir gerne ein Publish-Subscribe-Pattern. Beim Klassendesign entscheiden wir früh, welche Methoden reentrant sein sollen und welche kritischen Bereiche mit Mutexen zu schützen sind. Durch Auswahl der richtigen Taskprioritäten vermeidet awinia Dead- oder Livelocks.
Betriebssicherheit und Verfügbarkeit gewährleisten wir durch normkonforme Prozesse und Qualitätsmaßnahmen.
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0) 761 52 07 449 0 | E-Mail: info@awinia.de
Communication
Optimaler Zugriff von Feldbus bis Webserver
Sie möchten einen weiteren Feldbus an Ihre Firmwareplattform oder Applikation anbinden? Gerne unterstützt awinia Sie bei CAN, Modbus, HART, EIP und vielen mehr.
Zur internen Kommunikation in Ihrem System benötigen Sie einen speziellen Peripheriebus, z.B. einen Master-Slave-Stack zum Parameteraustausch zwischen Controllern über I2C? Wir bringen unsere Erfahrung mit unterschiedlichsten Protokollen gerne ein und führen diese Entwicklung für Sie oder mit Ihnen durch.
Sie möchten Ihrem Gerät eine Industrial-Ethernet-basierte Serviceschnittstelle hinzufügen, so dass Sie bequem Parameterkonfiguration, Diagnose oder FW-Update darüber durchführen können? Eine solche Schnittstelle eignet sich zur Anbindung eines HMI, zur M2M Kommunikation oder zum automatisierten Systemtest. awinia setzt gerne den Stack in der Firmware aber auch die jeweiligen Gegenstellen für Sie um.
Ihre Anwender möchten eine zeitgemäße, komfortable Gerätebedienung ohne aufwendige Installation von Zusatzsoftware? Mit einem integrierten embedded Webserver kann man sich schnellen Überblick über Status und Diagnosemeldungen eines Gerätes verschaffen. Zusätzlich ist es möglich eine volle Parametrierung, Datenvisualisierung, Daten Im-/Export und ein Firmware-Update über Web anzubieten. Mit awinia erfolgt der Zugriff auf Ihr Gerät bald vom PC, Tablet oder Smartphone.
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0) 761 52 07 449 0 | E-Mail: info@awinia.de
Product Line Development
Kostenreduktion durch Einführung einer SW-Plattform
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0) 761 52 07 449 0 | E-Mail: info@awinia.de
Scripting Integration
Schnelleres Time-to-Market und schlankere Firmware
Möchten Sie jedem Kunden schnell individuelle Features anbieten können, ohne dass Ihnen die Anzahl der Sonderversionen Ihrer Firmware über den Kopf wächst? Oder möchten Sie einen Mehrwert schaffen, indem der Anwender selbst Zusatzfunktionen direkt auf Ihrem Gerät umsetzen kann? Dann sollten Sie in Zusammenarbeit mit awinia Scripting in Ihre Software integrieren.
Kleine Skriptsprachen wie Lua sind speziell für eingebettete Systeme und die Integration mit C++ konzipiert. Wir binden Ihnen einen Interpreter an Ihre Firmware an und schaffen eine Event-basierte Schnittstelle zu Ihrer Plattform oder Applikation. Mit awinia entlasten Sie Ihre Entwickler und entrümpeln Ihre Firmware von unzähligen kundenspezifischen Funktionalitäten.
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0) 761 52 07 449 0 | E-Mail: info@awinia.de
Migration & Retrofitting
Ihre Software fortwährend am Laufen halten
Sie suchen jemand der Ihre embedded Software auf eine neue Hardware, ein unterschiedliches Betriebssystem, Bibliotheken oder gar eine andere Programmiersprache portiert? Sie brauchen einen Partner, der das Retrofitting Ihres Legacy Codes übernimmt und neue Features wie Security, zusätzliche Protokolle oder bessere Performance nachrüstet? Fragen Sie uns! Mit awinia läuft Ihre Software produktiv weiter. Auf Wunsch verbessern wir die Qualität des Codes und der Dokumentation des Systems bis zur SIL Zulassung. Durch moderne Refactoring Techniken erzielen wir in kleinen Schritten große Verbesserungen mit verhältnismäßigem, kalkulierbarem Aufwand und schaffen so Raum für Ihre neuen Features. Packen wir es gemeinsam an!Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0) 761 52 07 449 0 | E-Mail: info@awinia.de
*Alle Produktnamen, Logos, Marken, Warenzeichen und eingetragenen Warenzeichen sind Eigentum ihrer jeweiligen Inhaber und dienen lediglich zu Identifikationszwecken.
Sie haben ein spannendes Projekt?
Microcontroller Programming
BSP, Treiber und Bootloader
Sie benötigen zur Unterstützung bei hardwarenaher Programmierung jemanden der sich mit Eigenheiten und Tücken verschiedener Mikrocontroller auskennt? Vom AVR-8-Bitter über C16x, MSP430, Coldfire und Renesas RX bis zur ARM Cortex-M-Reihe hat awinia schon auf vielen Plattformen Low-Level-Probleme gelöst.
Wir entwickeln für Sie passend zu Ihrem Board ein BSP, das die Unebenheiten des Mikrocontrollers und der Peripherie ausgleicht.
Wo die Treiber-Library des Chipherstellers unvollständig ist, entwickeln wir maßgeschneiderte anwendungsspezifische Treiber für die vielen in Mikrocontrollern verbauten Funktionseinheiten. Ob I2C, SPI, UART oder Crypto-Beschleuniger, awinia schafft eine sinnvolle Abstraktion und implementiert effiziente Treiber.
Oft unterschätzt und doch für Firmware-Updates im Feld essentiell, fordert ein Bootloader spezielles Know-how. Wir haben langjährige Erfahrung in Bootloadern für Ein- und Mehrprozessorsysteme. Wie dürfen wir Ihnen helfen?
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0)761 52 07 449 0 | E-Mail: info@awinia.de
C++11/14/17/20
Die mächtigste und komplexeste Sprache beherrschen
Muss Ihre Firmware nicht nur performant und ressourcenschonend, sondern auch deterministisch, plattformunabhängig, modular und flexibel wiederverwendbar sein? C++ bietet Ihnen dies alles und mit jeder neuen Version noch mehr. Sie vollständig zu verstehen und zu beherrschen ist fast schon eine Lebensaufgabe.
Mit unserem C++ Know-how lassen Sie geräteübergreifende Bibliotheken und große Applikationen entstehen. Dabei ist Einfachheit unser oberstes Designprinzip. Ist Flexibilität gefordert, setzen wir auf den konsequenten Einsatz standardisierter, objektorientierter Design-Patterns. Von Anfang an achten wir auf gute Testbarkeit durch interfacebasierte Programmierung.
In C++ führen häufig kleine Fehler, die nicht mit statischen Verfahren aufzuspüren sind, zu langwierigen Bugs. Dabei spielen die Komplexität der Sprache selbst, sowie Eigenheiten verschiedener Plattformen, Compiler und Entwicklungsumgebungen eine Rolle. Die Einhaltung spezieller Coding-Conventions und Normen – wie z.B. der IEC 61508 – hilft solche Fehler zu reduzieren. Setzen Sie in Ihrem Projekt auf embedded C++ Experten von awinia.
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0)761 52 07 449 0 | E-Mail: info@awinia.de
Embedded Linux
Konsequent auf Standards setzen
Wir empfehlen als Betriebssystem auf dem Target wenn möglich embedded Linux einzusetzen. Sehr häufig existieren für Ihre Hardware schon stabile betriebsbewährte Treiber und Standardprogramme und IP-Stack sind seit vielen Jahren ausgereift. Mit dem reichhaltigen und mächtigen Tooling sind auch neue Entwickler im Projekt sofort produktiv.
Gerne setzt awinia für Sie mit Yocto oder Buildroot einen Prozess auf der das passende Systemimage für Ihr Gerät erzeugt. Falls noch nicht vorhanden, entwickeln wir zu Ihrer Hardware den passenden Kernel-Treiber. Ihre Plattform oder Applikation setzen wir auf der standardisierten POSIX API auf.
Um Komponenten zu entkoppeln ist in reaktiven Systemen der konsequente Einsatz nebenläufiger Programmierung notwendig. Unter Linux setzt awinia seit Jahren das bewährte Ausführungsmodell pthreads ein. Bessere Echtzeitfähigkeit erreichen wir durch den Linux-Realtime-Patch.
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0)761 52 07 449 0 | E-Mail: info@awinia.de
Real-Time
Zeitlicher Determinismus ohne Kompromisse
In Ihrem System benötigen Sie sehr kurze Reaktionszeiten, denn Informationen sind nach einer gegebenen Deadline nichts mehr wert? Dann setzen Sie ein Echtzeitbetriebssystem (RTOS) wie FreeRTOS, MQX oder embOS ein. awinia hat Erfahrung mit unzähligen freien oder kommerziellen RTOSen.
Wir setzen Message Passing zur Kommunikation zwischen Tasks oder zwischen Task und Interrupt-Handler ein. Zur Entkoppelung von Softwarekomponenten verwenden wir gerne ein Publish-Subscribe-Pattern. Beim Klassendesign entscheiden wir früh, welche Methoden reentrant sein sollen und welche kritischen Bereiche mit Mutexen zu schützen sind. Durch Auswahl der richtigen Taskprioritäten vermeidet awinia Dead- oder Livelocks.
Betriebssicherheit und Verfügbarkeit gewährleisten wir durch normkonforme Prozesse und Qualitätsmaßnahmen.
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0)761 52 07 449 0 | E-Mail: info@awinia.de
Communication
Optimaler Zugriff von Feldbus bis Webserver
Sie möchten einen weiteren Feldbus an Ihre Firmwareplattform oder Applikation anbinden? Gerne unterstützt awinia Sie bei CAN, Modbus, HART, EIP und vielen mehr.
Zur internen Kommunikation in Ihrem System benötigen Sie einen speziellen Peripheriebus, z.B. einen Master-Slave-Stack zum Parameteraustausch zwischen Controllern über I2C? Wir bringen unsere Erfahrung mit unterschiedlichsten Protokollen gerne ein und führen diese Entwicklung für Sie oder mit Ihnen durch.
Sie möchten Ihrem Gerät eine Industrial-Ethernet-basierte Serviceschnittstelle hinzufügen, sodass Sie bequem Parameterkonfiguration, Diagnose oder FW-Update darüber durchführen können? Eine solche Schnittstelle eignet sich zur Anbindung eines HMI, zur M2M Kommunikation oder zum automatisierten Systemtest. awinia setzt gerne den Stack in der Firmware aber auch die jeweiligen Gegenstellen für Sie um.
Ihre Anwender möchten eine zeitgemäße, komfortable Gerätebedienung ohne aufwendige Installation von Zusatzsoftware? Mit einem integrierten embedded Webserver kann man sich schnellen Überblick über Status und Diagnosemeldungen eines Gerätes verschaffen. Zusätzlich ist es möglich eine volle Parametrierung, Datenvisualisierung, Datenim/-export und ein Firmware-Update über Web anzubieten. Mit awinia erfolgt der Zugriff auf Ihr Gerät bald vom PC, Tablet oder Smartphone.
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0)761 52 07 449 0 | E-Mail: info@awinia.de
Product Line Development
Kostenreduktion durch Einführung einer SW-Plattform
Sie möchten bei Ihrer Firmware den Erstellungsaufwand für neue Gerätevarianten und den Wartungsaufwand deutlich reduzieren? awinia bildet durch Domain-Driven-Design Gemeinsamkeiten in Ihrer Software ab und erstellt moderne, hochflexible Firmwareplattformen, mit denen alle Geräte die gleiche Codebasis verwenden können.
Skalierbarkeit “nach unten” ist die wichtigste Eigenschaft einer embedded SW-Plattform. Bei aller Generizität muss sie ressourcenschonend genug sein, um auch auf den kleinsten verwendeten Controllern performant ausgeführt werden zu können. Trotzdem muss die Plattform offen für neue Hardware, ein anderes Betriebssystem oder zusätzliche Protokollstacks sein. awinia erreicht diese Ziele durch den Einsatz modellgetriebener Softwareentwicklung und objektorientierter Design-Patterns.
Die Kostendegression durch geräteübergreifende Wiederverwendung von Softwaremodulen ist immens. Doch auf keinen Fall darf der deutlich höhere Schwierigkeitsgrad bei Analyse, Design und Implementierung der Software unterschätzt werden. Setzen Sie bei Konzept, Umsetzung und Wartung auf die jahrelange Erfahrung mit unterschiedlichsten embedded Firmwareplattformen von awinia.
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0)761 52 07 449 0 | E-Mail: info@awinia.de
Scripting Integration
Schnellere Time-to-Market und schlankere Firmware
Möchten Sie jedem Kunden schnell individuelle Features anbieten können, ohne dass Ihnen die Anzahl der Sonderversionen Ihrer Firmware über den Kopf wächst? Oder möchten Sie einen Mehrwert schaffen, indem der Anwender selbst Zusatzfunktionen direkt auf Ihrem Gerät umsetzen kann? Dann sollten Sie in Zusammenarbeit mit awinia Scripting in Ihre Software integrieren.
Kleine Skriptsprachen wie Lua sind speziell für eingebettete Systeme und die Integration mit C++ konzipiert. Wir binden Ihnen einen Interpreter an Ihre Firmware an und schaffen eine Event-basierte Schnittstelle zu Ihrer Plattform oder Applikation. Mit awinia entlasten Sie Ihre Entwickler und entrümpeln Ihre Firmware von unzähligen kundenspezifischen Funktionalitäten.
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0)761 52 07 449 0 | E-Mail: info@awinia.de
Migration & Retrofitting
Ihre Software fortwährend am Laufen halten
Sie suchen jemand der Ihre embedded Software auf eine neue Hardware, ein unterschiedliches Betriebssystem, Bibliotheken oder gar eine andere Programmiersprache portiert? Sie brauchen einen Partner, der das Retrofitting Ihres Legacy Codes übernimmt und neue Features wie Security, zusätzliche Protokolle oder bessere Performance nachrüstet? Fragen Sie uns!
Mit awinia läuft Ihre Software produktiv weiter. Auf Wunsch verbessern wir die Qualität des Codes und der Dokumentation des Systems bis zur SIL Zulassung. Durch moderne Refactoring Techniken erzielen wir in kleinen Schritten große Verbesserungen mit verhältnismäßigem, kalkulierbarem Aufwand und schaffen so Raum für Ihre neuen Features. Packen wir es gemeinsam an!
Dieses Thema könnte für Sie interessant sein? Kontaktieren Sie uns zu einem unverbindlichen Gespräch und lernen Sie awinia kennen!
Telefon: +49 (0)761 52 07 449 0 | E-Mail: info@awinia.de