How to suspend on jetson nano

First of all, I try the “sudo systemctl suspend” command, but I get Error like this “Failed to suspend system via logind: Sleep verb not supported”

In the datasheet I found that the pin 240 can control the system to sleep and wake up, but I don’t know which pin on the pin240 corresponds to the board.And I guess pin 240 is the J40 pin1 , so I do some experiment, but it just make the system poweroff and on, not the suspend.

Hope for your helps, Thanks

hello deanforregister,

may I know which JetPack release you’re working with?
according to R32.2 release note, this should fixed with the latest release JetPack-4.2.1

Hi JerryChang thanks for your reply

I try “systemctl suspend” on the board, which is upgraded the jetpack 4.2.1. the same error “Failed to suspend system via logind: Sleep verb not supported”.
But modify /sys/power/state to “mem”, to sleep,and pull down J40 pin1 to wake it up, sometimes it works, sometimes not, I’m confused.

hello deanforregister,

could you please share the S/N number of your Jetson-Nano, such as P3448-xxxx…

There are two numbers on the back of the board
S/N: 1422119094400

hello deanforregister,

there’s an alternative way to get SC7 working.
you might consider to add the odmdata for your board config file as below then flashing the board,

+ ODMDATA=0x94800;

after changing the odmdata please use below command to suspend Jetson-Nano

$ sudo systemctl suspend

Hi JerryChang,

Will you be able to tell us where the board config file is and how to flash the board, or where we can find instructions to do this?

My JetPack version is R32.1. I can only suspend my Jetson nano by typing
echo freeze > /sys/power/state

How will this differ from using sudo systemctl suspend?
My Jetson Nano will wake up automatically after a few minutes into the “freeze” mode if the internet is connected. If the Jetson Nano is disconnected from the internet, it will happily stay in the “freeze” mode forever. i am wondering if I am not using the proper way to suspend the Nano.

Thank you very much.

hello chenyi731231,

please refer to below,

  1. please check the documentation, you may refer to Quick Start Guide for the board configuration files.
  2. there’s also a chapter, Flashing and Booting the Target Device, show the steps and commands to flash the board.

I am having the same problem using the latest image:

ubuntu@nano1:~$ sudo systemctl suspend
Failed to suspend system via logind: Sleep verb not supported

Suspend (and wakeup after a timeout) is critical for our application as it has a tight energy budget.
The application is currently running on the TK1 and there suspend and resume works.

ubuntu@nano1:~$ head -1 /etc/nv_tegra_release
# R32 (release), REVISION: 3.1, GCID: 18186506, BOARD: t210ref, EABI: aarch64, DATE: Tue Dec 10 06:58:34 UTC 2019

Any suggestions?

hello SagiS,

could you please check what’s power state reporting.
for example,

cat /sys/power/state
% cat /sys/power/state
% cat /sys/power/state

hello SagiS,

it seems your board 945-13450-0000-000 is an early stage version Nano devkit.
we had disabled suspend from software side, you’ll need modification in comment #6 to make it works.

Thank you Jerry. I have verified on a newer board that suspend (and wakeup from rtc) works.

This flashing the board with + ODMDATA=0x94800; method works. The jetson nano can suspend after flashing. However, every time Ubuntu updates itself with a new version of one of the packages nvidia-l4t-*, any changes to the board is erased. And Jetson nano can no longer suspend after the package update.
Is there a way to prevent the nvidia-l4t-* packages from erasing our modification?

chenyi73123, thanks for your sharing! I tried this method but failed. Could you please help me have a look where is wrong?

My board is Jetson Nano A02 Devkit. I followed the steps below:

  • Add + ODMDATA=0x94800; to Linux_for_Tegra/jetson-nano-qspi-sd.conf
  • sudo ./ jetson-nano-qspi-sd mmcblk0p1

I added “ODMDATA=0x94800;” to the file “jetson-nano-qspi.conf”. Don’t add the plus sign, “+”.
And I ran “sudo ./ jetson-nano-qspi”.

Is there any chance that ODMDATA value is different for Nano 2GB? The suggested method does not work on mine. Actually I’m not sure if ODMDATA is changed before flashing. Here is the output of “ls /sys/firmware/devicetree/base/chosen/plugin-manager/odm-data”:

disable-pmic-wdt enable-debug-console enable-utmi1-snps no-battery
disable-uart-over-jack enable-tegra-wdt name normal-build

hello herdem09,

according to Topic 170621, we’re remove SC7 for the Nano 2GB, so it’s expect that suspend to RAM is not working.

Hi JerryChang,
Is there document to add the odmdata to Jetson Nano development board step by step, so that the deep sleep mode is available?

Is there any way to do it from Jetson Nano directly without re-flash the MicroSD card as I have installed lots of things on the board along with the development process?