Most cars contain embedded systems called Electronic Control Units (ECU). These ECUs control the electrical systems inside a car like engines or brakes. Some cars can have more than 100 of these ECUs inside.
These ECUs often contain complex software to do many different tasks in your car. And they have to do this while keeping you safe.
To help run this software in a safe and efficient way, ECUs often use operating systems.
Unlike normal computers, ECUs need to react fast to whatever happens in a car and without delay. When a normal desktop computer shows a sand clock or spinning beach volleyball, users wait. Then again, airbags can’t wait. That’s why the operating system in ECUs are Real-Time Operating Systems (RTOS). An RTOS makes guarantees on lower and upper bounds for how long it takes to run all tasks.
AUTOSAR writes and publishes standards for RTOS that are used in ECUs. I was curious and wanted to find out what kind of AUTOSAR compatible OSes are out there.
One RTOS that stood out to me in particular is called ERIKA Enterprise. An Italian company called Evidence Srl is developing it. The most recent version of ERIKA Enterprise isn’t available to the public. A previous that Evidence Srl released is called ERIKA version 3. It’s published under the GPL version 2. The source code repository on GitHub has been removed.
Since things disappearing from the web is always sad, I wanted to save some useful links in this post. Here’s where you can find ERIKA version 3’s source code and its old wiki:
- GitHub fork of ERIKA version 3: https://github.com/wentasah/erika3-tc38x/tree/tc38x
- Archive capture of the ERIKA version 3 wiki: https://web.archive.org/web/20220609002552/https://www.erika-enterprise.com/wiki/index.php/ERIKA_v3_Wiki_Main_Page
If you are interested in what kind of operating system is used in ECUs, you may want to give ERIKA version 3 a read.