Confusing in Board Name for the "Jetson Nano Developer Kit"

Does any one knows how to know the board name of “Jetson Nano Developer Kit” correctly?
I know it is a SKU: 945-13450-0000-000 and the model name shows “P3450” on the board at back side.

According to the Jetson FAQ website @ https://developer.nvidia.com/embedded/faq#jetson-part-numbersJetson,
I am not sure that I understand the “Jetson Developer Kits” and the “Jetson Modules” are the difference.
So that the name “Jetson Nano (900-13448-0020-000)” is a “Jetson Modules”,
and the name “Jetson Nano Developer Kit (945-13450-0000-000)” is a “Jetson Developer Kits”.

Referred to the document “https://developer.download.nvidia.com/embedded/L4T/r32-2_Release_v1.0/Tegra_Linux_Driver_Package_Release_Notes_R32.2.0_GA.pdf”, it shows the following names:

  • Jetson Nano: P3450-0000 (development module with SD Card memory)
  • Jetson Nano: P3450-0020 (production module with QSPI-NOR memory)
  • ...
  • I am not sure what the meaning of "Jetson Nano" is here, does it mean "Jetson Nano Developer Kit"?

    Also referred to the development guide @ “https://docs.nvidia.com/jetson/l4t/” for tegra linux driver package,
    on a page “Placeholders in Commands” @ “https://docs.nvidia.com/jetson/l4t/Tegra%20Linux%20Driver%20Package%20Development%20Guide/uboot_guide.html#wwpID0E0UK0HA”, it is showing the following substitute for “<board_and_rev>”.

  • For Jetson Nano: p3450-0000.
  • For Jetson TX2 and Jetson TX2i: p2771-0000-500.
  • again, I am not sure what the meaning of "Jetson Nano" is here. (according to the number and the above statements, I think it is a developer kit here instead of the module)

    And now I am following the development guide for to do “Downloading and Building U-Boot”,
    on the step “4. Build U-Boot by executing:

    $ make distclean
    $ make <board_and_rev>_defconfig
    $ make
    

    I didn’t see the file “p3450-0000_defconfig” from the source that downloaded by the step “1. Perform either of the following steps:”, but I found one similar file in source and it named “p3450-porg_defconfig”.
    what the meaning of “p3450-porg” is here? it is not listed on the page “Placeholders in Commands”.
    does it also use for “Jetson Nano Developer Kit”?
    what the difference is between “p3450-0000” and “p3450-porg”?

    thanks.

    1 Like

    I can only give you a partial answer. The module itself has a part number, and is part of any software used for flashing. In addition, the carrier board extends that number, and is also usually part of any device tree or other board support package content. The module part of this would in theory be the same whether part of a dev kit (with carrier), or from a module purchased separately, but there is a catch: The modules purchased separately have a model with built-in eMMC, while the module of the devel kit uses only SD card. The base SoC name would also be part of the module name, and this would be constant regardless of whether using the dev kit module without eMMC, or if using the separate module with eMMC.

    Someone else will need to tell you what each specification is for a given name.

    1 Like

    Thanks for bringing this up; it looks like an error in documentation. As you discovered, p3450-porg_defconfig is definitely the actual name of the file[1].

    Looks like we show the correct filename in the “Jetson Nano Developer Kit 40-Pin Expansion Header Configuration” app note[2], but have it wrong in the docs you linked. I’ll file a bug to have these fixed for next version.

    With that out of the way, I’ll answer your more general questions about naming.

    What is Porg?
    Originally, Porg was our internal code name for the Jetson Nano Developer Kit. Especially at the beginning of new product development , we sometimes use codenames when naming files because that’s how we’re referring to and thinking about the product. Ideally these should be renamed before publishing, but that doesn’t always happen.

    Funny but true story: we later changed Porg to be the codename for Jetson Nano module instead of the devkit. So… yeah. :-/ If you find mention of “porg” somewhere in the code or in filenames, you’ll have to decide by context whether it refers to module or devkit.

    Part Numbers
    Here is an overview of Jetson part numbers, from the ones used to order Jetson devices to the ones found printed on the PCBs.

    Per the FAQ “What is the difference between Jetson developer kits and Jetson modules?”[3], Jetson developer kits include a Jetson module attached to a reference carrier board. 900 level Part Numbers are used to identify Jetson modules, and 945 level part numbers are used to identify Jetson developer kits[4]. Each 900 or 945 level PN represents a hierarchy of other, lower level PNs.

    Take the Jetson Nano Developer Kit for example. When you place an order for the devkit, you are ordering Part Number 945-13450-0000-000. When the box arrives, it includes various components, all of which have their own lower level PN somewhere in the tree represented by the top level 945-13450-0000-000:

    +============================+====================================+
    |     Part Number            |        Description                 |
    +============================+====================================+
    | 945-13450-0000-000         | Jetson Nano Developer Kit          |
    +----------------------------+------------------------------------+
    |   ...                      |                                    |
    +----------------------------+------------------------------------+
    |   675-13450-0000-000       | Assembly BOM                       |
    +----------------------------+------------------------------------+
    |     ...                    |                                    |
    +----------------------------+------------------------------------+
    |       699-13448-0000-200   | Jetson Nano module for devkit      |
    +----------------------------+------------------------------------+
    |         ...                |                                    |
    +----------------------------+------------------------------------+
    |         180-13448-DAAA-A02 | PCB for module                     |
    +----------------------------+------------------------------------+
    |       699-13449-0000-200   | Reference carrier board for devkit |
    +----------------------------+------------------------------------+
    |         ...                |                                    |
    +----------------------------+------------------------------------+
    |         180-13449-DAAA-A02 | PCB for carrier board              |
    +----------------------------+------------------------------------+
    |   ...                      |                                    |
    +----------------------------+------------------------------------+
    

    There are many, many PNs in the full tree that I’ve excerpted above, but three should be highlighted:

    • 180 level: This is the PCB Part Number. You can find it printed on the PCB of Jetson modules and carrier boards. Importantly, it ends with the PCB revision number, e.g. "A02"
    • 699 level: this is the rollup PN for everything assembled together with the PCB. For Jetson modules, this 699 level ON is flashed to the EEPROM, and is readable from software[5].
    • 900 or 945 level: the product level PN, used to identify and purchase Jetson modules and developer kits

    [1] http://nv-tegra.nvidia.com/gitweb/?p=3rdparty/u-boot.git;a=tree;f=configs;hb=d917e08cec234698ccd8f1154a8b4ca96708dde7
    [2] https://developer.nvidia.com/embedded/downloads#?search=Jetson%20Nano%20Developer%20Kit%2040-Pin%20Expansion%20Header%20Configuration
    [3] https://developer.nvidia.com/embedded/faq#jetson-devkit-vs-module
    [4] https://developer.nvidia.com/embedded/faq#jetson-part-numbers
    [5] Search for “eeprom layout” in the L4T Development Guide: https://docs.nvidia.com/jetson/l4t/index.html

    2 Likes

    many thanks to linuxdev and prlawrence, the information is really useful for me!

    I got the Jetson NANO module is 180-13448-DAAA-B01, what’s that?

    Hello,

    also information in this thread is helfull, i’m still a bit confused with those part number / SKU’s
    I’m wondering if an update would be needed ?

    I just flashed the 32.2.1 sd image available from https://developer.nvidia.com/jetson-nano-sd-card-image-r3221 md5sum is ok and imag is runnable.

    Still after boot, the following command :

    cat /proc/device-tree/nvidia,dtsfilename
    

    returns :

    /dvs/git/dirty/git-master_linux/kernel/kernel-4.9/arch/arm64/boot/dts/../../../../../../hardware/nvidia/platform/t210/porg/kernel-dts/tegra210-p3448-0000-p3449-0000-b00.dts
    

    the PCB part number is matching the -a02 instead of -b00 : https://photos.app.goo.gl/3Qb5fH5MF29LdYx26
    I understand this label is only for the PCB for module and it’s matching the PN given by @prlawrence. I don’t want to remove the haetsink for now, so can’t check if the module itself has other labelling…

    Could you please provide further help on that subject ? (by the way, i’ve been able to reach first goal which was to rebuild a custom image enabling PPS-GPIO module and the -A02 dtb and this also works fine)

    From where you got the number? Sticker or boot log. Can you share the boot logs.
    B01 is the latest Fab revision.

    And what about the -b00 in the stock image dts filename ? Does it mean this image has been prepared for production boards after the -a02 ones ? Is there a way to find the exact part number I have from the board serial number ?

    And also, what are the differences between those new board revisions and older ones ?

    -b00 works for all. Its the latest DTB.
    -a02 will not work on B0X boards.

    good to know ! thanks for the update !

    I mistook