miniPc-N258N1-B NVIDIA quad-core Tegra K1 no display on screen

Hi,

Thanks for reply
same error with argument “-S 12GiB”

reating partition: EBT
creating partition: LNX
creating partition: SOS
creating partition: NVC
creating partition: MPB
creating partition: MBP
creating partition: GP1
creating partition: APP
creating partition: DTB
creating partition: EFI
creating partition: USP
creating partition: TP1
creating partition: TP2
creating partition: TP3
creating partition: WB0
creating partition: UDA
creating partition: GPT
sending file: ppt.img
\ 2097152/2097152 bytes sent
ppt.img sent successfully
padded 12 bytes to bootloader
sending file: u-boot.bin

  • 440016/440016 bytes sent
    u-boot.bin sent successfully
    sending file: system.img
    / 25165824/2541556348 bytes sentdata send failed NvError 0x8
    command failure/warning: create failed
    Failed flashing ardbeg.

I think it is time for RMA.

Thanks & regards
Maps

Hi,

In my last reply i forgot to mention the command i used for flashing.

sudo ./flash.sh -S 12GiB PCP_B258 mmcblk0p1

Thanks & regards
Maps

It does look like RMA time. One clue which validates the idea of eMMC failure is that when using different sizes of system.img, it still chokes at the same byte offset (25165824) using the same partition starting point. It looks like at that byte offset eMMC can’t correct the failure.

Hi,

For the sake of knowledge. I want to read the dump from memory for this device (mainly eMMC).

I am not able to mount it.
its connect through USB 3.0.

How would i mount this device (to check the eMMC content mainly BCT dump) or check the content of this device and read dump from it and also want to check all partitions ?

I want to compare the BCT dump with the backup image which i took before it crashes ?

Is there any communication instructions after i mount it ?
Does it sound correct?

Thanks & regards
Maps

The “OTG” USB port does not have the software needed to mount via USB. You could clone partitions though, and then loopback mount partitions capable of this (the root file system is type ext4, this is loopback mountable; all other partitions are binary data). For information on cloning:
[url]http://elinux.org/Jetson/Cloning[/url]

Hi,

Thanks for the information. The explanation is really good in the link.
is it (mount device) also not possible directly through serial port ?

thanks & regards
Maps

Serial port is just a simple UART that requires streaming characters (in this case keyboard characters). USB only does what it is programmed for (which is normal USB when a micro-A connector is on it, or recovery mode for micro-B connector). I think hardware such as an iPod or smart phone tends to make people believe an OTG port is synonymous with hard drive access, but this is really just a connector and any behavior in that regards is really custom programming. Even in cases where an OTG port is available, the device would have to be booted and functioning correctly.

Hi,
I tried to access the device or mount the device

First i tried these two commands lsusb and lsblk
results shown below.

I have connected 2 device nvidia (the damaged one)and lexar media

With lsusb

(command) lsusb
results

Bus 001 Device 009: ID 0955:7740 NVidia Corp. (showing the device)(the damaged one)
Bus 001 Device 008: ID 05dc:b035 Lexar Media, Inc. (normal working device not nvidia but other usb device)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

it is showing both devices

(command) lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 49G 0 part /
├─sda2 8:2 0 1K 0 part
└─sda5 8:5 0 1021M 0 part [SWAP]
sdc 8:32 1 15.1G 0 disk
└─sdc1 8:33 1 15.1G 0 part /media/maps/9016-4EF8
sr0 11:0 1 1024M 0 rom
sr1 11:1 1 1024M 0 rom

but here it only shows the other device (lexar media)(sdc1 8:33 1 15.1G 0 part /media/maps/9016-4EF8 ) when i check for mounted devices or connected devices with pc.

but not showing nvidia. (normally it should show something like this sdb /media/maps/nvidia)
)

It only shows this nvidia device in lsusb list (usb connected devices).
So, i cannot access it or mount it also, if its not in that list (connected hardware list).

is it correct ?

And why is it there in usb connected devices like the other one but not in the connected hardware (e.g. /dev/sdb or /dev/sdc )

thanks & regards
Maps

Keep in mind that what anything appears as when connected as a USB “device” depends on the software running on that device…the fact that it is a USB OTG port does not have any influence whatsoever on the software connected to the port…it’s just that appearing as a mass storage device is what people got used to because of smart phone and media players. Without software running on the device to pretend it is mass storage, the file access you are used to cannot exist.

When a Jetson is in recovery mode it is not a mass storage device…it is a custom flash server (3pserver) which works only with nVidia flash software. The only chance you have of looking at software from a failed Jetson is via partition cloning…the micro-USB port cannot help you except for functionality the flash software supports…which happens to support cloning, but not file and block storage device serving.

Hi,
Thankyou for your help. I have same new device (miniPC Nvidia Tegra Tk1).

Should i open new post for new question ?

Question :-

There are 9 partiton in the device and first partition is 14 Gb (i mean to say, it is the main one)

i want to overwrite or modify this partition.

is it possible to overwrite with another filesystem (14 GB) ? I have all my data in SD card and i want to put this in the first partition of miniPC (tegra TK1).

How would i do this ? (If its possible, then do i have to do this in recovery mode or not to save it from damage)

Partitions :-

mmcblk0rpmb 179:16 0 4M 0 disk
mmcblk0 179:0 0 14.7G 0 disk
├─mmcblk0p1 179:1 0 14G 0 part /
├─mmcblk0p2 179:2 0 4M 0 part
├─mmcblk0p3 179:3 0 64M 0 part
├─mmcblk0p4 179:4 0 4M 0 part
├─mmcblk0p5 179:5 0 4M 0 part
├─mmcblk0p6 179:6 0 4M 0 part
├─mmcblk0p7 179:7 0 4M 0 part
├─mmcblk0p8 179:8 0 2M 0 part
└─mmcblk0p9 179:9 0 558M 0 part

mmcblk0p1 179:1 0 14G 0 part / (want to overwrite this one)

Thanks & regards
maps

This seems to be a custom board, so much of the standard procedure for flash either does not apply or only applies with modifications. Mostly this would mean asking the manufacturer about what software to do this with…L4T or something they have (which would be modified L4T). Perhaps they are compatible.

There is no way to safely test flashing with the L4T software unless the manufacturer gives you a way to flash their system back to new in case of a failure. One thing you could do is try to clone the partition table and thereby see if the L4T flash software has all of its basic structure compatible. You could also clone what you think is the root partition with L4T, and thereby confirm the ability to work with just that partition. If you want to test cloning of the partition table or root partition see:
[url]http://elinux.org/Jetson/Cloning[/url]

One big issue is the boot loader. If fastboot is used, then update is vastly different than using u-boot. Another big issue is that I don’t know if flashing via “re-use system.img” would enable leaving other partitions intact or not…if other partitions are flashed and they do not match what L4T has you’d have to go back to the factory install and start over…and I don’t even know if this hardware has a factory install available.

So the most important thing is to ask the manufacturer if they provide flash software, or if perhaps L4T flash software can be used with their root file system, so on. What information does the manufacturer provide regarding flash or update?

Hi,

After flashing the device from this link JetPack SDK | NVIDIA Developer. I am not able to login in with credentials given below:

username - ubuntu
password - ubuntu
actually it didn’t ask for password

login : /bin/sh : 1 : exec : logger : not found

Thanks & regards
maps

Hi,

Ignore my last question. I am able to flash it now.

Can i mount this device ? (may be in the recovery mode).

As in flash.sh script. while flashing, the device get mounted and then unmounted in loop device.
Is it possible that it remains there (at /dev/loop0)?

   local loop_dev="/dev/loop0"
    umount ${loop_dev} > /dev/null 2>&1;

is it possible to change the script to mount or unmount it?(if i am correct)

As you mention in your previous post that Nvidia tegra software does not support mount.

Thanks & regards
maps

Jetson itself cannot be mounted, the USB port has no program running to support this (a special flash server runs when in recovery mode). During flash the part which gets mounted is a file (covered by loopback) which is a clone of what is to be put onto the Jetson. You can later mount and explore or edit the loopback file, but the Jetson itself cannot be mounted. So it isn’t the Jetson getting mounted, it is the file. Here is a URL on cloning which explains part of the loopback file:
http://elinux.org/Jetson/Cloning

If you have a raw image in your current directory and choose to mount it on “/mnt”, then the command is something like this:

sudo mount -o loop ./system.img.raw /mnt
...do what you wish...
umount /mnt

Hi,

Thanks for the reply. I have backup (clone of Tegra Tk1) in SD card (by using dd command). How would I copy it to another Minipc (Tegra Tk1) ?

Should I connect this SD card directly to the Minipc (via USB 3.0 port) and copy it by using dd command or is there any other way?. Because last time i tried this, but while copying my device (tegra tk1) get damaged.

What is the procedure of copying this backup (SD card ) to another Minipc Tegra Tk1 ?

Thanks & regards
maps

If you are just backing up an ext4 file system on an SD card partition, then any backup tools would work in general…this would not use cloning, nor would it be specific to Jetsons. Cloning would become involved if you wanted to edit the SD card content and then restore the modified content to the Jetson’s eMMC…all activity between an SD card and a host or hard drive or another SD card is generic in nature.

Personally I’d just put the SD card which you want to have the image in the desktop host, and probably partition it exactly the same as the original SD card. If partitions are an exact match, it is likely you can just dd the content. Otherwise you can possibly loopback mount the dd copy and restore to another SD card with something like rsync.

Hi,

Actually, i am able to copy the image on another SD card with dd.

But with tegra tk1, i just want to confirm

Should i put the SD card in Tegra Tk1 device and then perform these operations?

Because last time i put this SD card in Tegra Tk1 device and try to overwrite the filesystem (i mean, i try to copy the content of SD card in tegra Tk1 emmc first partition using dd)

Thanks & regards
maps

Copying SD card via dd to a file (a real file, not a partition from “/dev/”) should not be any different on Jetson versus any other Linux computer. Using the SD card to dd to a partition in eMMC of a running Jetson is unlikely to go well. dd to overwrite any mounted partition (versus a file within the partition) is guaranteed to go badly.

One thing to understand about dd copy of one partition to another is that the underlying file system is part of the copy, and not just the files within the partition. That file system is a structure of inodes, and even that structure is copied over. The moment a node is written via dd to a partition the entire original partition has lost its ability to be mounted or used until the dd finishes (dd essentially corrupts the original file system and upon last write uncorrupts via a new set of inodes). In the case of a file being dd cloned to another file no inodes get involved other than through proper drivers which understand the node meta data.

It sounds like you want to use a Jetson to self-clone, or perhaps to produce backups and self-restore. Knowing what you want to accomplish might help. I expect any self-restore will not be possible.

Hi,

Yes, you are right i want to produce backups. I have lots of similar devices (Minipc Tegra tk1). And, i want to copy this clone to all devices.

I think the procedure which i mention below is right, according to your last posts.

sudo ./flash.sh -r ${target_board} ${target_rootdev}

mount and update(or change) system.img from SD card (I already have clone in SD card)
and run this command
sudo ./flash.sh -r jetson-tk1 mmcblk0p1 (flash system.img in recovery mode with option -r )

Is it correct?

In short :- update system.img and flash it to the device (tegra tk1).

Thanks & regards
maps

I have to preface with “it depends on your system layout” (because of possible SD card configuration in the case of install to mmcblk1p1, and the fact that this might be a custom board and not really a Jetson). There are many partitions on a Jetson which you can see when you clone “all”, but do not normally see from the running Jetson. The “all” partitions can be cloned and restored, but since it is not a file system, you can’t edit this (you could use a binary editor, but this won’t do anything useful). Or you can clone the partition table and every individual partition one at a time…the root partition is loopback mountable, no others are.

I have not tested, so I cannot guarantee this, but some of that other partitioning probably contains whatever points towards the specification of where to search for u-boot (and depending on configuration, perhaps u-boot itself). U-boot might of course be on one of those normally hidden partitions, or SD card (mmcblk0p1 versus mmcblk1p1). If you were just backing up the root partition then this would be all you need to clone and restore. If for some reason those hidden partitions are not the same across units you want to restore, then those too would need clone and restore. Think of it as infrastructure supporting the root partition plus the root partition itself…if infrastructure is the same and never changes then infrastructure tends to get ignored and only root partition is important, but a changed infrastructure would get in the way of restore. If your current procedure is not successful by simply cloning and restoring the root partition, then other partitions may also need clone and restore.

Consider that if a Jetson is configured for using fastboot (L4T R19.x), then cloning just the root partition from a u-boot install (L4T R21.x) will fail as a restore method, although data would not be lost. The same is true should location of boot loader itself changes (perhaps a different partition), or if the location of extlinux.conf changes between two installs (by location of extlinux.conf I mean where u-boot looks for it…SD card versus eMMC).