GPIO pins not functioning in jetson orion nano developers kit

hi all!

I flashed my jetson with jetpack6.2.1 using sdkmanager by following this doc→

After this I followed these steps→

1). generate new .dtsi file from pinmux spreadsheet
2). rename it to pinmux.dtsi, padvoltage.dtsi, gpio.dtsi
3). copy them to BSP folders-
cp pinmux.dtsi ~/jetson_bsp/Linux_for_Tegra/bootloader/generic/BCT/
cp padvoltage.dtsi ~/jetson_bsp/Linux_for_Tegra/bootloader/generic/BCT/
cp gpio.dtsi ~/jetson_bsp/Linux_for_Tegra/bootloader/

4). updated the board .conf file to point to my .dtsi files-
gedit ~/nvidia/nvidia_sdk/JetPack_6.2.1_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/jetson-orin-nano-devkit.conf

made these changes-
PINMUX_CONFIG=bootloader/generic/BCT/pinmux.dtsi
PMC_CONFIG=bootloader/generic/BCT/padvoltage.dtsi

5). Then flashed using this command→
cd ~/nvidia/nvidia_sdk/JetPack_6.2.1_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra
sudo ./flash.sh jetson-orin-nano-devkit mmcblk0p1

after flashing I got This error

copying device_config(/home/nikita/nvidia/nvidia_sdk/JetPack_6.2.1_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-device-p3767-0000.dts)… done.
copying misc_config(/home/nikita/nvidia/nvidia_sdk/JetPack_6.2.1_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-misc-p3767-0000.dts)… done.
copying emc_fuse_dev_params(/home/nikita/nvidia/nvidia_sdk/JetPack_6.2.1_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/bootloader/generic/BCT/tegra234-br-bct-diag-boot.dts)… done.
copying minratchet_config(/home/nikita/nvidia/nvidia_sdk/JetPack_6.2.1_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-ratchet-p3767-0000.dts)… done.
Existing emcfuse(/home/nikita/nvidia/nvidia_sdk/JetPack_6.2.1_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/bootloader/fuse_t234.xml) reused.
./tegraflash.py --chip “0x23” --applet “/home/nikita/nvidia/nvidia_sdk/JetPack_6.2.1_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/bootloader/mb1_t234_prod.bin” --skipuid --cfg readinfo_t234_min_prod.xml --dev_params tegra234-br-bct-diag-boot.dts --device_config tegra234-mb1-bct-device-p3767-0000.dts --misc_config tegra234-mb1-bct-misc-p3767-0000.dts --bins “mb2_applet applet_t234.bin” --minratchet_config tegra234-mb1-bct-ratchet-p3767-0000.dts --cmd “readfuses fuse_t234.bin fuse_t234.xml; dump eeprom cvm cvm.bin; dump try_custinfo custinfo_out.bin; reboot recovery”
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.0036 ] Reading fuses
[ 0.0050 ] tegrasign_v3.py --key None --getmode mode.txt
[ 0.0052 ] Assuming zero filled SBK key
[ 0.0049 ] Pre-processing config: tegra234-mb1-bct-device-p3767-0000.dts
Error: Return value 1
Command cpp -nostdinc -x assembler-with-cpp -D IN_DTS_CONTEXT -I .. -I ../generic/BCT tegra234-mb1-bct-device-p3767-0000.dts tegra234-mb1-bct-device-p3767-0000_cpp.dts
[ 0.0114 ] tegrasign_v3.py --key None --getmode mode.txt
[ 0.0115 ] Assuming zero filled SBK key
[ 0.0112 ] Pre-processing config: tegra234-mb1-bct-device-p3767-0000.dts
Error: Return value 1
Command cpp -nostdinc -x assembler-with-cpp -D IN_DTS_CONTEXT -I .. -I ../generic/BCT tegra234-mb1-bct-device-p3767-0000.dts tegra234-mb1-bct-device-p3767-0000_cpp.dts
Reading board information failed.

HELP!

*** Please note that this reply is generated by LLM automatically ***

Based on the provided context, it appears that you are experiencing issues with flashing your Jetson Orin Nano Developer Kit with JetPack 6.2.1 using the SDK Manager.

Here are some potential issues and solutions:

  1. Error in preprocessing config: The error message indicates that there is an issue with preprocessing the config file tegra234mb1bctdevicep37670000dts. This file is related to the device tree configuration. Make sure that the file is correctly formatted and that there are no syntax errors.

  2. Device tree configuration: You have generated new dtsi files from the pinmux spreadsheet and updated the board configuration file to point to these new files. However, it’s possible that there are errors in the device tree configuration. Double-check that the dtsi files are correctly formatted and that the board configuration file is correctly updated.

  3. Flashing command: The flashing command you used is sudo ./flash.sh jetson-orin-nano-devkit mmcblk0p1. This command is used to flash the device with the configuration specified in the jetson-orin-nano-devkit.conf file. Make sure that this file is correctly configured and that the flashing command is correct.

  4. NVMe vs SD card: The Jetson Orin Nano Developer Kit supports both NVMe and SD card storage. If you are using an NVMe drive, make sure that it is correctly connected and configured. If you are using an SD card, make sure that it is correctly inserted and configured.

  5. UEFI configuration: The UEFI configuration is important for booting the device. Make sure that the UEFI configuration is correctly set up and that the boot order is correctly configured.

To troubleshoot the issue, you can try the following:

  1. Check the device tree configuration and make sure that it is correctly formatted and configured.
  2. Check the board configuration file and make sure that it is correctly updated to point to the new dtsi files.
  3. Try flashing the device with a different configuration or with a different version of JetPack.
  4. Check the UEFI configuration and make sure that it is correctly set up and that the boot order is correctly configured.
  5. Try booting the device with a different boot order or with a different boot device.

If none of these solutions work, you may need to seek further assistance from NVIDIA support or from the Jetson Orin Nano community.

Here is a comparison of the different flashing commands:

  • sudo ./flash.sh jetson-orin-nano-devkit internal: This command is used to flash the device with the internal storage.
  • sudo ./flash.sh jetson-orin-nano-devkit-nvme internal: This command is used to flash the device with the NVMe storage.
  • sudo ./flash.sh jetson-orin-nano-devkit mmcblk0p1: This command is used to flash the device with the SD card storage.

Note that the internal option is used to specify the internal storage, while the mmcblk0p1 option is used to specify the SD card storage. The nvme option is used to specify the NVMe storage.

In your case, you are using the mmcblk0p1 option to specify the SD card storage. Make sure that the SD card is correctly inserted and configured.

*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***

help!

HI nikitagupta1725,

Have you configured the desired pin as GPIO/Output/Drive0 or 1 in pinmux spreadsheet?

This is not the expected command to me.
Do you have NVMe SSD connected on the devkit?