= Developing Custom Flashing Standard Firmware = == SDKManager ==SDKManager is available only on Linux, and can be installed here: https://developer.nvidia.com/sdk-manager# Start up the SDKManager# Put the Jetson into recovery mode. For the AGX, this can be done by pressing the recovery button while powering on the device. For the Jetson Orin Nano ==and NX, however, a jumper will be required. # Connect the Target Jetson to the host device and ensure that the target device is recognized.= Flashing = # Follow the instructions on the application, choosing configurations as necessary.
Notes:- Current Design constraints: - Based off of the availability of parts in JLCPCB. Possibility of parts not being found or existing. - - = Flashing is done with the flash.sh script through the following command $ sudo ./flash.sh <board> <rootdev> where board is the actual board Custom Firmware (For Jetson-Nano-XX, etc36.3)=rootdev determines what type of device is being flahed. Use mmcblk0pc1 # Repeat Steps 1 to flash a local storage device (eMMC or SD card)- TO begin flashing, put the device into force recovery mode and then press reset. - Run the flash script using the previous command specified3 as mentioned in Flashing Standard Firmware. Flash using a convenient script: - To avoid having # Proceed to specify the rootdev and second step of the board configurationsSDKManager, can use where the custom flashing script: - Using GPIO Pins respective individual dependencies and Jetson Images are listed and are to program protocol:- you can use the rasberry pi libraries to interface be installed. Proceed with the pins, configuring them to whatever layout that is neededinstallation. - Example: it is possible # When prompted to direclty interface with actually flash the i2c system in the nano by using the linux terminal itself. Current Game Plan:- mess around with the programming of the GPIO pins: Figure out if there are ways Jetson, opt to choose access teh data that the GPIO pins are Or Receivingskip.Test if it is possible to reconfigure This will install the pins <code>nvidia</code> folder on your home directory, in which the jetson on the firmware side Build Time: - On a single Nvidia Nano<code>rootfs</code>, <code>kernel, it takes about 45 mins - 1 hour to complete the build. The build is encrypted through RSA. The source is still accessible </code> and every time changes <code>bootloader</code> are made located.# Navigate to the source files <code>nvidia</code> and want ot be reflected<code>cd</code> through its subdirectories, the build files have to be remade. Current goal (Figure out if there's a way to make specific build files to decrease development time)until <code>Linux for Tegra</code> is reached. Notes:- General requirements to build # Inside <code>Linux kernel still apply: efor Tegra</code>, <code>cd</code> into the <code>sources</code> folder.gIt should be unpopulated with the exception of some bash scripts. `build-essentials`, `bc`, `libssl-dev`, etc- Need to install `libssl-dev (depends on whether Run the certain packages are included <code>source_sync.sh</code> script and when running the script) Current Approaches asked to Flashing:- Decompile an existing DTB file into DTS, make appropriate changes then recompile back.- Take a flash image that already exists and flash back onto specify the jetson: - Caveats: Ensure that release of the current Jetson is running on Jetpack 5+. If notdownloadable sources, you will need to flash 5 on it before flashing it to sixenter <code>jetson_36. There are instructions online that deal with this setup3</code>.-This will install the