I am flashing Jetpack 3.3.1/3.3.2 on Jetson TX2 using Nvidia SDK Manager.
After the target flashed successfully, a sdk window poping out says Complete the Ubuntu System COnfiguration Wizard on your Jetson TX2, the strange thing is the system configuration wizard doesn’t come out, my Jetson enters ubuntu desktop immedately without any settings.
The flashed OS used default user name and passwd as nvidia&nvidia. I can ssh it use this usr&passwd.
It works correctly in most of the time without locale setting, except for
usb driver doesn’t work, reboot tx2 makes it work,
many “perl: warning: Setting locale failed” problems.
Is this normal?
I used
Jetson TX2
HDMI monitor
USB HUB
Mouse and keyboard
SDK manager 1.0.0.5517
Jetpack 3.3.1 & 3.3.2
There are lots of errors during flashing, but completed sucessfully.
For JetPack 3.x and earlier the accounts were created by default and there was no need to add them.
The ERROR messages related to RAW/SKP is an error on the host PC side in preparation for flash. In this case it implies that even if the flash is correct, that the image flashed has problems.
Flash will build an image prior to starting the flash, and that image will be an exact bit-for-bit match of what gets flashed. The implication is that if the image is about 30GB in size, then this much space will also be taken on the host PC. Then a sparse image is created, which in turn is about two or three GB. Other smaller images are involved as well. Perhaps your PC ran out of disk space and flashed a truncated image. What do you see on the host from:
df -H -T -t ext4
Note that I specifically limited the query to ext4 since non-Linux filesystem types cannot be used for image creation (the rootfs which is used to create the image must preserve Linux permissions and non-Linux filesystem types do not understand Linux permissions).
Yes, there is a strong chance the image was truncated. The flash software produces a “Linux_for_Tegra/” directory on the host PC, and within this the “Linux_for_Tegra/bootloader/system.img.raw” file. Can you see the exact byte size of this?
cd /where/ever/it/is/Linux_for_Tegra/bootloader
ls -l system.img.raw
That file must be evenly divisible by 1024 at least twice, but sometimes it is divisible by 1024 three times. This is the first temp file created in a series of copies and generation of content.
Even if that file is a correct size, there would also be a system.img on top of this, and a number of other images/files copied around. In the long run, if you have a way to increase space (e.g., 35GB total or more), then this would be the next thing to test.
Note that non-UTF8 locales can cause problems, or spaces in the path to the install software, but this won’t necessarily be a problem. The export you ran should be good enough for anything other than spaces in a file path. This would still be a problem if that locale cannot be found…it could be the en_US.UTF-8 content for that locale does not exist on your computer. FYI, it is safe to add multiple locale support so long as the system as a whole does not get set to the wrong locale. I have for example installed some other locales on my system to be able to see non-en_US punctuation and fonts, but this is purely en_US.UTF-8.
The above says that the raw image is probably correct. After this raw image is created other content is created, but since you increased the home directory size, it is safe to conclude this is not the result of lack of space, nor of truncated images.
There is still a possibility that the software incorrectly handles spaces or non-en_US.UTF-8 characters in the path. In the location where the “Linux_for_Tegra/” directory is located, is the full path of the directory using any space characters or non-en_US.UTF-8 characters? If so, then it is worth testing via renaming that path to contain just those characters.
In the location where the “Linux_for_Tegra/” directory is found, you might then want to manually run the flash and log that. Assuming the “Linux_for_Tegra/rootfs/” is already correctly populated (and the earlier flash may not have done so, but it is very likely the content is correct), then you could put the Jetson in recovery mode and attach the micro-B USB, followed by this to flash and create a log:
(if you don’t have “gawk”, then “sudo apt-get install gawk”)
If flash fails, then you can post the log.
If the Jetson itself still behaves oddly, then you can boot with serial console attached, and post the serial console log. If flash is valid, but boot is incorrect, then I would suspect the content of the “Linux_for_Tegra/rootfs/” directory being incorrect.
There are no spaces and other characters in the path. The absolute path of “Linux_for_Tegra/” is /home/wang/nvidia/nvidia_sdk/JetPack_3.3.2_Linux_GA_P3310/Linux_for_Tegra
I mannually run the flash and log it, there are tons of similar things but doesn’t say they are error info.
This is output of flashing mannually
The manual flash shows correct behavior, it is only the SDKM log which shows problems. Since SDKM is only a front end to the manual flash, the manual command line flash should be used for initial install (but extra packages cannot be installed like this…keep in mind that SDKM can have flash unchecked and be told to just install packages to a fully booted and running Jetson). My conclusion is that the actual flash from command line is 100% successful and valid (provided that the content being flashed is valid…flash itself does not know any difference between valid or invalid root partitions, it is all just binary data to the flasher).
If all you do is to flash manually on command line, does the Jetson boot correctly? If not, then on first boot after manually flashing, can you provide a serial console boot log? The goal is to see what goes on in boot when SDK Manager is not involved.