Skip to content

Embedded software and hardware development

STM32-based firmware, sensor integration, AHRS / magnetometer / accelerometer calibration and real-time embedded systems: hardware and software designed together.

In embedded systems, hardware and software cannot be designed apart: microcontroller selection, power budget, sensor interfaces and timing requirements directly shape the firmware architecture. In this area circuit design, PCB prototype production and firmware development are carried out by the same team, so hardware–software interface problems are solved at the design stage.

The work targets defence and industrial applications, where long-term stable operation, defined response times and ease of field maintenance come first.

STM32-based firmware

Bare-metal and RTOS-based firmware is developed for the ARM Cortex-M STM32 family. Peripherals (UART, SPI, I2C, CAN, USB, Ethernet), DMA and the interrupt structure are arranged around the application's timing requirements; bootloader and in-field update support, watchdog and fault-recovery mechanisms are part of the design.

Sensor integration

MEMS inertial sensors, magnetometers, pressure and temperature sensors, GNSS receivers and custom analog front ends are connected to the system over digital interfaces. Sensors are selected by measurement band, noise density and environmental conditions; sampling timing, filtering and data-integrity checks are handled at firmware level.

Sensor fusion and calibration (AHRS, magnetometer / accelerometer)

Gyroscope, accelerometer and magnetometer data are combined to estimate orientation (AHRS). Hard-iron / soft-iron calibration for magnetometers, offset and scale calibration for accelerometers, modelling of temperature-dependent drift and filter design (complementary, Kalman) fall within this scope. Calibration procedures are defined so that they are repeatable in production.

Real-time systems

Applications with timing requirements are designed by measuring interrupt latency, task prioritisation and bus load. Task separation, lock-free data structures and deterministic memory management are applied on RTOS-based systems; a time-sliced main loop on bare-metal systems. The result is a system whose worst-case response time is defined and verified.

Related products and services

All Products and Services →

Related technical notes

Have a requirement in this area? Tell us about it.

Get in touch