There are many ways to build the software packages. The easiest is to use the VS.Code Dev Container configurations that are included in the repository.
- Ubuntu 20.04 (AMD64) + ROS2 Foxy for building packages for original DeepRacer
- Ubuntu 22.04 (AMD64) + ROS2 Humble
- Ubuntu 22.04 (ARM64) + ROS2 Humble for Raspberry Pi4.
Opening VS.Code will prompt you if you want to open the DevContainer. It will require Docker to be installed on your computer, Windows or Linux should be supported. To keep the bash history between sessions run docker volume create deepracer-ros-bashhistory
before starting the container.
Running the ARM64 container on a normal x86 computer will require enabling cross-compilation in Docker:
docker run --privileged --rm tonistiigi/binfmt --install all
The cross-compiled container uses qemu and is quite a bit slower than a native container.
Once DevContainer is runnning (first build might take a while) then packages can be installed with:
./build_scripts/build-core.sh
DEB packages can be created with:
./build_scripts/build-packages.sh
The packages will be created in the dist/
folder.
During installation a set of external packages are downloaded in the src/
directory. These are primarily the official AWS DeepRacer packages as well as their dependencies, which will be patched as part of the build process.
Package | Description |
---|---|
aws-deepracer-camera-pkg | Camera package for AWS DeepRacer |
aws-deepracer-ctrl-pkg | Control package for AWS DeepRacer |
aws-deepracer-device-info-pkg | Device info package for AWS DeepRacer |
aws-deepracer-i2c-pkg | I2C package for AWS DeepRacer |
aws-deepracer-inference-pkg | Inference package for AWS DeepRacer |
aws-deepracer-interfaces-pkg | Interfaces package for AWS DeepRacer |
aws-deepracer-model-optimizer-pkg | Model optimizer package for AWS DeepRacer |
aws-deepracer-navigation-pkg | Navigation package for AWS DeepRacer |
aws-deepracer-sensor-fusion-pkg | Sensor fusion package for AWS DeepRacer |
aws-deepracer-servo-pkg | Servo package for AWS DeepRacer |
aws-deepracer-status-led-pkg | Status LED package for AWS DeepRacer |
aws-deepracer-systems-pkg | Systems package for AWS DeepRacer |
aws-deepracer-usb-monitor-pkg | USB monitor package for AWS DeepRacer |
aws-deepracer-webserver-pkg | Webserver package for AWS DeepRacer |
async_web_server_cpp | Async web server for C++ |
web_video_server | Web video server |
rplidar_ros | RPLIDAR ROS package |
aws-deepracer-launcher | Launcher package for AWS DeepRacer |
larsll-deepracer-logging | Logging package for AWS DeepRacer |