Embedded Software Development

Accompanied by excellent project management, we develop firmware and embedded software for our customers. The programs run highly efficiently on bare microcontrollers or as applications under operating systems such as embedded Linux. They scale from particularly compact, resource-optimised to complex code. Our focus is always on measuring, controlling, regulating, driving, communicating in real-time and using GUIs.

Engineering Services

We support the communication in all layers: from data link to application. With own and with commercial stacks.

We use classical development methods as well as agile. The multitude of successful certifications of functionally safe products demonstrate the quality of our software development. The structured development and documentation of the modular software on the basis of a carefully developed software architecture enable a long lifecycle of the products. We use our own coding standards for C und C++ according to MISRA or take over from our customers. Reliable compliance with the coding guidelines is always guaranteed by Continuous Integration.

We use the following components for our solutions:

  • Operating systems
    • RTOS of various manufacturers
    • Functionally safe ROTS like Sciopta
    • embedded Linux
    • CODESYS
    • embOS (Segger)
  • Programming languages
    • C, C++, C#
    • Skript languages like Python
  • FPGA
    • VHDL on Xilinx, Intel, Microsemi/Microchip and Lattice
    • ARM® softcores

embedded Linux: Configuration and application development

  • Yocto build system to create an embedded Linux adapted to the hardware and customer requirements
    • Python, Shell, Bash for configuration tasks
    • Linux core utilities, device tree configuration, kernel configuration, driver configuration
  • Bootloader configuration especially with U-Boot
  • Linux configuration also with regard to security requirements
    • Bootloader configuration
    • Conception and configuration of the firewall integrated in Linux
    • Configuration of central logging
    • SElinux configuration

HMI and GUI

 For the development of HMIs and GUIs we rely on the following competencies:

  • User Interfaces
    • WPF
    • MVVM
    • Windows Form
  • Webserver
    • Apache Tomcat
    • IIS
  • Data bases
    • SQL server
    • MYSQL
    • SQLITE
  • Web APIs
    • ASP.NET
    • HTML, HTML5
    • Angular
    • Node.js
    • ReactJS
    • REST API
    • SOAP Web Services
  • Frameworks
    • Qt, Qt QML
    • emWin (segger)
    • MEF
    • Caliburn.Micro
    • SCFS

Developed products

  • Various HMIs and operator panels for controlling embedded systems (C, C++, Qt)
  • Handheld terminals with and without touch display (C++, Qt)
  • GUI for robot axis control and service module (C#, .NET)
  • GUI for visualisation of measurement data / condition monitoring (C#)
  • PC GUI for data acquisition and display

Tools

We use the same tools as our customers to ensure that our collaboration is as efficient as possible:

  • Rhapsody (IBM Rational Software)
  • Static code analysis
    • Klocwork
    • PC-Lint
    • Understand for C / C++
  • SW module testing
    • Tessy (Razorcat Development)
    • Cantata (QA Systems)
    • VectorCAST (Vector Software)
    • Google Test

We have experience with numerous other tools used by our customers. Don’t hesitate to ask us if you would prefer another tool.

Contact