Das Team von Firmix Software realisierte in den letzten 15 Jahren zahlreiche, erfolgreiche Projekte mit Embedded Linux. Die Kunden von Firmix Software profitieren durch das breite Wissen und die reichhaltigen Erfahrungen vorangegangener Projekte. Für die Entwicklung von embedded Systemen ist Hardware Know How genau so notwendig wie Erfahrungen mit Software Tools, Anwendungserfahrungen mit wichtigen Technologien und auch Kenntnisse der Produktionsüberleitung.
Beratung
Besonders in der Früh- und Konzeptionsphase von Projekten stehen wir Ihnen mit unserer Erfahrung zur Verfügung. Wir können Sie u.a. in folgenden Bereichen beraten:
- Auswahl und Validierung von Hardware (Prozessoren, Bausteine, ...)
- Evaluierung der Echtzeitfähigkeit von Hard- und Software
- Machbarkeitsstudien und Aufwandsschätzungen
- Verfassung von Pflichtenheften und Projektplänen
- Analyse, Spezifikation und Systemdesign
- Auswahl der optimalen Tool Chain
- Aufbau/Auswahl einer Embedded Linux Entwicklungsumgebung
- Programmiertechnik
- Support bei Migration von proprietären Systemen auf Embedded Linux
- Unterstützung bei Copyright- und Lizenzfragen
- Due Diligence Support für Technologie Investoren
- Anpassung von Bootloadern für spez. Hardware (z.B. U-Boot)
- Anpassung und Tuning des Linux Kernels
- Erstellung von Kernel Treibern
- Erstellung von Hardware Testsoftware für Diagnose und Produkt-Endtests
Für Hersteller von Boards bieten wir sogenannte "Board Support Packages" (BSP) an, d.h. wir integrieren Linux nach Ihren Anforderungen auf Ihrer Hardware. Üblicherweise umfasst die Erstellung eines BSPs folgende Aufgaben:
- Anpassung Bootloader
- Basisportierung Kernel, Konfiguration Kernel/Treiber
- optionale Integration von Echtzeiterweiterungen (z.B: RTAI)
- Erstellung oder Anpassung einer Linux Distribution
- kundentaugliche, technische Dokumentation der Software
- Zusätzlich bieten wir auch Wartung und Support für BSPs an.
- Konfiguration Kernel, abgestimmt auf Zielhardware und Anforderungen
- Entfernung und Entflechtung nicht benötigter Softwarekomponenten
- Austausch Standardkomponenten durch resourcenoptimierte Varianten
- generelles System Tuning
- Anpassung an Massenspeicher (z.B.Compact Flash, DoC, etc.)
- parametrisiertes Build System zur Erstellung der Distribution, z.B. Variantenbildung für Produktfamilien, Hardware
- Konzeption und Implementierung von Remote Software Updates
- Integration von Echtzeiterweiterungen (z.B. RTAI)
- Internationalisierung, z.B. Mehrsprachenfähigkeit und kyrill. Fonts
- Wartung der Distribution, Problembehebung und Security Updates
- Erstellung einer zentralen Konfigurationsinfrastruktur
- Erstellung von Benutzerschnittstellen für Konfiguration, Statusabfrage, Diagnose und Wartung z.B.
- Web interface
- Command Line Interface (e.g. via telnet or ssh)
- SNMPv1/v2/v3-agent
- Erstellung einer Wartungsinfrastruktur
- Adaptierung and Optimierung von Asterisk (open Source PABX)
- Erstellung/Adaption kundenspezifischer Applikationen
- Erstellung eines Board Support Package mit RTAI
- Portierung von RTAI auf Subarchitekturen (z.B. Prozessor/Board mit ARM9 Core)
- Entwicklung echtzeitfähiger Hardwaretreiber
- Portierung bestehender Echtzeitsysteme nach RTAI
- Evaluierung der Echtzeiteignung von Prozessoren/Boards
- Implementierung unterschiedlicher Echtzeit-Ethernet Verfahren (z.B. RTnet)