While trying to flash my Jetson Nano 2GB with JetPack 4.6, the system crashed.
When trying to reboot the system, the setup does not appear and only a black screen is shown.
The green LED on the board does turn on each boot, but nothing happens.
I have tried reflashing the sdcard several times but still nothing happens.
I thought maybe the sdcard was bad. So, I tried a new one, still does not work.
Afterwards, I tried older versions of JetPack but to no avail.
The forums suggested that I give the SDKManager a try, so that I am able to flash the Jetson Nano itself and not just the sdcard.
I plugged in a micro-usb cable and put the device in recovery mode.
The first attempt failed on my laptop running Ubuntu 20.04.
I later realised that the SDKManager does not work on 20.04, but only on 18 and 16 according to the documentation.
So, I tried the docker image for SDKManager instead.
The docker command I used was
docker run -it --rm --privileged -v /dev:/dev --name JetPack_Jetson_Nano sdkmanager:188.8.131.5270 --cli install --logintype devzone --product Jetson --version 4.6 --targetos Linux --host --target JETSON_NANO_TARGETS --flash all --license accept --staylogin true --datacollection enable
The first attempt failed because I was missing the
qemu-user-static library on the host machine.
So, I installed it and tried again.
This time the docker image failed to flash the device due to missing libraries in the container.
I wrote a Dockerfile which includes this missing library in the container.
FROM sdkmanager:184.108.40.20670 RUN sudo apt update && sudo apt install -y libxml2-utils ENTRYPOINT [ "docker-entrypoint.sh" ]
Then by a simple docker build command I rebuild the image.
docker build -f Dockerfile -t sdkmanager:fixed .
Afterwards, I updated the command to use the fixed version and ran it again.
docker run -it --rm --privileged -v /dev:/dev --name JetPack_Jetson_Nano sdkmanager:fixed --cli install --logintype devzone --product Jetson --version 4.6 --targetos Linux --host --target JETSON_NANO_TARGETS --flash all --license accept --staylogin true --datacollection enable
This time the flashing gets stuck at 99% and notices that it is taking longer than expected.
What is left for me to try?
Furthermore, I suggest that the docker image gets updated to reflect this change.