|
18 | 18 | - [Apply Fixes](#242-apply-fixes)
|
19 | 19 | - [2.5. Bazel Buildifier](#25-bazel-buildifier)
|
20 | 20 | - [How to Run](#251-how-to-run)
|
| 21 | +- [3. Hardware](#3-hardware) |
| 22 | + - [3.1. Jetson Nano](#31-jetson-nano) |
| 23 | + - [Flashing](#311-flashing) |
| 24 | + - [Remote Connection](#312-remote-connection) |
21 | 25 |
|
22 | 26 | ## 1. Development Environment
|
23 | 27 |
|
@@ -187,3 +191,88 @@ To run Buildifier execute the following command:
|
187 | 191 | ```bash
|
188 | 192 | bazel run //bazel:buildifier
|
189 | 193 | ```
|
| 194 | +
|
| 195 | +## 3. Hardware |
| 196 | +
|
| 197 | +### 3.1. Jetson Nano |
| 198 | +
|
| 199 | +#### 3.1.1. Flashing |
| 200 | +
|
| 201 | +The approach described in the [official documentation](https://www.waveshare.com/wiki/JetRacer_AI_Kit#Support) did not work for this setup. Instead, the solution is to use the [NVIDIA SDK Manager with Docker containers](https://docs.nvidia.com/sdk-manager/docker-containers/index.html). |
| 202 | +
|
| 203 | +1. **Install NVIDIA SDK Manager with Docker**: |
| 204 | +
|
| 205 | + During installation, choose the Docker image that uses Ubuntu 18.04, as the Jetson Nano is not compatible with newer versions. |
| 206 | +
|
| 207 | +2. **Install Required Dependencies**: |
| 208 | +
|
| 209 | + Ensure that the following dependencies are installed: |
| 210 | +
|
| 211 | + ```bash |
| 212 | + sudo apt install qemu-user-static binfmt-support |
| 213 | + sudo update-binfmts --enable |
| 214 | + ``` |
| 215 | +
|
| 216 | +3. **Load the Docker Image**: |
| 217 | +
|
| 218 | + Load the Docker image from the tar file: |
| 219 | +
|
| 220 | + ```bash |
| 221 | + docker load -i ./sdkmanager-2.2.0.12021-Ubuntu_18.04_docker.tar.gz |
| 222 | + ``` |
| 223 | +
|
| 224 | +4. **Tag the Docker Image**: |
| 225 | +
|
| 226 | + Tag the image as latest: |
| 227 | +
|
| 228 | + ```bash |
| 229 | + docker tag sdkmanager:2.2.0.12021-Ubuntu_18.04 sdkmanager:latest |
| 230 | + ``` |
| 231 | +
|
| 232 | +5. **Put the Jetson Nano into Recovery Mode**: |
| 233 | +
|
| 234 | + Before running the container, connect the pin "fcrec" and ground to put the board into recovery mode, needed to flash the os. |
| 235 | + Insert the SD card into the Jetson Nano and connect the micro-USB cable. |
| 236 | +
|
| 237 | +6. **Run the Docker Container**: |
| 238 | +
|
| 239 | + Execute the following command to run the SDK Manager container: |
| 240 | +
|
| 241 | + ```bash |
| 242 | + sudo docker run -it --privileged \ |
| 243 | + -v /dev/bus/usb:/dev/bus/usb/ \ |
| 244 | + -v /dev:/dev \ |
| 245 | + -v /media/$USER:/media/nvidia:slave \ |
| 246 | + --network host --name jetson_flash sdkmanager --cli |
| 247 | + ``` |
| 248 | +
|
| 249 | +7. **Follow the Steps**: |
| 250 | +
|
| 251 | + - Select Action: Install |
| 252 | + - Select Product: Jetson |
| 253 | + - Select System Configuration: Host Machine [Ubuntu 18.04 - x86_64] |
| 254 | + - Select Target Hardware: Jetson Nano module |
| 255 | + - Choose manual configuration and **wait for the download to finish before selecting the Flash option**. Else flashing will not work. |
| 256 | +
|
| 257 | +For more details on Jetson Nano pins, refer to the Jetson Nano 2GB DevKit User Guide. |
| 258 | +
|
| 259 | +#### 3.1.2. Remote Connection |
| 260 | +
|
| 261 | + After flashing is complete, turn off the Jetson board and remove the connected pins. |
| 262 | + Ensure peripherals are connected to the board before powering it up. |
| 263 | +
|
| 264 | +1. **Check IP Address**: |
| 265 | +
|
| 266 | + On the Jetson Nano, check its IP address by running: |
| 267 | +
|
| 268 | + ```bash |
| 269 | + ipconfig |
| 270 | + ``` |
| 271 | +
|
| 272 | +2. **SSH into the Jetson Nano**: |
| 273 | +
|
| 274 | + Connect to the device using SSH: |
| 275 | +
|
| 276 | + ```bash |
| 277 | + ssh <user>@<wlan_inet> |
| 278 | + ``` |
0 commit comments