I tried to flash L4T R 27.1 to TX2 . I used Ubuntu both 16 and 14 LTS versions as host , I tried flashing using Jetpack 3.0 i also tried Flashing manually using the method in l4t_quick_start_guide.txt file. used the below command
sudo ./flash.sh jetson-tx2 mmcblk1p1
But everytime it fails with an unicode Decode Error . following are the log output i am getting , and it’s same with whatever method i am using to flash TX2 . I didn’t use virtual machine as host . and i sucessfully flashed Tx2 before . but now it’s just showing this error .i am not a programmer ,so quite noob with coding skills and fixing errors by myself. i am looking for some help here.
./tegraflash.py --chip 0x18 --applet "/home/sani/Downloads/Linux_for_Tegra/bootloader/mb1_recovery_prod.bin" --cmd "dump eeprom boardinfo cvm.bin" --skipuid
Welcome to Tegra Flash
version 1.0.0
Type ? or help for help and q or quit to exit
Use ! to execute system commands
[ 0.0012 ] Generating RCM messages
[ 0.0020 ] tegrarcm_v2 --listrcm rcm_list.xml --chip 0x18 --download rcm /home/sani/Downloads/Linux_for_Tegra/bootloader/mb1_recovery_prod.bin 0 0
[ 0.0028 ] RCM 0 is saved as rcm_0.rcm
[ 0.0034 ] RCM 1 is saved as rcm_1.rcm
[ 0.0034 ] List of rcm files are saved in rcm_list.xml
[ 0.0034 ]
[ 0.0034 ] Signing RCM messages
[ 0.0042 ] tegrasign_v2 --key None --list rcm_list.xml --pubkeyhash pub_key.key
[ 0.0050 ] Assuming zero filled SBK key
[ 0.0086 ]
[ 0.0086 ] Copying signature to RCM mesages
[ 0.0113 ] tegrarcm_v2 --chip 0x18 --updatesig rcm_list_signed.xml
[ 0.0141 ]
[ 0.0142 ] Boot Rom communication
[ 0.0158 ] tegrarcm_v2 --chip 0x18 --rcm rcm_list_signed.xml --skipuid
[ 0.0172 ] RCM version 0X180001
[ 0.0182 ] Boot Rom communication completed
[ 1.0244 ]
[ 6.0272 ] Retrieving EEPROM data
[ 6.0274 ] tegrarcm_v2 --oem platformdetails eeprom cvm /home/sani/Downloads/Linux_for_Tegra/bootloader/cvm.bin
[ 6.0284 ] Applet version 01.00.0000
[ 6.1258 ] 0Traceback (most recent call last):
File "./tegraflash.py", line 1022, in <module>
tegraflash_run_commands()
File "./tegraflash.py", line 929, in tegraflash_run_commands
interpreter.onecmd(command)
File "/usr/lib/python2.7/cmd.py", line 221, in onecmd
return func(arg)
File "./tegraflash.py", line 614, in do_dump
tegraflash_dump(exports, args)
File "/home/sani/Downloads/Linux_for_Tegra/bootloader/tegraflash_internal.py", line 717, in tegraflash_dump
tegraflash_dumpeeprom(args, dump_args[1:])
File "/home/sani/Downloads/Linux_for_Tegra/bootloader/tegraflash_internal.py", line 755, in tegraflash_dumpeeprom
run_command(command)
File "/home/sani/Downloads/Linux_for_Tegra/bootloader/tegraflash_internal.py", line 166, in run_command
print_process(process)
File "/home/sani/Downloads/Linux_for_Tegra/bootloader/tegraflash_internal.py", line 149, in print_process
for string in process.communicate()[0].decode('utf-8').split('\n'):
File "/usr/lib/python2.7/encodings/utf_8.py", line 16, in decode
return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode byte 0xe8 in position 17: invalid continuation byte
Reading board information failed.
Not yet, i tried jetpack in ubuntu 14 . i don’t know why , but jetpack 3.0 doesn’t work with my ubuntu 16 . it shows an “Error” right below the “Automatically resolve dependency conflicts” at the bottom left corner without mentioning any reason. and i tried to downlaod jetpack 3.1 and then from there choose jetpack 3.0 , it gives the same error .
I am not sure if the above mentioned error is due to jetpack . because i tried to flash the tx2 without using jetpack and it gives me the same error messages . in all the versions of ubuntu . i am not an expert , but i have a feeling that this has something to do with l4t version . use jetpack or not the error exists either way .
At that point in the flash it should be saving a file. How much space is on that partition? From the location of flash.sh, what is shown by “df -H -T .”?
“df” is a command to see how much disk space you have. The “-H” is human-readable format, the “-T” says to give information on the file type. So…cd to where you have the driver package or JetPack installed, and just run this on command line through a terminal: “df -H -T .”. FYI, the “.” means current directory.
And i just tried flashing jetpack 3.1 that comes with l4t r28.1 version and still failed to flash . But this time the error message is different " CPU Bootloader is not running on device error return value 4. the log output is below
./tegraflash.py --chip 0x18 --applet "/home/sani/Downloads/JETPACK3.1/64_TX2/Linux_for_Tegra_tx2/bootloader/mb1_recovery_prod.bin" --cmd "dump eeprom boardinfo cvm.bin" --skipuid
Welcome to Tegra Flash
version 1.0.0
Type ? or help for help and q or quit to exit
Use ! to execute system commands
[ 0.0013 ] Generating RCM messages
[ 0.0022 ] tegrarcm_v2 --listrcm rcm_list.xml --chip 0x18 --download rcm /home/sani/Downloads/JETPACK3.1/64_TX2/Linux_for_Tegra_tx2/bootloader/mb1_recovery_prod.bin 0 0
[ 0.0029 ] RCM 0 is saved as rcm_0.rcm
[ 0.0034 ] RCM 1 is saved as rcm_1.rcm
[ 0.0034 ] List of rcm files are saved in rcm_list.xml
[ 0.0034 ]
[ 0.0035 ] Signing RCM messages
[ 0.0047 ] tegrasign_v2 --key None --list rcm_list.xml --pubkeyhash pub_key.key
[ 0.0068 ] Assuming zero filled SBK key
[ 0.0109 ]
[ 0.0109 ] Copying signature to RCM mesages
[ 0.0117 ] tegrarcm_v2 --chip 0x18 --updatesig rcm_list_signed.xml
[ 0.0129 ]
[ 0.0129 ] Boot Rom communication
[ 0.0143 ] tegrarcm_v2 --chip 0x18 --rcm rcm_list_signed.xml --skipuid
[ 0.0151 ] RCM version 0X180001
[ 0.0158 ] Boot Rom communication completed
[ 1.0222 ]
[ 1.0234 ] tegrarcm_v2 --isapplet
[ 1.0250 ] Applet version 01.00.0000
[ 1.0270 ]
[ 1.0300 ] Retrieving EEPROM data
[ 1.0306 ] tegrarcm_v2 --oem platformdetails eeprom cvm /home/sani/Downloads/JETPACK3.1/64_TX2/Linux_for_Tegra_tx2/bootloader/cvm.bin
[ 1.0330 ] Applet version 01.00.0000
[ 1.0366 ] 00000000000a0111:
[ 1.0569 ]
[ 1.0582 ] tegradevflash_v2 --oem platformdetails eeprom cvm /home/sani/Downloads/JETPACK3.1/64_TX2/Linux_for_Tegra_tx2/bootloader/cvm.bin
[ 1.0593 ] CPU Bootloader is not running on device.
[ 1.0614 ]
Error: Return value 4
Command tegradevflash_v2 --oem platformdetails eeprom cvm /home/sani/Downloads/JETPACK3.1/64_TX2/Linux_for_Tegra_tx2/bootloader/cvm.bin
Reading board information failed.
I didn’t use virtual machine , I used ubutnu 14 lts version.
A note about my reason to newly flash TX2 : I already have l4t 27.1 installed . but my eth0 is showing problem . The MAC address is missing . I tried different ways to recover the MAC address and it keeps failing . after running ifconfig i got HWaddr for eth0 as 00:00:00:00:00:00
and there is no way i can connect to network using ethernet port . somehow the uuid and mac address is gone . So i thought about flashing a new os might solve the problem .
Thanks for this workaround . Can you give me a more detailed procedure . it would be a great help .
And if i want to make it work on the emmc of TX2 , how can i do that . do you think it’s a hardware problem ?
Any kind of help is greatly welcome.
Assuming command line from the “Linux_for_Tegra/” directory…
The flash command for default is eMMC (I’m leaving out setting for max partition size):
sudo ./flash.sh jetson-tx2 mmcblk<b>0</b>p1
…the flash command for SD card is “mmcblk1p1” instead of “mmcblk0p1”:
sudo ./flash.sh jetson-tx2 mmcblk<b>1</b>p1
L4T R28.1 might differ slightly…an example of manually setting up the SD card for R27.1 might be something like this (assumes SD card is “/dev/sdg”, and the first partition is a GPT partition at “sdg1”, e.g., via gdisk):
<b>sudo -s</b>
mkfs.ext4 -O ^metadata_csum,^64bit /dev/sdg1
mount /dev/sdg1 <b>/mnt</b>
cd /mnt
tar xvfj /where/ever/it/is/Tegra_Linux_Sample-Root-Filesystem_R27.1.0_aarch64.tbz2
cd /where/ever/R27.1/is/Linux_for_Tegra/
./apply_binaries.sh <b>-r /mnt</b>
umount /mnt
exit
# Disconnect SD card from host, put in Jetson
Note that the final content of the boot directory gets put in during the flash.sh process. You could manually copy the boot structure you want into “/boot”, but the flash.sh command should do the job too.
Don’t know if the EEPROM failure will happen during an SD card flash, but if your SD card does not end up with “/boot/extlinux/extlinux.conf” it can be put there manually, and if U-Boot can handle the system in its current state, then it should be able to SD card boot. There are actually some options in whether you use the flash to copy files or manually setting up the SD card.
I tried to follow your procedure , but i got error at the very first step .this is what i did
MOunted SD card and formatted it in ext4 system
cd to the directory . cd blah/blah/64_TX2/Linux_for_Tegra_tx2/.
run sudo ./flash.sh jetson-tx2 mmcblk1p1
and i ended up with the following messages and erors.
./tegraflash.py --chip 0x18 --applet "/home/sani/Downloads/JETPACK3.1/64_TX2/Linux_for_Tegra_tx2/bootloader/mb1_recovery_prod.bin" --cmd "dump eeprom boardinfo cvm.bin" --skipuid
Welcome to Tegra Flash
version 1.0.0
Type ? or help for help and q or quit to exit
Use ! to execute system commands
[ 0.0013 ] Generating RCM messages
[ 0.0023 ] tegrarcm_v2 --listrcm rcm_list.xml --chip 0x18 --download rcm /home/sani/Downloads/JETPACK3.1/64_TX2/Linux_for_Tegra_tx2/bootloader/mb1_recovery_prod.bin 0 0
[ 0.0031 ] RCM 0 is saved as rcm_0.rcm
[ 0.0036 ] RCM 1 is saved as rcm_1.rcm
[ 0.0036 ] List of rcm files are saved in rcm_list.xml
[ 0.0036 ]
[ 0.0036 ] Signing RCM messages
[ 0.0045 ] tegrasign_v2 --key None --list rcm_list.xml --pubkeyhash pub_key.key
[ 0.0054 ] Assuming zero filled SBK key
[ 0.0093 ]
[ 0.0093 ] Copying signature to RCM mesages
[ 0.0105 ] tegrarcm_v2 --chip 0x18 --updatesig rcm_list_signed.xml
[ 0.0128 ]
[ 0.0129 ] Boot Rom communication
[ 0.0137 ] tegrarcm_v2 --chip 0x18 --rcm rcm_list_signed.xml --skipuid
[ 0.1173 ]
Error: Return value 8
Command tegrarcm_v2 --chip 0x18 --rcm rcm_list_signed.xml --skipuid
Reading board information failed.
so I received a new tx2 module and that didn’t have any problem flashing . Does this mean , the problem lies within the old TX2’s hardware ? old problematic TX2 has the os already in it . But it’s not giving any mac address for ethernet port . I was unable to solve that problem by googling , at one point i had to gave up and i decided to flash. and failed again and again . Do you think all these has to do with some hardware issues ?
Hi , I haven’t tried the SD card flash yet . I checked somewhere it said , class 10 speed sd card is needed , which i don’t have with me for now . I am not so sure about SD card flashing ? like where will be the OS installed finally ? in the sd card ? same like raspberry pi computers ? or from SD card it needs to be ported to TX2 built in storage ?