• Services
  • Embedded software and systems

Embed sustainability into your next-gen product development

We make sure your products are smart and expandable, so you can make them more sustainable

Clients we’ve supported

Device security

Cloud connectivity

Apps and portals

Custom embedded software development & support

Secure firmware update for devices

Industrial connectivity

Service and maintenance tools for devices

Custom embedded software development and support​

We develop and design custom embedded software for microcontrollers (MCU) and embedded OS for mission critical systems and system components and applications used in production lines, HVAC, heavy industry, etc.​

  • Platform-based embedded systems development​
  • Embedded platforms and systems development​
  • Control applications for mission critical systems
  • Product lifecycle support​
  • UI engine development
  • UI development
  • Full cycle product development
  • Application oriented embedded control systems​
  • MCU software development​
  • Functional safety
  • Automated functional testing, manual, testing and hardware-in-the-loop (HIL) testing​
  • Research, development and prototyping​
  • Hardware BOM optimization​

Secure firmware update for devices​

We develop custom firmware update solutions that ensure the device software is protected no matter how the update package is delivered to the device: over-the-air (OTA) or wired communication medium.​

  • Enabling secure remote updates (OTA)​
  • Protecting a device against manual invalid FW updates
  • ​Protecting a device software against malicious usage and network attack​
  • Secure offline updates
  • Device-level software licensing​
  • Ethernet and Over-the-Air (OTA)​
  • Internet Gateway security for sensors and PLCs​
  • Low energy device support​

Industrial connectivity​

We implement and integrate fieldbus communications protocols into industrial devices and maintenance tools.​

  • Fieldbus communication protocol device and PC-tool integration
  • Wired industrial protocols​: PROFIBUS​, PROFINET​, Modbus​, CANopen​, Ethernet IP​, OPC UA​
  • Wired mediums​: Serial Communications (RS-232, RS-422, RS-485)​, Industrial Ethernet​, USB​​
  • Custom industrial protocol development​
  • Wireless mediums and protocols​: Bluetooth​, WiFi​
  • Machine-to-Machine (M2M) connectivity development​
  • Sensors-device integration​
  • Low-energy Bluetooth integration

Service and maintenance tools for devices​

We develop custom service and maintenance tools and applications for monitoring, setup and controlling devices and embedded systems in industrial and mission critical environments.​

  • PC-tools development​
  • Embedded application development​
  • Smart-phone apps for monitoring and controlling devices​
  • Human-machine interface (HMI) design and development​

Our work

Embedded software and systems’ case studies

Embedded software development for Danfoss

Project duration

200,000+ man-hours, 16+ years

Technologies

C++, FPGA, emulated CPU programming, ARM Cortex Lauterbach debugger

Client challenge/business need

In 2002, Danfoss had begun development of its new generation of frequency converters and was looking for nearshoring possibilities.

Solution at a glance

We became partners and Proekspert started as a team fully integrated within Danfoss’ Danish team.

A few years later, what started out as a team grew into a development center responsible for Danfoss VLT drive AQUA (FC 202) and HVAC (FC 102) development.

Results

  • Focus on the drives
    Development of existing and next-generation electric motor drives software.
  • All sorts of projects
    Platform development, Aqua and HVAC development, customer-specific branded versions, application development.
  • A different kind of innovation
    Proekspert has brought many innovative ideas to Danfoss over the years. Some came from teams, others were the result of hackathons. Some of these ideas – like VLT Software Customizer, smart LCP, and smartwatch – Danfoss has taken into production.

Secure OTA firmware update capability for frequency converters

Project duration

70,000+ man-hours, 4+ years

Technologies

C++, FPGA emulated CPU programming, platform development, data-driven architecture

Client challenge/business need

The client had two primary goals: (1) develop a secure firmware update functionality for a next-gen frequency converter connected to the internet via WiFi, and (2) enable a modular way for updating multiple frequency converters.

Solution at a glance

We developed a distributed solution to update selected sections of frequency converter firmware over the air (OTA).

Results

  • Frequency converters are securely connected to the internet via WiFi.
  • Technicians can securely update the firmware over-the-air module by module.
  • The technician can choose what frequency converters need to be updated.

Embedded software platform for industrial laundry machines

Technologies

C++, platform development, WiFi protocols

Client challenge/business need

Reduce the bill of materials (BOM) cost to ensure the final product will be competitive on the market.

Solution at a glance

We rebuilt the core software logic, developed an embedded software platform, and made the solution more efficient and modular. We implemented wireless communications for controlling the machines.

Results

  • The client can now provide customized products faster and more cost-efficiently.
  • The product’s electronic control board is twice as cost-efficient to produce.

Next-gen thermostat development for a global partner

Technologies

C/C++, C# machine learning

Client challenge/business need

Introduce a generational leap for a thermostat with a lower cost of materials than its previous high-end version despite it having more modern- and advanced features.

Solution at a glance

Proekspert brought together and led the whole development process. Electronics design and physical product design were done in collaboration with partners. Embedded software development was done in-house using Proekspert engineers.

Results

  • The most precise room temperature measurements in the world for consumer floor-heating thermostats.
  • Intuitive and minimalistic physical product design on the walls of end-users.
  • A premium IoT thermostat that is as cost-efficient to manufacture as its existing version.

Wireless control panel app for Danfoss Drives

Technologies

Qt, Android

Client challenge/business need

To create a mobile app to replace Danfoss drives’ Local Control Panel (LCP), the LCP being a display to control drives, which is a separate physical component and different for different models.

Solution at a glance

Proekspert created a mobile app with LCP functionality that can control any Danfoss drive.

Results

  • A relatively expensive hardware-LCP module now has a cost-efficient and more flexible alternative in the form of an Android mobile- and smartwatch app.
  • The tool supports all Danfoss drive platforms.
  • Initially, this idea started as part of a Hackathon done by Proekspert teams. A few years later Danfoss decided to create it as a product.​

Automated functional testing for Danfoss drives

Project duration

40,000+ man-hours, 16+ years

Technologies

LabVIEW, TestStand, Robot framework

Client challenge/business need

Solution at a glance

Since 2008, Proekspert is running one of the software quality engineering labs of Danfoss drive platforms.

Results

  • Test development
    We are responsible for developing testing procedures and creating many automated tests for drives.
  • Around the globe cooperation
    The Proekspert in-house automated test lab is a part of the Danfoss test lab network. All our work is done in cooperation with Danfoss development centers in Denmark, Finland, China and India.
  • QA sign-off for release
    ​We provide the main quality control of the P400 drive functionality – if we say that the product is suitable for release, then the P400 Validation Responsible will take it as pure gold.

Motion Control Tool (MCT 10) development for Danfoss

Project duration

75,000 man-hours, 16+ years

Technologies

C/C++, MFC, Industrial communication protocols (PROFIBUS, Ethernet, Serial communication)

Client challenge/business need

Update the MCT 10 to keep pace with evolving industry needs. (The MCT 10 is a tool that enables the configuration of a VLT® drive or soft starter from a PC and offers drive updates.)

Solution at a glance

Since 2005, Proekspert has actively developed and maintained the Danfoss VLT® Motion Control Tool’s PC software. Proekspert acts as a Danfoss development center, possessing full technical know-how for the product.

Results

  • A tool that enables and guarantees that drive configuration and updates over industrial communication protocols are stable.
  • The solution is always ready to support new drive hardware, functionality, and configurations.
  • The solution is always up-to-date for our client’s white label (OEM) partners.

C++ library to turn 3D printers into IoT devices

Technologies

C++, embedded Linux

Client challenge/business need

To provide 3D-printer manufacturers a simple and secure embedded software package that makes integrating the printers with their cloud service seamless.

Solution at a glance

We developed a C++ library that connects printers to the cloud and executes printing and other operation commands.

Results

Commercial printer developers can turn their printers easily adaptable with a secure cloud printing service.

Proekspert helps you to release your new product

From product innovation concept to pre-production test

You’re the expert in making products. Our passion is making useful software and building modern interfaces that enhance the product user experience. By combining our skills and experience we can help you bring your innovative next-gen product to the market so it’s cost-effective to manufacture.

How Proekspert supports you in your NPI process

Step 1

Solidify the plan

For cost-effective innovation, we help determine how to enhance the product with next-gen functionalities and design using modern IT technologies

Step 2

Determine feasibility

Research how to enhance or replace selected hardware component functionalities with easily scalable software. Test the design concept and customer experience of the digital part of the product

Step 3

Develop the product

  • Develop prototypes
  • Add sensors and connectivity for the product prototypes
  • Develop device functionality
  • Test products with beta users

Step 4

Run a pre-production test

Support the NPI team with software upgrades

Our embedded solution development competencies

We help you design a quality product that users appreciate. We help you identify hardware functionality that can be replaced with efficient and scalable software. We help build the device. We add sensors and connectivity to the product. And last but not least, we make it possible to control the product and ensure it can be flexibly accessed from any device or API.

As an experienced embedded software development company, we build embedded platforms, apps, firmware, middleware, device drivers, human-machine interfaces (HMIs), and complex embedded software solutions.

Communication mediums and protocols

Wired mediums

  • Serial communication (RS-232, RS-422, RS-485)
  • Industrial Ethernet
  • USB

Wired industrial protocols

  • Profibus
  • Modbus
  • CANopen
  • Ethernet IP
  • OPC UA
  • Custom protocols

Wireless mediums and protocols

  • WiFI
  • Bluetooth

Microcontrollers and embedded OS

Microcontroller platforms

  • MCUs by STMicroelectronics, Microchip Technology and Texas Instrument:
  • ARM Cortex-M family MCUs
  • STM32 32-Bit Arm

CPU platforms

  • Various CPUs by NXP Semiconductors and QualComm

Embedded OS

  • Embedded Linux
  • eCos
  • FreeRTOS
  • Micrium μC/OS
  • Nokia OS
  • Tizen

Custom software development and testing

Bare metal embedded SW

Prototyping and testing

  • Arduino
  • HW interface emulation

Automated testing

  • Automated testing laboratory facility
  • TestStand
  • LabView
  • RobotFramework
  • MS Power Automate

Why choose Proekspert as your product development partner?

Our modular solutions help you innovate with balanced product cost, scale your product reach, and also reduce product maintenance costs

More functionality with the same hardware

Our engineers optimize device software and also replace hardware functionalities in the device with software so you can offer more functionality with the same hardware

Future-proof network security

Proekspert engineers build network connectivity so that updating network security protocols is always an effective process – ensuring your product’s security will be up to date in the future, as well

Product autonomy through machine learning

With the help of machine learning, our data scientists interpret a device’s sensor data so that the device can obtain accurate information about the environment and make better control decisions

Efficiently and quickly enter the market with a new product

When developing next-generation products, our engineers take the most out of already-existing hardware and design products modularly. This will help you efficiently and quickly enter the market with a new product and adapt your product to future needs.

Embedded Software FAQs

What is embedded software?

Embedded software, uniquely programmed for non-computing devices, controls specific functions directly within or atop a microchip. Unlike versatile PC software, it is tailored for fixed hardware, ensuring optimal performance within the device’s processing and memory limits. This encompasses applications, firmware, middleware, and operating systems running on embedded microprocessors integral to the device’s functionality.

What are the different types of embedded software and their purposes?

Operating System (OS) – An OS is a critical software enabling the operation of applications on a computing device. It oversees the management of hardware resources, such as input/output devices and storage, and offers services for effective software execution, including memory management.

Firmware – This specific software is embedded directly into the hardware, providing essential instructions for the device to perform basic operations or communicate with other devices, bypassing the need for APIs, operating systems, or device drivers.

Middleware – Positioned between applications and the OS, middleware facilitates software development in distributed systems by abstracting the complexity of these systems. It offers uniform interfaces, hides hardware and software diversity, and provides standard services to enhance interoperability and reduce redundancy.

Application – This represents the software developed by the end-user, operating on the OS and interacting with middleware and firmware. Unlike the more standardised OS and firmware, it is the primary component of the embedded system’s functionality, tailored to specific tasks.

What are the different types of embedded systems?

Based on performance and functional criteria, embedded systems are categorized into five principal types:

1. Real-time Embedded Systems: These systems execute tasks within fixed time constraints, ensuring deterministic and consistent outcomes. Their efficiency is influenced by the OS’s architecture, thread performance, and the handling of interrupts and branching.

2. General-purpose Embedded Systems: Unlike real-time systems, these do not require adherence to strict timing for task completion. They handle interrupts and branching flexibly, ideal for managing peripherals like graphics displays and input devices.

3. Stand-alone Embedded Systems: These systems operate independently of a host or external computing resources, capable of processing input and output with connected devices without dependence on them for task completion.

4. Networked Embedded Systems: These systems rely on network connections to perform their functions, integrating with other systems across a network to perform their tasks.

What’s the difference between Embedded Software and Embedded Systems?

An ’embedded system’ refers to the hardware components of a device that operate embedded software. Key hardware elements in embedded systems include power supply circuits, central processing units (CPUs), flash memory devices, timers, and serial communication ports. In the initial design stages of a device, the composition and arrangement of the embedded system’s hardware are determined. Subsequently, embedded software is tailor-made to function solely with this specific hardware setup. This necessitates a specialized approach to embedded software design, demanding comprehensive expertise in both hardware functionalities and computer programming.

Let's build your smart embedded system together!

Create the optimal setup for your next embedded system. If your current connected product development isn't meeting your goals and standards, fill in this form so we can join forces to get your next best product to market on time.

Please fill all the mandatory fields (marked with *).

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Thank You!

Your message has been sent. Our team will get back to you as soon as possible!

Jukka Antero Halttunen

Embedded Software and Systems Lead