Baremetal programming vs RTOS for UAV Safety
When thinking about the development of an aeronautical product for manned aviation or UAVs, there are many factors to take into account. The software of the product, its development time, certification, support, robustness, determinism or updates are factors to take into account and even more in the aeronautics market.
Advantages of programming without an operating system
One of the decisions that affects all these factors is the choice to use or not a real time operating system (RTOS). At Embention, the software of all our products for UAV or eVTOL has been developed without the support of any RTOS. And that decision gives them a of advantages such as:
- Easier to test and debug problems during development. By not relying on an RTOS the program flow is clearer. With an RTOS the flow of the program is confusing for the developer and this leads to not being able to know so easily what is happening at all times.
- Faster development and certification. If you count as a development process everything that is done until the moment of certification, when using a non-RTOS based software the certification process can be shortened because of the ease of knowing all the program flow and control flow, so even though perhaps with an RTOS you will gain in development time, that time can be lengthened in the certification process.
- Greater control and increased performance. Non-RTOS based software gives the developer more control over the time between one task and the next or how long it takes to complete the task.
- Fast communications without affecting the flow of the application. On the other hand, a software closer to the hardware, such as ours also allows that in the tasks of input and output data (USB, CAN, SPI …) high speeds of communication can be achieved without affecting other tasks of the software.
- Updates or features not dependent on third parties. By using non-RTOS based software your application development is not dependent on third parties or companies. That way if problems are found or new features are needed it is the developer himself who can find a solution, and the life of the product does not depend on the development times or processes of other companies.
All of these reasons and many others make Veronte Autopilot a robust, certified product whose performance is deterministic. Indispensable qualities for any UAV or eVTOL system.