Embedded RTOS

The main choice of operating system for an embedded system is between a real time operating system (RTOS) and embedded Linux.

RTOS Embedded Systems

The growth in IoT is driving RTOS development, with the need for better performance in constrained environments, and enhanced connectivity and security features. We’ve worked with a wide range of RTOSs, including Amazon’s FreeRTOS, ARM’s mbed, ST’s OS20, VxWorks, pSOS+, μC/OS and Zephyr.

As well as working with RTOSs, we’ve also ported them to new hardware, or extended them to support new features and device drivers. In one case, we added a USB stack to FreeRTOS to support some bespoke and standard connected devices classes.

We have many years of experience in securing video content and use this knowledge to harden operating systems. For example, we can enable hardware security features, such as ARM’s MPU, or use a hardware key store to protect the keys used in TLS mutual authentication and create a hardware root of trust.

We’ve developed embedded systems using many different RTOSs across a range of microcontrollers, microprocessors and DSPs. This experience gives us an unparalleled breadth of knowledge of embedded hardware and software environments – we can recommend the technology that works best for your requirements.

Curious about RTOS? Get in touch.

RTOS and hardware design

Real time operating systems (RTOS) are differentiated from other embedded systems in that they must respond to stimulus inputs before new inputs are generated. Time of response becomes a critical component of the solution. Examples can be thought of as control systems for industrial machines, fly-by-wire aircraft and autonomous vehicles.

In such solutions time becomes a constraint of the embedded system, just as memory size and power consumption might be for other embedded software developments. Real time solutions require layered support for time critical functions from the hardware device, to the real time operating system and any other application code.

Embedded software development in such environments requires understanding of a range of time critical features such as prioritisation of interrupts, pre-emption and latency. Many factors contribute to the design of such systems as the real time operation is much more tightly coupled to the underlying hardware.

The choice of hardware, real time operating system, tool chain and application development environment all impact upon the requirements specification for the time critical nature of the solution.

Our extensive experience in hardware design makes us the perfect partner to develop your real time embedded software.

Curious about RTOS? Get in touch.


Our thoughts, ideas and views as well as in-depth technical papers. Explore our insights, get to market faster and make your digital ambitions a reality.

Read more about Why MVP is an essential sanity check for successful product development

Why MVP is an essential sanity check for successful product development

The question shouldn’t be ‘is an MVP too time-consuming and costly to engage in?’, but ‘can you afford not to apply consumer insights from MVP […]

Read more about How to avoid common mistakes when scaling up IoT device deployments

How to avoid common mistakes when scaling up IoT device deployments

As organisations scale up from limited trials involving thousands of devices, to hundreds of thousands, the total cost of the offering can spiral upwards, out of control.  

Read more about Consult Red appoints new Chief Finance Officer (CFO)

Consult Red appoints new Chief Finance Officer (CFO)

Consult Red has recruited Paul Stevenson as its new CFO, he will sit on Consult Red’s Board and join its Executive Leadership Team as the […]

Get in touch

Send an enquiry below and a member of our friendly team will get back in touch with you shortly.

  • We would like to send you updates and news relating to the products and services provided by Consult.Red that may be of interest to you. Are you happy to receive news and updates from Consult.Red?
  • This field is for validation purposes and should be left unchanged.