Embedded software development
Microcontroller und Softcoreprocessors
In many projects we use microcontrollers. Mostly it is a STM32 from ST, but we have also developed for EFM32 from Silicon Labs, RX200 from Renesas and MSP430 from Texas Instruments as well as the softcore processors Microblaze/Picoblaze from Xilinx and the Nios II from Intel/Altera.
We have our own software base with which we can quickly adapt higher software layers to the microcontrollers. Software layers for peripheral chips and communication modules for UART and CAN bus based on these software layers complete our construction kit.
Linux kernel / Linux driver
If embedded Linux is used in a project, the kernel configuration usually has to be adapted and often one or more Linux drivers have to be developed.
We have summarized a selection of Linux drivers already developed by us on a separate reference page.
Usually, a Yocto-based Linux BSP for an SoM is part of the delivery portfolio of an SoM manufacturer.
Sometimes, however, the SoM manufacturer is not yet ready or leaves it to its customers to set up a Linux BSP. If you have your own hardware, you have to do it yourself anyway.
We have already set up several Yocto-based BSPs "from the scratch", e.g. for Zynq SoMs, CycloneV SoMs or Arria10 SoMs. But we are also familiar with i.MX8 SoMs.
The BSPs included the adjustments in the devicetree, in the u-boot, in the Linux kernel as well as the fumction scope like X11 desktop (LXDE, Sato, Gnome, ...), Qt4/Qt5 frameworks and various tools.
Linux / Mac / Windows applications
We write applications with and without graphical user interface in C++ and prefer a modular program structure with modules that are as universally applicable and re-usable as possible.
Programs with graphical user interface we realize with the Cross-Platform C++/Qt-Framework. This makes it possible to develop with one code base without case distinctions for Linux, Mac-OS-X and Windows.
We have already created numerous programs for ourselves and our customers. One of them is FIDEx, our IDE for softcore processors.