Custom OS installations are now available for AWS DeepRacer devices

With stock firmware and software, developers could not modify their AWS DeepRacer devices to run the latest operating systems. Now, developers can upgrade or install a custom operating system (OS) using the newly released bootloader, which extends the life of these hardware devices.
AWS DeepRacer devices are autonomous 1/18 scale racing cars driven by models trained with reinforcement learning. These hardware devices, when paired with a cloud environment for training and testing neural network models, provide an educational and development environment aimed at helping developers get started with machine learning. As shipped, the secure firmware on AWS DeepRacer devices runs AWS-signed operating systems, including Ubuntu versions 16.04 and 20.04. These versions of Ubuntu are no longer supported, making further testing and research difficult. To keep these devices useful for as long as possible, you need a way to get custom and customized software to work.
With our developer bootloader, you can install custom operating systems other than the ones originally provided. You can also install modern Linux distributions, add custom hardware drivers, run custom software stacks, build novel educational projects, and develop prototypes of new motor algorithms. In this post, we introduce the bootloader, discuss how to use it, and share links to community distributions that use it.
Our solution
Our team has developed a bootloader that provides self-service developer access. The bootloader is based on the open source shim project. With this developer shim, you can install custom or third-party distributions on your AWS DeepRacer device.
The developer shim is aimed at developers familiar with Linux boot processes and certificate management. It is especially useful for community members who want to create and distribute custom AWS DeepRacer installations and media.
At launch, the developer shim flashes “STROKE MODE” in Morse code on the built-in lights of the AWS DeepRacer device. After completing this instruction, the shim transfers control to the installed OS. The goal is to be transparent by using transparent indicators whenever developer mode is active. These indicators help you understand the security posture of your device.
If you ever need to go back to the original configuration, the process is completely reversed. You can follow the directions of Update Your Car to restore the device to stock configuration.
A developer shim works with three main things:
1. Self-service certificate management
If the built-in signature verification fails, the developer shim checks the developer's certificates /EFI/DEVELOPER/certs/ in partitioning the device's initialization. You can manage your certificates using standard tools (OpenSSL, sbsign) while maintaining proper cryptographic authentication.
2. Clear visual warnings
If developer certificates are used, the system provides a clear indication:
- On-screen warning (via HDMI) – It prompts you in developer mode.
- Hardware index – Device lights flashing “DEVELOPER MODE” in Morse code.
- Startup delay – Gives you time to see the activation of developer mode.
3. Standard performance verification
The solution uses standard certificate-based signing tools, making it accessible to developers already working with secure implementation processes. This way, you can provide your certificates while maintaining the cryptographic integrity of the boot chain and the operating system.
The open source AWS DeepRacer community at deepracing.io has used this developer shim to create a new custom distribution for AWS DeepRacer devices, built on the Ubuntu 24.04 / ROS2 Jazzy software stack and featuring a Cloudscape-based interface. As a practical embodiment of the self-service bootloader approach, it provides a ready-to-use solution for developers who want to get up and running quickly.
Pre-packaged and using an installation process very similar to the original AWS deployment, it comes ready to deploy out of the box. The community prioritized the performance of the race, removing unnecessary packages, including the graphical user interface of the X Window System. You can add a desktop experience to it if needed. Refer to the README for installation instructions.
The developer shim allows the DeepRacing community to maintain and distribute updated software for AWS DeepRacer devices, extending their useful life well beyond the original deployment. The distribution can be found at
How to use
You can use the bootloader with your AWS DeepRacer device across multiple deployment patterns. You can develop using a public distribution, use a standard third-party OS, or create your own custom OS. The exact steps depend on your choice.
You can start by installing a community distribution, such as the Ubuntu 24.04 Community Distribution. This option provides an installation method without requiring the developer to custom install Linux and reconfigure its boot processes.
Option B: Third party distribution
You can use a developer shim when installing a third-party distribution like Ubuntu. Select this option if you want to control the installation process. After installing the OS, restore the file BOOTX64.EFI file with a developer shim and add the appropriate certificates. This may need to be done twice: once with the installation media, and again after installation. Get in touch with USAGE.md file in the developer shim package for guidance.
Option C: Custom OS
If you are building a custom OS for an AWS DeepRacer device, create a boot volume on the device. Place the developer shim underneath EFI/BOOT/BOOTX64.EFI and your OS kernel or bootloader as EFI/BOOT/GRUBX64.EFI. Then enter your public certificate under the DEVELOPER/certs way. Get in touch with USAGE.md file in the developer shim package for guidance.
What to expect during the first boot sequence
The device goes through several stages in initialization. When flashing, the device firmware loads a developer shim (BOOTX64.EFI) and transfer functionality to it. The shim then displays a warning on the screen (if an HDMI monitor is attached) and flashes “DEVELOPER MODE” in Morse code on the device's lights. This section lasts about 21 seconds. Like the original firmware bootloader or shim bootloader in a typical PC installation, the developer bootloader then loads the operating system kernel. However, unlike firmware, the developer's bootloader checks the signature of this kernel against a custom certificate store stored internally. /EFI/DEVELOPER/certs. If the signature matches, the developer shim passes the implementation to this operating system kernel, and booting continues normally.
Pairs with self-regulating AWS DeepRacer
With the bootloader shim and self-management solution released on January 26, 2026, you now have full control over both cloud-based training environments and your portable devices. Developers can customize the on-device software stack, test new ROS2 packages, and replicate racing models with complete end-to-end flexibility. Visit DeepRacer on AWS for details on our self-managed solution.
Getting started
To get started, first check out DeepRacer on AWS Solution and download the developer shim from deepracer-developer-shim.zip. To create or modify a new custom operating system boot medium, place the BOOTX64.EFI shim file to EFI/BOOT directory. Save the kernel of your chosen operating system as GRUBX64.EFIand store the kernel's public certificate in EFI/DEVELOPER/CERTS in x509 DER format. This may need to be done both on the operating system installation media and on the device itself after installing on the media. For more detailed technical documentation, troubleshooting, and advanced usage, see bootloader's USAGE.md file contained within a zip file.
Or, download the public distribution linked to above How to use then follow the directions for a fresh install with the developer bootloader already installed.
The conclusion
Using the bootloader, you can unlock your AWS DeepRacer device and continue to use it as an education and development environment with the latest operating systems, tools, and software stacks. You can also customize to install your operating system or use a public distribution.
To get started, download the developer bootloader from deepracer-developer-shim.zip and follow the instructions at USAGE.md file. After that, check out Community Distribution and continue your machine learning (ML) journey with DeepRacer on AWS Solution.
With the flexibility introduced with the new bootloader, your imagination is the limit of what you can do with the device. What will you build? Feel free to share on
About the writers

